@nocobase/plugin-ai 2.2.0-beta.9 → 2.2.0

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.
Files changed (662) hide show
  1. package/client-v2.d.ts +1 -0
  2. package/dist/ai/docs/nocobase/ai-dev/watermark-plugin.md +2 -0
  3. package/dist/ai/docs/nocobase/ai-employees/block/ai-chat-box.md +133 -0
  4. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/documents.md +1 -1
  5. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/index.md +11 -7
  6. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/knowledge-base/settings.md +12 -8
  7. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/rag.md +43 -13
  8. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-database.md +3 -3
  9. package/dist/ai/docs/nocobase/ai-employees/scenarios/company-background-research.md +125 -0
  10. package/dist/ai/docs/nocobase/ai-employees/workflow/nodes/knowledge/create-document.md +1 -1
  11. package/dist/ai/docs/nocobase/api/app/env.md +2 -0
  12. package/dist/ai/docs/nocobase/api/cli/api/resource/create.md +4 -3
  13. package/dist/ai/docs/nocobase/building-tips/ai-fill-js-block-form.md +1092 -0
  14. package/dist/ai/docs/nocobase/building-tips/operations-dashboard.md +513 -0
  15. package/dist/ai/docs/nocobase/data-sources/calendar/calendar-collection.md +100 -3
  16. package/dist/ai/docs/nocobase/data-sources/collection-comment/index.md +92 -39
  17. package/dist/ai/docs/nocobase/data-sources/collection-sql/index.md +150 -29
  18. package/dist/ai/docs/nocobase/data-sources/collection-tree/index.md +93 -5
  19. package/dist/ai/docs/nocobase/data-sources/collection-view/index.md +226 -4
  20. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/china-region.md +122 -5
  21. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/collection-select.md +105 -4
  22. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/json.md +102 -4
  23. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/nano-id.md +104 -4
  24. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/snowflake-id.md +108 -4
  25. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/sort.md +3 -19
  26. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/advanced/uuid.md +104 -4
  27. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/associations/index.md +44 -8
  28. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/color.md +102 -4
  29. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/email.md +104 -4
  30. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/icon.md +102 -4
  31. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/input.md +112 -8
  32. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/integer.md +103 -4
  33. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/number.md +103 -4
  34. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/password.md +102 -4
  35. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/percent.md +104 -5
  36. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/phone.md +104 -4
  37. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/textarea.md +99 -8
  38. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/basic/url.md +103 -4
  39. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/checkbox-group.md +105 -3
  40. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/checkbox.md +102 -4
  41. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/china-region.md +108 -5
  42. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/multiple-select.md +103 -5
  43. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/radio-group.md +106 -4
  44. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/choices/select.md +103 -5
  45. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/date.md +102 -4
  46. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/datetime-without-tz.md +103 -5
  47. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/datetime.md +103 -5
  48. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/index.md +53 -47
  49. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/time.md +102 -4
  50. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/datetime/unix-timestamp.md +103 -5
  51. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/circle.md +102 -4
  52. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/line.md +103 -5
  53. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/point.md +102 -4
  54. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/geometric/polygon.md +102 -4
  55. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/index.md +62 -16
  56. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/media/markdown.md +104 -4
  57. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/media/rich-text.md +105 -5
  58. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/created-at.md +105 -5
  59. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/created-by.md +103 -5
  60. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/space.md +100 -6
  61. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/table-oid.md +102 -4
  62. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/updated-at.md +104 -5
  63. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/system-info/updated-by.md +104 -6
  64. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection-fields/validation.md +68 -58
  65. package/dist/ai/docs/nocobase/data-sources/data-modeling/collection.md +32 -13
  66. package/dist/ai/docs/nocobase/data-sources/data-modeling/index.md +41 -33
  67. package/dist/ai/docs/nocobase/data-sources/data-source-external-mariadb/index.md +114 -6
  68. package/dist/ai/docs/nocobase/data-sources/data-source-external-mssql/index.md +117 -6
  69. package/dist/ai/docs/nocobase/data-sources/data-source-external-mysql/index.md +103 -6
  70. package/dist/ai/docs/nocobase/data-sources/data-source-external-nocobase/index.md +75 -73
  71. package/dist/ai/docs/nocobase/data-sources/data-source-external-oracle/index.md +129 -11
  72. package/dist/ai/docs/nocobase/data-sources/data-source-external-postgres/index.md +110 -6
  73. package/dist/ai/docs/nocobase/data-sources/data-source-kingbase/index.md +75 -49
  74. package/dist/ai/docs/nocobase/data-sources/data-source-main/general-collection.md +116 -15
  75. package/dist/ai/docs/nocobase/data-sources/data-source-main/index.md +92 -62
  76. package/dist/ai/docs/nocobase/data-sources/data-source-main/inheritance-collection.md +97 -10
  77. package/dist/ai/docs/nocobase/data-sources/data-source-manager/external-database.md +97 -58
  78. package/dist/ai/docs/nocobase/data-sources/data-source-manager/index.md +32 -24
  79. package/dist/ai/docs/nocobase/data-sources/data-source-rest-api/index.md +115 -153
  80. package/dist/ai/docs/nocobase/data-sources/external/clickhouse.md +124 -0
  81. package/dist/ai/docs/nocobase/data-sources/external/doris.md +130 -0
  82. package/dist/ai/docs/nocobase/data-sources/external/index.md +140 -0
  83. package/dist/ai/docs/nocobase/data-sources/external/kingbase.md +129 -0
  84. package/dist/ai/docs/nocobase/data-sources/external/mariadb.md +126 -0
  85. package/dist/ai/docs/nocobase/data-sources/external/mssql.md +129 -0
  86. package/dist/ai/docs/nocobase/data-sources/external/mysql.md +115 -0
  87. package/dist/ai/docs/nocobase/data-sources/external/nocobase.md +159 -0
  88. package/dist/ai/docs/nocobase/data-sources/external/oceanbase.md +126 -0
  89. package/dist/ai/docs/nocobase/data-sources/external/oracle.md +158 -0
  90. package/dist/ai/docs/nocobase/data-sources/external/postgresql.md +122 -0
  91. package/dist/ai/docs/nocobase/data-sources/external/rest-api.md +245 -0
  92. package/dist/ai/docs/nocobase/data-sources/field-attachment-url/index.md +100 -12
  93. package/dist/ai/docs/nocobase/data-sources/field-encryption/index.md +48 -47
  94. package/dist/ai/docs/nocobase/data-sources/field-formula/index.md +99 -5
  95. package/dist/ai/docs/nocobase/data-sources/field-markdown-vditor/index.md +105 -5
  96. package/dist/ai/docs/nocobase/data-sources/field-sequence/index.md +102 -5
  97. package/dist/ai/docs/nocobase/data-sources/field-signature/index.md +18 -16
  98. package/dist/ai/docs/nocobase/data-sources/field-sort/index.md +76 -73
  99. package/dist/ai/docs/nocobase/data-sources/file-manager/field-attachment.md +101 -7
  100. package/dist/ai/docs/nocobase/data-sources/file-manager/file-collection.md +101 -14
  101. package/dist/ai/docs/nocobase/data-sources/index.md +49 -33
  102. package/dist/ai/docs/nocobase/data-sources/main/index.md +130 -0
  103. package/dist/ai/docs/nocobase/data-sources/main/kingbase.md +147 -0
  104. package/dist/ai/docs/nocobase/data-sources/main/mariadb.md +59 -0
  105. package/dist/ai/docs/nocobase/data-sources/main/mysql.md +59 -0
  106. package/dist/ai/docs/nocobase/data-sources/main/oceanbase.md +62 -0
  107. package/dist/ai/docs/nocobase/data-sources/main/postgresql.md +61 -0
  108. package/dist/ai/docs/nocobase/file-manager/file-preview/index.md +44 -3
  109. package/dist/ai/docs/nocobase/file-manager/stable-url.md +87 -0
  110. package/dist/ai/docs/nocobase/file-manager/storage/aliyun-oss.md +100 -3
  111. package/dist/ai/docs/nocobase/file-manager/storage/index.md +66 -26
  112. package/dist/ai/docs/nocobase/file-manager/storage/local.md +3 -1
  113. package/dist/ai/docs/nocobase/file-manager/storage/s3-pro.md +58 -7
  114. package/dist/ai/docs/nocobase/get-started/deployment/production.md +24 -2
  115. package/dist/ai/docs/nocobase/get-started/installation/docker-caddy.mdx +3 -0
  116. package/dist/ai/docs/nocobase/get-started/installation/docker-nginx.mdx +3 -0
  117. package/dist/ai/docs/nocobase/get-started/installation/docker.mdx +27 -3
  118. package/dist/ai/docs/nocobase/get-started/installation/env.md +34 -1
  119. package/dist/ai/docs/nocobase/index.md +1 -1
  120. package/dist/ai/docs/nocobase/interface-builder/blocks/data-blocks/comment.md +107 -0
  121. package/dist/ai/docs/nocobase/interface-builder/index.md +7 -6
  122. package/dist/ai/docs/nocobase/interface-builder/ui-layout/desktop.md +97 -0
  123. package/dist/ai/docs/nocobase/interface-builder/ui-layout/index.md +50 -0
  124. package/dist/ai/docs/nocobase/interface-builder/ui-layout/mobile.md +133 -0
  125. package/dist/ai/docs/nocobase/multi-app/multi-app-vs-multi-portal-vs-multi-space.md +159 -0
  126. package/dist/ai/docs/nocobase/multi-app/multi-portal/index.md +195 -0
  127. package/dist/ai/docs/nocobase/nocobase-cli/production/index.md +10 -0
  128. package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/caddy.md +15 -2
  129. package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/index.md +1 -1
  130. package/dist/ai/docs/nocobase/nocobase-cli/production/reverse-proxy/nginx.md +16 -2
  131. package/dist/ai/docs/nocobase/ops-management/migration-manager/built-in-tables.md +1 -2
  132. package/dist/ai/docs/nocobase/plugin-development/build.md +10 -4
  133. package/dist/ai/docs/nocobase/plugin-development/client/appendix/faq.md +1 -1
  134. package/dist/ai/docs/nocobase/plugin-development/client/examples/custom-action.md +2 -0
  135. package/dist/ai/docs/nocobase/plugin-development/client/examples/custom-block.md +2 -0
  136. package/dist/ai/docs/nocobase/plugin-development/client/examples/custom-field.md +2 -0
  137. package/dist/ai/docs/nocobase/plugin-development/client/examples/fullstack-plugin.md +2 -0
  138. package/dist/ai/docs/nocobase/plugin-development/client/examples/settings-page.md +2 -0
  139. package/dist/ai/docs/nocobase/plugin-development/common/i18n.md +3 -3
  140. package/dist/ai/docs/nocobase/plugin-development/server/cache.md +1 -1
  141. package/dist/ai/docs/nocobase/plugin-development/server/collections.md +0 -6
  142. package/dist/ai/docs/nocobase/plugin-development/server/command.md +2 -2
  143. package/dist/ai/docs/nocobase/plugin-development/server/context.md +2 -2
  144. package/dist/ai/docs/nocobase/plugin-development/server/i18n.md +4 -4
  145. package/dist/ai/docs/nocobase/plugin-development/write-your-first-plugin.md +91 -43
  146. package/dist/ai/docs/nocobase/plugins/@nocobase/plugin-block-comment/index.md +14 -0
  147. package/dist/ai/docs/nocobase/runjs/context/ai.md +396 -0
  148. package/dist/ai/docs/nocobase/security/guide.md +23 -0
  149. package/dist/ai/docs/nocobase/tutorials/index.md +20 -1
  150. package/dist/ai/docs/nocobase/users-permissions/sync/index.md +8 -1
  151. package/dist/ai/docs/nocobase/users-permissions/sync/sources/dingtalk.md +138 -0
  152. package/dist/ai/docs/nocobase/users-permissions/sync/sources/ldap.md +87 -0
  153. package/dist/ai/docs/nocobase/workflow/development/api.md +259 -77
  154. package/dist/ai/docs/nocobase/workflow/development/index.md +2 -1
  155. package/dist/ai/docs/nocobase/workflow/development/migration.md +319 -0
  156. package/dist/ai/docs/nocobase/workflow/development/node.md +84 -51
  157. package/dist/ai/docs/nocobase/workflow/development/trigger.md +122 -20
  158. package/dist/ai/docs/nocobase/workflow/nodes/javascript.md +21 -1
  159. package/dist/ai/tools/executeFrontendTool.d.ts +10 -0
  160. package/dist/ai/tools/executeFrontendTool.js +86 -0
  161. package/dist/ai/tools/formFiller.js +4 -3
  162. package/dist/ai/tools/getSkill.js +1 -1
  163. package/dist/ai/tools/knowledge-base-retrieve.js +3 -1
  164. package/dist/ai/tools/loadFrontendTool.d.ts +10 -0
  165. package/dist/ai/tools/loadFrontendTool.js +99 -0
  166. package/dist/ai/tools/subAgentWebSearch.js +20 -15
  167. package/dist/client/23.65ea8c37cd4b884b.js +10 -0
  168. package/dist/client/244.28ee769f796b7c2f.js +10 -0
  169. package/dist/client/264.cc98933ef65608b6.js +10 -0
  170. package/dist/client/336.7a8a8853196ad779.js +11 -0
  171. package/dist/client/416.92b74ca47e4099c4.js +10 -0
  172. package/dist/client/446.d63c38d0309fe250.js +10 -0
  173. package/dist/client/525.94dd4136c1361477.js +10 -0
  174. package/dist/client/663.680bcf6272a8504d.js +10 -0
  175. package/dist/client/681.6ffbc9329b9ac242.js +10 -0
  176. package/dist/client/705.a4fe26945d175e8a.js +10 -0
  177. package/dist/client/ai-employees/1.x/selector/AIContextCollector.d.ts +1 -4
  178. package/dist/client/ai-employees/permissions/PermissionsTab.d.ts +21 -5
  179. package/dist/client/index.d.ts +13 -20
  180. package/dist/client/index.js +8 -8
  181. package/dist/client/workflow/nodes/employee/index.d.ts +2 -23
  182. package/dist/client/workflow/nodes/llm/index.d.ts +2 -52
  183. package/dist/client/workflow/triggers/ai-employee/index.d.ts +2 -83
  184. package/dist/client-v2/23.1bcb6986b40723d8.js +10 -0
  185. package/dist/client-v2/244.39348a95d627d9e3.js +10 -0
  186. package/dist/client-v2/264.be92ff6a4d2612f1.js +10 -0
  187. package/dist/client-v2/336.e406470429e0670e.js +11 -0
  188. package/dist/client-v2/416.0e1c2d9cde43b83d.js +10 -0
  189. package/dist/client-v2/420.a5b929a5e7f330be.js +10 -0
  190. package/dist/client-v2/446.073d450882db29fd.js +10 -0
  191. package/dist/client-v2/457.d72febb89e88fc00.js +10 -0
  192. package/dist/client-v2/663.342341f0b2b412d8.js +10 -0
  193. package/dist/client-v2/681.6890caa389564ff7.js +10 -0
  194. package/dist/client-v2/705.f2e1b26a3f000075.js +10 -0
  195. package/dist/{client/ai-employees/admin/AvatarSelect.d.ts → client-v2/ai-employees/AIEmployeeDropdown.d.ts} +8 -9
  196. package/dist/client-v2/ai-employees/AIEmployeeShortcut.d.ts +11 -2
  197. package/dist/{client → client-v2}/ai-employees/AddContextButton.d.ts +3 -1
  198. package/dist/{client → client-v2}/ai-employees/ai-coding/AICodingButton.d.ts +2 -1
  199. package/dist/{client/ai-employees/chatbox/AIEmployeeSwitch.d.ts → client-v2/ai-employees/chatbox/components/AIEmployeeSwitcher.d.ts} +1 -0
  200. package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/Actions.d.ts +2 -4
  201. package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/AddLLMModal.d.ts +2 -4
  202. package/dist/client-v2/ai-employees/chatbox/components/Attachments.d.ts +27 -0
  203. package/dist/{client/ai-employees/permissions/Permissions.d.ts → client-v2/ai-employees/chatbox/components/ChatBox.d.ts} +2 -2
  204. package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatBoxLayout.d.ts +1 -1
  205. package/dist/{client/ai-employees/chatbox/markdown/Code.d.ts → client-v2/ai-employees/chatbox/components/ChatBoxUnreadBadge.d.ts} +6 -7
  206. package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ContextItem.d.ts +1 -1
  207. package/dist/client-v2/ai-employees/chatbox/components/Conversations.d.ts +18 -0
  208. package/dist/{client/ai-employees/ai-coding/markdown/Code.d.ts → client-v2/ai-employees/chatbox/components/Markdown.d.ts} +12 -3
  209. package/dist/{client/ai-employees/1.x/selector/BlockSelector.d.ts → client-v2/ai-employees/chatbox/components/MessageContent.d.ts} +3 -4
  210. package/dist/client-v2/ai-employees/chatbox/components/MessageRenderers.d.ts +39 -0
  211. package/dist/{client/ai-employees/admin/datasource/components/DatasourceSettingDetail.d.ts → client-v2/ai-employees/chatbox/components/Messages.d.ts} +4 -4
  212. package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ModelSwitcher.d.ts +4 -0
  213. package/dist/client-v2/ai-employees/chatbox/components/Sender.d.ts +42 -0
  214. package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolCard.d.ts +7 -5
  215. package/dist/client-v2/ai-employees/chatbox/components/index.d.ts +14 -0
  216. package/dist/client-v2/ai-employees/chatbox/hooks/reasoning-stream.d.ts +10 -0
  217. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChat.d.ts +29 -27
  218. package/dist/client-v2/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +5 -3
  219. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatBoxEffect.d.ts +2 -1
  220. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatConversationActions.d.ts +5 -4
  221. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useChatMessageActions.d.ts +12 -6
  222. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useToolCallActions.d.ts +4 -2
  223. package/dist/client-v2/ai-employees/chatbox/hooks/useUploadFiles.d.ts +56 -0
  224. package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useWorkflowTasks.d.ts +4 -3
  225. package/dist/client-v2/ai-employees/chatbox/index.d.ts +17 -0
  226. package/dist/{client → client-v2}/ai-employees/chatbox/model.d.ts +9 -2
  227. package/dist/client-v2/ai-employees/chatbox/roles.d.ts +11 -0
  228. package/dist/client-v2/ai-employees/chatbox/stores/chat-box.d.ts +46 -81
  229. package/dist/client-v2/ai-employees/chatbox/stores/chat-conversations.d.ts +8 -25
  230. package/dist/client-v2/ai-employees/chatbox/stores/chat-messages.d.ts +23 -63
  231. package/dist/client-v2/ai-employees/chatbox/stores/chat-sender.d.ts +43 -0
  232. package/dist/{client → client-v2}/ai-employees/chatbox/stores/chat-tool-call.d.ts +6 -19
  233. package/dist/client-v2/ai-employees/chatbox/stores/chat-tools.d.ts +36 -0
  234. package/dist/client-v2/ai-employees/chatbox/stores/mounted-chat-boxes.d.ts +20 -0
  235. package/dist/client-v2/ai-employees/chatbox/stores/runtime.d.ts +43 -0
  236. package/dist/client-v2/ai-employees/chatbox/stores/workflow-tasks.d.ts +72 -0
  237. package/dist/client-v2/ai-employees/chatbox/upload.d.ts +19 -0
  238. package/dist/client-v2/ai-employees/chatbox/utils.d.ts +85 -0
  239. package/dist/{client/ai-employees/data-visualization/context.d.ts → client-v2/ai-employees/context/chart-config.d.ts} +1 -1
  240. package/dist/{client → client-v2}/ai-employees/context/code-editor.d.ts +1 -1
  241. package/dist/{client → client-v2}/ai-employees/context/datasource.d.ts +1 -1
  242. package/dist/{client → client-v2}/ai-employees/context/flow-models.d.ts +1 -1
  243. package/dist/client-v2/ai-employees/data-modeling/setup.d.ts +15 -0
  244. package/dist/{client → client-v2}/ai-employees/datasource/DatasourceSelector.d.ts +6 -2
  245. package/dist/{client/ai-employees/admin/datasource/flow-models/DatasourceSettingModel.d.ts → client-v2/ai-employees/flow/index.d.ts} +4 -6
  246. package/dist/{client → client-v2}/ai-employees/form-filler/tools/index.d.ts +1 -1
  247. package/dist/{client/ai-employees/ai-coding/tools/index.d.ts → client-v2/ai-employees/frontend-tools.d.ts} +3 -3
  248. package/dist/{client → client-v2}/ai-employees/stores/ai-selection.d.ts +4 -4
  249. package/dist/{client → client-v2}/ai-employees/stores/dialog-controller.d.ts +4 -4
  250. package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportCard.d.ts +2 -2
  251. package/dist/{client/ai-employees/business-report/ui → client-v2/ai-employees/tools}/BusinessReportModal.d.ts +2 -2
  252. package/dist/{client/ai-employees/1.x/selector/withAISelectable.d.ts → client-v2/ai-employees/tools/ChartGeneratorCard.d.ts} +5 -4
  253. package/dist/{client/ai-employees/ai-coding/ui → client-v2/ai-employees/tools}/CodeToolCard.d.ts +1 -1
  254. package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingCard.d.ts +3 -5
  255. package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools}/DataModelingModal.d.ts +4 -6
  256. package/dist/{client/ai-employees/sub-agents/ui → client-v2/ai-employees/tools}/SubAgentDispatchCard.d.ts +4 -9
  257. package/dist/client-v2/ai-employees/tools/SuggestionsOptionsCard.d.ts +16 -0
  258. package/dist/client-v2/ai-employees/tools/WorkflowTaskOutputCard.d.ts +16 -0
  259. package/dist/{client/ai-employees/ai-coding/tools/context-tools.d.ts → client-v2/ai-employees/tools/ai-coding.d.ts} +3 -1
  260. package/dist/client-v2/ai-employees/tools/business-report-utils.d.ts +45 -0
  261. package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/CollectionNode.d.ts +2 -3
  262. package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Diagram.d.ts +1 -1
  263. package/dist/{client/ai-employees/data-modeling/ui → client-v2/ai-employees/tools/data-modeling}/Table.d.ts +2 -2
  264. package/dist/client-v2/ai-employees/tools/data-modeling/legacy-template.d.ts +13 -0
  265. package/dist/client-v2/ai-employees/tools/data-modeling/runtime.d.ts +15 -0
  266. package/dist/{client/ai-employees → client-v2/ai-employees/tools}/data-modeling/types.d.ts +27 -4
  267. package/dist/client-v2/ai-employees/tools/data-modeling/useFieldInterfaceOptions.d.ts +151 -0
  268. package/dist/{client/ai-employees/data-visualization/tools/index.d.ts → client-v2/ai-employees/tools/data-visualization.d.ts} +1 -1
  269. package/dist/client-v2/ai-employees/tools/index.d.ts +32 -0
  270. package/dist/client-v2/ai-employees/types.d.ts +131 -7
  271. package/dist/client-v2/block/ai-chat-box/AIChatBoxBlockModel.d.ts +21 -0
  272. package/dist/{client/workflow/nodes/employee/flow-models/task.d.ts → client-v2/block/ai-chat-box/AIChatBoxCoreModel.d.ts} +1 -1
  273. package/dist/{client/admin-settings/AdminSettings.d.ts → client-v2/block/ai-chat-box/components/AIChatBoxCoreView.d.ts} +1 -1
  274. package/dist/{client/ai-employees/AIEmployeeListItem.d.ts → client-v2/block/ai-chat-box/components/AIChatBoxView.d.ts} +3 -5
  275. package/dist/client-v2/block/ai-chat-box/index.d.ts +14 -0
  276. package/dist/client-v2/block/ai-chat-box/settings.d.ts +12 -0
  277. package/dist/client-v2/block/ai-chat-box/sub-models.d.ts +26 -0
  278. package/dist/client-v2/block/ai-chat-box/types.d.ts +38 -0
  279. package/dist/client-v2/block/ai-chat-box/utils.d.ts +26 -0
  280. package/dist/client-v2/components/RemoteSelect.d.ts +43 -0
  281. package/dist/client-v2/f0053e745af0ad03.svg +50 -0
  282. package/dist/client-v2/index.d.ts +11 -12
  283. package/dist/client-v2/index.js +37 -1
  284. package/dist/client-v2/llm-providers/forms.d.ts +46 -0
  285. package/dist/client-v2/llm-providers/index.d.ts +25 -0
  286. package/dist/client-v2/llm-services/model-select.d.ts +33 -0
  287. package/dist/client-v2/llm-services/utils.d.ts +14 -0
  288. package/dist/client-v2/locale.d.ts +14 -0
  289. package/dist/client-v2/manager/ai-manager.d.ts +62 -0
  290. package/dist/client-v2/manager/frontend-tool-registry.d.ts +30 -0
  291. package/dist/client-v2/models/ai-employees/AIEmployeeActionModel.d.ts +36 -0
  292. package/dist/client-v2/models/ai-employees/AIEmployeeShortcutModel.d.ts +52 -0
  293. package/dist/client-v2/pages/AdminSettingsPage.d.ts +24 -0
  294. package/dist/client-v2/pages/DatasourceSettingsPage.d.ts +62 -0
  295. package/dist/client-v2/pages/EmployeesPage.d.ts +74 -0
  296. package/dist/client-v2/pages/LLMServicesPage.d.ts +80 -0
  297. package/dist/client-v2/pages/MCPSettingsPage.d.ts +73 -0
  298. package/dist/client-v2/pages/drawerWidth.d.ts +10 -0
  299. package/dist/client-v2/pages/permissions/Permissions.d.ts +67 -0
  300. package/dist/client-v2/pages/permissions/PermissionsTab.d.ts +12 -0
  301. package/dist/client-v2/pages/useUnsavedChangesBeforeClose.d.ts +29 -0
  302. package/dist/client-v2/plugin.d.ts +33 -0
  303. package/dist/client-v2/repositories/AIConfigRepository.d.ts +5 -23
  304. package/dist/client-v2/runjs/registerAIEmployeeRunJSFacade.d.ts +21 -0
  305. package/dist/client-v2/workflow/components/FormValueRegistry.d.ts +12 -0
  306. package/dist/{client/components/ListCollapse.d.ts → client-v2/workflow/components/WorkflowListCollapse.d.ts} +4 -4
  307. package/dist/client-v2/workflow/constants.d.ts +26 -0
  308. package/dist/client-v2/workflow/nodes/employee/components/AIEmployeeFieldset.d.ts +11 -0
  309. package/dist/{client/ai-employees/common/CodeHighlight.d.ts → client-v2/workflow/nodes/employee/components/AIEmployeeSelect.d.ts} +5 -6
  310. package/dist/{client/ai-employees/ContextAwareTooltip.d.ts → client-v2/workflow/nodes/employee/components/Assignees.d.ts} +2 -1
  311. package/dist/client-v2/workflow/nodes/employee/components/FeedbackSettings.d.ts +17 -0
  312. package/dist/client-v2/workflow/nodes/employee/components/FileInputs.d.ts +11 -0
  313. package/dist/{client/ai-employees/AIEmployeesProvider.d.ts → client-v2/workflow/nodes/employee/components/MessageInputs.d.ts} +2 -3
  314. package/dist/client-v2/workflow/nodes/employee/components/ModelOptions.d.ts +17 -0
  315. package/dist/{client/ai-employees/admin/datasource/components/basic/CollectionCascader.d.ts → client-v2/workflow/nodes/employee/components/SkillSettings.d.ts} +6 -3
  316. package/dist/client-v2/workflow/nodes/employee/components/StructuredOutput.d.ts +11 -0
  317. package/dist/client-v2/workflow/nodes/employee/components/UserInput.d.ts +18 -0
  318. package/dist/{client/ai-employees/AISettingsProvider.d.ts → client-v2/workflow/nodes/employee/components/WebSearchOptions.d.ts} +6 -8
  319. package/dist/client-v2/workflow/nodes/employee/index.d.ts +23 -0
  320. package/dist/client-v2/workflow/nodes/llm/components/LLMFieldset.d.ts +12 -0
  321. package/dist/{client/ai-employees/chatbox → client-v2/workflow/nodes/llm/components}/Messages.d.ts +2 -1
  322. package/dist/client-v2/workflow/nodes/llm/components/StructuredOutput.d.ts +11 -0
  323. package/dist/client-v2/workflow/nodes/llm/index.d.ts +30 -0
  324. package/dist/client-v2/workflow/register.d.ts +10 -0
  325. package/dist/client-v2/workflow/triggers/ai-employee/AIEmployeeTriggerConfig.d.ts +11 -0
  326. package/dist/client-v2/workflow/triggers/ai-employee/Parameters.d.ts +11 -0
  327. package/dist/client-v2/workflow/triggers/ai-employee/index.d.ts +25 -0
  328. package/dist/client-v2/workflow/types.d.ts +128 -0
  329. package/dist/collections/ai-employees.d.ts +1 -0
  330. package/dist/collections/ai-employees.js +1 -0
  331. package/dist/common/ai-employee-validation.d.ts +15 -0
  332. package/dist/common/ai-employee-validation.js +61 -0
  333. package/dist/common/error-codes.d.ts +13 -0
  334. package/dist/common/error-codes.js +48 -0
  335. package/dist/common/frontend-tools.d.ts +26 -0
  336. package/dist/common/frontend-tools.js +57 -0
  337. package/dist/common/llm-service-models.d.ts +16 -0
  338. package/dist/common/llm-service-models.js +84 -0
  339. package/dist/externalVersion.js +23 -26
  340. package/dist/locale/de-DE.json +2 -1
  341. package/dist/locale/en-US.json +129 -1
  342. package/dist/locale/es-ES.json +2 -1
  343. package/dist/locale/fr-FR.json +2 -1
  344. package/dist/locale/hu-HU.json +2 -1
  345. package/dist/locale/id-ID.json +2 -1
  346. package/dist/locale/it-IT.json +2 -1
  347. package/dist/locale/ja-JP.json +2 -1
  348. package/dist/locale/ko-KR.json +2 -1
  349. package/dist/locale/nl-NL.json +2 -1
  350. package/dist/locale/pt-BR.json +2 -1
  351. package/dist/locale/ru-RU.json +2 -1
  352. package/dist/locale/tr-TR.json +2 -1
  353. package/dist/locale/uk-UA.json +2 -1
  354. package/dist/locale/vi-VN.json +2 -1
  355. package/dist/locale/zh-CN.json +129 -1
  356. package/dist/locale/zh-TW.json +2 -1
  357. package/dist/node_modules/@langchain/mistralai/package.json +1 -1
  358. package/dist/node_modules/@langchain/xai/package.json +1 -1
  359. package/dist/node_modules/fs-extra/package.json +1 -1
  360. package/dist/node_modules/jsonrepair/package.json +1 -1
  361. package/dist/node_modules/just-bash/package.json +1 -1
  362. package/dist/node_modules/nodejs-snowflake/package.json +1 -1
  363. package/dist/node_modules/openai/package.json +1 -1
  364. package/dist/node_modules/zod/package.json +1 -1
  365. package/dist/server/ai-employees/ai-conversations.d.ts +4 -1
  366. package/dist/server/ai-employees/ai-conversations.js +2 -0
  367. package/dist/server/ai-employees/ai-employee.d.ts +5 -1
  368. package/dist/server/ai-employees/ai-employee.js +149 -49
  369. package/dist/server/ai-employees/ai-knowledge-base.d.ts +21 -1
  370. package/dist/server/ai-employees/ai-knowledge-base.js +76 -8
  371. package/dist/server/ai-employees/middleware/conversation.js +9 -2
  372. package/dist/server/ai-employees/prompts.d.ts +2 -1
  373. package/dist/server/ai-employees/prompts.js +8 -2
  374. package/dist/server/ai-employees/reasoning-stream-state.d.ts +23 -0
  375. package/dist/server/ai-employees/reasoning-stream-state.js +63 -0
  376. package/dist/server/ai-employees/tool-call-sanitizer.d.ts +1 -0
  377. package/dist/server/ai-employees/tool-call-sanitizer.js +2 -1
  378. package/dist/server/ai-employees/utils.js +11 -5
  379. package/dist/server/attachments.d.ts +24 -0
  380. package/dist/server/attachments.js +204 -0
  381. package/dist/server/collections/ai-conversations.js +5 -0
  382. package/dist/server/collections/ai-usage-events.d.ts +10 -0
  383. package/dist/server/collections/ai-usage-events.js +183 -0
  384. package/dist/server/document-loader/cached.d.ts +1 -0
  385. package/dist/server/document-loader/cached.js +18 -9
  386. package/dist/server/document-loader/constants.js +1 -1
  387. package/dist/server/document-loader/loader.d.ts +0 -1
  388. package/dist/server/document-loader/loader.js +25 -8
  389. package/dist/server/document-loader/types.d.ts +7 -0
  390. package/dist/server/features/knowledge-base.d.ts +2 -0
  391. package/dist/server/frontend-tools.d.ts +25 -0
  392. package/dist/server/frontend-tools.js +171 -0
  393. package/dist/server/llm-providers/anthropic.d.ts +2 -1
  394. package/dist/server/llm-providers/anthropic.js +1 -3
  395. package/dist/server/llm-providers/common/reasoning.js +18 -10
  396. package/dist/server/llm-providers/dashscope.d.ts +2 -1
  397. package/dist/server/llm-providers/dashscope.js +16 -1
  398. package/dist/{client/ai-employees/datasource → server/llm-providers/deepseek}/index.d.ts +2 -1
  399. package/dist/server/llm-providers/deepseek/index.js +32 -0
  400. package/dist/server/llm-providers/deepseek/provider.d.ts +57 -0
  401. package/dist/server/llm-providers/deepseek/provider.js +320 -0
  402. package/dist/server/llm-providers/deepseek/reasoning.d.ts +83 -0
  403. package/dist/server/llm-providers/deepseek/reasoning.js +285 -0
  404. package/dist/server/llm-providers/google-genai.d.ts +1 -1
  405. package/dist/server/llm-providers/google-genai.js +1 -5
  406. package/dist/server/llm-providers/kimi/provider.d.ts +2 -1
  407. package/dist/server/llm-providers/kimi/provider.js +22 -2
  408. package/dist/server/llm-providers/mistral.d.ts +36 -2
  409. package/dist/server/llm-providers/mistral.js +62 -2
  410. package/dist/server/llm-providers/openai/completions.d.ts +2 -1
  411. package/dist/server/llm-providers/openai/completions.js +17 -1
  412. package/dist/server/llm-providers/openai/responses.d.ts +2 -1
  413. package/dist/server/llm-providers/openai/responses.js +17 -1
  414. package/dist/server/llm-providers/orcarouter.d.ts +35 -0
  415. package/dist/server/llm-providers/{deepseek.js → orcarouter.js} +68 -56
  416. package/dist/server/llm-providers/provider.d.ts +11 -2
  417. package/dist/server/llm-providers/provider.js +36 -4
  418. package/dist/server/llm-providers/shengsuanyun.d.ts +29 -0
  419. package/dist/server/llm-providers/shengsuanyun.js +114 -0
  420. package/dist/server/manager/ai-chat-conversation.js +2 -0
  421. package/dist/server/manager/ai-context-datasource-manager.js +34 -7
  422. package/dist/server/manager/ai-feature-manager.js +1 -1
  423. package/dist/server/manager/ai-manager.d.ts +5 -1
  424. package/dist/server/manager/ai-manager.js +11 -3
  425. package/dist/server/manager/ai-usage-events.d.ts +49 -0
  426. package/dist/server/manager/ai-usage-events.js +195 -0
  427. package/dist/server/manager/work-context-handler.js +10 -3
  428. package/dist/server/migrations/20260501000000-ai-employee-knowledge-base-retrieval-strategy.d.ts +14 -0
  429. package/dist/server/migrations/20260501000000-ai-employee-knowledge-base-retrieval-strategy.js +49 -0
  430. package/dist/server/plugin.d.ts +1 -0
  431. package/dist/server/plugin.js +47 -0
  432. package/dist/server/resource/aiConversations.d.ts +2 -0
  433. package/dist/server/resource/aiConversations.js +77 -4
  434. package/dist/server/resource/aiEmployees.d.ts +2 -0
  435. package/dist/server/resource/aiEmployees.js +70 -0
  436. package/dist/server/resource/aiWorkflowTasks.js +9 -1
  437. package/dist/server/resource/llmServices.d.ts +11 -0
  438. package/dist/server/resource/llmServices.js +85 -0
  439. package/dist/server/types/ai-message.type.d.ts +4 -0
  440. package/dist/server/types/knowledge-base.type.d.ts +8 -3
  441. package/dist/server/utils.d.ts +5 -2
  442. package/dist/server/utils.js +11 -19
  443. package/dist/server/workflow/nodes/employee/files.d.ts +3 -1
  444. package/dist/server/workflow/nodes/employee/files.js +31 -5
  445. package/dist/swagger/common.d.ts +143 -0
  446. package/dist/swagger/common.js +144 -0
  447. package/dist/swagger/employees.d.ts +301 -0
  448. package/dist/swagger/employees.js +131 -0
  449. package/dist/swagger/index.d.ts +1617 -0
  450. package/dist/swagger/index.js +62 -0
  451. package/dist/swagger/llm.d.ts +563 -0
  452. package/dist/swagger/llm.js +255 -0
  453. package/dist/swagger/schemas.d.ts +757 -0
  454. package/dist/swagger/schemas.js +392 -0
  455. package/package.json +5 -5
  456. package/dist/ai/docs/nocobase/ai-employees/knowledge-base/vector-store.md +0 -24
  457. package/dist/ai/docs/nocobase/data-sources/development/index.md +0 -6
  458. package/dist/client/119.c6bf8c6433167d81.js +0 -10
  459. package/dist/client/170.d98eacdc00d9d527.js +0 -10
  460. package/dist/client/228.b4b709f93b86b6b9.js +0 -10
  461. package/dist/client/280.003b9e9788599244.js +0 -10
  462. package/dist/client/290.0f7f441d8a94f03c.js +0 -10
  463. package/dist/client/331.d547c95410476a69.js +0 -10
  464. package/dist/client/406.15c09d98faa2ccf1.js +0 -10
  465. package/dist/client/428.5eb4f53ddbb6a3b8.js +0 -10
  466. package/dist/client/462.d172d0fe91519e35.js +0 -10
  467. package/dist/client/486.dcac8f3fcec19c33.js +0 -10
  468. package/dist/client/502.2b4a51e0a8122e52.js +0 -10
  469. package/dist/client/525.33a9c8ec28be4ec4.js +0 -10
  470. package/dist/client/559.9f97ebcdb0bd6231.js +0 -10
  471. package/dist/client/561.7ec804ef39ec7dcd.js +0 -10
  472. package/dist/client/580.35ba54ff91b7fe6d.js +0 -10
  473. package/dist/client/597.b0d64948d74cf6cb.js +0 -10
  474. package/dist/client/604.89c674f35b52b4ef.js +0 -10
  475. package/dist/client/614.aa766080f6b99aab.js +0 -10
  476. package/dist/client/646.d4483b4ff23da0a0.js +0 -10
  477. package/dist/client/687.224e569a99cae4bb.js +0 -10
  478. package/dist/client/699.57c0a1acb723202a.js +0 -10
  479. package/dist/client/711.92cd94681fde7e05.js +0 -10
  480. package/dist/client/758.a9741e81911e53c3.js +0 -10
  481. package/dist/client/768.5177bff46ae71a5b.js +0 -10
  482. package/dist/client/792.abb57765453bcbcc.js +0 -10
  483. package/dist/client/820.f72ef2462b61d812.js +0 -10
  484. package/dist/client/832.0cf69e3f43c320b2.js +0 -10
  485. package/dist/client/927.d95c74ebb8fd51c9.js +0 -10
  486. package/dist/client/ai-employees/1.x/selector/AISelectorProvider.d.ts +0 -33
  487. package/dist/client/ai-employees/ProfileCard.d.ts +0 -15
  488. package/dist/client/ai-employees/admin/ChatSettings.d.ts +0 -10
  489. package/dist/client/ai-employees/admin/DataSourceSettings.d.ts +0 -10
  490. package/dist/client/ai-employees/admin/Employees.d.ts +0 -10
  491. package/dist/client/ai-employees/admin/EnableSwitch.d.ts +0 -10
  492. package/dist/client/ai-employees/admin/InputsFormSettings.d.ts +0 -10
  493. package/dist/client/ai-employees/admin/KnowledgeBaseSettings.d.ts +0 -10
  494. package/dist/client/ai-employees/admin/ModelSettings.d.ts +0 -10
  495. package/dist/client/ai-employees/admin/ProfileSettings.d.ts +0 -12
  496. package/dist/client/ai-employees/admin/SkillSettings.d.ts +0 -19
  497. package/dist/client/ai-employees/admin/SystemPrompt.d.ts +0 -10
  498. package/dist/client/ai-employees/admin/Templates.d.ts +0 -10
  499. package/dist/client/ai-employees/admin/ToolsSettings.d.ts +0 -17
  500. package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingForm.d.ts +0 -10
  501. package/dist/client/ai-employees/admin/datasource/components/DatasourceSettingGrid.d.ts +0 -10
  502. package/dist/client/ai-employees/admin/datasource/components/basic/FieldsTransfer.d.ts +0 -17
  503. package/dist/client/ai-employees/admin/datasource/components/basic/index.d.ts +0 -10
  504. package/dist/client/ai-employees/admin/datasource/components/form-steps/CollectionSetting.d.ts +0 -17
  505. package/dist/client/ai-employees/admin/datasource/components/form-steps/FieldsSetting.d.ts +0 -15
  506. package/dist/client/ai-employees/admin/datasource/components/form-steps/FilterSetting.d.ts +0 -17
  507. package/dist/client/ai-employees/admin/datasource/components/form-steps/Preview.d.ts +0 -13
  508. package/dist/client/ai-employees/admin/datasource/components/form-steps/SortSetting.d.ts +0 -15
  509. package/dist/client/ai-employees/admin/datasource/components/form-steps/index.d.ts +0 -13
  510. package/dist/client/ai-employees/admin/datasource/components/index.d.ts +0 -9
  511. package/dist/client/ai-employees/admin/datasource/context.d.ts +0 -17
  512. package/dist/client/ai-employees/admin/datasource/flow-models/index.d.ts +0 -9
  513. package/dist/client/ai-employees/admin/datasource/index.d.ts +0 -10
  514. package/dist/client/ai-employees/admin/hooks.d.ts +0 -39
  515. package/dist/client/ai-employees/admin/mcp/MCPSettings.d.ts +0 -10
  516. package/dist/client/ai-employees/admin/mcp/MCPToolsList.d.ts +0 -19
  517. package/dist/client/ai-employees/admin/mcp/context.d.ts +0 -15
  518. package/dist/client/ai-employees/admin/mcp/schemas.d.ts +0 -1314
  519. package/dist/client/ai-employees/ai-coding/CodeHistory.d.ts +0 -10
  520. package/dist/client/ai-employees/avatars.d.ts +0 -9
  521. package/dist/client/ai-employees/built-in/utils.d.ts +0 -15
  522. package/dist/client/ai-employees/business-report/tools/index.d.ts +0 -10
  523. package/dist/client/ai-employees/business-report/ui/report-utils.d.ts +0 -38
  524. package/dist/client/ai-employees/chart-generator/tools/index.d.ts +0 -10
  525. package/dist/client/ai-employees/chart-generator/ui/ECharts.d.ts +0 -13
  526. package/dist/client/ai-employees/chatbox/AIThinking.d.ts +0 -12
  527. package/dist/client/ai-employees/chatbox/Attachment.d.ts +0 -14
  528. package/dist/client/ai-employees/chatbox/AttachmentsHeader.d.ts +0 -10
  529. package/dist/client/ai-employees/chatbox/ChatBox.d.ts +0 -12
  530. package/dist/client/ai-employees/chatbox/ContextItemsHeader.d.ts +0 -10
  531. package/dist/client/ai-employees/chatbox/DebugPanel.d.ts +0 -16
  532. package/dist/client/ai-employees/chatbox/EditMessageHeader.d.ts +0 -10
  533. package/dist/client/ai-employees/chatbox/HintMessageHeader.d.ts +0 -10
  534. package/dist/client/ai-employees/chatbox/MessageRenderer.d.ts +0 -33
  535. package/dist/client/ai-employees/chatbox/Sender.d.ts +0 -10
  536. package/dist/client/ai-employees/chatbox/SenderFooter.d.ts +0 -13
  537. package/dist/client/ai-employees/chatbox/SenderHeader.d.ts +0 -10
  538. package/dist/client/ai-employees/chatbox/SenderPrefix.d.ts +0 -10
  539. package/dist/client/ai-employees/chatbox/Upload.d.ts +0 -12
  540. package/dist/client/ai-employees/chatbox/VirtualList.d.ts +0 -28
  541. package/dist/client/ai-employees/chatbox/conversations/Conversations.d.ts +0 -10
  542. package/dist/client/ai-employees/chatbox/conversations/ConversationsList.d.ts +0 -13
  543. package/dist/client/ai-employees/chatbox/conversations/WorkflowTasksList.d.ts +0 -13
  544. package/dist/client/ai-employees/chatbox/conversations/common.d.ts +0 -43
  545. package/dist/client/ai-employees/chatbox/conversations/index.d.ts +0 -9
  546. package/dist/client/ai-employees/chatbox/generative-ui/DefaultToolCard.d.ts +0 -16
  547. package/dist/client/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +0 -18
  548. package/dist/client/ai-employees/chatbox/hooks/useUploadFiles.d.ts +0 -12
  549. package/dist/client/ai-employees/chatbox/markdown/ECharts.d.ts +0 -10
  550. package/dist/client/ai-employees/chatbox/markdown/Form.d.ts +0 -10
  551. package/dist/client/ai-employees/chatbox/markdown/Generating.d.ts +0 -10
  552. package/dist/client/ai-employees/chatbox/markdown/Markdown.d.ts +0 -13
  553. package/dist/client/ai-employees/chatbox/roles.d.ts +0 -32
  554. package/dist/client/ai-employees/chatbox/stores/chat-box.d.ts +0 -9
  555. package/dist/client/ai-employees/chatbox/stores/chat-conversations.d.ts +0 -9
  556. package/dist/client/ai-employees/chatbox/stores/chat-messages.d.ts +0 -9
  557. package/dist/client/ai-employees/chatbox/stores/chat-tools.d.ts +0 -51
  558. package/dist/client/ai-employees/chatbox/stores/create-selectors.d.ts +0 -18
  559. package/dist/client/ai-employees/chatbox/stores/workflow-tasks.d.ts +0 -45
  560. package/dist/client/ai-employees/chatbox/utils.d.ts +0 -41
  561. package/dist/client/ai-employees/context/classic-pages.d.ts +0 -10
  562. package/dist/client/ai-employees/data-modeling/Table.d.ts +0 -12
  563. package/dist/client/ai-employees/data-modeling/setup.d.ts +0 -10
  564. package/dist/client/ai-employees/data-modeling/tools/index.d.ts +0 -10
  565. package/dist/client/ai-employees/data-modeling/ui/useFieldInterfaceOptions.d.ts +0 -14
  566. package/dist/client/ai-employees/datasource/DatasourceList.d.ts +0 -17
  567. package/dist/client/ai-employees/flow/events/index.d.ts +0 -9
  568. package/dist/client/ai-employees/flow/index.d.ts +0 -36
  569. package/dist/client/ai-employees/flow/models/AIEmployeeActionModel.d.ts +0 -18
  570. package/dist/client/ai-employees/flow/models/AIEmployeeShortcutModel.d.ts +0 -30
  571. package/dist/client/ai-employees/shortcuts/ShortcutList.d.ts +0 -10
  572. package/dist/client/ai-employees/shortcuts/useShortcuts.d.ts +0 -13
  573. package/dist/client/ai-employees/stores/context-aware.d.ts +0 -19
  574. package/dist/client/ai-employees/sub-agents/tools/index.d.ts +0 -10
  575. package/dist/client/ai-employees/suggestions/tools/index.d.ts +0 -10
  576. package/dist/client/ai-employees/suggestions/ui/SuggestionsOptions.d.ts +0 -13
  577. package/dist/client/ai-employees/types.d.ts +0 -259
  578. package/dist/client/ai-employees/workflow-tasks/tools/index.d.ts +0 -10
  579. package/dist/client/ai-employees/workflow-tasks/ui/WorkflowTaskOutputCard.d.ts +0 -11
  580. package/dist/client/chat-settings/Messages.d.ts +0 -11
  581. package/dist/client/chat-settings/StructuredOutput.d.ts +0 -11
  582. package/dist/client/components/skill-settings.d.ts +0 -22
  583. package/dist/client/debug-logger.d.ts +0 -52
  584. package/dist/client/features/components.d.ts +0 -9
  585. package/dist/client/features/feature-manager.d.ts +0 -9
  586. package/dist/client/features/index.d.ts +0 -9
  587. package/dist/client/features/vector-database-provider.d.ts +0 -9
  588. package/dist/client/features/vector-store-provider.d.ts +0 -9
  589. package/dist/client/llm-providers/anthropic/ModelSettings.d.ts +0 -10
  590. package/dist/client/llm-providers/anthropic/ProviderSettings.d.ts +0 -10
  591. package/dist/client/llm-providers/anthropic/index.d.ts +0 -10
  592. package/dist/client/llm-providers/components/Chat.d.ts +0 -10
  593. package/dist/client/llm-providers/components/ModelSelect.d.ts +0 -10
  594. package/dist/client/llm-providers/dashscope/ModelSettings.d.ts +0 -10
  595. package/dist/client/llm-providers/dashscope/ProviderSettings.d.ts +0 -10
  596. package/dist/client/llm-providers/dashscope/index.d.ts +0 -10
  597. package/dist/client/llm-providers/deepseek/ModelSettings.d.ts +0 -10
  598. package/dist/client/llm-providers/deepseek/index.d.ts +0 -10
  599. package/dist/client/llm-providers/google-genai/MessageRenderer.d.ts +0 -13
  600. package/dist/client/llm-providers/google-genai/ModelSettings.d.ts +0 -10
  601. package/dist/client/llm-providers/google-genai/ProviderSettings.d.ts +0 -10
  602. package/dist/client/llm-providers/google-genai/index.d.ts +0 -10
  603. package/dist/client/llm-providers/kimi/ModelSettings.d.ts +0 -10
  604. package/dist/client/llm-providers/kimi/index.d.ts +0 -10
  605. package/dist/client/llm-providers/mimo/ModelSettings.d.ts +0 -10
  606. package/dist/client/llm-providers/mimo/index.d.ts +0 -10
  607. package/dist/client/llm-providers/mistral/ModelSettings.d.ts +0 -10
  608. package/dist/client/llm-providers/mistral/index.d.ts +0 -10
  609. package/dist/client/llm-providers/ollama/ModelSettings.d.ts +0 -10
  610. package/dist/client/llm-providers/ollama/ProviderSettings.d.ts +0 -10
  611. package/dist/client/llm-providers/ollama/index.d.ts +0 -10
  612. package/dist/client/llm-providers/openai/completions/ModelSettings.d.ts +0 -10
  613. package/dist/client/llm-providers/openai/completions/index.d.ts +0 -10
  614. package/dist/client/llm-providers/openai/components/ProviderSettings.d.ts +0 -10
  615. package/dist/client/llm-providers/openai/responses/ModelSettings.d.ts +0 -10
  616. package/dist/client/llm-providers/openai/responses/index.d.ts +0 -10
  617. package/dist/client/llm-providers/tongyi/ModelSettings.d.ts +0 -10
  618. package/dist/client/llm-providers/tongyi/ProviderSettings.d.ts +0 -10
  619. package/dist/client/llm-providers/tongyi/index.d.ts +0 -10
  620. package/dist/client/llm-providers/xai/ModelSettings.d.ts +0 -10
  621. package/dist/client/llm-providers/xai/index.d.ts +0 -10
  622. package/dist/client/llm-services/LLMServices.d.ts +0 -13
  623. package/dist/client/llm-services/component/DefaultModelSelect.d.ts +0 -10
  624. package/dist/client/llm-services/component/EnabledModelsSelect.d.ts +0 -23
  625. package/dist/client/llm-services/component/LLMTestFlight.d.ts +0 -10
  626. package/dist/client/llm-services/component/ModelOptionsSettings.d.ts +0 -10
  627. package/dist/client/llm-services/component/UnifiedModelSettings.d.ts +0 -10
  628. package/dist/client/llm-services/hooks/useLLMServiceCatalog.d.ts +0 -18
  629. package/dist/client/llm-services/llm-providers.d.ts +0 -27
  630. package/dist/client/llm-services/utils.d.ts +0 -35
  631. package/dist/client/manager/ai-feature-manager.d.ts +0 -9
  632. package/dist/client/manager/ai-manager.d.ts +0 -35
  633. package/dist/client/repositories/AIConfigRepository.d.ts +0 -60
  634. package/dist/client/repositories/hooks/useAIConfigRepository.d.ts +0 -10
  635. package/dist/client/schemas/llms.d.ts +0 -347
  636. package/dist/client/workflow/nodes/employee/components/AIEmployeeSelect.d.ts +0 -10
  637. package/dist/client/workflow/nodes/employee/components/assigness.d.ts +0 -11
  638. package/dist/client/workflow/nodes/employee/components/file-inputs.d.ts +0 -10
  639. package/dist/client/workflow/nodes/employee/components/message-inputs.d.ts +0 -12
  640. package/dist/client/workflow/nodes/employee/components/model-options.d.ts +0 -10
  641. package/dist/client/workflow/nodes/employee/components/structured-output.d.ts +0 -10
  642. package/dist/client/workflow/nodes/employee/components/users-select.d.ts +0 -15
  643. package/dist/client/workflow/nodes/employee/components/web-search-options.d.ts +0 -10
  644. package/dist/client/workflow/nodes/employee/configuration.d.ts +0 -12
  645. package/dist/client/workflow/nodes/employee/flow-models/feedback.d.ts +0 -14
  646. package/dist/client/workflow/nodes/llm/ModelSettings.d.ts +0 -11
  647. package/dist/client/workflow/triggers/ai-employee/Parameters.d.ts +0 -13
  648. package/dist/client-v2/ai-employees/chatbox/stores/create-selectors.d.ts +0 -18
  649. package/dist/server/llm-providers/deepseek.d.ts +0 -39
  650. /package/dist/{client → client-v2}/ai-employees/AISelection.d.ts +0 -0
  651. /package/dist/{client → client-v2}/ai-employees/AISelectionControl.d.ts +0 -0
  652. /package/dist/{client → client-v2}/ai-employees/ai-coding/prompts.d.ts +0 -0
  653. /package/dist/{client → client-v2}/ai-employees/ai-coding/setup.d.ts +0 -0
  654. /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/ChatButton.d.ts +0 -0
  655. /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/SearchSwitch.d.ts +0 -0
  656. /package/dist/{client/ai-employees/chatbox/generative-ui → client-v2/ai-employees/chatbox/components}/ToolModal.d.ts +0 -0
  657. /package/dist/{client/ai-employees/chatbox → client-v2/ai-employees/chatbox/components}/UserPrompt.d.ts +0 -0
  658. /package/dist/{client → client-v2}/ai-employees/chatbox/hooks/useLoadMoreObserver.d.ts +0 -0
  659. /package/dist/client-v2/ai-employees/{chatbox/stores → stores}/global-store.d.ts +0 -0
  660. /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/AIEmployeeShortcutListModel.d.ts +0 -0
  661. /package/dist/{client/ai-employees/flow/models → client-v2/models/ai-employees}/index.d.ts +0 -0
  662. /package/dist/{client/ai-employees/flow/events/ai-context-selection.d.ts → client-v2/workflow/components/index.d.ts} +0 -0
