@nocobase/plugin-ai 2.2.0-beta.14 → 2.2.0-beta.16
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/client-v2.d.ts +1 -0
- package/dist/ai/docs/nocobase/ai-employees/block/ai-chat-box.md +133 -0
- package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/documents.md +1 -1
- package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/index.md +11 -7
- package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/settings.md +12 -8
- package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-database.md +3 -3
- package/dist/ai/docs/nocobase/ai-employees/workflow/nodes/knowledge/create-document.md +1 -1
- package/dist/ai/docs/nocobase/api/app/env.md +2 -0
- package/dist/ai/docs/nocobase/building-tips/ai-fill-js-block-form.md +1092 -0
- package/dist/ai/docs/nocobase/data-sources/calendar/calendar-collection.md +100 -3
- package/dist/ai/docs/nocobase/data-sources/collection-comment/index.md +92 -39
- package/dist/ai/docs/nocobase/data-sources/collection-sql/index.md +150 -29
- package/dist/ai/docs/nocobase/data-sources/collection-tree/index.md +93 -5
- package/dist/ai/docs/nocobase/data-sources/collection-view/index.md +226 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/china-region.md +122 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/collection-select.md +105 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/json.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/nano-id.md +104 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/snowflake-id.md +108 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/sort.md +3 -19
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/uuid.md +104 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/associations/index.md +44 -8
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/color.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/email.md +104 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/icon.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/input.md +112 -8
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/integer.md +103 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/number.md +103 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/password.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/percent.md +104 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/phone.md +104 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/textarea.md +99 -8
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/url.md +103 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/checkbox-group.md +105 -3
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/checkbox.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/china-region.md +108 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/multiple-select.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/radio-group.md +106 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/select.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/date.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/datetime-without-tz.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/datetime.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/index.md +53 -47
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/time.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/unix-timestamp.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/circle.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/line.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/point.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/polygon.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/index.md +62 -16
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/media/markdown.md +104 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/media/rich-text.md +105 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/created-at.md +105 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/created-by.md +103 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/space.md +100 -6
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/table-oid.md +102 -4
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/updated-at.md +104 -5
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/updated-by.md +104 -6
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/validation.md +68 -58
- package/dist/ai/docs/nocobase/data-sources/data-modeling/collection.md +32 -13
- package/dist/ai/docs/nocobase/data-sources/data-modeling/index.md +41 -33
- package/dist/ai/docs/nocobase/data-sources/data-source-external-mariadb/index.md +114 -6
- package/dist/ai/docs/nocobase/data-sources/data-source-external-mssql/index.md +117 -6
- package/dist/ai/docs/nocobase/data-sources/data-source-external-mysql/index.md +103 -6
- package/dist/ai/docs/nocobase/data-sources/data-source-external-nocobase/index.md +75 -73
- package/dist/ai/docs/nocobase/data-sources/data-source-external-oracle/index.md +129 -11
- package/dist/ai/docs/nocobase/data-sources/data-source-external-postgres/index.md +110 -6
- package/dist/ai/docs/nocobase/data-sources/data-source-kingbase/index.md +75 -49
- package/dist/ai/docs/nocobase/data-sources/data-source-main/general-collection.md +116 -15
- package/dist/ai/docs/nocobase/data-sources/data-source-main/index.md +92 -62
- package/dist/ai/docs/nocobase/data-sources/data-source-main/inheritance-collection.md +97 -10
- package/dist/ai/docs/nocobase/data-sources/data-source-manager/external-database.md +97 -58
- package/dist/ai/docs/nocobase/data-sources/data-source-manager/index.md +32 -24
- package/dist/ai/docs/nocobase/data-sources/data-source-rest-api/index.md +115 -153
- package/dist/ai/docs/nocobase/data-sources/external/clickhouse.md +124 -0
- package/dist/ai/docs/nocobase/data-sources/external/doris.md +130 -0
- package/dist/ai/docs/nocobase/data-sources/external/index.md +140 -0
- package/dist/ai/docs/nocobase/data-sources/external/kingbase.md +129 -0
- package/dist/ai/docs/nocobase/data-sources/external/mariadb.md +126 -0
- package/dist/ai/docs/nocobase/data-sources/external/mssql.md +129 -0
- package/dist/ai/docs/nocobase/data-sources/external/mysql.md +115 -0
- package/dist/ai/docs/nocobase/data-sources/external/nocobase.md +159 -0
- package/dist/ai/docs/nocobase/data-sources/external/oceanbase.md +126 -0
- package/dist/ai/docs/nocobase/data-sources/external/oracle.md +158 -0
- package/dist/ai/docs/nocobase/data-sources/external/postgresql.md +122 -0
- package/dist/ai/docs/nocobase/data-sources/external/rest-api.md +245 -0
- package/dist/ai/docs/nocobase/data-sources/field-attachment-url/index.md +100 -12
- package/dist/ai/docs/nocobase/data-sources/field-encryption/index.md +48 -47
- package/dist/ai/docs/nocobase/data-sources/field-formula/index.md +99 -5
- package/dist/ai/docs/nocobase/data-sources/field-markdown-vditor/index.md +105 -5
- package/dist/ai/docs/nocobase/data-sources/field-sequence/index.md +102 -5
- package/dist/ai/docs/nocobase/data-sources/field-signature/index.md +18 -16
- package/dist/ai/docs/nocobase/data-sources/field-sort/index.md +76 -73
- package/dist/ai/docs/nocobase/data-sources/file-manager/field-attachment.md +101 -7
- package/dist/ai/docs/nocobase/data-sources/file-manager/file-collection.md +101 -14
- package/dist/ai/docs/nocobase/data-sources/index.md +49 -33
- package/dist/ai/docs/nocobase/data-sources/main/index.md +130 -0
- package/dist/ai/docs/nocobase/data-sources/main/kingbase.md +147 -0
- package/dist/ai/docs/nocobase/data-sources/main/mariadb.md +59 -0
- package/dist/ai/docs/nocobase/data-sources/main/mysql.md +59 -0
- package/dist/ai/docs/nocobase/data-sources/main/oceanbase.md +62 -0
- package/dist/ai/docs/nocobase/data-sources/main/postgresql.md +61 -0
- package/dist/ai/docs/nocobase/file-manager/storage/index.md +66 -26
- package/dist/ai/docs/nocobase/file-manager/storage/s3-pro.md +58 -7
- package/dist/ai/docs/nocobase/get-started/installation/env.md +1 -1
- package/dist/ai/docs/nocobase/interface-builder/blocks/data-blocks/comment.md +107 -0
- package/dist/ai/docs/nocobase/interface-builder/index.md +7 -6
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/desktop.md +97 -0
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/index.md +50 -0
- package/dist/ai/docs/nocobase/interface-builder/ui-layout/mobile.md +133 -0
- package/dist/ai/docs/nocobase/ops-management/migration-manager/built-in-tables.md +1 -2
- package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-comment/index.md +14 -0
- package/dist/ai/docs/nocobase/runjs/context/ai.md +396 -0
- package/dist/ai/docs/nocobase/workflow/development/api.md +259 -77
- package/dist/ai/docs/nocobase/workflow/development/index.md +2 -1
- package/dist/ai/docs/nocobase/workflow/development/migration.md +319 -0
- package/dist/ai/docs/nocobase/workflow/development/node.md +84 -51
- package/dist/ai/docs/nocobase/workflow/development/trigger.md +122 -20
- package/dist/ai/tools/executeFrontendTool.d.ts +10 -0
- package/dist/ai/tools/executeFrontendTool.js +86 -0
- package/dist/ai/tools/formFiller.js +4 -3
- package/dist/ai/tools/getSkill.js +1 -1
- package/dist/ai/tools/loadFrontendTool.d.ts +10 -0
- package/dist/ai/tools/loadFrontendTool.js +99 -0
- package/dist/ai/tools/subAgentWebSearch.js +20 -15
- package/dist/client/23.65ea8c37cd4b884b.js +10 -0
- package/dist/client/244.8631eb5cf3f05e21.js +10 -0
- package/dist/client/264.cc98933ef65608b6.js +10 -0
- package/dist/client/336.7a8a8853196ad779.js +11 -0
- package/dist/client/416.92b74ca47e4099c4.js +10 -0
- package/dist/client/446.d63c38d0309fe250.js +10 -0
- package/dist/client/525.94dd4136c1361477.js +10 -0
- package/dist/client/663.680bcf6272a8504d.js +10 -0
- package/dist/client/681.6ffbc9329b9ac242.js +10 -0
- package/dist/client/705.19b642db34de438a.js +10 -0
- package/dist/client/ai-employees/1.x/selector/AIContextCollector.d.ts +1 -4
- package/dist/client/ai-employees/permissions/PermissionsTab.d.ts +21 -5
- package/dist/client/index.d.ts +13 -20
- package/dist/client/index.js +8 -8
- package/dist/client/workflow/nodes/employee/index.d.ts +2 -23
- package/dist/client/workflow/nodes/llm/index.d.ts +2 -52
- package/dist/client/workflow/triggers/ai-employee/index.d.ts +2 -83
- package/dist/client-v2/23.1bcb6986b40723d8.js +10 -0
- package/dist/client-v2/244.c428e645ecb94414.js +10 -0
- package/dist/client-v2/264.be92ff6a4d2612f1.js +10 -0
- package/dist/client-v2/336.e406470429e0670e.js +11 -0
- package/dist/client-v2/416.0e1c2d9cde43b83d.js +10 -0
- package/dist/client-v2/420.b2aedb1ff71fca0e.js +10 -0
- package/dist/client-v2/446.073d450882db29fd.js +10 -0
- package/dist/client-v2/457.d72febb89e88fc00.js +10 -0
- package/dist/client-v2/663.342341f0b2b412d8.js +10 -0
- package/dist/client-v2/681.6890caa389564ff7.js +10 -0
- package/dist/client-v2/705.8dc34d43f02f322c.js +10 -0
- package/dist/{client/ai-employees/admin/AvatarSelect.d.ts → client-v2/ai-employees/AIEmployeeDropdown.d.ts} +8 -9
- package/dist/client-v2/ai-employees/AIEmployeeShortcut.d.ts +11 -2
- package/dist/{client → client-v2}/ai-employees/AddContextButton.d.ts +3 -1
- package/dist/{client → client-v2}/ai-employees/ai-coding/AICodingButton.d.ts +2 -1
- package/dist/{client/ai-employees/chatbox/AIEmployeeSwitch.d.ts → client-v2/ai-employees/chatbox/components/AIEmployeeSwitcher.d.ts} +1 -0
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/Actions.d.ts +2 -4
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/AddLLMModal.d.ts +2 -4
- package/dist/client-v2/ai-employees/chatbox/components/Attachments.d.ts +27 -0
- package/dist/{client/ai-employees/permissions/Permissions.d.ts → client-v2/ai-employees/chatbox/components/ChatBox.d.ts} +2 -2
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatBoxLayout.d.ts +1 -1
- package/dist/{client/ai-employees/chatbox/markdown/Code.d.ts → client-v2/ai-employees/chatbox/components/ChatBoxUnreadBadge.d.ts} +6 -7
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ContextItem.d.ts +1 -1
- package/dist/client-v2/ai-employees/chatbox/components/Conversations.d.ts +18 -0
- package/dist/{client/ai-employees/admin/Templates.d.ts → client-v2/ai-employees/chatbox/components/DebugPanel.d.ts} +1 -1
- package/dist/{client/ai-employees/ai-coding/markdown/Code.d.ts → client-v2/ai-employees/chatbox/components/Markdown.d.ts} +12 -3
- package/dist/{client/ai-employees/1.x/selector/BlockSelector.d.ts → client-v2/ai-employees/chatbox/components/MessageContent.d.ts} +3 -4
- package/dist/client-v2/ai-employees/chatbox/components/MessageRenderers.d.ts +39 -0
- package/dist/{client/ai-employees/admin/datasource/components/DatasourceSettingDetail.d.ts → client-v2/ai-employees/chatbox/components/Messages.d.ts} +4 -4
- package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ModelSwitcher.d.ts +4 -0
- package/dist/client-v2/ai-employees/chatbox/components/Sender.d.ts +42 -0
- package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolCard.d.ts +7 -5
- package/dist/client-v2/ai-employees/chatbox/components/index.d.ts +14 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChat.d.ts +29 -27
- package/dist/client-v2/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +5 -3
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatBoxEffect.d.ts +2 -1
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatConversationActions.d.ts +5 -4
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatMessageActions.d.ts +12 -6
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useToolCallActions.d.ts +4 -2
- package/dist/client-v2/ai-employees/chatbox/hooks/useUploadFiles.d.ts +56 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useWorkflowTasks.d.ts +4 -3
- package/dist/client-v2/ai-employees/chatbox/index.d.ts +17 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/model.d.ts +9 -2
- package/dist/client-v2/ai-employees/chatbox/roles.d.ts +11 -0
- package/dist/client-v2/ai-employees/chatbox/stores/chat-box.d.ts +46 -79
- package/dist/client-v2/ai-employees/chatbox/stores/chat-conversations.d.ts +8 -25
- package/dist/client-v2/ai-employees/chatbox/stores/chat-messages.d.ts +23 -63
- package/dist/client-v2/ai-employees/chatbox/stores/chat-sender.d.ts +43 -0
- package/dist/{client → client-v2}/ai-employees/chatbox/stores/chat-tool-call.d.ts +6 -19
- package/dist/client-v2/ai-employees/chatbox/stores/chat-tools.d.ts +36 -0
- package/dist/client-v2/ai-employees/chatbox/stores/mounted-chat-boxes.d.ts +20 -0
- package/dist/client-v2/ai-employees/chatbox/stores/runtime.d.ts +43 -0
- package/dist/client-v2/ai-employees/chatbox/stores/workflow-tasks.d.ts +72 -0
- package/dist/client-v2/ai-employees/chatbox/upload.d.ts +19 -0
- package/dist/client-v2/ai-employees/chatbox/utils.d.ts +85 -0
- package/dist/{client/ai-employees/data-visualization/context.d.ts → client-v2/ai-employees/context/chart-config.d.ts} +1 -1
- package/dist/{client → client-v2}/ai-employees/context/code-editor.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/context/datasource.d.ts +1 -1
- package/dist/{client → client-v2}/ai-employees/context/flow-models.d.ts +1 -1
- package/dist/client-v2/ai-employees/data-modeling/setup.d.ts +15 -0
- package/dist/{client → client-v2}/ai-employees/datasource/DatasourceSelector.d.ts +6 -2
- package/dist/{client/ai-employees/admin/datasource/flow-models/DatasourceSettingModel.d.ts → client-v2/ai-employees/flow/index.d.ts} +4 -6
- package/dist/{client → client-v2}/ai-employees/form-filler/tools/index.d.ts +1 -1
- package/dist/{client/ai-employees/ai-coding/tools/index.d.ts → client-v2/ai-employees/frontend-tools.d.ts} +3 -3
- package/dist/{client → client-v2}/ai-employees/stores/ai-selection.d.ts +4 -4
- package/dist/{client → client-v2}/ai-employees/stores/dialog-controller.d.ts +4 -4
- package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportCard.d.ts +2 -2
- package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportModal.d.ts +2 -2
- package/dist/{client/ai-employees/1.x/selector/withAISelectable.d.ts → client-v2/ai-employees/tools/ChartGeneratorCard.d.ts} +5 -4
- package/dist/{client/ai-employees/ai-coding/ui → client-v2/ai-employees/tools}/CodeToolCard.d.ts +1 -1
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingCard.d.ts +3 -5
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingModal.d.ts +4 -6
- package/dist/{client/ai-employees/sub-agents/ui → client-v2/ai-employees/tools}/SubAgentDispatchCard.d.ts +4 -9
- package/dist/client-v2/ai-employees/tools/SuggestionsOptionsCard.d.ts +16 -0
- package/dist/client-v2/ai-employees/tools/WorkflowTaskOutputCard.d.ts +16 -0
- package/dist/{client/ai-employees/ai-coding/tools/context-tools.d.ts → client-v2/ai-employees/tools/ai-coding.d.ts} +3 -1
- package/dist/client-v2/ai-employees/tools/business-report-utils.d.ts +45 -0
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/CollectionNode.d.ts +2 -3
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Diagram.d.ts +1 -1
- package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Table.d.ts +2 -2
- package/dist/client-v2/ai-employees/tools/data-modeling/legacy-template.d.ts +13 -0
- package/dist/client-v2/ai-employees/tools/data-modeling/runtime.d.ts +15 -0
- package/dist/{client/ai-employees → client-v2/ai-employees/tools}/data-modeling/types.d.ts +27 -4
- package/dist/client-v2/ai-employees/tools/data-modeling/useFieldInterfaceOptions.d.ts +151 -0
- package/dist/{client/ai-employees/data-visualization/tools/index.d.ts → client-v2/ai-employees/tools/data-visualization.d.ts} +1 -1
- package/dist/client-v2/ai-employees/tools/index.d.ts +32 -0
- package/dist/client-v2/ai-employees/types.d.ts +131 -7
- package/dist/client-v2/block/ai-chat-box/AIChatBoxBlockModel.d.ts +21 -0
- package/dist/{client/workflow/nodes/employee/flow-models/task.d.ts → client-v2/block/ai-chat-box/AIChatBoxCoreModel.d.ts} +1 -1
- package/dist/{client/admin-settings/AdminSettings.d.ts → client-v2/block/ai-chat-box/components/AIChatBoxCoreView.d.ts} +1 -1
- package/dist/{client/ai-employees/AIEmployeeListItem.d.ts → client-v2/block/ai-chat-box/components/AIChatBoxView.d.ts} +3 -5
- package/dist/client-v2/block/ai-chat-box/index.d.ts +14 -0
- package/dist/client-v2/block/ai-chat-box/settings.d.ts +12 -0
- package/dist/client-v2/block/ai-chat-box/sub-models.d.ts +26 -0
- package/dist/client-v2/block/ai-chat-box/types.d.ts +38 -0
- package/dist/client-v2/block/ai-chat-box/utils.d.ts +26 -0
- package/dist/client-v2/components/RemoteSelect.d.ts +43 -0
- package/dist/{client → client-v2}/debug-logger.d.ts +2 -2
- package/dist/client-v2/f0053e745af0ad03.svg +50 -0
- package/dist/client-v2/index.d.ts +11 -12
- package/dist/client-v2/index.js +37 -1
- package/dist/client-v2/llm-providers/forms.d.ts +44 -0
- package/dist/client-v2/llm-providers/index.d.ts +24 -0
- package/dist/client-v2/llm-services/model-select.d.ts +33 -0
- package/dist/client-v2/llm-services/utils.d.ts +14 -0
- package/dist/client-v2/locale.d.ts +14 -0
- package/dist/client-v2/manager/ai-manager.d.ts +62 -0
- package/dist/client-v2/manager/frontend-tool-registry.d.ts +30 -0
- package/dist/client-v2/models/ai-employees/AIEmployeeActionModel.d.ts +36 -0
- package/dist/client-v2/models/ai-employees/AIEmployeeShortcutModel.d.ts +49 -0
- package/dist/client-v2/pages/AdminSettingsPage.d.ts +24 -0
- package/dist/client-v2/pages/DatasourceSettingsPage.d.ts +62 -0
- package/dist/client-v2/pages/EmployeesPage.d.ts +64 -0
- package/dist/client-v2/pages/LLMServicesPage.d.ts +75 -0
- package/dist/client-v2/pages/MCPSettingsPage.d.ts +73 -0
- package/dist/client-v2/pages/drawerWidth.d.ts +10 -0
- package/dist/client-v2/pages/permissions/Permissions.d.ts +67 -0
- package/dist/client-v2/pages/permissions/PermissionsTab.d.ts +12 -0
- package/dist/client-v2/pages/useUnsavedChangesBeforeClose.d.ts +29 -0
- package/dist/client-v2/plugin.d.ts +33 -0
- package/dist/client-v2/repositories/AIConfigRepository.d.ts +3 -23
- package/dist/client-v2/runjs/registerAIEmployeeRunJSFacade.d.ts +21 -0
- package/dist/client-v2/workflow/components/FormValueRegistry.d.ts +12 -0
- package/dist/{client/components/ListCollapse.d.ts → client-v2/workflow/components/WorkflowListCollapse.d.ts} +4 -4
- package/dist/client-v2/workflow/constants.d.ts +26 -0
- package/dist/client-v2/workflow/nodes/employee/components/AIEmployeeFieldset.d.ts +11 -0
- package/dist/{client/ai-employees/common/CodeHighlight.d.ts → client-v2/workflow/nodes/employee/components/AIEmployeeSelect.d.ts} +5 -6
- package/dist/{client/ai-employees/ContextAwareTooltip.d.ts → client-v2/workflow/nodes/employee/components/Assignees.d.ts} +2 -1
- package/dist/client-v2/workflow/nodes/employee/components/FeedbackSettings.d.ts +17 -0
- package/dist/client-v2/workflow/nodes/employee/components/FileInputs.d.ts +11 -0
- package/dist/{client/ai-employees/AIEmployeesProvider.d.ts → client-v2/workflow/nodes/employee/components/MessageInputs.d.ts} +2 -3
- package/dist/client-v2/workflow/nodes/employee/components/ModelOptions.d.ts +17 -0
- package/dist/{client/ai-employees/admin/datasource/components/basic/CollectionCascader.d.ts → client-v2/workflow/nodes/employee/components/SkillSettings.d.ts} +6 -3
- package/dist/client-v2/workflow/nodes/employee/components/StructuredOutput.d.ts +11 -0
- package/dist/client-v2/workflow/nodes/employee/components/UserInput.d.ts +18 -0
- package/dist/{client/ai-employees/AISettingsProvider.d.ts → client-v2/workflow/nodes/employee/components/WebSearchOptions.d.ts} +6 -8
- package/dist/client-v2/workflow/nodes/employee/index.d.ts +23 -0
- package/dist/client-v2/workflow/nodes/llm/components/LLMFieldset.d.ts +12 -0
- package/dist/{client/ai-employees/chatbox → client-v2/workflow/nodes/llm/components}/Messages.d.ts +2 -1
- package/dist/client-v2/workflow/nodes/llm/components/StructuredOutput.d.ts +11 -0
- package/dist/client-v2/workflow/nodes/llm/index.d.ts +30 -0
- package/dist/client-v2/workflow/register.d.ts +10 -0
- package/dist/client-v2/workflow/triggers/ai-employee/AIEmployeeTriggerConfig.d.ts +11 -0
- package/dist/client-v2/workflow/triggers/ai-employee/Parameters.d.ts +11 -0
- package/dist/client-v2/workflow/triggers/ai-employee/index.d.ts +25 -0
- package/dist/client-v2/workflow/types.d.ts +128 -0
- package/dist/common/ai-employee-validation.d.ts +15 -0
- package/dist/common/ai-employee-validation.js +61 -0
- package/dist/common/error-codes.d.ts +13 -0
- package/dist/common/error-codes.js +48 -0
- package/dist/common/frontend-tools.d.ts +26 -0
- package/dist/common/frontend-tools.js +57 -0
- package/dist/common/llm-service-models.d.ts +16 -0
- package/dist/common/llm-service-models.js +84 -0
- package/dist/externalVersion.js +20 -25
- package/dist/locale/en-US.json +110 -1
- package/dist/locale/zh-CN.json +110 -1
- package/dist/node_modules/@langchain/mistralai/package.json +1 -1
- package/dist/node_modules/@langchain/xai/package.json +1 -1
- package/dist/node_modules/fs-extra/package.json +1 -1
- package/dist/node_modules/jsonrepair/package.json +1 -1
- package/dist/node_modules/just-bash/package.json +1 -1
- package/dist/node_modules/nodejs-snowflake/package.json +1 -1
- package/dist/node_modules/openai/package.json +1 -1
- package/dist/node_modules/zod/package.json +1 -1
- package/dist/server/ai-employees/ai-conversations.d.ts +4 -1
- package/dist/server/ai-employees/ai-conversations.js +2 -0
- package/dist/server/ai-employees/ai-employee.d.ts +2 -1
- package/dist/server/ai-employees/ai-employee.js +33 -8
- package/dist/server/ai-employees/middleware/conversation.js +9 -2
- package/dist/server/ai-employees/prompts.d.ts +2 -1
- package/dist/server/ai-employees/prompts.js +8 -2
- package/dist/server/ai-employees/tool-call-sanitizer.d.ts +1 -0
- package/dist/server/ai-employees/tool-call-sanitizer.js +2 -1
- package/dist/server/ai-employees/utils.js +11 -5
- package/dist/server/collections/ai-conversations.js +5 -0
- package/dist/server/document-loader/constants.js +1 -1
- package/dist/server/frontend-tools.d.ts +25 -0
- package/dist/server/frontend-tools.js +171 -0
- package/dist/server/llm-providers/dashscope.d.ts +2 -1
- package/dist/server/llm-providers/dashscope.js +16 -1
- package/dist/server/llm-providers/deepseek.d.ts +2 -1
- package/dist/server/llm-providers/deepseek.js +33 -2
- package/dist/server/llm-providers/kimi/provider.d.ts +2 -1
- package/dist/server/llm-providers/kimi/provider.js +22 -2
- package/dist/server/llm-providers/mistral.d.ts +36 -2
- package/dist/server/llm-providers/mistral.js +62 -2
- package/dist/server/llm-providers/openai/completions.d.ts +2 -1
- package/dist/server/llm-providers/openai/completions.js +17 -1
- package/dist/server/llm-providers/openai/responses.d.ts +2 -1
- package/dist/server/llm-providers/openai/responses.js +17 -1
- package/dist/server/llm-providers/provider.d.ts +7 -0
- package/dist/server/llm-providers/provider.js +7 -1
- package/dist/server/manager/ai-context-datasource-manager.js +34 -7
- package/dist/server/manager/ai-manager.d.ts +2 -1
- package/dist/server/manager/ai-manager.js +4 -1
- package/dist/server/manager/work-context-handler.js +10 -3
- package/dist/server/plugin.d.ts +1 -0
- package/dist/server/plugin.js +25 -0
- package/dist/server/resource/aiConversations.d.ts +2 -0
- package/dist/server/resource/aiConversations.js +33 -3
- package/dist/server/resource/aiEmployees.d.ts +2 -0
- package/dist/server/resource/aiEmployees.js +62 -0
- package/dist/server/resource/aiWorkflowTasks.js +9 -1
- package/dist/server/resource/llmServices.d.ts +11 -0
- package/dist/server/resource/llmServices.js +85 -0
- package/dist/server/types/knowledge-base.type.d.ts +6 -2
- package/dist/swagger/common.d.ts +143 -0
- package/dist/swagger/common.js +144 -0
- package/dist/swagger/employees.d.ts +301 -0
- package/dist/swagger/employees.js +131 -0
- package/dist/swagger/index.d.ts +1588 -0
- package/dist/swagger/index.js +62 -0
- package/dist/swagger/llm.d.ts +555 -0
- package/dist/swagger/llm.js +247 -0
- package/dist/swagger/schemas.d.ts +736 -0
- package/dist/swagger/schemas.js +381 -0
- package/package.json +5 -5
- package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-store.md +0 -24
- package/dist/ai/docs/nocobase/data-sources/development/index.md +0 -6
- package/dist/client/119.c6bf8c6433167d81.js +0 -10
- package/dist/client/170.d98eacdc00d9d527.js +0 -10
- package/dist/client/228.b4b709f93b86b6b9.js +0 -10
- package/dist/client/280.003b9e9788599244.js +0 -10
- package/dist/client/290.0f7f441d8a94f03c.js +0 -10
- package/dist/client/331.d547c95410476a69.js +0 -10
- package/dist/client/406.15c09d98faa2ccf1.js +0 -10
- package/dist/client/428.5eb4f53ddbb6a3b8.js +0 -10
- package/dist/client/462.d172d0fe91519e35.js +0 -10
- package/dist/client/486.dcac8f3fcec19c33.js +0 -10
- package/dist/client/502.2b4a51e0a8122e52.js +0 -10
- package/dist/client/525.33a9c8ec28be4ec4.js +0 -10
- package/dist/client/559.959c46d0056ccdc8.js +0 -10
- package/dist/client/561.7ec804ef39ec7dcd.js +0 -10
- package/dist/client/580.35ba54ff91b7fe6d.js +0 -10
- package/dist/client/597.b0d64948d74cf6cb.js +0 -10
- package/dist/client/604.89c674f35b52b4ef.js +0 -10
- package/dist/client/614.aa766080f6b99aab.js +0 -10
- package/dist/client/646.051c1437c9ca4fd4.js +0 -10
- package/dist/client/687.224e569a99cae4bb.js +0 -10
- package/dist/client/699.57c0a1acb723202a.js +0 -10
- package/dist/client/711.92cd94681fde7e05.js +0 -10
- package/dist/client/758.a9741e81911e53c3.js +0 -10
- package/dist/client/768.5177bff46ae71a5b.js +0 -10
- package/dist/client/792.abb57765453bcbcc.js +0 -10
- package/dist/client/820.f72ef2462b61d812.js +0 -10
- package/dist/client/832.0cf69e3f43c320b2.js +0 -10
- package/dist/client/927.d95c74ebb8fd51c9.js +0 -10
- package/dist/client/ai-employees/1.x/selector/AISelectorProvider.d.ts +0 -33
- package/dist/client/ai-employees/ProfileCard.d.ts +0 -15
- package/dist/client/ai-employees/admin/ChatSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/DataSourceSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/Employees.d.ts +0 -10
- package/dist/client/ai-employees/admin/EnableSwitch.d.ts +0 -10
- package/dist/client/ai-employees/admin/InputsFormSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/KnowledgeBaseSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/ModelSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/ProfileSettings.d.ts +0 -12
- package/dist/client/ai-employees/admin/SkillSettings.d.ts +0 -19
- package/dist/client/ai-employees/admin/SystemPrompt.d.ts +0 -10
- package/dist/client/ai-employees/admin/ToolsSettings.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingForm.d.ts +0 -10
- package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingGrid.d.ts +0 -10
- package/dist/client/ai-employees/admin/datasource/components/basic/FieldsTransfer.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/basic/index.d.ts +0 -10
- package/dist/client/ai-employees/admin/datasource/components/form-steps/CollectionSetting.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/form-steps/FieldsSetting.d.ts +0 -15
- package/dist/client/ai-employees/admin/datasource/components/form-steps/FilterSetting.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/components/form-steps/Preview.d.ts +0 -13
- package/dist/client/ai-employees/admin/datasource/components/form-steps/SortSetting.d.ts +0 -15
- package/dist/client/ai-employees/admin/datasource/components/form-steps/index.d.ts +0 -13
- package/dist/client/ai-employees/admin/datasource/components/index.d.ts +0 -9
- package/dist/client/ai-employees/admin/datasource/context.d.ts +0 -17
- package/dist/client/ai-employees/admin/datasource/flow-models/index.d.ts +0 -9
- package/dist/client/ai-employees/admin/datasource/index.d.ts +0 -10
- package/dist/client/ai-employees/admin/hooks.d.ts +0 -39
- package/dist/client/ai-employees/admin/mcp/MCPSettings.d.ts +0 -10
- package/dist/client/ai-employees/admin/mcp/MCPToolsList.d.ts +0 -19
- package/dist/client/ai-employees/admin/mcp/context.d.ts +0 -15
- package/dist/client/ai-employees/admin/mcp/schemas.d.ts +0 -1314
- package/dist/client/ai-employees/ai-coding/CodeHistory.d.ts +0 -10
- package/dist/client/ai-employees/avatars.d.ts +0 -9
- package/dist/client/ai-employees/built-in/utils.d.ts +0 -15
- package/dist/client/ai-employees/business-report/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/business-report/ui/report-utils.d.ts +0 -38
- package/dist/client/ai-employees/chart-generator/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/chart-generator/ui/ECharts.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/AIThinking.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/Attachment.d.ts +0 -14
- package/dist/client/ai-employees/chatbox/AttachmentsHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/ChatBox.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/ContextItemsHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/DebugPanel.d.ts +0 -16
- package/dist/client/ai-employees/chatbox/EditMessageHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/HintMessageHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/MessageRenderer.d.ts +0 -33
- package/dist/client/ai-employees/chatbox/Sender.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/SenderFooter.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/SenderHeader.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/SenderPrefix.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/Upload.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/VirtualList.d.ts +0 -28
- package/dist/client/ai-employees/chatbox/conversations/Conversations.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/conversations/ConversationsList.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/conversations/WorkflowTasksList.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/conversations/common.d.ts +0 -43
- package/dist/client/ai-employees/chatbox/conversations/index.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/generative-ui/DefaultToolCard.d.ts +0 -16
- package/dist/client/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +0 -18
- package/dist/client/ai-employees/chatbox/hooks/useUploadFiles.d.ts +0 -12
- package/dist/client/ai-employees/chatbox/markdown/ECharts.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Form.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Generating.d.ts +0 -10
- package/dist/client/ai-employees/chatbox/markdown/Markdown.d.ts +0 -13
- package/dist/client/ai-employees/chatbox/roles.d.ts +0 -32
- package/dist/client/ai-employees/chatbox/stores/chat-box.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-conversations.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-messages.d.ts +0 -9
- package/dist/client/ai-employees/chatbox/stores/chat-tools.d.ts +0 -51
- package/dist/client/ai-employees/chatbox/stores/create-selectors.d.ts +0 -18
- package/dist/client/ai-employees/chatbox/stores/workflow-tasks.d.ts +0 -45
- package/dist/client/ai-employees/chatbox/utils.d.ts +0 -41
- package/dist/client/ai-employees/context/classic-pages.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/Table.d.ts +0 -12
- package/dist/client/ai-employees/data-modeling/setup.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/data-modeling/ui/useFieldInterfaceOptions.d.ts +0 -14
- package/dist/client/ai-employees/datasource/DatasourceList.d.ts +0 -17
- package/dist/client/ai-employees/datasource/index.d.ts +0 -9
- package/dist/client/ai-employees/flow/events/index.d.ts +0 -9
- package/dist/client/ai-employees/flow/index.d.ts +0 -36
- package/dist/client/ai-employees/flow/models/AIEmployeeActionModel.d.ts +0 -18
- package/dist/client/ai-employees/flow/models/AIEmployeeShortcutModel.d.ts +0 -30
- package/dist/client/ai-employees/shortcuts/ShortcutList.d.ts +0 -10
- package/dist/client/ai-employees/shortcuts/useShortcuts.d.ts +0 -13
- package/dist/client/ai-employees/stores/context-aware.d.ts +0 -19
- package/dist/client/ai-employees/sub-agents/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/suggestions/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/suggestions/ui/SuggestionsOptions.d.ts +0 -13
- package/dist/client/ai-employees/types.d.ts +0 -259
- package/dist/client/ai-employees/workflow-tasks/tools/index.d.ts +0 -10
- package/dist/client/ai-employees/workflow-tasks/ui/WorkflowTaskOutputCard.d.ts +0 -11
- package/dist/client/chat-settings/Messages.d.ts +0 -11
- package/dist/client/chat-settings/StructuredOutput.d.ts +0 -11
- package/dist/client/components/skill-settings.d.ts +0 -22
- package/dist/client/features/components.d.ts +0 -9
- package/dist/client/features/feature-manager.d.ts +0 -9
- package/dist/client/features/index.d.ts +0 -9
- package/dist/client/features/vector-database-provider.d.ts +0 -9
- package/dist/client/features/vector-store-provider.d.ts +0 -9
- package/dist/client/llm-providers/anthropic/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/anthropic/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/anthropic/index.d.ts +0 -10
- package/dist/client/llm-providers/components/Chat.d.ts +0 -10
- package/dist/client/llm-providers/components/ModelSelect.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/dashscope/index.d.ts +0 -10
- package/dist/client/llm-providers/deepseek/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/deepseek/index.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/MessageRenderer.d.ts +0 -13
- package/dist/client/llm-providers/google-genai/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/google-genai/index.d.ts +0 -10
- package/dist/client/llm-providers/kimi/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/kimi/index.d.ts +0 -10
- package/dist/client/llm-providers/mimo/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/mimo/index.d.ts +0 -10
- package/dist/client/llm-providers/mistral/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/mistral/index.d.ts +0 -10
- package/dist/client/llm-providers/ollama/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/ollama/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/ollama/index.d.ts +0 -10
- package/dist/client/llm-providers/openai/completions/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/completions/index.d.ts +0 -10
- package/dist/client/llm-providers/openai/components/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/responses/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/openai/responses/index.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/orcarouter/index.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/ProviderSettings.d.ts +0 -10
- package/dist/client/llm-providers/tongyi/index.d.ts +0 -10
- package/dist/client/llm-providers/xai/ModelSettings.d.ts +0 -10
- package/dist/client/llm-providers/xai/index.d.ts +0 -10
- package/dist/client/llm-services/LLMServices.d.ts +0 -13
- package/dist/client/llm-services/component/DefaultModelSelect.d.ts +0 -10
- package/dist/client/llm-services/component/EnabledModelsSelect.d.ts +0 -23
- package/dist/client/llm-services/component/LLMTestFlight.d.ts +0 -10
- package/dist/client/llm-services/component/ModelOptionsSettings.d.ts +0 -10
- package/dist/client/llm-services/component/UnifiedModelSettings.d.ts +0 -10
- package/dist/client/llm-services/hooks/useLLMServiceCatalog.d.ts +0 -18
- package/dist/client/llm-services/llm-providers.d.ts +0 -27
- package/dist/client/llm-services/utils.d.ts +0 -35
- package/dist/client/manager/ai-feature-manager.d.ts +0 -9
- package/dist/client/manager/ai-manager.d.ts +0 -35
- package/dist/client/repositories/AIConfigRepository.d.ts +0 -60
- package/dist/client/repositories/hooks/useAIConfigRepository.d.ts +0 -10
- package/dist/client/schemas/llms.d.ts +0 -347
- package/dist/client/workflow/nodes/employee/components/AIEmployeeSelect.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/assigness.d.ts +0 -11
- package/dist/client/workflow/nodes/employee/components/file-inputs.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/message-inputs.d.ts +0 -12
- package/dist/client/workflow/nodes/employee/components/model-options.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/structured-output.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/components/users-select.d.ts +0 -15
- package/dist/client/workflow/nodes/employee/components/web-search-options.d.ts +0 -10
- package/dist/client/workflow/nodes/employee/configuration.d.ts +0 -12
- package/dist/client/workflow/nodes/employee/flow-models/feedback.d.ts +0 -14
- package/dist/client/workflow/nodes/llm/ModelSettings.d.ts +0 -11
- package/dist/client/workflow/triggers/ai-employee/Parameters.d.ts +0 -13
- package/dist/client-v2/ai-employees/chatbox/stores/create-selectors.d.ts +0 -18
- /package/dist/{client → client-v2}/ai-employees/AISelection.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/AISelectionControl.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/ai-coding/prompts.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/ai-coding/setup.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatButton.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/SearchSwitch.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolModal.d.ts +0 -0
- /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/UserPrompt.d.ts +0 -0
- /package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useLoadMoreObserver.d.ts +0 -0
- /package/dist/client-v2/ai-employees/{chatbox/stores → stores}/global-store.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/AIEmployeeShortcutListModel.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/index.d.ts +0 -0
- /package/dist/{client/ai-employees/flow/events/ai-context-selection.d.ts → client-v2/workflow/components/index.d.ts} +0 -0
|
@@ -9,11 +9,13 @@
|
|
|
9
9
|
import { Model, Transaction } from '@nocobase/database';
|
|
10
10
|
import PluginAIServer from '../plugin';
|
|
11
11
|
import { AIMessage, SubAgentConversationMetadata, UserDecision } from '../types';
|
|
12
|
+
import type { FrontendToolManifest } from '../../common/frontend-tools';
|
|
12
13
|
export type AIConversationsOptions = {
|
|
13
14
|
systemMessage?: unknown;
|
|
14
15
|
skillSettings?: unknown;
|
|
15
16
|
conversationSettings?: unknown;
|
|
16
17
|
modelSettings?: unknown;
|
|
18
|
+
frontendTools?: FrontendToolManifest[];
|
|
17
19
|
[key: string]: unknown;
|
|
18
20
|
};
|
|
19
21
|
export type AIConversationFilterParams = {
|
|
@@ -29,6 +31,7 @@ export type CreateAIConversationParams = {
|
|
|
29
31
|
title?: string;
|
|
30
32
|
options?: AIConversationsOptions;
|
|
31
33
|
from?: 'main-agent' | 'sub-agent';
|
|
34
|
+
scope?: string;
|
|
32
35
|
transaction?: Transaction;
|
|
33
36
|
category?: 'chat' | 'task';
|
|
34
37
|
};
|
|
@@ -55,7 +58,7 @@ export declare const registerAIConversationReadNotification: (plugin: PluginAISe
|
|
|
55
58
|
export declare class AIConversationsManager {
|
|
56
59
|
protected plugin: PluginAIServer;
|
|
57
60
|
constructor(plugin: PluginAIServer);
|
|
58
|
-
create({ userId, aiEmployee, title, options, from, transaction, category, }: CreateAIConversationParams): Promise<any>;
|
|
61
|
+
create({ userId, aiEmployee, title, options, from, scope, transaction, category, }: CreateAIConversationParams): Promise<any>;
|
|
59
62
|
update({ userId, sessionId, title, options: inputOptions }: UpdateAIConversationParams): Promise<any>;
|
|
60
63
|
getConversation({ sessionId, userId }: {
|
|
61
64
|
sessionId: string;
|
|
@@ -66,6 +66,7 @@ class AIConversationsManager {
|
|
|
66
66
|
title,
|
|
67
67
|
options = {},
|
|
68
68
|
from = "main-agent",
|
|
69
|
+
scope,
|
|
69
70
|
transaction,
|
|
70
71
|
category = "chat"
|
|
71
72
|
}) {
|
|
@@ -77,6 +78,7 @@ class AIConversationsManager {
|
|
|
77
78
|
options,
|
|
78
79
|
thread: 1,
|
|
79
80
|
from,
|
|
81
|
+
...scope !== void 0 ? { scope } : {},
|
|
80
82
|
category
|
|
81
83
|
},
|
|
82
84
|
transaction
|
|
@@ -36,6 +36,7 @@ export declare class AIEmployee {
|
|
|
36
36
|
employee: Model;
|
|
37
37
|
aiChatConversation: AIChatConversation;
|
|
38
38
|
skillSettings?: Record<string, any>;
|
|
39
|
+
userMessageCount: number;
|
|
39
40
|
private plugin;
|
|
40
41
|
private db;
|
|
41
42
|
private ctx;
|
|
@@ -117,7 +118,7 @@ export declare class AIEmployee {
|
|
|
117
118
|
initToolCall(transaction: Transaction, messageId: string, toolCalls: {
|
|
118
119
|
id: string;
|
|
119
120
|
name: string;
|
|
120
|
-
args:
|
|
121
|
+
args: unknown;
|
|
121
122
|
}[]): Promise<Model<AIToolMessage>[]>;
|
|
122
123
|
updateToolCallInterrupted(sessionId: string, messageId: string, toolCallId: string, interruptId: string, interruptAction: {
|
|
123
124
|
order: number;
|
|
@@ -56,12 +56,15 @@ var import_base = require("@langchain/core/callbacks/base");
|
|
|
56
56
|
var import_shared = require("../../ai/tools/sub-agents/shared");
|
|
57
57
|
var import_tool_call_sanitizer = require("./tool-call-sanitizer");
|
|
58
58
|
var import_attachments = require("../attachments");
|
|
59
|
+
var import_frontend_tools = require("../../common/frontend-tools");
|
|
60
|
+
var import_frontend_tools2 = require("../frontend-tools");
|
|
59
61
|
class AIEmployee {
|
|
60
62
|
sessionId;
|
|
61
63
|
from = "main-agent";
|
|
62
64
|
employee;
|
|
63
65
|
aiChatConversation;
|
|
64
66
|
skillSettings;
|
|
67
|
+
userMessageCount = 0;
|
|
65
68
|
plugin;
|
|
66
69
|
db;
|
|
67
70
|
ctx;
|
|
@@ -142,7 +145,12 @@ class AIEmployee {
|
|
|
142
145
|
}
|
|
143
146
|
// === Chat flow ===
|
|
144
147
|
buildState(messages) {
|
|
148
|
+
const toolCallMessage = messages.findLast((message) => {
|
|
149
|
+
var _a;
|
|
150
|
+
return (_a = message.toolCalls) == null ? void 0 : _a.length;
|
|
151
|
+
});
|
|
145
152
|
return {
|
|
153
|
+
messageId: toolCallMessage == null ? void 0 : toolCallMessage.messageId,
|
|
146
154
|
lastMessageIndex: {
|
|
147
155
|
lastHumanMessageIndex: messages.filter((m) => m.role === "user").length,
|
|
148
156
|
lastAIMessageIndex: messages.filter((m) => m.role === this.employee.username).length,
|
|
@@ -199,6 +207,7 @@ class AIEmployee {
|
|
|
199
207
|
const { provider, model, service } = await this.plugin.aiManager.getLLMService({
|
|
200
208
|
...this.model
|
|
201
209
|
});
|
|
210
|
+
this.userMessageCount = (userMessages ?? []).filter((message) => message.role === "user").length;
|
|
202
211
|
const { historyMessages, tools, resolvedTools, middleware, config, state } = await this.initSession({
|
|
203
212
|
messageId,
|
|
204
213
|
provider,
|
|
@@ -747,7 +756,8 @@ ${addSystemPrompt.map((it) => it.content).join("\n")}`;
|
|
|
747
756
|
},
|
|
748
757
|
knowledgeBase,
|
|
749
758
|
availableSkills,
|
|
750
|
-
availableAIEmployees
|
|
759
|
+
availableAIEmployees,
|
|
760
|
+
webSearch: this.webSearch
|
|
751
761
|
});
|
|
752
762
|
const { important } = ((_g = (_f = this.ctx.action) == null ? void 0 : _f.params) == null ? void 0 : _g.values) || {};
|
|
753
763
|
if (important === "GraphRecursionError") {
|
|
@@ -763,11 +773,12 @@ If information is missing, clearly state it in the summary.</Important>`;
|
|
|
763
773
|
async initToolCall(transaction, messageId, toolCalls) {
|
|
764
774
|
const nowTime = /* @__PURE__ */ new Date();
|
|
765
775
|
const toolMap = await this.getToolsMap();
|
|
776
|
+
const currentFrontendTools = toolCalls.some((toolCall) => toolCall.name === import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME) ? await (0, import_frontend_tools2.listCurrentFrontendTools)(this.ctx, this.sessionId) : [];
|
|
766
777
|
return await this.aiToolMessagesRepo.create({
|
|
767
778
|
values: toolCalls.map((toolCall) => {
|
|
768
779
|
const toolsExisted = toolMap.has(toolCall.name);
|
|
769
780
|
const tools = toolMap.get(toolCall.name);
|
|
770
|
-
const auto = this.isAutoCall(tools);
|
|
781
|
+
const auto = toolCall.name === import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME ? toolsExisted && (0, import_frontend_tools2.shouldAutoExecuteFrontendTool)(currentFrontendTools, toolCall.args) : this.isAutoCall(tools);
|
|
771
782
|
return {
|
|
772
783
|
id: this.plugin.snowflake.generate(),
|
|
773
784
|
sessionId: this.sessionId,
|
|
@@ -1184,7 +1195,12 @@ If information is missing, clearly state it in the summary.</Important>`;
|
|
|
1184
1195
|
if (!this.areToolsEnabled()) {
|
|
1185
1196
|
return [];
|
|
1186
1197
|
}
|
|
1198
|
+
const currentFrontendTools = await (0, import_frontend_tools2.listCurrentFrontendTools)(this.ctx, this.sessionId);
|
|
1187
1199
|
const tools = await this.listTools({ scope: "GENERAL" });
|
|
1200
|
+
const getSkill = await this.toolsManager.getTools(import_ai.SYSTEM_TOOLS.GET_SKILL, { ctx: this.ctx });
|
|
1201
|
+
if (getSkill) {
|
|
1202
|
+
tools.push(getSkill);
|
|
1203
|
+
}
|
|
1188
1204
|
if (this.webSearch === true) {
|
|
1189
1205
|
const subAgentWebSearch = await this.toolsManager.getTools(import_ai.SYSTEM_TOOLS.WEB_SEARCH, { ctx: this.ctx });
|
|
1190
1206
|
tools.push(subAgentWebSearch);
|
|
@@ -1211,20 +1227,26 @@ If information is missing, clearly state it in the summary.</Important>`;
|
|
|
1211
1227
|
}
|
|
1212
1228
|
tools.push(tool);
|
|
1213
1229
|
}
|
|
1214
|
-
const systemTools = (0, import_ai.listSystemTools)();
|
|
1230
|
+
const systemTools = [...(0, import_ai.listSystemTools)(), import_frontend_tools.LOAD_FRONTEND_TOOL_NAME, import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME];
|
|
1215
1231
|
if (!this.skillSettings) {
|
|
1216
|
-
return tools;
|
|
1232
|
+
return (0, import_frontend_tools2.prepareToolsForFrontendConversation)(tools, currentFrontendTools);
|
|
1217
1233
|
} else if (!this.skillSettings.toolsVersion) {
|
|
1218
1234
|
const toolFilter = this.skillSettings.tools ?? [];
|
|
1219
|
-
return
|
|
1220
|
-
|
|
1235
|
+
return (0, import_frontend_tools2.prepareToolsForFrontendConversation)(
|
|
1236
|
+
tools.filter(
|
|
1237
|
+
(t) => toolFilter.length === 0 || systemTools.includes(t.definition.name) || toolFilter.includes(t.definition.name)
|
|
1238
|
+
),
|
|
1239
|
+
currentFrontendTools
|
|
1221
1240
|
);
|
|
1222
1241
|
} else {
|
|
1223
1242
|
const toolFilter = this.skillSettings.tools;
|
|
1224
1243
|
if (import_lodash.default.isArray(toolFilter)) {
|
|
1225
|
-
return
|
|
1244
|
+
return (0, import_frontend_tools2.prepareToolsForFrontendConversation)(
|
|
1245
|
+
tools.filter((t) => systemTools.includes(t.definition.name) || toolFilter.includes(t.definition.name)),
|
|
1246
|
+
currentFrontendTools
|
|
1247
|
+
);
|
|
1226
1248
|
} else {
|
|
1227
|
-
return tools;
|
|
1249
|
+
return (0, import_frontend_tools2.prepareToolsForFrontendConversation)(tools, currentFrontendTools);
|
|
1228
1250
|
}
|
|
1229
1251
|
}
|
|
1230
1252
|
}
|
|
@@ -1266,6 +1288,9 @@ If information is missing, clearly state it in the summary.</Important>`;
|
|
|
1266
1288
|
}
|
|
1267
1289
|
const baseTools = await this.getAIEmployeeTools();
|
|
1268
1290
|
const toolMap = await this.getToolsMap();
|
|
1291
|
+
for (const tool of baseTools) {
|
|
1292
|
+
toolMap.set(tool.definition.name, tool);
|
|
1293
|
+
}
|
|
1269
1294
|
const availableSkills = await this.getAvailableSkills();
|
|
1270
1295
|
const skillOwnedToolNames = new Set(availableSkills.flatMap((it) => it.tools ?? []));
|
|
1271
1296
|
const baseToolNames = new Set(
|
|
@@ -98,8 +98,9 @@ const conversationMiddleware = (aiEmployee, options) => {
|
|
|
98
98
|
})
|
|
99
99
|
}),
|
|
100
100
|
beforeAgent: async (state) => {
|
|
101
|
-
const
|
|
102
|
-
const
|
|
101
|
+
const humanMessages = state.messages.filter((x) => x.type === "human");
|
|
102
|
+
const currentHumanMessageIndex = humanMessages.length;
|
|
103
|
+
const userMessages = (aiEmployee.userMessageCount ? humanMessages.slice(-aiEmployee.userMessageCount) : []).map((x) => x).map(convertHumanMessage);
|
|
103
104
|
await aiEmployee.aiChatConversation.withTransaction(async (conversation, transaction) => {
|
|
104
105
|
if (agentThread) {
|
|
105
106
|
await aiEmployee.updateThread(transaction, agentThread);
|
|
@@ -111,6 +112,12 @@ const conversationMiddleware = (aiEmployee, options) => {
|
|
|
111
112
|
await conversation.addMessages(userMessages);
|
|
112
113
|
}
|
|
113
114
|
});
|
|
115
|
+
return {
|
|
116
|
+
lastMessageIndex: {
|
|
117
|
+
...state.lastMessageIndex,
|
|
118
|
+
lastHumanMessageIndex: currentHumanMessageIndex
|
|
119
|
+
}
|
|
120
|
+
};
|
|
114
121
|
},
|
|
115
122
|
afterAgent: async () => {
|
|
116
123
|
aiEmployee.removeAbortController();
|
|
@@ -6,7 +6,7 @@
|
|
|
6
6
|
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
|
-
export declare function getSystemPrompt({ aiEmployee, personal, task, environment, knowledgeBase, availableSkills, availableAIEmployees, }: {
|
|
9
|
+
export declare function getSystemPrompt({ aiEmployee, personal, task, environment, knowledgeBase, availableSkills, availableAIEmployees, webSearch, }: {
|
|
10
10
|
aiEmployee: {
|
|
11
11
|
nickname: string;
|
|
12
12
|
about: string;
|
|
@@ -23,6 +23,7 @@ export declare function getSystemPrompt({ aiEmployee, personal, task, environmen
|
|
|
23
23
|
timezone?: string;
|
|
24
24
|
};
|
|
25
25
|
knowledgeBase?: string;
|
|
26
|
+
webSearch?: boolean;
|
|
26
27
|
availableSkills?: {
|
|
27
28
|
name: string;
|
|
28
29
|
description: string;
|
|
@@ -36,7 +36,8 @@ function getSystemPrompt({
|
|
|
36
36
|
environment,
|
|
37
37
|
knowledgeBase,
|
|
38
38
|
availableSkills,
|
|
39
|
-
availableAIEmployees
|
|
39
|
+
availableAIEmployees,
|
|
40
|
+
webSearch
|
|
40
41
|
}) {
|
|
41
42
|
const getDatabaseQuotingRules = () => {
|
|
42
43
|
const quotingMap = {
|
|
@@ -52,6 +53,11 @@ function getSystemPrompt({
|
|
|
52
53
|
};
|
|
53
54
|
const quotingRules = getDatabaseQuotingRules();
|
|
54
55
|
const isUnderscored = process.env.DB_UNDERSCORED === "true";
|
|
56
|
+
const webSearchInstructions = webSearch === true ? `
|
|
57
|
+
- When using web search, batch all independent search queries needed for this turn into one tool call whenever possible so they can run in parallel.
|
|
58
|
+
- Do not make repeated web search calls with the same or similar queries in the same turn.
|
|
59
|
+
- After receiving usable web search results, synthesize an answer from those results instead of searching again.
|
|
60
|
+
- Search again only when a critical fact is still missing and the new query is materially different from previous queries.` : "";
|
|
55
61
|
return `You are **${aiEmployee.nickname}**, an AI employee working in **NocoBase**, the leading no-code platform.
|
|
56
62
|
|
|
57
63
|
You assist developers in building enterprise management systems (CRM, ERP, OA, etc.) and help end users complete business tasks.
|
|
@@ -114,7 +120,7 @@ This prompt uses a structured tag system to organize your operational framework:
|
|
|
114
120
|
5. **Tool Integration**
|
|
115
121
|
- Utilize system-provided tools to enhance response quality
|
|
116
122
|
- **NEVER refer to tool names when speaking to the USER.** Instead, just say what the tool is doing in natural language.
|
|
117
|
-
- If you need additional information that you can get via tool calls, prefer that over asking the user
|
|
123
|
+
- If you need additional information that you can get via tool calls, prefer that over asking the user.${webSearchInstructions}
|
|
118
124
|
</global>
|
|
119
125
|
|
|
120
126
|
<ai_employee>
|
|
@@ -20,6 +20,7 @@ type SanitizeAdditionalKwargsOptions = {
|
|
|
20
20
|
type SanitizeAdditionalKwargsResult = {
|
|
21
21
|
changed: boolean;
|
|
22
22
|
additionalKwargs?: AdditionalKwargs;
|
|
23
|
+
malformedToolCalls?: unknown[];
|
|
23
24
|
};
|
|
24
25
|
export declare const sanitizeAdditionalKwargsForToolCalls: (additionalKwargs: AdditionalKwargs | undefined, parsedToolCalls?: unknown[] | null, options?: SanitizeAdditionalKwargsOptions) => SanitizeAdditionalKwargsResult;
|
|
25
26
|
export declare const sanitizeLangChainAIMessage: (message: AIMessage, options?: SanitizeAdditionalKwargsOptions) => AIMessage<import("@langchain/core/dist/messages/message").MessageStructure<import("@langchain/core/dist/messages/message").MessageToolSet>>;
|
|
@@ -65,7 +65,8 @@ const sanitizeAdditionalKwargsForToolCalls = (additionalKwargs, parsedToolCalls,
|
|
|
65
65
|
delete sanitized.tool_calls;
|
|
66
66
|
return {
|
|
67
67
|
changed: true,
|
|
68
|
-
additionalKwargs: Object.keys(sanitized).length > 0 ? sanitized : void 0
|
|
68
|
+
additionalKwargs: Object.keys(sanitized).length > 0 ? sanitized : void 0,
|
|
69
|
+
malformedToolCalls: rawToolCalls
|
|
69
70
|
};
|
|
70
71
|
};
|
|
71
72
|
const sanitizeLangChainAIMessage = (message, options = {}) => {
|
|
@@ -40,7 +40,7 @@ const convertAIMessage = ({
|
|
|
40
40
|
model,
|
|
41
41
|
aiMessage
|
|
42
42
|
}) => {
|
|
43
|
-
var _a;
|
|
43
|
+
var _a, _b;
|
|
44
44
|
const message = aiMessage.content;
|
|
45
45
|
const toolCalls = aiMessage.tool_calls;
|
|
46
46
|
const tools = (_a = aiEmployee.skillSettings) == null ? void 0 : _a.tools;
|
|
@@ -91,20 +91,26 @@ const convertAIMessage = ({
|
|
|
91
91
|
if (aiMessage.response_metadata) {
|
|
92
92
|
values.metadata.response_metadata = aiMessage.response_metadata;
|
|
93
93
|
}
|
|
94
|
-
const
|
|
94
|
+
const sanitizedToolCalls = (0, import_tool_call_sanitizer.sanitizeAdditionalKwargsForToolCalls)(aiMessage.additional_kwargs, toolCalls, {
|
|
95
95
|
onDiscard: (info) => {
|
|
96
|
-
var _a2,
|
|
97
|
-
(
|
|
96
|
+
var _a2, _b2;
|
|
97
|
+
(_b2 = aiEmployee.logger) == null ? void 0 : _b2.warn("Discard malformed raw tool calls from AI message", {
|
|
98
98
|
phase: "convertAIMessage",
|
|
99
99
|
messageId: aiMessage.id,
|
|
100
100
|
invalidToolCallCount: ((_a2 = aiMessage.invalid_tool_calls) == null ? void 0 : _a2.length) ?? 0,
|
|
101
101
|
...info
|
|
102
102
|
});
|
|
103
103
|
}
|
|
104
|
-
})
|
|
104
|
+
});
|
|
105
|
+
const additionalKwargs = sanitizedToolCalls.additionalKwargs;
|
|
105
106
|
if (additionalKwargs) {
|
|
106
107
|
values.metadata.additional_kwargs = additionalKwargs;
|
|
107
108
|
}
|
|
109
|
+
if ((_b = sanitizedToolCalls.malformedToolCalls) == null ? void 0 : _b.length) {
|
|
110
|
+
values.metadata.diagnostics = {
|
|
111
|
+
malformedToolCalls: sanitizedToolCalls.malformedToolCalls
|
|
112
|
+
};
|
|
113
|
+
}
|
|
108
114
|
providerInstance.reshapeAIMessage({ aiMessage, values });
|
|
109
115
|
return values;
|
|
110
116
|
};
|
|
@@ -33,12 +33,12 @@ module.exports = __toCommonJS(constants_exports);
|
|
|
33
33
|
const DOCUMENT_PARSE_META_KEY = "documentParse";
|
|
34
34
|
const SUPPORTED_DOCUMENT_EXTNAMES = [
|
|
35
35
|
".pdf",
|
|
36
|
-
".ppt",
|
|
37
36
|
".pptx",
|
|
38
37
|
".doc",
|
|
39
38
|
".docx",
|
|
40
39
|
".xls",
|
|
41
40
|
".xlsx",
|
|
41
|
+
".xlsm",
|
|
42
42
|
".txt",
|
|
43
43
|
".md",
|
|
44
44
|
".json",
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
import type { Context } from '@nocobase/actions';
|
|
10
|
+
import { type FrontendToolManifest } from '../common/frontend-tools';
|
|
11
|
+
import type { WorkContext } from './types/ai-message.type';
|
|
12
|
+
export declare const extractFrontendToolManifests: (workContext: WorkContext[]) => FrontendToolManifest[];
|
|
13
|
+
export declare const listCurrentFrontendTools: (ctx: Context, sessionId?: string) => Promise<FrontendToolManifest[]>;
|
|
14
|
+
export declare const findCurrentFrontendTool: (ctx: Context, toolId: string, sessionId?: string) => Promise<FrontendToolManifest | undefined>;
|
|
15
|
+
export declare const shouldAutoExecuteFrontendTool: (tools: FrontendToolManifest[], args: unknown) => boolean;
|
|
16
|
+
export declare const prepareToolsForFrontendConversation: <T extends {
|
|
17
|
+
definition: {
|
|
18
|
+
name: string;
|
|
19
|
+
description: string;
|
|
20
|
+
};
|
|
21
|
+
}>(tools: T[], frontendTools: FrontendToolManifest[]) => T[];
|
|
22
|
+
export declare const readFrontendToolResult: (ctx: Context, toolCallId: string) => {
|
|
23
|
+
provided: true;
|
|
24
|
+
value: unknown;
|
|
25
|
+
} | undefined;
|
|
@@ -0,0 +1,171 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* This file is part of the NocoBase (R) project.
|
|
3
|
+
* Copyright (c) 2020-2024 NocoBase Co., Ltd.
|
|
4
|
+
* Authors: NocoBase Team.
|
|
5
|
+
*
|
|
6
|
+
* This project is dual-licensed under AGPL-3.0 and NocoBase Commercial License.
|
|
7
|
+
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
|
+
*/
|
|
9
|
+
|
|
10
|
+
var __defProp = Object.defineProperty;
|
|
11
|
+
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
|
12
|
+
var __getOwnPropNames = Object.getOwnPropertyNames;
|
|
13
|
+
var __hasOwnProp = Object.prototype.hasOwnProperty;
|
|
14
|
+
var __export = (target, all) => {
|
|
15
|
+
for (var name in all)
|
|
16
|
+
__defProp(target, name, { get: all[name], enumerable: true });
|
|
17
|
+
};
|
|
18
|
+
var __copyProps = (to, from, except, desc) => {
|
|
19
|
+
if (from && typeof from === "object" || typeof from === "function") {
|
|
20
|
+
for (let key of __getOwnPropNames(from))
|
|
21
|
+
if (!__hasOwnProp.call(to, key) && key !== except)
|
|
22
|
+
__defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
|
|
23
|
+
}
|
|
24
|
+
return to;
|
|
25
|
+
};
|
|
26
|
+
var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
|
|
27
|
+
var frontend_tools_exports = {};
|
|
28
|
+
__export(frontend_tools_exports, {
|
|
29
|
+
extractFrontendToolManifests: () => extractFrontendToolManifests,
|
|
30
|
+
findCurrentFrontendTool: () => findCurrentFrontendTool,
|
|
31
|
+
listCurrentFrontendTools: () => listCurrentFrontendTools,
|
|
32
|
+
prepareToolsForFrontendConversation: () => prepareToolsForFrontendConversation,
|
|
33
|
+
readFrontendToolResult: () => readFrontendToolResult,
|
|
34
|
+
shouldAutoExecuteFrontendTool: () => shouldAutoExecuteFrontendTool
|
|
35
|
+
});
|
|
36
|
+
module.exports = __toCommonJS(frontend_tools_exports);
|
|
37
|
+
var import_zod = require("zod");
|
|
38
|
+
var import_frontend_tools = require("../common/frontend-tools");
|
|
39
|
+
const isRecord = (value) => !!value && typeof value === "object" && !Array.isArray(value);
|
|
40
|
+
const isMessageLike = (value) => !!value && typeof value === "object";
|
|
41
|
+
const normalizeFrontendToolManifests = (value) => {
|
|
42
|
+
if (!Array.isArray(value)) {
|
|
43
|
+
return [];
|
|
44
|
+
}
|
|
45
|
+
const manifests = /* @__PURE__ */ new Map();
|
|
46
|
+
for (const manifest of value) {
|
|
47
|
+
if ((0, import_frontend_tools.isFrontendToolManifest)(manifest) && manifest.id === `${manifest.blockUid}:${manifest.name}`) {
|
|
48
|
+
manifests.set(manifest.id, manifest);
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
return Array.from(manifests.values());
|
|
52
|
+
};
|
|
53
|
+
const extractFrontendToolManifests = (workContext) => {
|
|
54
|
+
const manifests = /* @__PURE__ */ new Map();
|
|
55
|
+
for (const item of workContext) {
|
|
56
|
+
const frontendTools = Array.isArray(item == null ? void 0 : item.frontendTools) ? item.frontendTools : [];
|
|
57
|
+
for (const frontendTool of frontendTools) {
|
|
58
|
+
if ((0, import_frontend_tools.isFrontendToolManifest)(frontendTool) && frontendTool.blockUid === item.uid && frontendTool.id === `${item.uid}:${frontendTool.name}`) {
|
|
59
|
+
manifests.set(frontendTool.id, frontendTool);
|
|
60
|
+
}
|
|
61
|
+
}
|
|
62
|
+
}
|
|
63
|
+
return Array.from(manifests.values());
|
|
64
|
+
};
|
|
65
|
+
const findRequestFrontendTools = (ctx) => {
|
|
66
|
+
var _a, _b;
|
|
67
|
+
const values = (_b = (_a = ctx.action) == null ? void 0 : _a.params) == null ? void 0 : _b.values;
|
|
68
|
+
const messages = Array.isArray(values == null ? void 0 : values.messages) ? values.messages.filter(isMessageLike) : [];
|
|
69
|
+
for (const message of messages) {
|
|
70
|
+
if (message.role !== "user") {
|
|
71
|
+
continue;
|
|
72
|
+
}
|
|
73
|
+
const frontendTools = extractFrontendToolManifests(Array.isArray(message.workContext) ? message.workContext : []);
|
|
74
|
+
if (frontendTools.length) {
|
|
75
|
+
return frontendTools;
|
|
76
|
+
}
|
|
77
|
+
}
|
|
78
|
+
return [];
|
|
79
|
+
};
|
|
80
|
+
const listCurrentFrontendTools = async (ctx, sessionId) => {
|
|
81
|
+
var _a, _b, _c;
|
|
82
|
+
const requestSessionId = (_c = (_b = (_a = ctx.action) == null ? void 0 : _a.params) == null ? void 0 : _b.values) == null ? void 0 : _c.sessionId;
|
|
83
|
+
const currentSessionId = sessionId ?? (typeof requestSessionId === "string" ? requestSessionId : "");
|
|
84
|
+
if (!currentSessionId) {
|
|
85
|
+
return findRequestFrontendTools(ctx);
|
|
86
|
+
}
|
|
87
|
+
const conversationRepository = ctx.db.getRepository("aiConversations");
|
|
88
|
+
const conversation = await conversationRepository.findOne({
|
|
89
|
+
filter: {
|
|
90
|
+
sessionId: currentSessionId
|
|
91
|
+
}
|
|
92
|
+
});
|
|
93
|
+
const options = conversation == null ? void 0 : conversation.options;
|
|
94
|
+
const boundTools = normalizeFrontendToolManifests(isRecord(options) ? options.frontendTools : void 0);
|
|
95
|
+
if (boundTools.length) {
|
|
96
|
+
return boundTools;
|
|
97
|
+
}
|
|
98
|
+
const frontendTools = findRequestFrontendTools(ctx);
|
|
99
|
+
if (!frontendTools.length || !conversation) {
|
|
100
|
+
return frontendTools;
|
|
101
|
+
}
|
|
102
|
+
await conversationRepository.update({
|
|
103
|
+
filter: {
|
|
104
|
+
sessionId: currentSessionId
|
|
105
|
+
},
|
|
106
|
+
values: {
|
|
107
|
+
options: {
|
|
108
|
+
...isRecord(options) ? options : {},
|
|
109
|
+
frontendTools
|
|
110
|
+
}
|
|
111
|
+
}
|
|
112
|
+
});
|
|
113
|
+
return frontendTools;
|
|
114
|
+
};
|
|
115
|
+
const findCurrentFrontendTool = async (ctx, toolId, sessionId) => {
|
|
116
|
+
const tools = await listCurrentFrontendTools(ctx, sessionId);
|
|
117
|
+
return tools.find((tool) => tool.id === toolId);
|
|
118
|
+
};
|
|
119
|
+
const shouldAutoExecuteFrontendTool = (tools, args) => {
|
|
120
|
+
var _a;
|
|
121
|
+
if (!isRecord(args) || typeof args.toolId !== "string") {
|
|
122
|
+
return false;
|
|
123
|
+
}
|
|
124
|
+
return ((_a = tools.find((tool) => tool.id === args.toolId)) == null ? void 0 : _a.permission) === "ALLOW";
|
|
125
|
+
};
|
|
126
|
+
const prepareToolsForFrontendConversation = (tools, frontendTools) => {
|
|
127
|
+
if (!frontendTools.length) {
|
|
128
|
+
return tools.filter(
|
|
129
|
+
(tool) => tool.definition.name !== import_frontend_tools.LOAD_FRONTEND_TOOL_NAME && tool.definition.name !== import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME
|
|
130
|
+
);
|
|
131
|
+
}
|
|
132
|
+
const catalog = frontendTools.map(({ id, name, title, description }) => ({ id, name, title, description }));
|
|
133
|
+
const toolIds = frontendTools.map((tool) => tool.id);
|
|
134
|
+
const toolIdSchema = import_zod.z.enum(toolIds).describe(`Use an exact tool id from this catalog: ${JSON.stringify(catalog)}`);
|
|
135
|
+
return tools.map((tool) => {
|
|
136
|
+
if (tool.definition.name !== import_frontend_tools.LOAD_FRONTEND_TOOL_NAME && tool.definition.name !== import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME) {
|
|
137
|
+
return tool;
|
|
138
|
+
}
|
|
139
|
+
const isLoader = tool.definition.name === import_frontend_tools.LOAD_FRONTEND_TOOL_NAME;
|
|
140
|
+
return {
|
|
141
|
+
...tool,
|
|
142
|
+
definition: {
|
|
143
|
+
...tool.definition,
|
|
144
|
+
description: `${tool.definition.description}
|
|
145
|
+
|
|
146
|
+
frontendToolCatalog: ${JSON.stringify(catalog)}`,
|
|
147
|
+
schema: isLoader ? import_zod.z.object({ toolId: toolIdSchema }) : import_zod.z.object({
|
|
148
|
+
toolId: toolIdSchema,
|
|
149
|
+
args: import_zod.z.record(import_zod.z.string(), import_zod.z.unknown()).default({})
|
|
150
|
+
})
|
|
151
|
+
}
|
|
152
|
+
};
|
|
153
|
+
});
|
|
154
|
+
};
|
|
155
|
+
const readFrontendToolResult = (ctx, toolCallId) => {
|
|
156
|
+
var _a, _b, _c;
|
|
157
|
+
const toolCallResults = (_c = (_b = (_a = ctx.action) == null ? void 0 : _a.params) == null ? void 0 : _b.values) == null ? void 0 : _c.toolCallResults;
|
|
158
|
+
const result = Array.isArray(toolCallResults) ? toolCallResults.find(
|
|
159
|
+
(item) => isRecord(item) && item.id === toolCallId && "result" in item
|
|
160
|
+
) : void 0;
|
|
161
|
+
return result ? { provided: true, value: result.result } : void 0;
|
|
162
|
+
};
|
|
163
|
+
// Annotate the CommonJS export names for ESM import in node:
|
|
164
|
+
0 && (module.exports = {
|
|
165
|
+
extractFrontendToolManifests,
|
|
166
|
+
findCurrentFrontendTool,
|
|
167
|
+
listCurrentFrontendTools,
|
|
168
|
+
prepareToolsForFrontendConversation,
|
|
169
|
+
readFrontendToolResult,
|
|
170
|
+
shouldAutoExecuteFrontendTool
|
|
171
|
+
});
|
|
@@ -7,7 +7,7 @@
|
|
|
7
7
|
* For more information, please refer to: https://www.nocobase.com/agreement.
|
|
8
8
|
*/
|
|
9
9
|
import { AIMessageChunk } from '@langchain/core/messages';
|
|
10
|
-
import { EmbeddingProvider, LLMProvider } from './provider';
|
|
10
|
+
import { EmbeddingProvider, LLMProvider, ReasoningOptions, ResolvedReasoningOptions } from './provider';
|
|
11
11
|
import { EmbeddingsInterface } from '@langchain/core/embeddings';
|
|
12
12
|
import { SupportedModel } from '../manager/ai-manager';
|
|
13
13
|
import { Model } from '@nocobase/database';
|
|
@@ -19,6 +19,7 @@ export declare class DashscopeProvider extends LLMProvider {
|
|
|
19
19
|
createModel(): ReasoningChatOpenAI;
|
|
20
20
|
isToolConflict(): boolean;
|
|
21
21
|
resolveTools(toolDefinitions: any[]): any[];
|
|
22
|
+
protected resolveReasoningOptions(reasoning?: ReasoningOptions): ResolvedReasoningOptions;
|
|
22
23
|
parseResponseMessage(message: Model): {
|
|
23
24
|
key: any;
|
|
24
25
|
createdAt: any;
|
|
@@ -56,6 +56,7 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
56
56
|
const { apiKey } = this.serviceOptions || {};
|
|
57
57
|
const { responseFormat, structuredOutput } = this.modelOptions || {};
|
|
58
58
|
const { name, schema } = structuredOutput || {};
|
|
59
|
+
const reasoningOptions = this.resolveReasoningOptions(this.modelReasoningOptions);
|
|
59
60
|
const modelKwargs = {};
|
|
60
61
|
if (responseFormat) {
|
|
61
62
|
const responseFormatOptions = {
|
|
@@ -76,7 +77,11 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
76
77
|
topP: 0.8,
|
|
77
78
|
temperature: 0.7,
|
|
78
79
|
...this.modelOptions,
|
|
79
|
-
|
|
80
|
+
...reasoningOptions.modelRequestParams || {},
|
|
81
|
+
modelKwargs: {
|
|
82
|
+
...modelKwargs,
|
|
83
|
+
...reasoningOptions.modelKwargs || {}
|
|
84
|
+
},
|
|
80
85
|
configuration: {
|
|
81
86
|
baseURL: this.getResolvedBaseURL()
|
|
82
87
|
},
|
|
@@ -94,6 +99,16 @@ class DashscopeProvider extends import_provider.LLMProvider {
|
|
|
94
99
|
return toolDefinitions;
|
|
95
100
|
}
|
|
96
101
|
}
|
|
102
|
+
resolveReasoningOptions(reasoning) {
|
|
103
|
+
if ((reasoning == null ? void 0 : reasoning.mode) !== "off") {
|
|
104
|
+
return {};
|
|
105
|
+
}
|
|
106
|
+
return {
|
|
107
|
+
modelKwargs: {
|
|
108
|
+
enable_thinking: false
|
|
109
|
+
}
|
|
110
|
+
};
|
|
111
|
+
}
|
|
97
112
|
parseResponseMessage(message) {
|
|
98
113
|
var _a;
|
|
99
114
|
const result = super.parseResponseMessage(message);
|
|
@@ -8,7 +8,7 @@
|
|
|
8
8
|
*/
|
|
9
9
|
import { ChatDeepSeek } from '@langchain/deepseek';
|
|
10
10
|
import { AIMessageChunk, BaseMessage } from '@langchain/core/messages';
|
|
11
|
-
import { LLMProvider } from './provider';
|
|
11
|
+
import { LLMProvider, ReasoningOptions, ResolvedReasoningOptions } from './provider';
|
|
12
12
|
import { LLMProviderMeta } from '../manager/ai-manager';
|
|
13
13
|
import { Model } from '@nocobase/database';
|
|
14
14
|
import type OpenAI from 'openai';
|
|
@@ -33,6 +33,7 @@ export declare class DeepSeekProvider extends LLMProvider {
|
|
|
33
33
|
status: string;
|
|
34
34
|
content: string;
|
|
35
35
|
};
|
|
36
|
+
protected resolveReasoningOptions(reasoning?: ReasoningOptions): ResolvedReasoningOptions;
|
|
36
37
|
protected isApiSupportedAttachment(attachment: AttachmentModel): boolean;
|
|
37
38
|
}
|
|
38
39
|
export declare const deepseekProviderOptions: LLMProviderMeta;
|