Documentation
¶
Overview ¶
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2024 The Hanzo Authors. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2025 The Hanzo Authors. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2026 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2025 The Hanzo Authors. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2025 The Casibase Authors. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2024 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2025 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License.
Copyright 2023-2026 Hanzo AI Inc. All Rights Reserved.
Licensed under the Apache License, Version 2.0 (the "License"); you may not use this file except in compliance with the License. You may obtain a copy of the License at
http://www.apache.org/licenses/LICENSE-2.0
Unless required by applicable law or agreed to in writing, software distributed under the License is distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. See the License for the specific language governing permissions and limitations under the License. Package object/zap.go — Native ZAP binary protocol node.
Cloud-api is a first-class ZAP node. NO gateways, NO proxies, NO sidecars, NO HTTP translation layers. Everything is ZAP-to-ZAP:
client → cloud-api:9999 (ZAP binary) cloud-api → kv:9999 (ZAP binary) cloud-api → sql:9999 (ZAP binary)
Service handlers are registered via RegisterCloudHandler() from the controllers package (avoids circular imports).
Index ¶
- Constants
- Variables
- func AddApplication(application *Application) (bool, error)
- func AddArticle(article *Article) (bool, error)
- func AddAsset(asset *Asset) (bool, error)
- func AddCaase(caase *Caase) (bool, error)
- func AddChat(chat *Chat) (bool, error)
- func AddConnection(connection *Connection) (bool, error)
- func AddConsultation(consultation *Consultation) (bool, error)
- func AddContainer(container *Container) (bool, error)
- func AddDetails(apps []*Application, lang string)
- func AddDoctor(doctor *Doctor) (bool, error)
- func AddFile(file *File) (bool, error)
- func AddForm(form *Form) (bool, error)
- func AddGraph(graph *Graph) (bool, error)
- func AddHospital(hospital *Hospital) (bool, error)
- func AddImage(image *Image) (bool, error)
- func AddMachine(machine *Machine) (bool, error)
- func AddMessage(message *Message) (bool, error)
- func AddModelRoute(route *ModelRoute) (bool, error)
- func AddNode(node *Node) (bool, error)
- func AddPatient(patient *Patient) (bool, error)
- func AddPod(pod *Pod) (bool, error)
- func AddProvider(provider *Provider) (bool, error)
- func AddRecord(record *Record, lang string) (bool, interface{}, error)
- func AddRecords(records []*Record, syncEnabled bool, lang string) (bool, interface{}, error)
- func AddScale(scale *Scale) (bool, error)
- func AddScan(scan *Scan) (bool, error)
- func AddSession(session *Session) (bool, error)
- func AddStore(store *Store) (bool, error)
- func AddTask(task *Task) (bool, error)
- func AddTemplate(template *Template) (bool, error)
- func AddTransactionForMessage(message *Message) error
- func AddTreeFile(storeId string, userName string, key string, isLeaf bool, filename string, ...) (bool, []byte, error)
- func AddVector(vector *Vector) (bool, error)
- func AddVectorsForFile(store *Store, fileName string, fileUrl string, lang string) (bool, error)
- func AddVideo(video *Video) (bool, error)
- func AddWorkflow(workflow *Workflow, lang string) (bool, error)
- func ArchiveCrawlPreviewAsync(owner, pageURL string, sr ScrapeResult, raw Crawl4AIResult)
- func ArchiveCrawlResult(owner, jobID string, results []ScrapeResult, rawResults []Crawl4AIResult) error
- func AtomicClaimScan(owner, name, hostname string) (int64, error)
- func BuildCloudResponse(status uint32, body []byte, errMsg string) (*zap.Message, error)
- func BuildGatewayResponse(status uint32, body []byte, headers []byte) (*zap.Message, error)
- func CanEditPatient(user *iam.User, patient *Patient) bool
- func ClearThroughputPerSecond()
- func CloseConnection(id string, code int, msg string) error
- func CloseDbSession(id string, code int, msg string) error
- func CommitRecord(record *Record, lang string) (bool, map[string]interface{}, error)
- func CommitRecordSecond(record *Record, lang string) (bool, error)
- func CommitRecords(records []*Record, lang string) (int, []map[string]interface{})
- func CreateTables()
- func DatastoreEnabled() bool
- func DeleteAllLaterMessages(messageId string) error
- func DeleteApplication(application *Application, lang string) (bool, error)
- func DeleteArticle(article *Article) (bool, error)
- func DeleteAsset(asset *Asset) (bool, error)
- func DeleteBeegoSession(sessionIds []string)
- func DeleteCaase(caase *Caase) (bool, error)
- func DeleteChat(chat *Chat) (bool, error)
- func DeleteConnection(connection *Connection) (bool, error)
- func DeleteConnectionById(id string) (bool, error)
- func DeleteConsultation(consultation *Consultation) (bool, error)
- func DeleteContainer(container *Container) (bool, error)
- func DeleteDoctor(doctor *Doctor) (bool, error)
- func DeleteFile(file *File, lang string) (bool, error)
- func DeleteForm(form *Form) (bool, error)
- func DeleteGraph(graph *Graph) (bool, error)
- func DeleteHospital(hospital *Hospital) (bool, error)
- func DeleteImage(image *Image) (bool, error)
- func DeleteMachine(machine *Machine) (bool, error)
- func DeleteMessage(message *Message) (bool, error)
- func DeleteMessagesByChat(message *Message) (bool, error)
- func DeleteModelRoute(route *ModelRoute) (bool, error)
- func DeleteNode(node *Node) (bool, error)
- func DeletePatient(patient *Patient) (bool, error)
- func DeletePod(pod *Pod) (bool, error)
- func DeleteProvider(provider *Provider) (bool, error)
- func DeleteRecord(record *Record) (bool, error)
- func DeleteScale(scale *Scale) (bool, error)
- func DeleteScan(scan *Scan) (bool, error)
- func DeleteSession(id string) (bool, error)
- func DeleteSessionId(id string, sessionId string) (bool, error)
- func DeleteStore(store *Store) (bool, error)
- func DeleteTask(task *Task) (bool, error)
- func DeleteTemplate(template *Template) (bool, error)
- func DeleteTreeFile(storeId string, key string, isLeaf bool, lang string) (bool, error)
- func DeleteVector(vector *Vector) (bool, error)
- func DeleteVectorsByFile(owner string, storeName string, fileKey string) (bool, error)
- func DeleteVectorsByStore(owner string, storeName string) (bool, error)
- func DeleteVideo(video *Video) (bool, error)
- func DeleteWorkflow(workflow *Workflow) (bool, error)
- func DeployApplication(application *Application, lang string) (bool, error)
- func DeployApplicationSync(application *Application, lang string) (bool, error)
- func DocdbEnabled() bool
- func GenerateWordCloudData(messages []*Message, density int) (string, error)
- func GetActivities(days int, user string, fieldNames []string, lang string) (map[string][]*Activity, error)
- func GetAgentClients(agentProviderObj agent.AgentProvider) (*agent.AgentClients, error)
- func GetAnswer(provider string, question string, lang string) (string, *model.ModelResult, error)
- func GetAnswerFake(provider string, question string, lang string) (string, *model.ModelResult, error)
- func GetAnswerWithContext(provider string, question string, history []*model.RawMessage, ...) (string, *model.ModelResult, error)
- func GetApplicationCount(owner, field, value string) (int64, error)
- func GetApplicationFailureReason(namespace string, lang string) (string, error)
- func GetApplicationStatus(owner, name, namespace string, lang string) (string, error)
- func GetArticleCount(owner, field, value string) (int64, error)
- func GetAssetCount(owner, field, value string) (int64, error)
- func GetCaaseCount(owner, field, value string) (int64, error)
- func GetChatCount(owner string, field string, value string, store string) (int64, error)
- func GetConnectionCount(owner, status, field, value string) (int64, error)
- func GetConsultationCount(owner, field, value string) (int64, error)
- func GetContainerCount(owner, field, value string) (int64, error)
- func GetDbQuery(owner string, offset, limit int, field, value, sortField, sortOrder string) *dbx.SelectQuery
- func GetDocChatAnswer(owner, store string, req *DocChatRequest, lang string) (string, *model.ModelResult, error)
- func GetDoctorCount(owner, field, value string) (int64, error)
- func GetFileCount(owner, field, value string) (int64, error)
- func GetFormCount(owner string, field, value string) (int64, error)
- func GetGraphCount(owner string, field, value string) (int64, error)
- func GetHospitalCount(owner, field, value string) (int64, error)
- func GetImageCount(owner, field, value string) (int64, error)
- func GetK8sStatus(lang string) (string, error)
- func GetKMSSecret(name string) (string, error)
- func GetMachineCount(owner, field, value string) (int64, error)
- func GetMessageCount(owner string, field string, value string, store string) (int64, error)
- func GetModelProviderByProviderKey(providerKey string, lang string) (model.ModelProvider, error)
- func GetModelRouteCount(owner, field, value string) (int64, error)
- func GetNearMessageCount(user string, limitMinutes int) (int, error)
- func GetNodeCount(owner, field, value string) (int64, error)
- func GetOrgKMSSecret(name string, orgProjectID string) (string, error)
- func GetPatientCount(owner, field, value string) (int64, error)
- func GetPodCount(owner, field, value string) (int64, error)
- func GetProviderCount(owner, storeName, field, value string) (int64, error)
- func GetRecentRawMessages(chat string, createdTime string, memoryLimit int) ([]*model.RawMessage, error)
- func GetRecordCount(owner, field, value string) (int64, error)
- func GetRefinedQuestion(prompt string, knowledge string, question string) string
- func GetScaleCount(owner string, field, value string) (int64, error)
- func GetScanCount(owner, field, value string) (int64, error)
- func GetSearchIndexName(owner, store string) string
- func GetSessionCount(owner, field, value string) (int64, error)
- func GetStoreCount(name, field, value string) (int64, error)
- func GetTaskCount(owner string, field, value string) (int64, error)
- func GetTaskEffectiveScale(task *Task) (string, error)
- func GetTemplateCount(owner, field, value string) (int64, error)
- func GetTwoActiveBlockchainProvider(owner string) (*Provider, *Provider, error)
- func GetURL(namespace string, lang string) (string, error)
- func GetUsers(storeName, user string) ([]string, error)
- func GetVectorCount(owner string, storeName string, field string, value string) (int64, error)
- func GetVideoCount(owner string, field string, value string) (int64, error)
- func GetWecomBotTokenAndKey(botID string) (string, string, error)
- func GetWorkflowCount(owner string, field, value string) (int64, error)
- func GetZapNode() *zap.Node
- func IndexDocuments(owner, store string, req *DocIndexRequest, lang string) (int, error)
- func InitAdapter()
- func InitCleanupChats()
- func InitCommitRecordsTask()
- func InitConfig()
- func InitDb()
- func InitFlag()
- func InitMessageTransactionRetry()
- func InitScanJobProcessor()
- func InitStoreCount()
- func InitZap()
- func IsAdmin(user *iam.User) bool
- func IsCrawl4AIAvailable() bool
- func IsCrawlStorageConfigured() bool
- func IsDoctor(user *iam.User) bool
- func IsPatient(user *iam.User) bool
- func IsSessionDuplicated(id string, sessionId string) (bool, error)
- func JSONScan(dst interface{}, src interface{}) error
- func JSONValue(v interface{}) (driver.Value, error)
- func MakeMsgResponse(content string, streamId string) (string, error)
- func PopulateStoreCounts(stores []*Store) error
- func PrepareTextToSpeech(storeId, providerId, messageId, text string, lang string) (*Message, *Chat, tts.TextToSpeechProvider, context.Context, error)
- func QueryRecord(id string, lang string) (string, error)
- func QueryRecordSecond(id string, lang string) (string, error)
- func RefineMessageFiles(message *Message, origin string, lang string) error
- func RefreshFileVectors(file *File, lang string) (bool, error)
- func RefreshMcpTools(provider *Provider) error
- func RefreshStoreVectors(store *Store, lang string) (bool, error)
- func ResolveProviderSecret(provider *Provider) error
- func ScanAssetsFromProvider(owner string, providerName string) (bool, error)
- func ScanNeedCommitRecords()
- func SetDefaultVodClient(lang string) error
- func SplitLastN(s, sep string, n int) []string
- func StopZap()
- func SyncDefaultProvidersToStore(store *Store) error
- func SyncDockerContainers(owner string) (bool, error)
- func SyncImagesCloud(owner string, lang string) (bool, error)
- func SyncKubernetesPods(owner string) (bool, error)
- func SyncMachinesCloud(owner string, lang string) (bool, error)
- func UndeployApplication(owner, name, namespace string, lang string) (bool, error)
- func UndeployApplicationSync(owner, name, namespace string, lang string) (bool, error)
- func UpdateApplication(id string, application *Application, lang string) (bool, error)
- func UpdateApplicationStatus(owner string, name string, status string, lang string) error
- func UpdateArticle(id string, article *Article) (bool, error)
- func UpdateAsset(id string, asset *Asset) (bool, error)
- func UpdateCaase(id string, caase *Caase) (bool, error)
- func UpdateChat(id string, chat *Chat) (bool, error)
- func UpdateChatStats(chat *Chat, ttsResult *tts.TextToSpeechResult) error
- func UpdateConnection(id string, connection *Connection, columns ...string) (bool, error)
- func UpdateConsultation(id string, consultation *Consultation) (bool, error)
- func UpdateContainer(id string, container *Container, lang string) (bool, error)
- func UpdateDoctor(id string, doctor *Doctor) (bool, error)
- func UpdateFile(id string, file *File) (bool, error)
- func UpdateFilesStatusByStore(owner string, storeName string, status FileStatus) error
- func UpdateForm(id string, form *Form, lang string) (bool, error)
- func UpdateGraph(id string, graph *Graph) (bool, error)
- func UpdateHospital(id string, hospital *Hospital) (bool, error)
- func UpdateImage(id string, image *Image) (bool, error)
- func UpdateMachine(id string, machine *Machine) (bool, error)
- func UpdateMessage(id string, message *Message, isHitOnly bool) (bool, error)
- func UpdateModelRoute(owner string, modelName string, route *ModelRoute) (bool, error)
- func UpdateNode(id string, node *Node) (bool, error)
- func UpdatePatient(id string, patient *Patient) (bool, error)
- func UpdatePod(id string, pod *Pod, lang string) (bool, error)
- func UpdateProvider(id string, provider *Provider) (bool, error)
- func UpdateRecord(id string, record *Record, lang string) (bool, error)
- func UpdateRecordFields(id string, fields map[string]interface{}, lang string) (bool, error)
- func UpdateRecordInternal(id int, record Record) error
- func UpdateScale(id string, scale *Scale) (bool, error)
- func UpdateScan(id string, scan *Scan) (bool, error)
- func UpdateSession(id string, session *Session) (bool, error)
- func UpdateStore(id string, store *Store) (bool, error)
- func UpdateTask(id string, task *Task) (bool, error)
- func UpdateTemplate(id string, template *Template) (bool, error)
- func UpdateTreeFile(storeId string, key string, file *TreeFile) bool
- func UpdateVector(id string, vector *Vector, lang string) (bool, error)
- func UpdateVideo(id string, video *Video) (bool, error)
- func UpdateWorkflow(id string, workflow *Workflow, lang string) (bool, error)
- func UploadFileToStorageSafe(user string, tag string, parent string, fullFilePath string, fileBytes []byte) (string, error)
- func ValidateTransactionForMessage(message *Message) error
- func WriteCloseMessage(guacSession *guacamole.Session, mode string, code int, msg string)
- func ZapDatastoreExec(ctx context.Context, sqlStmt string, args ...interface{}) error
- func ZapDocdbExec(ctx context.Context, sql string, args ...interface{}) error
- func ZapDocdbQuery(ctx context.Context, sql string, args ...interface{}) ([]map[string]interface{}, error)
- func ZapEnabled() bool
- func ZapKVDel(ctx context.Context, key string) error
- func ZapKVGet(ctx context.Context, key string) (string, error)
- func ZapKVSet(ctx context.Context, key, value string) error
- func ZapKVSetEx(ctx context.Context, key, value string, ttlSeconds int) error
- func ZapSQLExec(ctx context.Context, sql string, args ...interface{}) error
- func ZapSQLQuery(ctx context.Context, sql string, args ...interface{}) ([]map[string]interface{}, error)
- type Activity
- type Adapter
- type AlibabaCloudParser
- type Application
- type ApplicationEvent
- type ApplicationView
- type Article
- func GetArticle(id string) (*Article, error)
- func GetArticles(owner string) ([]*Article, error)
- func GetGlobalArticles() ([]*Article, error)
- func GetMaskedArticle(article *Article, isMaskEnabled bool) *Article
- func GetMaskedArticles(articles []*Article, isMaskEnabled bool) []*Article
- func GetPaginationArticles(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Article, error)
- type Asset
- func GetAsset(id string) (*Asset, error)
- func GetAssets(owner string) ([]*Asset, error)
- func GetMaskedAsset(asset *Asset, isMaskEnabled bool) *Asset
- func GetMaskedAssets(assets []*Asset, isMaskEnabled bool) []*Asset
- func GetPaginationAssets(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Asset, error)
- type Block
- type Caase
- func FilterCaasesByUser(user *iam.User, caases []*Caase) []*Caase
- func GetCaase(id string) (*Caase, error)
- func GetCaases(owner string) ([]*Caase, error)
- func GetMaskedCaase(caase *Caase, errs ...error) (*Caase, error)
- func GetMaskedCaases(caases []*Caase, errs ...error) ([]*Caase, error)
- func GetPaginationCaases(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Caase, error)
- type CacheManager
- type CachedMetrics
- type Chat
- func FilterChatsByTimeRange(chats []*Chat, startTime, endTime string) []*Chat
- func GetChat(id string) (*Chat, error)
- func GetChats(owner string, storeName string, user string) ([]*Chat, error)
- func GetGlobalChats() ([]*Chat, error)
- func GetPaginationChats(owner string, offset, limit int, field, value, sortField, sortOrder string, ...) ([]*Chat, error)
- type CloudParser
- type Connection
- func CreateConnection(connection *Connection, nodeId string, mode string) (*Connection, error)
- func GetConnection(id string) (*Connection, error)
- func GetConnections(owner string) ([]*Connection, error)
- func GetPaginationConnections(owner, status string, offset, limit int, ...) ([]*Connection, error)
- func GetSessionsByStatus(statuses []string) ([]*Connection, error)
- type Consultation
- func FilterConsultationsByUser(user *iam.User, consultations []*Consultation) []*Consultation
- func GetConsultation(id string) (*Consultation, error)
- func GetConsultations(owner string) ([]*Consultation, error)
- func GetMaskedConsultation(consultation *Consultation, errs ...error) (*Consultation, error)
- func GetMaskedConsultations(consultations []*Consultation, errs ...error) ([]*Consultation, error)
- func GetPaginationConsultations(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Consultation, error)
- type Container
- func GetContainer(id string) (*Container, error)
- func GetContainers(owner string) ([]*Container, error)
- func GetMaskedContainer(container *Container, errs ...error) (*Container, error)
- func GetMaskedContainers(containers []*Container, errs ...error) ([]*Container, error)
- func GetPaginationContainers(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Container, error)
- type ContainerDetail
- type ContentBlock
- type Crawl4AIBrowserConfig
- type Crawl4AICrawlerParams
- type Crawl4AIRequest
- type Crawl4AIResponse
- type Crawl4AIResult
- type CrawlArchive
- type DefaultSearchProvider
- type DeploymentDetail
- type DiskDetail
- type DocChatRequest
- type DocIndex
- type DocIndexRequest
- type DocSearchRequest
- type DocSearchResult
- type DocStatsResponse
- type Doctor
- func GetDoctor(id string) (*Doctor, error)
- func GetDoctors(owner string) ([]*Doctor, error)
- func GetMaskedDoctor(doctor *Doctor, errs ...error) (*Doctor, error)
- func GetMaskedDoctors(doctors []*Doctor, errs ...error) ([]*Doctor, error)
- func GetPaginationDoctors(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Doctor, error)
- type EcsInstanceDetail
- type EnvVariable
- type EventCache
- type ExampleQuestion
- type ExampleQuestionList
- type File
- func GetFile(id string) (*File, error)
- func GetFiles(owner string) ([]*File, error)
- func GetFilesByStore(owner string, store string) ([]*File, error)
- func GetGlobalFiles() ([]*File, error)
- func GetPaginationFiles(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*File, error)
- type FileStatus
- type Form
- func GetForm(id string) (*Form, error)
- func GetForms(owner string) ([]*Form, error)
- func GetGlobalForms() ([]*Form, error)
- func GetMaskedForm(form *Form, isMaskEnabled bool) *Form
- func GetMaskedForms(forms []*Form, isMaskEnabled bool) []*Form
- func GetPaginationForms(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Form, error)
- type FormItem
- type FromUser
- type GaugeVecInfo
- type Graph
- func GetGlobalGraphs() ([]*Graph, error)
- func GetGraph(id string) (*Graph, error)
- func GetGraphs(owner string) ([]*Graph, error)
- func GetMaskedGraph(graph *Graph, isMaskEnabled bool) *Graph
- func GetMaskedGraphs(graphs []*Graph, isMaskEnabled bool) []*Graph
- func GetPaginationGraphs(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Graph, error)
- type GraphNode
- type Heading
- type HierarchySearchProvider
- type HistogramVecInfo
- type Hospital
- func GetHospital(id string) (*Hospital, error)
- func GetHospitals(owner string) ([]*Hospital, error)
- func GetMaskedHospital(hospital *Hospital, errs ...error) (*Hospital, error)
- func GetMaskedHospitals(hospitals []*Hospital, errs ...error) ([]*Hospital, error)
- func GetPaginationHospitals(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Hospital, error)
- type Image
- func GetImage(id string) (*Image, error)
- func GetImages(owner string) ([]*Image, error)
- func GetMaskedImage(image *Image, errs ...error) (*Image, error)
- func GetMaskedImages(images []*Image, errs ...error) ([]*Image, error)
- func GetPaginationImages(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Image, error)
- type ImageItem
- type ImageMessage
- type K8sClient
- type Label
- type Machine
- func GetMachine(id string) (*Machine, error)
- func GetMachines(owner string) ([]*Machine, error)
- func GetMaskedMachine(machine *Machine, errs ...error) (*Machine, error)
- func GetMaskedMachines(machines []*Machine, errs ...error) ([]*Machine, error)
- func GetPaginationMachines(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Machine, error)
- type Message
- func GetChatMessages(chat string) ([]*Message, error)
- func GetGlobalFailMessages() ([]*Message, error)
- func GetGlobalMessages() ([]*Message, error)
- func GetGlobalMessagesByStoreName(storeName string) ([]*Message, error)
- func GetMessage(id string) (*Message, error)
- func GetMessages(owner string, user string, storeName string) ([]*Message, error)
- func GetMessagesForChats(chats []*Chat) ([]*Message, error)
- func GetPaginationMessages(owner string, offset, limit int, ...) ([]*Message, error)
- type ModelRoute
- func GetCachedModelRoutes(owner string) ([]*ModelRoute, error)
- func GetModelRoute(owner string, modelName string) (*ModelRoute, error)
- func GetModelRoutes(owner string) ([]*ModelRoute, error)
- func GetPaginationModelRoutes(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*ModelRoute, error)
- func ResolveModelRouteFromDB(modelName string, orgId string) (*ModelRoute, error)
- type MsgItem
- type MsgResponse
- type MyWriter
- type Node
- func GetMaskedNode(node *Node, errs ...error) (*Node, error)
- func GetMaskedNodes(nodes []*Node, errs ...error) ([]*Node, error)
- func GetNode(id string) (*Node, error)
- func GetNodes(owner string) ([]*Node, error)
- func GetPaginationNodes(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Node, error)
- type Param
- type Patch
- type Patient
- func FilterPatientsByUser(user *iam.User, patients []*Patient) []*Patient
- func GetMaskedPatient(patient *Patient, errs ...error) (*Patient, error)
- func GetMaskedPatients(patients []*Patient, errs ...error) ([]*Patient, error)
- func GetPaginationPatients(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Patient, error)
- func GetPatient(id string) (*Patient, error)
- func GetPatients(owner string) ([]*Patient, error)
- type Pod
- func GetMaskedPod(pod *Pod, errs ...error) (*Pod, error)
- func GetMaskedPods(pods []*Pod, errs ...error) ([]*Pod, error)
- func GetPaginationPods(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Pod, error)
- func GetPod(id string) (*Pod, error)
- func GetPods(owner string) ([]*Pod, error)
- type PrometheusInfo
- type Properties
- type PropertiesMapJSON
- type Provider
- func GetActiveBlockchainProvider(owner string) (*Provider, error)
- func GetAgentProviderFromContext(owner string, name string, lang string) (*Provider, agent.AgentProvider, error)
- func GetDefaultAgentProvider() (*Provider, error)
- func GetDefaultBlockchainProvider() (*Provider, error)
- func GetDefaultEmbeddingProvider() (*Provider, error)
- func GetDefaultKubernetesProvider(lang string) (*Provider, error)
- func GetDefaultModelProvider() (*Provider, error)
- func GetDefaultSpeechToTextProvider() (*Provider, error)
- func GetDefaultStorageProvider() (*Provider, error)
- func GetDefaultTextToSpeechProvider() (*Provider, error)
- func GetDefaultVideoProvider() (*Provider, error)
- func GetEmbeddingProviderFromContext(owner string, name string, lang string) (*Provider, embedding.EmbeddingProvider, error)
- func GetGlobalProviders() ([]*Provider, error)
- func GetMaskedProvider(provider *Provider, isMaskEnabled bool, user *iam.User) *Provider
- func GetMaskedProviders(providers []*Provider, isMaskEnabled bool, user *iam.User) []*Provider
- func GetModelProviderByName(name string) (*Provider, error)
- func GetModelProviderByType(providerType string) (*Provider, error)
- func GetModelProviderFromContext(owner string, name string, lang string) (*Provider, model.ModelProvider, error)
- func GetPaginationProviders(owner, storeName string, offset, limit int, ...) ([]*Provider, error)
- func GetProvider(id string) (*Provider, error)
- func GetProviderByProviderKey(providerKey string, lang string) (*Provider, error)
- func GetProviders(owner string) ([]*Provider, error)
- func (p *Provider) GetAgentProvider(lang string) (agent.AgentProvider, error)
- func (p *Provider) GetEmbeddingProvider(lang string) (embedding.EmbeddingProvider, error)
- func (provider *Provider) GetId() string
- func (p *Provider) GetModelProvider(lang string) (model.ModelProvider, error)
- func (p *Provider) GetScanProvider(lang string) (scan.ScanProvider, error)
- func (p *Provider) GetSpeechToTextProvider(lang string) (stt.SpeechToTextProvider, error)
- func (p *Provider) GetStorageProviderObj(vectorStoreId string, lang string) (storage.StorageProvider, error)
- func (p *Provider) GetTextToSpeechProvider(lang string) (tts.TextToSpeechProvider, error)
- type Record
- type Remark
- type RemoteApp
- type ResourceMetrics
- type ResourceRequests
- type Response
- type Scale
- func GetGlobalScales() ([]*Scale, error)
- func GetMaskedScale(scale *Scale, isMaskEnabled bool) *Scale
- func GetMaskedScales(scales []*Scale, isMaskEnabled bool) []*Scale
- func GetPaginationScales(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Scale, error)
- func GetPublicScales(owner string) ([]*Scale, error)
- func GetScale(id string) (*Scale, error)
- func GetScales(owner string) ([]*Scale, error)
- type Scan
- func GetPaginationScans(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Scan, error)
- func GetPendingScans() ([]*Scan, error)
- func GetScan(id string) (*Scan, error)
- func GetScans(owner string) ([]*Scan, error)
- func GetScansByAsset(owner string, assetName string) ([]*Scan, error)
- type ScanResult
- type ScrapeRequest
- type ScrapeResult
- type ScrapeStats
- type SearchProvider
- type Service
- type ServiceDetail
- type ServicePort
- type Session
- type SimilarityIndex
- type Store
- func GetDefaultStore(owner string) (*Store, error)
- func GetGlobalStores() ([]*Store, error)
- func GetPaginationStores(offset, limit int, name, field, value, sortField, sortOrder string) ([]*Store, error)
- func GetStore(id string) (*Store, error)
- func GetStores(owner string) ([]*Store, error)
- func GetStoresByFields(owner string, fields ...string) ([]*Store, error)
- func (store *Store) ContainsForbiddenWords(text string) (bool, string)
- func (store *Store) GetEmbeddingProvider() (*Provider, error)
- func (store *Store) GetId() string
- func (store *Store) GetImageProviderObj(lang string) (storage.StorageProvider, error)
- func (store *Store) GetModelProvider() (*Provider, error)
- func (store *Store) GetSpeechToTextProvider() (*Provider, error)
- func (store *Store) GetStorageProviderObj(lang string) (storage.StorageProvider, error)
- func (store *Store) GetTextToSpeechProvider() (*Provider, error)
- func (store *Store) GetVideoData(lang string) ([]string, error)
- func (store *Store) Populate(origin string, lang string) error
- type StreamRecv
- type StreamResponse
- type StreamSend
- type StringSlice
- type StructuredData
- type SubpathStorageProvider
- type Suggestion
- type Task
- func GetGlobalTasks(owner string) ([]*Task, error)
- func GetMaskedTask(task *Task, isMaskEnabled bool) *Task
- func GetMaskedTasks(tasks []*Task, isMaskEnabled bool) []*Task
- func GetPaginationTasks(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Task, error)
- func GetTask(id string) (*Task, error)
- func GetTasks(owner string) ([]*Task, error)
- type TaskResult
- type TaskResultCategory
- type TaskResultItem
- type Template
- type TextMessage
- type TreeFile
- type TxtLabel
- type Usage
- type UsageInfo
- type UsageMetadata
- type UserUsage
- type Vector
- type VectorScore
- type Video
- type VpcDetail
- type WecomBotMessage
- type Workflow
- func GetGlobalWorkflows() ([]*Workflow, error)
- func GetMaskedWorkflow(workflow *Workflow, isMaskEnabled bool) *Workflow
- func GetMaskedWorkflows(workflows []*Workflow, isMaskEnabled bool) []*Workflow
- func GetPaginationWorkflows(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Workflow, error)
- func GetWorkflow(id string) (*Workflow, error)
- func GetWorkflows(owner string) ([]*Workflow, error)
Constants ¶
const ( StatusNotDeployed = "Not Deployed" StatusPending = string(v1.PodPending) // "Pending" StatusRunning = string(v1.PodRunning) // "Running" StatusUnknown = string(v1.PodUnknown) // "Unknown" StatusFailed = string(v1.PodFailed) StatusTerminating = "Terminating" NamespaceFormat = "hanzo-cloud-%s" )
const ( NoConnect = "no_connect" Connecting = "connecting" Connected = "connected" Disconnected = "disconnected" )
const ( ScaleStatePublic = "Public" ScaleStateHidden = "Hidden" )
Scale state values for visibility (which scales are included in public lists).
const ( // Cloud service — native binary RPC, NO HTTP. MsgTypeCloud uint16 = 100 // Gateway → cloud-api (HTTP-over-ZAP from gateway proxy). // Request: method(0:Text) + path(8:Text) + headers(16:Bytes) + body(24:Bytes) + query(32:Text) // Response: status(0:Uint32) + body(4:Bytes) + headers(12:Bytes) MsgTypeHTTPRequest uint16 = 200 // Backend sidecar protocol (KV/SQL embedded servers). MsgTypeSQL uint16 = 300 MsgTypeKV uint16 = 301 MsgTypeDatastore uint16 = 302 MsgTypeDocdb uint16 = 303 // ── Cloud service message layout ──────────────────────────────── // Request: method(0:Text) + auth(8:Text) + body(16:Bytes) // Response: status(0:Uint32) + body(4:Bytes) + error(12:Text) CloudReqMethod = 0 CloudReqAuth = 8 CloudReqBody = 16 CloudRespStatus = 0 CloudRespBody = 4 CloudRespError = 12 )
── Message types ───────────────────────────────────────────────────────
Cloud service types (100-199):
100 = Cloud service request (method dispatch)
Backend types (300-399, matches sidecar protocol):
300 = SQL query/exec 301 = KV get/set/cmd
Variables ¶
var ( // ApiThroughput uses *prometheus.GaugeVec directly because Reset() is needed ApiThroughput = promauto.NewGaugeVec(prometheus.GaugeOpts{ Name: "cloud_api_throughput", Help: "The throughput of each api access", }, []string{"path", "method"}) ApiLatency = promauto.NewHistogramVec(prometheus.HistogramOpts{ Name: "cloud_api_latency", Help: "API processing latency in milliseconds", }, []string{"path", "method"}) CpuUsage = promauto.NewGaugeVec(prometheus.GaugeOpts{ Name: "cloud_cpu_usage", Help: "Hanzo Cloud cpu usage", }, []string{"cpuNum"}) MemoryUsage = promauto.NewGaugeVec(prometheus.GaugeOpts{ Name: "cloud_memory_usage", Help: "Hanzo Cloud memory usage in Byte", }, []string{"type"}) TotalThroughput = promauto.NewGauge(prometheus.GaugeOpts{ Name: "cloud_total_throughput", Help: "The total throughput of Hanzo Cloud", }) )
var ( WecomBotCache = make(map[string]Provider) WecomBotMessageCache = make(map[string]string) )
var CloudHost = ""
Functions ¶
func AddApplication ¶
func AddApplication(application *Application) (bool, error)
func AddArticle ¶
func AddConnection ¶
func AddConnection(connection *Connection) (bool, error)
func AddConsultation ¶
func AddConsultation(consultation *Consultation) (bool, error)
func AddContainer ¶
func AddDetails ¶
func AddDetails(apps []*Application, lang string)
func AddHospital ¶
func AddMachine ¶
func AddMessage ¶
func AddModelRoute ¶
func AddModelRoute(route *ModelRoute) (bool, error)
func AddPatient ¶
func AddProvider ¶
func AddRecords ¶
func AddSession ¶
func AddTemplate ¶
func AddTransactionForMessage ¶
AddTransactionForMessage creates a withdraw transaction in Commerce for a message with price, sets the message's TransactionId, and if transaction creation fails, updates the message's ErrorText field in the database and returns an error.
func AddTreeFile ¶
func AddVectorsForFile ¶
func ArchiveCrawlPreviewAsync ¶
func ArchiveCrawlPreviewAsync(owner, pageURL string, sr ScrapeResult, raw Crawl4AIResult)
ArchiveCrawlPreviewAsync archives a single-page preview crawl result asynchronously. It generates a job ID from the URL and timestamp, then stores both the converted ScrapeResult and the raw Crawl4AIResult.
func ArchiveCrawlResult ¶
func ArchiveCrawlResult(owner, jobID string, results []ScrapeResult, rawResults []Crawl4AIResult) error
ArchiveCrawlResult uploads crawl results as JSON to Hanzo Storage. The results are stored at {bucket}/{owner}/{jobID}/results.json.
func AtomicClaimScan ¶
AtomicClaimScan atomically updates a scan's state from "Pending" to "Running" This operation will only succeed for one instance due to the WHERE condition on state Returns the number of affected rows
func BuildCloudResponse ¶
── Cloud service response builder ────────────────────────────────────── BuildCloudResponse creates a native ZAP cloud service response. Used by controllers to build responses for incoming cloud requests.
func BuildGatewayResponse ¶
── Gateway response builder ───────────────────────────────────────────── BuildGatewayResponse creates a response in the gateway's expected format. Layout: status(0:Uint32) + body(4:Bytes) + headers(12:Bytes)
func ClearThroughputPerSecond ¶
func ClearThroughputPerSecond()
func CommitRecord ¶
func CommitRecords ¶
CommitRecords commits multiple records to the blockchain.
func CreateTables ¶
func CreateTables()
func DatastoreEnabled ¶
func DatastoreEnabled() bool
DatastoreEnabled returns true if the datastore peer is connected.
func DeleteAllLaterMessages ¶
func DeleteApplication ¶
func DeleteApplication(application *Application, lang string) (bool, error)
func DeleteArticle ¶
func DeleteAsset ¶
func DeleteBeegoSession ¶
func DeleteBeegoSession(sessionIds []string)
func DeleteCaase ¶
func DeleteChat ¶
func DeleteConnection ¶
func DeleteConnection(connection *Connection) (bool, error)
func DeleteConnectionById ¶
func DeleteConsultation ¶
func DeleteConsultation(consultation *Consultation) (bool, error)
func DeleteContainer ¶
func DeleteDoctor ¶
func DeleteForm ¶
func DeleteGraph ¶
func DeleteHospital ¶
func DeleteImage ¶
func DeleteMachine ¶
func DeleteMessage ¶
func DeleteMessagesByChat ¶
func DeleteModelRoute ¶
func DeleteModelRoute(route *ModelRoute) (bool, error)
func DeleteNode ¶
func DeletePatient ¶
func DeleteProvider ¶
func DeleteRecord ¶
func DeleteScale ¶
func DeleteScan ¶
func DeleteSession ¶
func DeleteStore ¶
func DeleteTask ¶
func DeleteTemplate ¶
func DeleteTreeFile ¶
func DeleteVector ¶
func DeleteVectorsByFile ¶
func DeleteVideo ¶
func DeleteWorkflow ¶
func DeployApplication ¶
func DeployApplication(application *Application, lang string) (bool, error)
func DeployApplicationSync ¶
func DeployApplicationSync(application *Application, lang string) (bool, error)
func DocdbEnabled ¶
func DocdbEnabled() bool
DocdbEnabled returns true if the docdb peer is connected.
func GenerateWordCloudData ¶
func GetActivities ¶
func GetAgentClients ¶
func GetAgentClients(agentProviderObj agent.AgentProvider) (*agent.AgentClients, error)
func GetAnswerFake ¶
func GetAnswerFake(provider string, question string, lang string) (string, *model.ModelResult, error)
GetAnswerFake returns a hardcoded string without calling the LLM API, for fast local debugging. Switch between GetAnswer and GetAnswerFake by commenting one of the two call sites (e.g. in task_analyze.go). Replace fakeAnswer below with your real API response (multi-line raw string is fine).
func GetAnswerWithContext ¶
func GetAnswerWithContext(provider string, question string, history []*model.RawMessage, knowledge []*model.RawMessage, prompt string, lang string) (string, *model.ModelResult, error)
func GetApplicationCount ¶
func GetApplicationFailureReason ¶
GetApplicationFailureReason returns the failure reason for an application deployment
func GetApplicationStatus ¶
GetApplicationStatus returns application status as string
func GetArticleCount ¶
func GetAssetCount ¶
func GetCaaseCount ¶
func GetChatCount ¶
func GetConnectionCount ¶
func GetConsultationCount ¶
func GetContainerCount ¶
func GetDbQuery ¶
func GetDbQuery(owner string, offset, limit int, field, value, sortField, sortOrder string) *dbx.SelectQuery
GetDbQuery builds a SelectQuery with pagination, filtering, and sorting. This replaces the old GetDbSession which returned an xorm.Session.
func GetDocChatAnswer ¶
func GetDocChatAnswer(owner, store string, req *DocChatRequest, lang string) (string, *model.ModelResult, error)
GetDocChatAnswer performs RAG: searches for relevant docs, then generates an answer.
func GetDoctorCount ¶
func GetFileCount ¶
func GetHospitalCount ¶
func GetImageCount ¶
func GetK8sStatus ¶
func GetKMSSecret ¶
GetKMSSecret fetches a secret by name from KMS using the default system project. This is a convenience function for non-provider secrets.
func GetMachineCount ¶
func GetMessageCount ¶
func GetModelProviderByProviderKey ¶
func GetModelProviderByProviderKey(providerKey string, lang string) (model.ModelProvider, error)
GetModelProviderByProviderKey retrieves both the provider and its model provider by API key
func GetModelRouteCount ¶
func GetNodeCount ¶
func GetOrgKMSSecret ¶
GetOrgKMSSecret fetches a secret scoped to an organization's KMS project.
func GetPatientCount ¶
func GetPodCount ¶
func GetProviderCount ¶
func GetRecentRawMessages ¶
func GetRecordCount ¶
func GetRefinedQuestion ¶
func GetScanCount ¶
func GetSearchIndexName ¶
GetSearchIndexName returns the Hanzo Search index name for a given owner/store.
func GetSessionCount ¶
func GetStoreCount ¶
func GetTaskEffectiveScale ¶
GetTaskEffectiveScale returns rubric text: from referenced Scale.Text when Task.Scale is set.
func GetTemplateCount ¶
func GetVectorCount ¶
func GetZapNode ¶
GetZapNode returns the ZAP node for handler registration. Used by controllers package to register service handlers.
func IndexDocuments ¶
func IndexDocuments(owner, store string, req *DocIndexRequest, lang string) (int, error)
IndexDocuments indexes documents into both Hanzo Search and Hanzo Vector.
func InitAdapter ¶
func InitAdapter()
func InitCleanupChats ¶
func InitCleanupChats()
func InitCommitRecordsTask ¶
func InitCommitRecordsTask()
func InitConfig ¶
func InitConfig()
func InitMessageTransactionRetry ¶
func InitMessageTransactionRetry()
func InitScanJobProcessor ¶
func InitScanJobProcessor()
InitScanJobProcessor initializes the scan job processor with a cron job
func InitStoreCount ¶
func InitStoreCount()
func InitZap ¶
func InitZap()
── Initialization ────────────────────────────────────────────────────── InitZap starts the ZAP node and connects to KV and SQL peers.
func IsCrawl4AIAvailable ¶
func IsCrawl4AIAvailable() bool
IsCrawl4AIAvailable checks whether the Hanzo Crawl service is reachable.
func IsCrawlStorageConfigured ¶
func IsCrawlStorageConfigured() bool
IsCrawlStorageConfigured returns true if the crawl storage credentials are set.
func JSONScan ¶
func JSONScan(dst interface{}, src interface{}) error
JSONScan is a helper for fields that are scanned-from-JSON-text via a pointer-receiver Scan method. Use it inside per-type Scanner impls so they all share the same string/bytes/nil handling.
func PopulateStoreCounts ¶
func PrepareTextToSpeech ¶
func PrepareTextToSpeech(storeId, providerId, messageId, text string, lang string) (*Message, *Chat, tts.TextToSpeechProvider, context.Context, error)
PrepareTextToSpeech prepares the text-to-speech conversion
func RefineMessageFiles ¶
func RefreshMcpTools ¶
func ResolveProviderSecret ¶
── Public API ────────────────────────────────────────────────────────────── ResolveProviderSecret resolves KMS-backed secret fields for a provider. If KMS is configured and provider fields start with "kms://", each secret is fetched from KMS. Otherwise, DB values are used as-is.
Supported provider fields:
- ClientSecret
- UserKey
- SignKey
Convention: store "kms://SECRET_NAME" in these fields in the database. At runtime, they are resolved to actual secret values.
Multi-tenant scoping:
- Admin-owned providers use the default KMS_PROJECT_ID
- Org-owned providers can set "kms-project:{projectId}" in ConfigText to scope secrets to the org's own KMS project
func ScanAssetsFromProvider ¶
func ScanNeedCommitRecords ¶
func ScanNeedCommitRecords()
ScanNeedCommitRecords scans the database table for records that need to be committed but have not yet been committed.
func SetDefaultVodClient ¶
func SplitLastN ¶
func SyncDockerContainers ¶
func SyncKubernetesPods ¶
func UndeployApplication ¶
func UndeployApplicationSync ¶
UndeployApplicationSync undeploys application and waits for it to be completely removed
func UpdateApplication ¶
func UpdateApplication(id string, application *Application, lang string) (bool, error)
func UpdateApplicationStatus ¶
func UpdateChatStats ¶
func UpdateChatStats(chat *Chat, ttsResult *tts.TextToSpeechResult) error
func UpdateConnection ¶
func UpdateConnection(id string, connection *Connection, columns ...string) (bool, error)
func UpdateConsultation ¶
func UpdateConsultation(id string, consultation *Consultation) (bool, error)
func UpdateContainer ¶
func UpdateFilesStatusByStore ¶
func UpdateFilesStatusByStore(owner string, storeName string, status FileStatus) error
func UpdateModelRoute ¶
func UpdateModelRoute(owner string, modelName string, route *ModelRoute) (bool, error)
func UpdateRecordFields ¶
func UpdateRecordInternal ¶
func UploadFileToStorageSafe ¶
func ValidateTransactionForMessage ¶
ValidateTransactionForMessage validates that the user has sufficient balance before committing an expensive AI generation. Checks balance via Commerce.
func WriteCloseMessage ¶
func ZapDatastoreExec ¶
── Datastore client (native ZAP-to-ZAP → ClickHouse) ─────────────────── ZapDatastoreExec executes an INSERT/DDL on ClickHouse via native ZAP binary.
func ZapDocdbExec ¶
ZapDocdbExec executes a write query on DocDB via native ZAP binary.
func ZapDocdbQuery ¶
func ZapDocdbQuery(ctx context.Context, sql string, args ...interface{}) ([]map[string]interface{}, error)
── DocDB client (native ZAP-to-ZAP → FerretDB) ───────────────────────── ZapDocdbQuery executes a read query on DocDB via native ZAP binary.
func ZapKVGet ¶
── KV client (native ZAP-to-ZAP) ────────────────────────────────────── ZapKVGet fetches a key from KV via native ZAP binary.
func ZapKVSetEx ¶
ZapKVSetEx stores a key/value with TTL via native ZAP binary.
func ZapSQLExec ¶
ZapSQLExec executes a write query via native ZAP binary.
Types ¶
type Adapter ¶
type Adapter struct {
DbName string
// contains filtered or unexported fields
}
Adapter represents the database adapter for storage.
func NewAdapter ¶
NewAdapter is the constructor for Adapter.
func NewAdapterWithDbName ¶
func (*Adapter) CreateDatabase ¶
type AlibabaCloudParser ¶
type AlibabaCloudParser struct{}
AlibabaCloudParser implements CloudParser for Alibaba Cloud
func (*AlibabaCloudParser) ScanAssets ¶
func (p *AlibabaCloudParser) ScanAssets(owner string, provider *Provider) ([]*Asset, error)
ScanAssets scans all resources from Alibaba Cloud
type Application ¶
type Application struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Template string `json:"template"` // Reference to Template.Name
Parameters string `json:"parameters"`
Manifest string `json:"manifest"` // Deployment manifest
Status string `json:"status"` // Running, Pending, Failed, Not Deployed
Namespace string `json:"namespace"` // Kubernetes namespace (auto-generated)
URL string `json:"url"` // Available service URL
Details *ApplicationView `db:"-" json:"details,omitempty"`
BasicConfigOptions []applicationConfigOption `json:"basicConfigOptions"`
}
func GetApplication ¶
func GetApplication(id string) (*Application, error)
func GetApplications ¶
func GetApplications(owner string) ([]*Application, error)
func GetPaginationApplications ¶
func GetPaginationApplications(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Application, error)
type ApplicationEvent ¶
type ApplicationEvent struct {
Name string `json:"name"` // Event name
Type string `json:"type"` // Event type: Normal, Warning
Reason string `json:"reason"` // Event reason
Message string `json:"message"` // Event message
InvolvedObject string `json:"involvedObject"` // Related object
Source string `json:"source"` // Event source
Count int `json:"count"` // Event occurrence count
FirstTime string `json:"firstTime"` // First occurrence time
LastTime string `json:"lastTime"` // Last occurrence time
}
type ApplicationView ¶
type ApplicationView struct {
Services []ServiceDetail `json:"services"`
Credentials []EnvVariable `json:"credentials"`
Deployments []DeploymentDetail `json:"deployments"`
Events []ApplicationEvent `json:"events"`
Status string `json:"status"`
CreatedTime string `json:"createdTime"`
Namespace string `json:"namespace"`
Metrics *ResourceMetrics `json:"metrics,omitempty"`
}
func GetApplicationView ¶
func GetApplicationView(namespace string, lang string) (*ApplicationView, error)
GetApplicationView retrieves application view from cache with fallback
type Article ¶
type Article struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Workflow string `json:"workflow"`
Type string `json:"type"`
Text string `json:"text"`
Content []*Block `json:"content"`
Glossary []string `json:"glossary"`
}
func GetArticle ¶
func GetArticles ¶
func GetGlobalArticles ¶
func GetMaskedArticle ¶
func GetMaskedArticles ¶
func GetPaginationArticles ¶
type Asset ¶
type Asset struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Provider string `json:"provider"`
Id string `json:"id"`
Type string `json:"type"`
Region string `json:"region"`
Zone string `json:"zone"`
State string `json:"state"`
Tag string `json:"tag"`
Username string `json:"username"`
Password string `json:"password"`
Properties string `json:"properties"`
}
func GetMaskedAsset ¶
func GetMaskedAssets ¶
func GetPaginationAssets ¶
func (*Asset) GetScanTarget ¶
type Caase ¶
type Caase struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Symptoms string `json:"symptoms"`
Diagnosis string `json:"diagnosis"`
DiagnosisDate string `json:"diagnosisDate"`
Prescription string `json:"prescription"`
FollowUp string `json:"followUp"`
Variation bool `json:"variation"`
HISInterfaceInfo string `json:"hisInterfaceInfo"`
PrimaryCarePhysician string `json:"primaryCarePhysician"`
Type string `json:"type"`
PatientName string `json:"patientName"`
DoctorName string `json:"doctorName"`
HospitalName string `json:"hospitalName"`
SpecialistAllianceId string `json:"specialistAllianceId"`
IntegratedCareOrganizationId string `json:"integratedCareOrganizationId"`
}
type CacheManager ¶
type CacheManager struct {
// contains filtered or unexported fields
}
func (*CacheManager) Start ¶
func (cm *CacheManager) Start(lang string) error
Start begins the cache manager
type CachedMetrics ¶
type Chat ¶
type Chat struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
Organization string `json:"organization"`
DisplayName string `json:"displayName"`
Store string `json:"store"`
ModelProvider string `json:"modelProvider"`
Category string `json:"category"`
Type string `json:"type"`
User string `json:"user"`
User1 string `json:"user1"`
User2 string `json:"user2"`
Users []string `json:"users"`
ClientIp string `json:"clientIp"`
UserAgent string `json:"userAgent"`
ClientIpDesc string `json:"clientIpDesc"`
UserAgentDesc string `json:"userAgentDesc"`
MessageCount int `json:"messageCount"`
TokenCount int `json:"tokenCount"`
Price float64 `json:"price"`
Currency string `json:"currency"`
IsHidden bool `json:"isHidden"`
IsDeleted bool `json:"isDeleted"`
NeedTitle bool `json:"needTitle"`
}
func FilterChatsByTimeRange ¶
func GetGlobalChats ¶
func GetPaginationChats ¶
type CloudParser ¶
type CloudParser interface {
// ScanAssets scans all resources from the cloud provider and returns them as Asset objects
ScanAssets(owner string, provider *Provider) ([]*Asset, error)
}
CloudParser defines the interface for cloud resource scanning
func NewCloudParser ¶
func NewCloudParser(providerType string) (CloudParser, error)
NewCloudParser creates a new CloudParser instance based on the provider type
type Connection ¶
type Connection struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
StartTime string `json:"startTime"`
EndTime string `json:"endTime"`
Protocol string `json:"protocol"`
ConnectionId string `json:"connectionId"`
Node string `json:"node"`
Creator string `json:"creator"`
ClientIp string `json:"clientIp"`
UserAgent string `json:"userAgent"`
ClientIpDesc string `json:"clientIpDesc"`
UserAgentDesc string `json:"userAgentDesc"`
Width int `json:"width"`
Height int `json:"height"`
Status string `json:"status"`
Recording string `json:"recording"`
Code int `json:"code"`
Message string `json:"message"`
Mode string `json:"mode"`
Operations []string `db:"json varchar(1000)" json:"operations"`
Reviewed bool `json:"reviewed"`
CommandCount int64 `json:"commandCount"`
}
func CreateConnection ¶
func CreateConnection(connection *Connection, nodeId string, mode string) (*Connection, error)
func GetConnection ¶
func GetConnection(id string) (*Connection, error)
func GetConnections ¶
func GetConnections(owner string) ([]*Connection, error)
func GetPaginationConnections ¶
func GetPaginationConnections(owner, status string, offset, limit int, field, value, sortField, sortOrder string) ([]*Connection, error)
func GetSessionsByStatus ¶
func GetSessionsByStatus(statuses []string) ([]*Connection, error)
func (*Connection) GetId ¶
func (s *Connection) GetId() string
type Consultation ¶
type Consultation struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
PatientName string `json:"patientName"`
DoctorNames []string `json:"doctorNames"`
ExpiredTime string `json:"expiredTime"`
State string `json:"state"`
}
func FilterConsultationsByUser ¶
func FilterConsultationsByUser(user *iam.User, consultations []*Consultation) []*Consultation
func GetConsultation ¶
func GetConsultation(id string) (*Consultation, error)
func GetConsultations ¶
func GetConsultations(owner string) ([]*Consultation, error)
func GetMaskedConsultation ¶
func GetMaskedConsultation(consultation *Consultation, errs ...error) (*Consultation, error)
func GetMaskedConsultations ¶
func GetMaskedConsultations(consultations []*Consultation, errs ...error) ([]*Consultation, error)
func GetPaginationConsultations ¶
func GetPaginationConsultations(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*Consultation, error)
type Container ¶
type Container struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
DisplayName string `json:"displayName"`
Provider string `json:"provider"`
CreatedTime string `json:"createdTime"`
Image string `json:"image"`
ImageId string `json:"imageId"`
Command string `json:"command"`
SizeRw int64 `json:"sizeRw,omitempty"`
SizeRootFs int64 `json:"sizeRootFs,omitempty"`
// Labels map[string]string
State string `json:"state"`
Status string `json:"status"`
Ports string `json:"ports"`
}
func GetContainer ¶
func GetContainers ¶
func GetMaskedContainer ¶
func GetMaskedContainers ¶
func GetPaginationContainers ¶
type ContainerDetail ¶
type ContainerDetail struct {
Name string `json:"name"`
Image string `json:"image"`
Resources ResourceRequests `json:"resources"`
}
type ContentBlock ¶
type ContentBlock struct {
Type string `json:"type"` // "paragraph", "code", "list"
Text string `json:"text"`
Section string `json:"section,omitempty"`
}
ContentBlock represents a block of extracted content (paragraph, code, list).
type Crawl4AIBrowserConfig ¶
type Crawl4AIBrowserConfig struct {
Headless bool `json:"headless"`
}
Crawl4AIBrowserConfig controls the headless browser settings.
type Crawl4AICrawlerParams ¶
type Crawl4AICrawlerParams struct {
WordCountThreshold int `json:"word_count_threshold"`
ExcludeExternalLinks bool `json:"exclude_external_links"`
ProcessIframes bool `json:"process_iframes"`
}
Crawl4AICrawlerParams controls the crawl extraction behavior.
type Crawl4AIRequest ¶
type Crawl4AIRequest struct {
Urls []string `json:"urls"`
BrowserConfig *Crawl4AIBrowserConfig `json:"browser_config,omitempty"`
CrawlerParams *Crawl4AICrawlerParams `json:"crawler_params,omitempty"`
}
Crawl4AIRequest is the request body for the Hanzo Crawl /crawl endpoint.
type Crawl4AIResponse ¶
type Crawl4AIResponse struct {
TaskID string `json:"task_id"`
Status string `json:"status"`
Results []Crawl4AIResult `json:"results,omitempty"`
}
Crawl4AIResponse is the response from the Hanzo Crawl /crawl endpoint.
type Crawl4AIResult ¶
type Crawl4AIResult struct {
URL string `json:"url"`
Markdown string `json:"markdown"`
Success bool `json:"success"`
Links map[string][]map[string]string `json:"links,omitempty"`
Media map[string][]map[string]string `json:"media,omitempty"`
Metadata map[string]interface{} `json:"metadata,omitempty"`
}
Crawl4AIResult holds the crawl output for a single URL.
func CrawlWithCrawl4AI ¶
func CrawlWithCrawl4AI(urls []string) ([]Crawl4AIResult, error)
CrawlWithCrawl4AI sends URLs to the Hanzo Crawl service for JS-rendered crawling. It submits a crawl job, polls for completion, and returns the results.
type CrawlArchive ¶
type CrawlArchive struct {
Owner string `json:"owner"`
JobID string `json:"job_id"`
Timestamp string `json:"timestamp"`
Results []ScrapeResult `json:"results"`
RawResults []Crawl4AIResult `json:"raw_results,omitempty"`
}
CrawlArchive is the envelope stored in Hanzo Storage for a crawl job's results. It stores both the converted ScrapeResult data and the raw Crawl4AIResult data when available, to preserve the full fidelity of crawl output.
func GetArchivedCrawlResult ¶
func GetArchivedCrawlResult(owner, jobID string) (*CrawlArchive, error)
GetArchivedCrawlResult retrieves previously archived crawl results from Hanzo Storage.
type DefaultSearchProvider ¶
type DefaultSearchProvider struct {
// contains filtered or unexported fields
}
func NewDefaultSearchProvider ¶
func NewDefaultSearchProvider(owner string) (*DefaultSearchProvider, error)
func (*DefaultSearchProvider) Search ¶
func (p *DefaultSearchProvider) Search(relatedStores []string, embeddingProviderName string, embeddingProviderObj embedding.EmbeddingProvider, modelProviderName string, text string, knowledgeCount int, lang string) ([]Vector, *embedding.EmbeddingResult, error)
type DeploymentDetail ¶
type DiskDetail ¶
type DiskDetail struct {
DiskId string
Size int32
Category string
Type string
Encrypted bool
InstanceId string
DiskChargeType string
DeleteWithInstance bool
Status string
}
DiskDetail holds detailed information for a disk
type DocChatRequest ¶
type DocChatRequest struct {
Query string `json:"query"`
Tag string `json:"tag,omitempty"`
Stream bool `json:"stream,omitempty"`
Prompt string `json:"prompt,omitempty"` // Custom system prompt (set by client)
}
DocChatRequest is the request body for RAG chat over documentation.
type DocIndex ¶
type DocIndex struct {
ID string `json:"id"`
PageID string `json:"page_id"`
Title string `json:"title"`
URL string `json:"url"`
Content string `json:"content"`
Section string `json:"section,omitempty"`
SectionID string `json:"section_id,omitempty"`
Tag string `json:"tag,omitempty"`
Breadcrumbs []string `json:"breadcrumbs,omitempty"`
}
DocIndex represents a single indexed documentation chunk.
type DocIndexRequest ¶
type DocIndexRequest struct {
Documents []DocIndex `json:"documents"`
Replace bool `json:"replace,omitempty"`
}
DocIndexRequest is the request body for indexing documents.
type DocSearchRequest ¶
type DocSearchRequest struct {
Query string `json:"query"`
Tag string `json:"tag,omitempty"`
Limit int `json:"limit,omitempty"`
Mode string `json:"mode,omitempty"` // "hybrid", "fulltext", "vector"
}
DocSearchRequest is the request body for searching documents.
type DocSearchResult ¶
type DocSearchResult struct {
ID string `json:"id"`
URL string `json:"url"`
Type string `json:"type"` // "page", "heading", "text"
Content string `json:"content"`
Breadcrumbs []string `json:"breadcrumbs,omitempty"`
}
DocSearchResult is a single result returned by SearchDocuments.
func SearchDocuments ¶
func SearchDocuments(owner, store string, req *DocSearchRequest, lang string) ([]DocSearchResult, error)
SearchDocuments performs hybrid search across Hanzo Search and Hanzo Vector.
type DocStatsResponse ¶
type DocStatsResponse struct {
DocumentCount int `json:"documentCount"`
IsIndexing bool `json:"isIndexing"`
Fields map[string]int64 `json:"fields,omitempty"`
}
DocStatsResponse contains index statistics.
func GetDocIndexStats ¶
func GetDocIndexStats(owner, store string) (*DocStatsResponse, error)
GetDocIndexStats returns statistics about the Meilisearch index.
type Doctor ¶
type Doctor struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Department string `json:"department"`
Gender string `json:"gender"`
AccessLevel string `json:"accessLevel"`
HospitalName string `json:"hospitalName"`
}
func GetDoctors ¶
type EcsInstanceDetail ¶
type EcsInstanceDetail struct {
InstanceId string
InstanceType string
ImageId string
OSName string
Cpu int32
Memory int32
PublicIp string
PrivateIp string
InstanceChargeType string
Status string
}
EcsInstanceDetail holds detailed information for an ECS instance
type EnvVariable ¶
type EventCache ¶
type EventCache struct {
Namespace string `json:"namespace"` // Namespace name
Events map[string]*v1.Event `json:"events"` // Event name -> Event object
}
EventCache represents namespace-level event cache
type ExampleQuestion ¶
type ExampleQuestionList ¶
type ExampleQuestionList []ExampleQuestion
ExampleQuestionList implements sql.Scanner for slice-of-ExampleQuestion, stored as JSON in a TEXT column.
func (*ExampleQuestionList) Scan ¶
func (l *ExampleQuestionList) Scan(src interface{}) error
type File ¶
type File struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
Filename string `json:"filename"`
Size int64 `json:"size"`
Store string `json:"store"`
StorageProvider string `json:"storageProvider"`
Url string `json:"url"`
TokenCount int `json:"tokenCount"`
Status FileStatus `json:"status"`
ErrorText string `json:"errorText"`
}
func GetGlobalFiles ¶
func GetPaginationFiles ¶
type FileStatus ¶
type FileStatus string
const ( FileStatusPending FileStatus = "Pending" FileStatusProcessing FileStatus = "Processing" FileStatusFinished FileStatus = "Finished" FileStatusError FileStatus = "Error" )
type Form ¶
type Form struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Position string `json:"position"`
Category string `json:"category"`
Type string `json:"type"`
Tag string `json:"tag"`
Url string `json:"url"`
FormItems []*FormItem `json:"formItems"`
}
func GetGlobalForms ¶
func GetMaskedForm ¶
func GetMaskedForms ¶
func GetPaginationForms ¶
type GaugeVecInfo ¶
type Graph ¶
type Graph struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Category string `json:"category"`
Layout string `json:"layout"`
Density int `json:"density"`
Store string `json:"store"`
StartTime string `json:"startTime"`
EndTime string `json:"endTime"`
Text string `json:"text"`
ErrorText string `json:"errorText"`
}
func GetGlobalGraphs ¶
func GetMaskedGraph ¶
func GetMaskedGraphs ¶
func GetPaginationGraphs ¶
type Heading ¶
type Heading struct {
Level int `json:"level"`
ID string `json:"id,omitempty"`
Text string `json:"text"`
}
Heading represents a single heading element with its hierarchy level and anchor.
type HierarchySearchProvider ¶
type HierarchySearchProvider struct {
// contains filtered or unexported fields
}
func NewHierarchySearchProvider ¶
func NewHierarchySearchProvider(owner string) (*HierarchySearchProvider, error)
func (*HierarchySearchProvider) Search ¶
func (p *HierarchySearchProvider) Search(relatedStores []string, embeddingProviderName string, embeddingProviderObj embedding.EmbeddingProvider, modelProviderName string, text string, knowledgeCount int, lang string) ([]Vector, *embedding.EmbeddingResult, error)
type HistogramVecInfo ¶
type Hospital ¶
type Hospital struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Address string `json:"address"`
}
func GetHospital ¶
func GetHospitals ¶
func GetMaskedHospital ¶
func GetMaskedHospitals ¶
type Image ¶
type Image struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Provider string `json:"provider"`
Category string `json:"category"`
BootMode string `json:"bootMode" xml:"bootMode"`
ImageId string `json:"imageId" xml:"imageId"`
ImageOwnerAlias string `json:"ImageOwnerAlias" xml:"ImageOwnerAlias"`
OSName string `json:"os" xml:"os"`
OSNameEn string `json:"OSNameEn" xml:"OSNameEn"`
ImageFamily string `json:"ImageFamily" xml:"ImageFamily"`
Architecture string `json:"systemArchitecture" xml:"systemArchitecture"`
IsSupportIoOptimized bool `json:"IsSupportIoOptimized" xml:"IsSupportIoOptimized"`
Size string `json:"size" xml:"size"`
ResourceGroupId string `json:"ResourceGroupId" xml:"ResourceGroupId"`
SupplierName string `json:"SupplierName" xml:"SupplierName"`
Description string `json:"description" xml:"description"`
Usage string `json:"Usage" xml:"Usage"`
IsCopied bool `json:"IsCopied" xml:"IsCopied"`
LoginAsNonRootSupported bool `json:"LoginAsNonRootSupported" xml:"LoginAsNonRootSupported"`
ImageVersion string `json:"ImageVersion" xml:"ImageVersion"`
OSType string `json:"OSType" xml:"OSType"`
IsSubscribed bool `json:"IsSubscribed" xml:"IsSubscribed"`
IsSupportCloudinit bool `json:"IsSupportCloudinit" xml:"IsSupportCloudinit"`
CreationTime string `json:"creationTime" xml:"creationTime"`
ProductCode string `json:"ProductCode" xml:"ProductCode"`
Progress string `json:"progress" xml:"progress"`
Platform string `json:"platform" xml:"platform"`
ImageName string `json:"ImageName" xml:"ImageName"`
Status string `json:"state" xml:"state"`
ImageOwnerId int64 `json:"ImageOwnerId" xml:"ImageOwnerId"`
IsPublic bool `json:"IsPublic" xml:"IsPublic"`
// DetectionOptions DetectionOptions `json:"DetectionOptions" xml:"DetectionOptions"`
// Features Features `json:"Features" xml:"Features"`
// Tags TagsInDescribeImageFromFamily `json:"Tags" xml:"Tags"`
// DiskDeviceMappings DiskDeviceMappingsInDescribeImageFromFamily `json:"DiskDeviceMappings" xml:"DiskDeviceMappings"`
// DB info
RemoteProtocol string `json:"remoteProtocol"`
RemotePort int `json:"remotePort"`
RemoteUsername string `json:"remoteUsername"`
RemotePassword string `json:"remotePassword"`
}
func GetPaginationImages ¶
type ImageMessage ¶
type ImageMessage struct {
Url string `json:"url"`
}
type Label ¶
type Label struct {
Id string `json:"id"`
User string `json:"user"`
Type string `json:"type"`
StartTime float64 `json:"startTime"`
EndTime float64 `json:"endTime"`
Text string `json:"text"`
Speaker string `json:"speaker"`
Tag1 string `json:"tag1"`
Tag2 string `json:"tag2"`
Tag3 string `json:"tag3"`
}
type Machine ¶
type Machine struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
Id string `json:"id"`
Provider string `json:"provider"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
ExpireTime string `json:"expireTime"`
DisplayName string `json:"displayName"`
Region string `json:"region"`
Zone string `json:"zone"`
Category string `json:"category"`
Type string `json:"type"`
Size string `json:"size"`
Tag string `json:"tag"`
State string `json:"state"`
Image string `json:"image"`
Os string `json:"os"`
PublicIp string `json:"publicIp"`
PrivateIp string `json:"privateIp"`
CpuSize string `json:"cpuSize"`
MemSize string `json:"memSize"`
// DB info
RemoteProtocol string `json:"remoteProtocol"`
RemotePort int `json:"remotePort"`
RemoteUsername string `json:"remoteUsername"`
RemotePassword string `json:"remotePassword"`
}
func GetMachine ¶
func GetMachines ¶
func GetMaskedMachines ¶
func GetPaginationMachines ¶
type Message ¶
type Message struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
Organization string `json:"organization"`
Store string `json:"store"`
User string `json:"user"`
Chat string `json:"chat"`
ReplyTo string `json:"replyTo"`
Author string `json:"author"`
Text string `json:"text"`
ReasonText string `json:"reasonText"`
ErrorText string `json:"errorText"`
FileName string `json:"fileName"`
Comment string `json:"comment"`
TokenCount int `json:"tokenCount"`
TextTokenCount int `json:"textTokenCount"`
Price float64 `json:"price"`
Currency string `json:"currency"`
IsHidden bool `json:"isHidden"`
IsDeleted bool `json:"isDeleted"`
NeedNotify bool `json:"needNotify"`
IsAlerted bool `json:"isAlerted"`
IsRegenerated bool `json:"isRegenerated"`
WebSearchEnabled bool `json:"webSearchEnabled"`
ModelProvider string `json:"modelProvider"`
EmbeddingProvider string `json:"embeddingProvider"`
VectorScores []VectorScore `json:"vectorScores"`
LikeUsers []string `json:"likeUsers"`
DisLikeUsers []string `json:"dislikeUsers"`
Suggestions []Suggestion `json:"suggestions"`
ToolCalls []model.ToolCall `json:"toolCalls"`
SearchResults []model.SearchResult `json:"searchResults"`
TransactionId string `json:"transactionId"`
}
func GetChatMessages ¶
func GetGlobalFailMessages ¶
func GetGlobalMessages ¶
func GetMessage ¶
func GetMessages ¶
func GetMessagesForChats ¶
func GetPaginationMessages ¶
type ModelRoute ¶
type ModelRoute struct {
Owner string `db:"pk" json:"owner"` // org ID ("built-in" = global default)
ModelName string `db:"pk" json:"modelName"` // e.g. "claude-sonnet-4-6"
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
Provider string `json:"provider"` // primary provider name
Upstream string `json:"upstream"` // upstream model name
Fallback1 string `json:"fallback1Provider"` // fallback provider 1
Fallback1Up string `json:"fallback1Upstream"` // fallback upstream 1
Fallback2 string `json:"fallback2Provider"` // fallback provider 2
Fallback2Up string `json:"fallback2Upstream"` // fallback upstream 2
OwnedBy string `json:"ownedBy"` // owned_by override for /api/models listing
Premium bool `json:"premium"` // requires paid balance
Hidden bool `json:"hidden"` // excluded from /api/models listing
InputPrice float64 `json:"inputPricePerMillion"` // custom pricing (0 = use default)
OutputPrice float64 `json:"outputPricePerMillion"`
Enabled bool `json:"enabled"`
}
func GetCachedModelRoutes ¶
func GetCachedModelRoutes(owner string) ([]*ModelRoute, error)
GetCachedModelRoutes returns all model routes for an owner with 60s TTL caching.
func GetModelRoute ¶
func GetModelRoute(owner string, modelName string) (*ModelRoute, error)
func GetModelRoutes ¶
func GetModelRoutes(owner string) ([]*ModelRoute, error)
func GetPaginationModelRoutes ¶
func GetPaginationModelRoutes(owner string, offset, limit int, field, value, sortField, sortOrder string) ([]*ModelRoute, error)
func ResolveModelRouteFromDB ¶
func ResolveModelRouteFromDB(modelName string, orgId string) (*ModelRoute, error)
ResolveModelRouteFromDB looks up a model route from the database. Resolution order: org-specific route -> global ("built-in") route. Returns nil if no DB route found (caller should fall back to YAML).
func (*ModelRoute) GetId ¶
func (r *ModelRoute) GetId() string
type MsgResponse ¶
type MsgResponse struct {
MsgType string `json:"msgtype"`
Stream *StreamSend `json:"stream"`
}
type Node ¶
type Node struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Category string `json:"category"`
Type string `json:"type"`
Tag string `json:"tag"`
MachineName string `json:"machineName"`
Os string `json:"os"`
PublicIp string `json:"publicIp"`
PrivateIp string `json:"privateIp"`
Size string `json:"size"`
CpuSize string `json:"cpuSize"`
MemSize string `json:"memSize"`
RemoteProtocol string `json:"remoteProtocol"`
RemotePort int `json:"remotePort"`
RemoteUsername string `json:"remoteUsername"`
RemotePassword string `json:"remotePassword"`
AutoQuery bool `json:"autoQuery"`
IsPermanent bool `json:"isPermanent"`
Language string `json:"language"`
EnableRemoteApp bool `json:"enableRemoteApp"`
RemoteApps []*RemoteApp `json:"remoteApps"`
Services []*Service `json:"services"`
Patches []*Patch `json:"patches"`
}
type Patch ¶
type Patch struct {
Name string `json:"name"`
Category string `json:"category"`
Title string `json:"title"`
Url string `json:"url"`
Size string `json:"size"`
ExpectedStatus string `json:"expectedStatus"`
Status string `json:"status"`
InstallTime string `json:"installTime"`
Message string `json:"message"`
}
type Patient ¶
type Patient struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Gender string `json:"gender"`
Address string `json:"address"`
Email string `json:"email"`
BloodType string `json:"bloodType"`
Allergies string `json:"allergies"`
Owners []string `json:"owners"`
HospitalName string `json:"hospitalName"`
}
func FilterPatientsByUser ¶
func GetMaskedPatients ¶
func GetPaginationPatients ¶
func GetPatient ¶
func GetPatients ¶
type Pod ¶
type Pod struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
Provider string `json:"provider"`
Namespace string `json:"namespace"`
CreatedTime string `json:"createdTime"`
HostIP string `json:"hostIP"`
PodIP string `json:"podIP"`
Labels string `json:"labels"`
Status string `json:"status"`
}
func GetPaginationPods ¶
type PrometheusInfo ¶
type PrometheusInfo struct {
ApiThroughput []GaugeVecInfo `json:"apiThroughput"`
ApiLatency []HistogramVecInfo `json:"apiLatency"`
TotalThroughput float64 `json:"totalThroughput"`
}
func GetPrometheusInfo ¶
func GetPrometheusInfo() (*PrometheusInfo, error)
type Properties ¶
type PropertiesMapJSON ¶
type PropertiesMapJSON map[string]*Properties
PropertiesMap implements sql.Scanner for map[string]*Properties.
func (*PropertiesMapJSON) Scan ¶
func (m *PropertiesMapJSON) Scan(src interface{}) error
type Provider ¶
type Provider struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Category string `json:"category"`
Type string `json:"type"`
SubType string `json:"subType"`
Flavor string `json:"flavor"`
ClientId string `json:"clientId"`
ClientSecret string `json:"clientSecret"`
Region string `json:"region"`
ProviderKey string `json:"providerKey"`
ProviderUrl string `json:"providerUrl"`
ApiVersion string `json:"apiVersion"`
CompatibleProvider string `json:"compatibleProvider"`
McpTools agent.McpToolsList `json:"mcpTools"`
Text string `json:"text"`
ConfigText string `json:"configText"`
RawText string `json:"rawText"` // Raw result from scan (for Scan category providers)
EnableThinking bool `json:"enableThinking"`
Temperature float32 `json:"temperature"`
TopP float32 `json:"topP"`
TopK int `json:"topK"`
FrequencyPenalty float32 `json:"frequencyPenalty"`
PresencePenalty float32 `json:"presencePenalty"`
InputPricePerThousandTokens float64 `json:"inputPricePerThousandTokens"`
OutputPricePerThousandTokens float64 `json:"outputPricePerThousandTokens"`
Currency string `json:"currency"`
UserKey string `json:"userKey"`
UserCert string `json:"userCert"`
SignKey string `json:"signKey"`
SignCert string `json:"signCert"`
ContractName string `json:"contractName"`
ContractMethod string `json:"contractMethod"`
Network string `json:"network"`
Chain string `json:"chain"`
TestContent string `json:"testContent"`
// New fields for unified scan widget (for Scan category providers)
TargetMode string `json:"targetMode"` // "Manual Input" or "Asset"
Target string `json:"target"` // Manual input target (IP address or network range)
Asset string `json:"asset"` // Selected asset for scan
Runner string `json:"runner"` // Hostname about who runs the scan job
ErrorText string `json:"errorText"` // Error message for the job execution
ResultSummary string `json:"resultSummary"` // Short summary of scan results
IsDefault bool `json:"isDefault"`
IsRemote bool `json:"isRemote"`
State string `json:"state"`
BrowserUrl string `json:"browserUrl"`
}
func GetDefaultAgentProvider ¶
func GetDefaultModelProvider ¶
func GetDefaultVideoProvider ¶
func GetGlobalProviders ¶
func GetMaskedProvider ¶
func GetMaskedProviders ¶
func GetModelProviderByName ¶
GetModelProviderByName retrieves a Model-category provider by its Name field (e.g. "do-ai", "fireworks", "openai-direct"). Results are cached for 60 seconds.
func GetModelProviderByType ¶
GetModelProviderByType retrieves a model provider by its type (e.g. "OpenAI", "Claude", "Fireworks").
func GetPaginationProviders ¶
func GetProvider ¶
func GetProviderByProviderKey ¶
GetProviderByProviderKey retrieves a provider using the Provider key
func GetProviders ¶
func (*Provider) GetAgentProvider ¶
func (p *Provider) GetAgentProvider(lang string) (agent.AgentProvider, error)
func (*Provider) GetEmbeddingProvider ¶
func (p *Provider) GetEmbeddingProvider(lang string) (embedding.EmbeddingProvider, error)
func (*Provider) GetModelProvider ¶
func (p *Provider) GetModelProvider(lang string) (model.ModelProvider, error)
func (*Provider) GetScanProvider ¶
func (p *Provider) GetScanProvider(lang string) (scan.ScanProvider, error)
func (*Provider) GetSpeechToTextProvider ¶
func (p *Provider) GetSpeechToTextProvider(lang string) (stt.SpeechToTextProvider, error)
func (*Provider) GetStorageProviderObj ¶
func (*Provider) GetTextToSpeechProvider ¶
func (p *Provider) GetTextToSpeechProvider(lang string) (tts.TextToSpeechProvider, error)
type Record ¶
type Record struct {
Id int `db:"pk" json:"id"`
Owner string `json:"owner"`
Name string `json:"name"`
CreatedTime string `json:"createdTime"`
Organization string `json:"organization"`
ClientIp string `json:"clientIp"`
UserAgent string `json:"userAgent"`
User string `json:"user"`
Method string `json:"method"`
RequestUri string `json:"requestUri"`
Action string `json:"action"`
Language string `json:"language"`
Query string `json:"query"`
Region string `json:"region"`
City string `json:"city"`
Unit string `json:"unit"`
Section string `json:"section"`
Object string `json:"object"`
Response string `json:"response"`
ErrorText string `json:"errorText"`
// ExtendedUser *User `db:"-" json:"extendedUser"`
Provider string `json:"provider"`
Block string `json:"block"`
BlockHash string `json:"blockHash"`
Transaction string `json:"transaction"`
Provider2 string `json:"provider2"`
Block2 string `json:"block2"`
BlockHash2 string `json:"blockHash2"`
Transaction2 string `json:"transaction2"`
// For cross-chain records
Count int `json:"count"`
IsTriggered bool `json:"isTriggered"`
NeedCommit bool `db:"index" json:"needCommit"`
}
func GetPaginationRecords ¶
func GetRecords ¶
type ResourceMetrics ¶
type ResourceMetrics struct {
CPUUsage string `json:"cpuUsage"` // CPU usage (e.g., "120m" for 120 millicores)
CPUPercentage float64 `json:"cpuPercentage"` // CPU usage percentage (0-100)
MemoryUsage string `json:"memoryUsage"` // Memory usage (e.g., "256Mi" for 256 mebibyte)
MemoryPercentage float64 `json:"memoryPercentage"` // Memory usage percentage (0-100)
PodCount int `json:"podCount"` // Number of active pods
}
ResourceMetrics represents resource usage metrics
type ResourceRequests ¶
type Scale ¶
type Scale struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Text string `json:"text"`
State string `json:"state"`
}
Scale is a reusable rubric / evaluation scale (量表), referenced by tasks via Task.Scale (owner/name id).
func GetGlobalScales ¶
func GetMaskedScale ¶
func GetMaskedScales ¶
func GetPaginationScales ¶
func GetPublicScales ¶
GetPublicScales returns scales visible to non-admins (Public or empty state).
type Scan ¶
type Scan struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
TargetMode string `json:"targetMode"`
Target string `json:"target"`
Asset string `json:"asset"`
Provider string `json:"provider"`
State string `json:"state"`
Runner string `json:"runner"`
ErrorText string `json:"errorText"`
Command string `json:"command"`
RawResult string `json:"rawResult"`
Result string `json:"result"`
ResultSummary string `json:"resultSummary"`
}
func GetPaginationScans ¶
func GetPendingScans ¶
GetPendingScans returns all scans with state "Pending"
type ScanResult ¶
type ScanResult struct {
RawResult string `json:"rawResult"`
Result string `json:"result"`
ResultSummary string `json:"resultSummary"`
Runner string `json:"runner"`
}
ScanResult represents the result of a scan operation
func ScanAsset ¶
func ScanAsset(provider, scanParam, targetMode, target, asset, command string, saveToScan bool, lang string) (*ScanResult, error)
ScanAsset performs a scan on an asset @param provider: The provider ID (owner/name) for scan provider @param scan: Optional scan ID (owner/name) for saving results to existing scan @param targetMode: "Manual Input" or "Asset" @param target: IP address or network range (for Manual Input mode) @param asset: Asset name for Asset mode @param command: Scan command with optional %s placeholder for target @param saveToScan: Whether to save results to scan object (true for scan edit page, false for provider edit page)
type ScrapeRequest ¶
type ScrapeRequest struct {
URL string `json:"url"`
Depth int `json:"depth,omitempty"`
MaxPages int `json:"maxPages,omitempty"`
Selector string `json:"selector,omitempty"`
Tag string `json:"tag,omitempty"`
Store string `json:"store,omitempty"`
Engine string `json:"engine,omitempty"` // "fast" (Go scraper), "browser" (crawl4ai), or "" (auto)
}
ScrapeRequest is the request body for web scraping operations.
type ScrapeResult ¶
type ScrapeResult struct {
URL string `json:"url"`
Title string `json:"title"`
Description string `json:"description"`
Content string `json:"content"`
Headings []Heading `json:"headings"`
Links []string `json:"links"`
Structured StructuredData `json:"structured"`
}
ScrapeResult holds the extracted content from a single page.
func Crawl4AIResultToScrapeResult ¶
func Crawl4AIResultToScrapeResult(result Crawl4AIResult) ScrapeResult
Crawl4AIResultToScrapeResult converts a Hanzo Crawl result to our ScrapeResult format. It parses the markdown output to extract title, headings, and structured content blocks.
func CrawlSite ¶
func CrawlSite(req *ScrapeRequest) (results []ScrapeResult, crawlErrors []string, engine string)
CrawlSite performs a crawl starting from req.URL and returns scraped pages. Engine selection:
- "browser": always use crawl4ai (errors if unavailable)
- "fast": always use the Go HTML scraper
- "" (auto): try crawl4ai first, fall back to Go scraper if unreachable
The returned engine string indicates which engine was actually used.
func ScrapePage ¶
func ScrapePage(pageURL string) (*ScrapeResult, error)
ScrapePage fetches a single URL and extracts structured content.
type ScrapeStats ¶
type ScrapeStats struct {
PagesScraped int `json:"pagesScraped"`
DocumentsIndexed int `json:"documentsIndexed"`
Engine string `json:"engine"`
Errors []string `json:"errors,omitempty"`
}
ScrapeStats is the summary returned after a scrape-and-index operation.
func ScrapeAndIndex ¶
func ScrapeAndIndex(owner string, req *ScrapeRequest, lang string) (*ScrapeStats, error)
ScrapeAndIndex crawls a site and indexes the results into the owner's search index. The owner parameter determines tenant isolation -- each org gets its own index namespace. If Hanzo Storage is configured, crawl results are archived asynchronously for persistence.
type SearchProvider ¶
type SearchProvider interface {
Search(relatedStores []string, embeddingProviderName string, embeddingProviderObj embedding.EmbeddingProvider, modelProviderName string, text string, knowledgeCount int, lang string) ([]Vector, *embedding.EmbeddingResult, error)
}
func GetSearchProvider ¶
func GetSearchProvider(typ string, owner string) (SearchProvider, error)
type ServiceDetail ¶
type ServiceDetail struct {
Name string `json:"name"`
Type string `json:"type"`
ClusterIP string `json:"clusterIP"`
ExternalIP string `json:"externalIP"`
Ports []ServicePort `json:"ports"`
InternalHost string `json:"internalHost"`
ExternalHost string `json:"externalHost"`
CreatedTime string `json:"createdTime"`
}
type ServicePort ¶
type Session ¶
type Session struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
SessionId []string `json:"sessionId"`
}
func GetPaginationSessions ¶
func GetSession ¶
func GetSessions ¶
type SimilarityIndex ¶
type Store ¶
type Store struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
StorageProvider string `json:"storageProvider"`
StorageSubpath string `json:"storageSubpath"`
ImageProvider string `json:"imageProvider"`
SplitProvider string `json:"splitProvider"`
SearchProvider string `json:"searchProvider"`
ModelProvider string `json:"modelProvider"`
EmbeddingProvider string `json:"embeddingProvider"`
TextToSpeechProvider string `json:"textToSpeechProvider"`
EnableTtsStreaming bool `json:"enableTtsStreaming"`
SpeechToTextProvider string `json:"speechToTextProvider"`
AgentProvider string `json:"agentProvider"`
VectorStoreId string `json:"vectorStoreId"`
BuiltinTools StringSlice `json:"builtinTools"`
MemoryLimit int `json:"memoryLimit"`
Frequency int `json:"frequency"`
LimitMinutes int `json:"limitMinutes"`
KnowledgeCount int `json:"knowledgeCount"`
SuggestionCount int `json:"suggestionCount"`
Welcome string `json:"welcome"`
WelcomeTitle string `json:"welcomeTitle"`
WelcomeText string `json:"welcomeText"`
Prompt string `json:"prompt"`
ExampleQuestions ExampleQuestionList `json:"exampleQuestions"`
ThemeColor string `json:"themeColor"`
Avatar string `json:"avatar"`
Title string `json:"title"`
HtmlTitle string `json:"htmlTitle"`
FaviconUrl string `json:"faviconUrl"`
LogoUrl string `json:"logoUrl"`
VectorStores StringSlice `json:"vectorStores"`
ChildStores StringSlice `json:"childStores"`
ChildModelProviders StringSlice `json:"childModelProviders"`
ForbiddenWords StringSlice `json:"forbiddenWords"`
ShowAutoRead bool `json:"showAutoRead"`
DisableFileUpload bool `json:"disableFileUpload"`
HideThinking bool `json:"hideThinking"`
IsDefault bool `json:"isDefault"`
State string `json:"state"`
ChatCount int `db:"-" json:"chatCount"`
MessageCount int `db:"-" json:"messageCount"`
FileTree *TreeFile `json:"fileTree"`
PropertiesMap PropertiesMapJSON `json:"propertiesMap"`
}
func GetDefaultStore ¶
func GetGlobalStores ¶
func GetPaginationStores ¶
func (*Store) ContainsForbiddenWords ¶
func (*Store) GetEmbeddingProvider ¶
func (*Store) GetImageProviderObj ¶
func (store *Store) GetImageProviderObj(lang string) (storage.StorageProvider, error)
func (*Store) GetModelProvider ¶
func (*Store) GetSpeechToTextProvider ¶
func (*Store) GetStorageProviderObj ¶
func (store *Store) GetStorageProviderObj(lang string) (storage.StorageProvider, error)
func (*Store) GetTextToSpeechProvider ¶
type StreamRecv ¶
type StreamRecv struct {
Id string `json:"id"`
}
type StreamResponse ¶
type StreamResponse struct {
MsgType string `json:"msgtype"`
Stream *StreamSend `json:"stream"`
}
type StreamSend ¶
type StringSlice ¶
type StringSlice []string
StringSlice is []string with JSON marshalling for SQL TEXT columns.
func (*StringSlice) Scan ¶
func (s *StringSlice) Scan(src interface{}) error
type StructuredData ¶
type StructuredData struct {
Headings []Heading `json:"headings"`
Contents []ContentBlock `json:"contents"`
}
StructuredData mirrors the docs framework format for search indexing.
type SubpathStorageProvider ¶
type SubpathStorageProvider struct {
// contains filtered or unexported fields
}
func NewSubpathStorageProvider ¶
func NewSubpathStorageProvider(provider storage.StorageProvider, subpath string) *SubpathStorageProvider
func (*SubpathStorageProvider) DeleteObject ¶
func (w *SubpathStorageProvider) DeleteObject(key string) error
func (*SubpathStorageProvider) ListObjects ¶
func (w *SubpathStorageProvider) ListObjects(prefix string) ([]*storage.Object, error)
ListObjects Implements the StorageProvider interface, automatically prepending the subpath prefix in each method
type Suggestion ¶
type Task ¶
type Task struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Provider string `json:"provider"`
Type string `json:"type"`
Subject string `json:"subject"`
Topic string `json:"topic"`
Score float64 `json:"score"`
Activity string `json:"activity"`
Grade string `json:"grade"`
Path string `json:"path"`
Scale string `json:"scale"`
Example string `json:"example"`
Labels []string `json:"labels"`
Log string `json:"log"`
Result string `json:"result"`
DocumentUrl string `json:"documentUrl"`
DocumentText string `json:"documentText"`
}
func GetGlobalTasks ¶
func GetMaskedTask ¶
func GetMaskedTasks ¶
func GetPaginationTasks ¶
type TaskResult ¶
type TaskResult struct {
Title string `json:"title"`
Designer string `json:"designer"`
Stage string `json:"stage"`
Participants string `json:"participants"`
Grade string `json:"grade"`
Instructor string `json:"instructor"`
Subject string `json:"subject"`
School string `json:"school"`
OtherSubjects string `json:"otherSubjects"`
Textbook string `json:"textbook"`
Score float64 `json:"score"`
Categories []*TaskResultCategory `json:"categories"`
}
func AnalyzeTask ¶
func AnalyzeTask(task *Task, lang string) (*TaskResult, error)
type TaskResultCategory ¶
type TaskResultCategory struct {
Name string `json:"name"`
Score float64 `json:"score"`
Items []*TaskResultItem `json:"items"`
}
type TaskResultItem ¶
type Template ¶
type Template struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
UpdatedTime string `json:"updatedTime"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Version string `json:"version"`
Icon string `json:"icon"`
Manifest string `json:"manifest"`
Readme string `json:"readme"`
EnableBasicConfig bool `json:"enableBasicConfig"`
BasicConfigOptions []templateConfigOption `db:"json" json:"basicConfigOptions"`
}
func GetPaginationTemplates ¶
func GetTemplate ¶
func GetTemplates ¶
type TextMessage ¶
type TextMessage struct {
Content string `json:"content"`
}
type TreeFile ¶
type TreeFile struct {
Key string `json:"key"`
Title string `json:"title"`
Size int64 `json:"size"`
CreatedTime string `json:"createdTime"`
IsLeaf bool `json:"isLeaf"`
Url string `json:"url"`
Children []*TreeFile `json:"children"`
ChildrenMap map[string]*TreeFile `db:"-" json:"-"`
}
type Usage ¶
type Usage struct {
Date string `json:"date"`
UserCount int `json:"userCount"`
ChatCount int `json:"chatCount"`
MessageCount int `json:"messageCount"`
TokenCount int `json:"tokenCount"`
Price float64 `json:"price"`
Currency string `json:"currency"`
}
func GetRangeUsages ¶
type UsageMetadata ¶
type UsageMetadata struct {
Organization string `json:"organization"`
Application string `json:"application"`
}
func GetUsageMetadata ¶
func GetUsageMetadata(lang string, orgName ...string) (*UsageMetadata, error)
type UserUsage ¶
type UserUsage struct {
User string `json:"user"`
Chats int `json:"chats"`
MessageCount int `json:"messageCount"`
TokenCount int `json:"tokenCount"`
Price float64 `json:"price"`
}
func GetUserTableInfos ¶
type Vector ¶
type Vector struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Store string `json:"store"`
Provider string `json:"provider"`
File string `json:"file"`
Index int `json:"index"`
Text string `json:"text"`
TokenCount int `json:"tokenCount"`
Price float64 `json:"price"`
Currency string `json:"currency"`
Score float32 `json:"score"`
Data []float32 `json:"data"`
Dimension int `json:"dimension"`
}
func GetGlobalVectors ¶
func GetPaginationVectors ¶
func GetVectors ¶
type VectorScore ¶
func GetNearestKnowledge ¶
func GetNearestKnowledge(storeName string, vectorStores []string, searchProviderType string, embeddingProvider *Provider, embeddingProviderObj embedding.EmbeddingProvider, modelProvider *Provider, owner string, text string, knowledgeCount int, lang string) ([]*model.RawMessage, []VectorScore, *embedding.EmbeddingResult, error)
type Video ¶
type Video struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Description string `json:"description"`
Tag string `json:"tag"`
Type string `json:"type"`
VideoId string `json:"videoId"`
VideoLength string `json:"videoLength"`
CoverUrl string `json:"coverUrl"`
DownloadUrl string `json:"downloadUrl"`
AudioUrl string `json:"audioUrl"`
EditMode string `json:"editMode"`
Labels []*Label `json:"labels"`
Segments []*Label `json:"segments"`
LabelCount int `db:"-" json:"labelCount"`
SegmentCount int `db:"-" json:"segmentCount"`
WordCountMap map[string]int `json:"wordCountMap"`
DataUrls []string `json:"dataUrls"`
DataUrl string `json:"dataUrl"`
TagOnPause bool `json:"tagOnPause"`
Remarks []*Remark `json:"remarks"`
Remarks2 []*Remark `json:"remarks2"`
ExcellentCount int `json:"excellentCount"`
State string `json:"state"`
ReviewState string `json:"reviewState"`
IsPublic bool `json:"isPublic"`
School string `json:"school"`
Stage string `json:"stage"`
Grade string `json:"grade"`
Unit string `json:"unit"`
Lesson string `json:"lesson"`
Class string `json:"class"`
Subject string `json:"subject"`
Topic string `json:"topic"`
Grade2 string `json:"grade2"`
Keywords []string `json:"keywords"`
Template string `json:"template"`
Task1 string `json:"task1"`
Task2 string `json:"task2"`
Task3 string `json:"task3"`
PlayAuth string `db:"-" json:"playAuth"`
}
func GetGlobalVideos ¶
func GetPaginationVideos ¶
func (*Video) PopulateWordCountMap ¶
type VpcDetail ¶
type VpcDetail struct {
VpcId string
CidrBlock string
VRouterId string
IsDefault bool
Status string
Description string
}
VpcDetail holds detailed information for a VPC
type WecomBotMessage ¶
type WecomBotMessage struct {
MsgId string `json:"msgid"`
AIBotId string `json:"aibotid"`
ChatId string `json:"chatid,omitempty"`
ChatType string `json:"chattype"`
From *FromUser `json:"from"`
MsgType string `json:"msgtype"`
Text *TextMessage `json:"text,omitempty"`
Image *ImageMessage `json:"image,omitempty"`
Stream *StreamRecv `json:"stream,omitempty"`
}
type Workflow ¶
type Workflow struct {
Owner string `db:"pk" json:"owner"`
Name string `db:"pk" json:"name"`
CreatedTime string `json:"createdTime"`
DisplayName string `json:"displayName"`
Text string `json:"text"`
Text2 string `json:"text2"`
Message string `json:"message"`
QuestionTemplate string `json:"questionTemplate"`
}
func GetGlobalWorkflows ¶
func GetMaskedWorkflow ¶
func GetMaskedWorkflows ¶
func GetPaginationWorkflows ¶
func GetWorkflow ¶
func GetWorkflows ¶
Source Files
¶
- activity.go
- adapter.go
- application.go
- application_k8s.go
- application_view.go
- application_view_util.go
- article.go
- asset.go
- asset_cloud.go
- caase.go
- caase_util.go
- cache_manager.go
- chat.go
- cloud_parser.go
- cloud_parser_alibaba.go
- cloud_parser_alibaba_util.go
- connection.go
- consultation.go
- consultation_util.go
- crawl4ai.go
- crawl_storage.go
- db.go
- docker_container.go
- doctor.go
- file.go
- form.go
- graph.go
- graph_wordcloud.go
- hospital.go
- image.go
- image_cloud.go
- init.go
- init_template.go
- json_slice.go
- kms.go
- kubernetes_pod.go
- machine.go
- machine_cloud.go
- message.go
- message_ai.go
- message_cleanup.go
- message_email.go
- message_fake.go
- message_image.go
- model_route.go
- node.go
- patient.go
- patient_util.go
- prometheus.go
- provider.go
- provider_default.go
- provider_util.go
- record.go
- record_chain.go
- resource.go
- scale.go
- scan.go
- scan_asset.go
- scan_job.go
- scraper.go
- search.go
- search_default.go
- search_default_util.go
- search_docs.go
- search_hierarchy.go
- session.go
- store.go
- store_count.go
- store_provider.go
- store_subpath.go
- task.go
- task_analyze.go
- template.go
- template_deploy.go
- text_to_speech.go
- transaction.go
- tree_file.go
- usage.go
- usage_range.go
- util.go
- vector.go
- vector_embedding.go
- video.go
- video_import.go
- video_import_txt.go
- video_import_util.go
- video_word.go
- wecom_bot.go
- workflow.go
- zap.go