@@ -0,0 +1,14 @@
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 { Migration } from '@nocobase/server';
10
+ export default class extends Migration {
11
+ on: string;
12
+ appVersion: string;
13
+ up(): Promise<void>;
14
+ }
@@ -0,0 +1,49 @@
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 ai_employee_knowledge_base_retrieval_strategy_exports = {};
28
+ __export(ai_employee_knowledge_base_retrieval_strategy_exports, {
29
+ default: () => ai_employee_knowledge_base_retrieval_strategy_default
30
+ });
31
+ module.exports = __toCommonJS(ai_employee_knowledge_base_retrieval_strategy_exports);
32
+ var import_server = require("@nocobase/server");
33
+ var import_ai_knowledge_base = require("../ai-employees/ai-knowledge-base");
34
+ const getKnowledgeBaseSettings = (value) => value !== null && typeof value === "object" && !Array.isArray(value) ? { ...value } : {};
35
+ class ai_employee_knowledge_base_retrieval_strategy_default extends import_server.Migration {
36
+ on = "afterSync";
37
+ appVersion = "<3.0.0";
38
+ async up() {
39
+ const repository = this.db.getRepository("aiEmployees");
40
+ const employees = await repository.find();
41
+ for (const employee of employees) {
42
+ const knowledgeBase = getKnowledgeBaseSettings(employee.get("knowledgeBase"));
43
+ if ((0, import_ai_knowledge_base.isKnowledgeBaseRetrievalStrategy)(knowledgeBase.retrievalStrategy)) {
44
+ continue;
45
+ }
46
+ await employee.update({ knowledgeBase: { ...knowledgeBase, retrievalStrategy: "always" } });
47
+ }
48
+ }
49
+ }
@@ -62,6 +62,7 @@ export declare class PluginAIServer extends Plugin {
62
62
  get repositories(): {
63
63
  aiContextDatasources: import("@nocobase/database").Repository<any, any>;
64
64
  };
65
+ private registerAIFileAccessAuthorizer;
65
66
  get fileManager(): PluginFileManagerServer;
66
67
  private repository;
67
68
  }
@@ -56,6 +56,7 @@ var import_ai_employees_manager = require("./ai-employees/ai-employees-manager")
56
56
  var import_ai_conversations = require("./ai-employees/ai-conversations");
57
57
  var import_snowflake = __toESM(require("./snowflake"));
58
58
  var aiEmployeeActions = __toESM(require("./resource/aiEmployees"));
59
+ var llmServiceActions = __toESM(require("./resource/llmServices"));
59
60
  var import_google_genai = require("./llm-providers/google-genai");
60
61
  var import_ai_employee = require("./workflow/triggers/ai-employee");
61
62
  var import_tools = require("./tools");
@@ -75,10 +76,14 @@ var import_document_loader = require("./document-loader");
75
76
  var import_checkpoints = require("./ai-employees/checkpoints");
76
77
  var import_mimo = require("./llm-providers/mimo");
77
78
  var import_mistral = require("./llm-providers/mistral");
79
+ var import_orcarouter = require("./llm-providers/orcarouter");
80
+ var import_shengsuanyun = require("./llm-providers/shengsuanyun");
78
81
  var import_sub_agents = require("./ai-employees/sub-agents");
79
82
  var import_employee = require("./workflow/nodes/employee");
80
83
  var import_ai_knowledge_base = require("./ai-employees/ai-knowledge-base");
81
84
  var import_llm_stream_manager = require("./manager/llm-stream-manager");
85
+ var import_attachments = require("./attachments");
86
+ var import_ai_knowledge_base2 = require("./ai-employees/ai-knowledge-base");
82
87
  class PluginAIServer extends import_server.Plugin {
83
88
  features = new import_ai_feature_manager.AIPluginFeatureManagerImpl();
84
89
  aiManager = new import_ai_manager.AIManager(this);
@@ -132,6 +137,9 @@ class PluginAIServer extends import_server.Plugin {
132
137
  this.app.on("afterUpgrade", async () => {
133
138
  await this.resetConversationThreadsWhenCheckpointsEmpty();
134
139
  });
140
+ this.db.on("aiEmployees.beforeCreate", (employee) => {
141
+ employee.set("knowledgeBase", (0, import_ai_knowledge_base2.withDefaultKnowledgeBaseRetrievalStrategy)(employee.get("knowledgeBase")));
142
+ });
135
143
  }
136
144
  async resetConversationThreadsWhenCheckpointsEmpty() {
137
145
  const [checkpointCount, checkpointWriteCount, checkpointBlobCount, conversationsWithThreadCount] = await Promise.all([
@@ -167,6 +175,7 @@ class PluginAIServer extends import_server.Plugin {
167
175
  this.defineResources();
168
176
  this.registerMcpClientEvents();
169
177
  this.setPermissions();
178
+ this.registerAIFileAccessAuthorizer();
170
179
  this.registerWorkflow();
171
180
  this.registerWorkContextResolveStrategy();
172
181
  (0, import_employee.registerAIEmployeeTaskNotification)(this);
@@ -186,6 +195,8 @@ class PluginAIServer extends import_server.Plugin {
186
195
  this.aiManager.registerLLMProvider("openai-completions", import_openai2.openaiCompletionsProviderOptions);
187
196
  this.aiManager.registerLLMProvider("kimi", import_kimi.kimiProviderOptions);
188
197
  this.aiManager.registerLLMProvider("xai", import_xai.xaiProviderOptions);
198
+ this.aiManager.registerLLMProvider("orcarouter", import_orcarouter.orcarouterProviderOptions);
199
+ this.aiManager.registerLLMProvider("shengsuanyun", import_shengsuanyun.shengsuanyunProviderOptions);
189
200
  }
190
201
  registerTools() {
191
202
  const toolsManager = this.ai.toolsManager;
@@ -216,9 +227,25 @@ class PluginAIServer extends import_server.Plugin {
216
227
  },
217
228
  { before: "createMiddleware" }
218
229
  );
230
+ this.app.resourceManager.use(
231
+ async (ctx, next) => {
232
+ const { resourceName, actionName } = ctx.action;
233
+ if (resourceName === "aiFiles" && actionName === "create") {
234
+ (0, import_attachments.appendAIFileAttachmentSource)(ctx.action.params.values);
235
+ }
236
+ await next();
237
+ if (resourceName === "aiFiles" && actionName === "create") {
238
+ (0, import_attachments.appendAIFileAttachmentSource)(ctx.body);
239
+ }
240
+ },
241
+ { after: "createMiddleware" }
242
+ );
219
243
  Object.entries(aiEmployeeActions).forEach(([name, action]) => {
220
244
  this.app.resourceManager.registerActionHandler(`aiEmployees:${name}`, action);
221
245
  });
246
+ Object.entries(llmServiceActions).forEach(([name, action]) => {
247
+ this.app.resourceManager.registerActionHandler(`llmServices:${name}`, action);
248
+ });
222
249
  }
223
250
  registerMcpClientEvents() {
224
251
  this.db.on("aiMcpClients.afterCreate", (model, { transaction } = {}) => {
@@ -354,6 +381,26 @@ class PluginAIServer extends import_server.Plugin {
354
381
  aiContextDatasources: this.repository("aiContextDatasources")
355
382
  };
356
383
  }
384
+ registerAIFileAccessAuthorizer() {
385
+ this.fileManager.registerFileAccessAuthorizer({
386
+ name: "ai-files",
387
+ authorize: async (ctx, params) => {
388
+ var _a;
389
+ const currentUserId = (_a = ctx.state.currentUser) == null ? void 0 : _a.id;
390
+ if (params.dataSourceKey !== "main" || params.collectionName !== "aiFiles" || !currentUserId) {
391
+ return false;
392
+ }
393
+ const file = await ctx.db.getRepository("aiFiles").findOne({
394
+ filter: {
395
+ id: params.id,
396
+ createdById: currentUserId
397
+ },
398
+ fields: ["id"]
399
+ });
400
+ return Boolean(file);
401
+ }
402
+ });
403
+ }
357
404
  get fileManager() {
358
405
  return this.app.pm.get("file-manager");
359
406
  }
@@ -7,6 +7,8 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import { Context, Next } from '@nocobase/actions';
10
+ import { Model } from '@nocobase/database';
11
+ export declare function isAIEmployeeEnabled(employee: Model | null | undefined): boolean;
10
12
  declare function loginInCheck(ctx: Context, next: Next): Promise<never>;
11
13
  declare const _default: {
12
14
  name: string;
@@ -36,7 +36,8 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
36
36
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
37
  var aiConversations_exports = {};
38
38
  __export(aiConversations_exports, {
39
- default: () => aiConversations_default
39
+ default: () => aiConversations_default,
40
+ isAIEmployeeEnabled: () => isAIEmployeeEnabled
40
41
  });
41
42
  module.exports = __toCommonJS(aiConversations_exports);
42
43
  var import_actions = __toESM(require("@nocobase/actions"));
@@ -44,6 +45,8 @@ var import_database = require("@nocobase/database");
44
45
  var import_utils = require("../utils");
45
46
  var import_ai_employee = require("../ai-employees/ai-employee");
46
47
  var import_ai_chat_conversation = require("../manager/ai-chat-conversation");
48
+ var import_frontend_tools = require("../../common/frontend-tools");
49
+ var import_frontend_tools2 = require("../frontend-tools");
47
50
  async function getAIEmployee(ctx, username) {
48
51
  var _a;
49
52
  const filter = {
@@ -57,6 +60,10 @@ async function getAIEmployee(ctx, username) {
57
60
  });
58
61
  return employee;
59
62
  }
63
+ function isAIEmployeeEnabled(employee) {
64
+ var _a;
65
+ return ((_a = employee == null ? void 0 : employee.get) == null ? void 0 : _a.call(employee, "enabled")) !== false;
66
+ }
60
67
  function setupSSEHeaders(ctx) {
61
68
  ctx.set({
62
69
  "Content-Type": "text/event-stream",
@@ -103,6 +110,33 @@ const saveUserMessages = async (ctx, sessionId, messages, messageId) => {
103
110
  await conversation.addMessages(userMessages);
104
111
  });
105
112
  };
113
+ function isRecord(value) {
114
+ return Boolean(value && typeof value === "object" && !Array.isArray(value));
115
+ }
116
+ function normalizeIncomingMessageAttachments(ctx, messages) {
117
+ for (const message of messages) {
118
+ if (message.attachments == null) {
119
+ continue;
120
+ }
121
+ if (!Array.isArray(message.attachments)) {
122
+ throw new import_utils.ResourceActionError(400, ctx.t("Invalid attachment"));
123
+ }
124
+ message.attachments = message.attachments.map((attachment) => {
125
+ if (!isRecord(attachment) || !isRecord(attachment.source)) {
126
+ throw new import_utils.ResourceActionError(400, ctx.t("Invalid attachment"));
127
+ }
128
+ const source = { ...attachment.source };
129
+ delete source.trustworthy;
130
+ if (typeof source.collectionName !== "string" || !source.collectionName) {
131
+ throw new import_utils.ResourceActionError(400, ctx.t("Invalid attachment"));
132
+ }
133
+ return {
134
+ ...attachment,
135
+ source
136
+ };
137
+ });
138
+ }
139
+ }
106
140
  var aiConversations_default = {
107
141
  name: "aiConversations",
108
142
  middlewares: [
@@ -115,12 +149,14 @@ var aiConversations_default = {
115
149
  var _a;
116
150
  const userId = (_a = ctx.auth) == null ? void 0 : _a.user.id;
117
151
  const filter = ctx.action.params.filter || {};
152
+ const scope = ctx.action.params.scope;
118
153
  ctx.action.mergeParams({
119
154
  filter: {
120
155
  ...filter,
121
156
  userId,
122
157
  from: filter.from ?? "main-agent",
123
- category: "chat"
158
+ category: "chat",
159
+ ...typeof scope === "string" && scope ? { scope } : {}
124
160
  }
125
161
  });
126
162
  return import_actions.default.list(ctx, next);
@@ -170,15 +206,20 @@ var aiConversations_default = {
170
206
  var _a;
171
207
  const plugin = ctx.app.pm.get("ai");
172
208
  const userId = (_a = ctx.auth) == null ? void 0 : _a.user.id;
173
- const { aiEmployee, systemMessage, skillSettings, conversationSettings, modelSettings } = ctx.action.params.values || {};
209
+ const { aiEmployee, systemMessage, skillSettings, conversationSettings, modelSettings, scope } = ctx.action.params.values || {};
210
+ const normalizedScope = typeof scope === "string" ? scope : void 0;
174
211
  const employee = await getAIEmployee(ctx, aiEmployee.username);
175
212
  if (!employee) {
176
213
  ctx.throw(400, "AI employee not found");
177
214
  }
215
+ if (!isAIEmployeeEnabled(employee)) {
216
+ ctx.throw(400, "AI employee is disabled");
217
+ }
178
218
  try {
179
219
  ctx.body = await plugin.aiConversationsManager.create({
180
220
  userId,
181
221
  aiEmployee,
222
+ scope: normalizedScope,
182
223
  options: {
183
224
  systemMessage,
184
225
  skillSettings,
@@ -329,6 +370,7 @@ var aiConversations_default = {
329
370
  if (!Array.isArray(messages)) {
330
371
  throw new import_utils.ResourceActionError(400, ctx.t("messages must be an array"));
331
372
  }
373
+ normalizeIncomingMessageAttachments(ctx, messages);
332
374
  const userMessage = messages.find((message) => message.role === "user");
333
375
  if (!userMessage) {
334
376
  throw new import_utils.ResourceActionError(400, ctx.t("user message is required"));
@@ -633,10 +675,28 @@ var aiConversations_default = {
633
675
  if (!message) {
634
676
  ctx.throw(400);
635
677
  }
678
+ const messageConversation = await plugin.aiConversationsManager.getConversation({
679
+ sessionId: message.sessionId,
680
+ userId
681
+ });
682
+ if (!messageConversation) {
683
+ ctx.throw(400);
684
+ }
636
685
  const toolCalls = message.toolCalls;
637
686
  if (!(toolCalls == null ? void 0 : toolCalls.length)) {
638
687
  ctx.throw(400);
639
688
  }
689
+ const selectedToolCall = toolCalls.find((toolCall2) => toolCall2.id === toolCallId);
690
+ if (!selectedToolCall) {
691
+ ctx.throw(400);
692
+ }
693
+ if (selectedToolCall.name === import_frontend_tools.EXECUTE_FRONTEND_TOOL_NAME) {
694
+ const toolId = isRecord(selectedToolCall.args) ? selectedToolCall.args.toolId : void 0;
695
+ const frontendTool = typeof toolId === "string" ? await (0, import_frontend_tools2.findCurrentFrontendTool)(ctx, toolId, message.sessionId) : void 0;
696
+ if (!frontendTool) {
697
+ ctx.throw(400, ctx.t("Frontend tool is unavailable"));
698
+ }
699
+ }
640
700
  const aiToolMessagesModel = ctx.db.getModel("aiToolMessages");
641
701
  const toolCall = await aiToolMessagesModel.findOne({
642
702
  where: { sessionId: message.sessionId, messageId: message.messageId, toolCallId }
@@ -680,6 +740,7 @@ var aiConversations_default = {
680
740
  toolCall2.auto = toolMessage == null ? void 0 : toolMessage.auto;
681
741
  toolCall2.status = toolMessage == null ? void 0 : toolMessage.status;
682
742
  toolCall2.content = toolMessage == null ? void 0 : toolMessage.content;
743
+ toolCall2.userDecision = toolMessage == null ? void 0 : toolMessage.userDecision;
683
744
  toolCall2.execution = tools == null ? void 0 : tools.execution;
684
745
  toolCall2.willInterrupt = (tools == null ? void 0 : tools.execution) === "frontend" || (toolMessage == null ? void 0 : toolMessage.auto) === false;
685
746
  toolCall2.defaultPermission = tools == null ? void 0 : tools.defaultPermission;
@@ -730,6 +791,14 @@ var aiConversations_default = {
730
791
  sendErrorResponse(ctx, "message not found");
731
792
  return next();
732
793
  }
794
+ const messageConversation = await plugin.aiConversationsManager.getConversation({
795
+ sessionId: message.sessionId,
796
+ userId
797
+ });
798
+ if (!messageConversation) {
799
+ sendErrorResponse(ctx, "conversation not found");
800
+ return next();
801
+ }
733
802
  const tools = message.toolCalls;
734
803
  if (!(tools == null ? void 0 : tools.length)) {
735
804
  sendErrorResponse(ctx, "No tool calls found");
@@ -746,7 +815,7 @@ var aiConversations_default = {
746
815
  webSearch,
747
816
  model: resolvedModel
748
817
  });
749
- const userDecisions = await plugin.aiConversationsManager.getUserDecisions(messageId);
818
+ const userDecisions = await plugin.aiConversationsManager.getUserDecisions(message.messageId);
750
819
  await aiEmployee.stream({
751
820
  userDecisions
752
821
  });
@@ -758,3 +827,7 @@ var aiConversations_default = {
758
827
  }
759
828
  }
760
829
  };
830
+ // Annotate the CommonJS export names for ESM import in node:
831
+ 0 && (module.exports = {
832
+ isAIEmployeeEnabled
833
+ });
@@ -7,6 +7,8 @@
7
7
  * For more information, please refer to: https://www.nocobase.com/agreement.
8
8
  */
9
9
  import { Context, Next } from '@nocobase/actions';
10
+ export declare const create: (ctx: Context, next: Next) => Promise<void>;
11
+ export declare const update: (ctx: Context, next: Next) => Promise<void>;
10
12
  export declare const list: (ctx: Context, next: Next) => Promise<void>;
11
13
  export declare const listByUser: (ctx: Context, next: Next) => Promise<any>;
12
14
  export declare const updateUserPrompt: (ctx: Context, next: Next) => Promise<any>;
@@ -36,16 +36,84 @@ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__ge
36
36
  var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
37
  var aiEmployees_exports = {};
38
38
  __export(aiEmployees_exports, {
39
+ create: () => create,
39
40
  getTemplates: () => getTemplates,
40
41
  list: () => list,
41
42
  listByUser: () => listByUser,
43
+ update: () => update,
42
44
  updateUserPrompt: () => updateUserPrompt
43
45
  });
44
46
  module.exports = __toCommonJS(aiEmployees_exports);
45
47
  var import_actions = __toESM(require("@nocobase/actions"));
48
+ var import_database = require("@nocobase/database");
46
49
  var templates = __toESM(require("../ai-employees/templates"));
47
50
  var import_lodash = __toESM(require("lodash"));
48
51
  var import_ai_feature_manager = require("../manager/ai-feature-manager");
52
+ var import_error_codes = require("../../common/error-codes");
53
+ var import_ai_employee_validation = require("../../common/ai-employee-validation");
54
+ var import_ai_knowledge_base = require("../ai-employees/ai-knowledge-base");
55
+ const isUniqueConstraintError = (error) => error instanceof import_database.UniqueConstraintError || typeof error === "object" && error !== null && "name" in error && error.name === "SequelizeUniqueConstraintError";
56
+ const throwUsernameConflict = (ctx) => ctx.throw(409, {
57
+ code: import_error_codes.AI_EMPLOYEE_USERNAME_CONFLICT,
58
+ message: ctx.t("Username already exists")
59
+ });
60
+ const isRecord = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
61
+ const validateAndNormalizeProfileValues = (ctx) => {
62
+ const values = ctx.action.params.values;
63
+ if (!isRecord(values)) {
64
+ return;
65
+ }
66
+ if ("username" in values) {
67
+ if (typeof values.username !== "string" || !(0, import_ai_employee_validation.isValidAIEmployeeUsername)(values.username)) {
68
+ ctx.throw(400, {
69
+ code: import_error_codes.AI_EMPLOYEE_USERNAME_INVALID,
70
+ message: ctx.t("Use 1-64 letters, numbers, underscores, or hyphens.")
71
+ });
72
+ }
73
+ values.username = (0, import_ai_employee_validation.normalizeAIEmployeeName)(values.username);
74
+ }
75
+ if ("nickname" in values) {
76
+ if (typeof values.nickname !== "string" || !(0, import_ai_employee_validation.isValidAIEmployeeNickname)(values.nickname)) {
77
+ ctx.throw(400, {
78
+ code: import_error_codes.AI_EMPLOYEE_NICKNAME_INVALID,
79
+ message: ctx.t("Use 1-64 letters, numbers, spaces, or . _ - ' ( ) & \xB7.")
80
+ });
81
+ }
82
+ values.nickname = (0, import_ai_employee_validation.normalizeAIEmployeeName)(values.nickname);
83
+ }
84
+ };
85
+ const setDefaultKnowledgeBaseRetrievalStrategy = (ctx) => {
86
+ const values = ctx.action.params.values;
87
+ if (isRecord(values)) {
88
+ values.knowledgeBase = (0, import_ai_knowledge_base.withDefaultKnowledgeBaseRetrievalStrategy)(values.knowledgeBase);
89
+ }
90
+ };
91
+ const create = async (ctx, next) => {
92
+ var _a;
93
+ validateAndNormalizeProfileValues(ctx);
94
+ setDefaultKnowledgeBaseRetrievalStrategy(ctx);
95
+ const username = (_a = ctx.action.params.values) == null ? void 0 : _a.username;
96
+ if (typeof username === "string") {
97
+ const existingEmployee = await ctx.db.getRepository("aiEmployees").findOne({
98
+ filter: { username }
99
+ });
100
+ if (existingEmployee) {
101
+ throwUsernameConflict(ctx);
102
+ }
103
+ }
104
+ try {
105
+ await import_actions.default.create(ctx, next);
106
+ } catch (error) {
107
+ if (isUniqueConstraintError(error)) {
108
+ throwUsernameConflict(ctx);
109
+ }
110
+ throw error;
111
+ }
112
+ };
113
+ const update = async (ctx, next) => {
114
+ validateAndNormalizeProfileValues(ctx);
115
+ await import_actions.default.update(ctx, next);
116
+ };
49
117
  const list = async (ctx, next) => {
50
118
  var _a, _b;
51
119
  const { paginate } = ctx.action.params || {};
@@ -227,8 +295,10 @@ const getTemplates = async (ctx, next) => {
227
295
  };
228
296
  // Annotate the CommonJS export names for ESM import in node:
229
297
  0 && (module.exports = {
298
+ create,
230
299
  getTemplates,
231
300
  list,
232
301
  listByUser,
302
+ update,
233
303
  updateUserPrompt
234
304
  });
@@ -129,7 +129,7 @@ const aiWorkflowTasks = {
129
129
  await next();
130
130
  },
131
131
  getBySession: async (ctx, next) => {
132
- var _a, _b, _c, _d, _e;
132
+ var _a, _b, _c, _d, _e, _f;
133
133
  const userId = (_a = ctx.auth) == null ? void 0 : _a.user.id;
134
134
  if (!userId) {
135
135
  return ctx.throw(403);
@@ -158,12 +158,20 @@ const aiWorkflowTasks = {
158
158
  id: task.nodeId
159
159
  }
160
160
  });
161
+ const conversation = await ctx.db.getRepository("aiConversations").findOne({
162
+ filter: {
163
+ sessionId
164
+ },
165
+ appends: ["aiEmployee"]
166
+ });
167
+ const aiEmployee = conversation == null ? void 0 : conversation.aiEmployee;
161
168
  const readonly = task.status !== "pending_approval" || task.acceptedUserId !== userId;
162
169
  ctx.body = {
163
170
  ...((_c = task == null ? void 0 : task.toJSON) == null ? void 0 : _c.call(task)) ?? task,
164
171
  read: (usersAiWorkflowTasks == null ? void 0 : usersAiWorkflowTasks.read) ?? true,
165
172
  config: (node == null ? void 0 : node.config) ?? null,
166
173
  structuredOutputSchema: ((_e = (_d = node == null ? void 0 : node.config) == null ? void 0 : _d.structuredOutput) == null ? void 0 : _e.schema) ?? null,
174
+ aiEmployee: ((_f = aiEmployee == null ? void 0 : aiEmployee.toJSON) == null ? void 0 : _f.call(aiEmployee)) ?? aiEmployee ?? null,
167
175
  readonly
168
176
  };
169
177
  await next();
@@ -0,0 +1,11 @@
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 { Context, Next } from '@nocobase/actions';
10
+ export declare const create: (ctx: Context, next: Next) => Promise<void>;
11
+ export declare const update: (ctx: Context, next: Next) => Promise<void>;
@@ -0,0 +1,85 @@
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 __create = Object.create;
11
+ var __defProp = Object.defineProperty;
12
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
13
+ var __getOwnPropNames = Object.getOwnPropertyNames;
14
+ var __getProtoOf = Object.getPrototypeOf;
15
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
16
+ var __export = (target, all) => {
17
+ for (var name in all)
18
+ __defProp(target, name, { get: all[name], enumerable: true });
19
+ };
20
+ var __copyProps = (to, from, except, desc) => {
21
+ if (from && typeof from === "object" || typeof from === "function") {
22
+ for (let key of __getOwnPropNames(from))
23
+ if (!__hasOwnProp.call(to, key) && key !== except)
24
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
25
+ }
26
+ return to;
27
+ };
28
+ var __toESM = (mod, isNodeMode, target) => (target = mod != null ? __create(__getProtoOf(mod)) : {}, __copyProps(
29
+ // If the importer is in node compatibility mode or this is not an ESM
30
+ // file that has been converted to a CommonJS file using a Babel-
31
+ // compatible transform (i.e. "__esModule" has not been set), then set
32
+ // "default" to the CommonJS "module.exports" for node compatibility.
33
+ isNodeMode || !mod || !mod.__esModule ? __defProp(target, "default", { value: mod, enumerable: true }) : target,
34
+ mod
35
+ ));
36
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
37
+ var llmServices_exports = {};
38
+ __export(llmServices_exports, {
39
+ create: () => create,
40
+ update: () => update
41
+ });
42
+ module.exports = __toCommonJS(llmServices_exports);
43
+ var import_actions = __toESM(require("@nocobase/actions"));
44
+ var import_package = require("../../../package.json");
45
+ var import_error_codes = require("../../common/error-codes");
46
+ var import_llm_service_models = require("../../common/llm-service-models");
47
+ const isRecord = (value) => value !== null && typeof value === "object" && !Array.isArray(value);
48
+ const validateAndNormalizeEnabledModels = (ctx) => {
49
+ const values = ctx.action.params.values;
50
+ if (!isRecord(values) || !("enabledModels" in values)) {
51
+ return;
52
+ }
53
+ const enabledModels = (0, import_llm_service_models.normalizeCustomModelIds)(values.enabledModels);
54
+ const issue = (0, import_llm_service_models.getCustomModelIdIssues)(enabledModels)[0];
55
+ if (issue) {
56
+ const required = issue.type === "required";
57
+ ctx.throw(400, {
58
+ code: required ? import_error_codes.LLM_SERVICE_MODEL_ID_REQUIRED : import_error_codes.LLM_SERVICE_MODEL_ID_DUPLICATE,
59
+ message: ctx.t(required ? "Model ID is required" : "Model ID already exists", { ns: import_package.name }),
60
+ data: { index: issue.index }
61
+ });
62
+ }
63
+ ctx.action.mergeParams(
64
+ {
65
+ values: {
66
+ ...values,
67
+ enabledModels
68
+ }
69
+ },
70
+ { values: "overwrite" }
71
+ );
72
+ };
73
+ const create = async (ctx, next) => {
74
+ validateAndNormalizeEnabledModels(ctx);
75
+ await import_actions.default.create(ctx, next);
76
+ };
77
+ const update = async (ctx, next) => {
78
+ validateAndNormalizeEnabledModels(ctx);
79
+ await import_actions.default.update(ctx, next);
80
+ };
81
+ // Annotate the CommonJS export names for ESM import in node:
82
+ 0 && (module.exports = {
83
+ create,
84
+ update
85
+ });
@@ -27,6 +27,10 @@ export type WorkContext = {
27
27
  export type AIMessageContent = {
28
28
  type: string;
29
29
  content: unknown;
30
+ reference?: {
31
+ title: string;
32
+ url: string;
33
+ }[];
30
34
  };
31
35
  export type AIToolCall = {
32
36
  id: string;
@@ -19,13 +19,17 @@ export type KnowledgeBase = {
19
19
  name: string;
20
20
  description: string;
21
21
  vectorStoreProvider: string;
22
- vectorStoreConfigKey?: string;
22
+ vectorDatabaseKey?: string;
23
+ llmService?: string;
24
+ embeddingModel?: string;
23
25
  vectorStoreProps?: VectorStoreProp[];
24
26
  enabled: boolean;
25
27
  };
26
28
  export type VectorStoreConfig = {
27
29
  vectorStoreProvider: string;
28
- vectorStoreConfigKey?: string;
30
+ vectorDatabaseKey?: string;
31
+ llmService?: string;
32
+ embeddingModel?: string;
29
33
  };
30
34
  export type KnowledgeBaseGroup = {
31
35
  vectorStoreConfig: VectorStoreConfig;
@@ -41,8 +45,9 @@ export type DocumentSegmentedWithScore = DocumentSegmented & {
41
45
  score: number;
42
46
  };
43
47
  export type SearchOptions = {
44
- knowledgeBaseKeys: string[];
48
+ knowledgeBaseKeys?: string[];
45
49
  query: string;
46
50
  topK?: number;
47
51
  score?: string;
52
+ roleNames?: string[];
48
53
  };
@@ -6,9 +6,11 @@
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
+ /// <reference types="node" />
9
10
  import { Model } from '@nocobase/database';
10
11
  import { Context } from '@nocobase/actions';
11
12
  import { ToolsEntry } from '@nocobase/ai';
13
+ import type { Readable } from 'stream';
12
14
  export declare function sendSSEError(ctx: Context, error: Error | string, errorName?: string): void;
13
15
  export declare function stripToolCallTags(content: string): string | null;
14
16
  export declare function parseResponseMessage(row: Model): {
@@ -17,8 +19,9 @@ export declare function parseResponseMessage(row: Model): {
17
19
  content: any;
18
20
  role: any;
19
21
  };
20
- export declare function encodeLocalFile(url: string): Promise<string>;
21
- export declare function encodeFile(ctx: Context, url: string): Promise<string>;
22
+ export declare function encodeLocalFile(_url: string): Promise<void>;
23
+ export declare function encodeFile(ctx: Context, url: string): Promise<string | void>;
24
+ export declare function encodeReadableStream(stream: Readable): Promise<string>;
22
25
  export declare function parseVariables(ctx: Context, value: string): Promise<any>;
23
26
  export declare const buildTool: (toolsEntry: ToolsEntry) => import("@langchain/core/dist/tools").DynamicTool<any, unknown>;
24
27
  export declare class ResourceActionError extends Error {