@nocobase/plugin-ai 2.1.0-beta.15 → 2.1.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.
Files changed (303) hide show
  1. package/dist/ai/ai-employees/atlas/index.d.ts +10 -0
  2. package/dist/{server/ai-employees/built-in/ai-coding/prompt.js → ai/ai-employees/atlas/index.js} +29 -20
  3. package/dist/ai/ai-employees/atlas/prompt.md +84 -0
  4. package/dist/ai/ai-employees/dara.d.ts +10 -0
  5. package/dist/{server/ai-employees/built-in/data-visualization/prompt.js → ai/ai-employees/dara.js} +21 -13
  6. package/dist/ai/ai-employees/dex.d.ts +10 -0
  7. package/dist/{server/ai-employees/built-in/data-organizer/prompt.js → ai/ai-employees/dex.js} +15 -7
  8. package/dist/ai/ai-employees/ellis.d.ts +10 -0
  9. package/dist/{server/ai-employees/built-in/email-assistant/prompt.js → ai/ai-employees/ellis.js} +19 -11
  10. package/dist/ai/ai-employees/lexi.d.ts +10 -0
  11. package/dist/{server/ai-employees/built-in/translator/prompt.js → ai/ai-employees/lexi.js} +15 -7
  12. package/dist/ai/ai-employees/vera.d.ts +10 -0
  13. package/dist/{server/ai-employees/built-in/research-analyst/prompt.js → ai/ai-employees/vera.js} +16 -8
  14. package/dist/ai/ai-employees/viz.d.ts +10 -0
  15. package/dist/{server/ai-employees/built-in/insights-analyst/prompt.js → ai/ai-employees/viz.js} +15 -7
  16. package/dist/ai/skills/business-analysis-report/SKILLS.md +88 -0
  17. package/dist/{server/ai-employees/built-in/ai-coding/prompt.d.ts → ai/skills/business-analysis-report/tools/businessReportGenerator.d.ts} +1 -3
  18. package/dist/ai/skills/business-analysis-report/tools/businessReportGenerator.js +98 -0
  19. package/dist/ai/skills/document-search/SKILLS.md +69 -0
  20. package/dist/ai/tools/chartGenerator.js +15 -3
  21. package/dist/ai/tools/formFiller.js +13 -2
  22. package/dist/{server/ai-employees/built-in/data-modeling/prompt.d.ts → ai/tools/getSkill.d.ts} +1 -3
  23. package/dist/{server/ai-employees/built-in/data-modeling/index.js → ai/tools/getSkill.js} +39 -32
  24. package/dist/{server/ai-employees/built-in/data-organizer/prompt.d.ts → ai/tools/knowledge-base-retrieve.d.ts} +1 -3
  25. package/dist/ai/tools/knowledge-base-retrieve.js +94 -0
  26. package/dist/{server/ai-employees/built-in/data-visualization/prompt.d.ts → ai/tools/sub-agents/dispatch-sub-agent-task.d.ts} +1 -3
  27. package/dist/ai/tools/sub-agents/dispatch-sub-agent-task.js +108 -0
  28. package/dist/ai/tools/sub-agents/get-ai-employee.d.ts +10 -0
  29. package/dist/{server/ai-employees/built-in/translator/profile.js → ai/tools/sub-agents/get-ai-employee.js} +28 -21
  30. package/dist/ai/tools/sub-agents/list-ai-employees.d.ts +10 -0
  31. package/dist/{server/ai-employees/built-in/email-assistant/profile.js → ai/tools/sub-agents/list-ai-employees.js} +25 -21
  32. package/dist/ai/tools/sub-agents/shared.d.ts +33 -0
  33. package/dist/ai/tools/sub-agents/shared.js +169 -0
  34. package/dist/ai/tools/suggestions.js +15 -4
  35. package/dist/client/170.d98eacdc00d9d527.js +10 -0
  36. package/dist/client/228.b18148eb1009d2fb.js +10 -0
  37. package/dist/client/280.029428b83d62155f.js +10 -0
  38. package/dist/client/290.0888139e33c9b7cb.js +10 -0
  39. package/dist/client/{524.954f96ec4fc2fd7a.js → 331.d547c95410476a69.js} +1 -1
  40. package/dist/client/343.83f7d96664e4e038.js +10 -0
  41. package/dist/client/406.15c09d98faa2ccf1.js +10 -0
  42. package/dist/client/428.e9f38da3b0d8b498.js +10 -0
  43. package/dist/client/486.77c26e2e7f8daf28.js +10 -0
  44. package/dist/client/502.2b4a51e0a8122e52.js +10 -0
  45. package/dist/client/525.33a9c8ec28be4ec4.js +10 -0
  46. package/dist/client/559.133d286a0a0a1d93.js +10 -0
  47. package/dist/client/{91.90e7098b7fbd5d00.js → 561.776886c5308e3c26.js} +1 -1
  48. package/dist/client/580.e75f97fb883ad042.js +10 -0
  49. package/dist/client/597.aa363881a325b5c0.js +10 -0
  50. package/dist/client/604.de96f3ec4d471afd.js +10 -0
  51. package/dist/client/614.aa766080f6b99aab.js +10 -0
  52. package/dist/client/646.ef9d7c2ea8641044.js +10 -0
  53. package/dist/client/687.224e569a99cae4bb.js +10 -0
  54. package/dist/client/699.57c0a1acb723202a.js +10 -0
  55. package/dist/client/711.266b8f1c520d467a.js +10 -0
  56. package/dist/client/758.a9741e81911e53c3.js +10 -0
  57. package/dist/client/768.973ce32e15099a48.js +10 -0
  58. package/dist/client/792.ae8ad1fcae9fd974.js +10 -0
  59. package/dist/client/820.6a26239ea96c075a.js +10 -0
  60. package/dist/client/832.0cf69e3f43c320b2.js +10 -0
  61. package/dist/client/927.ff5cd05b14901ae6.js +10 -0
  62. package/dist/client/ai-employees/admin/SkillSettings.d.ts +7 -5
  63. package/dist/client/ai-employees/admin/ToolsSettings.d.ts +17 -0
  64. package/dist/client/ai-employees/admin/mcp/MCPSettings.d.ts +10 -0
  65. package/dist/client/ai-employees/admin/mcp/MCPToolsList.d.ts +19 -0
  66. package/dist/client/ai-employees/admin/mcp/context.d.ts +15 -0
  67. package/dist/client/ai-employees/admin/mcp/schemas.d.ts +1286 -0
  68. package/dist/client/ai-employees/built-in/utils.d.ts +1 -0
  69. package/dist/client/ai-employees/business-report/tools/index.d.ts +10 -0
  70. package/dist/client/ai-employees/business-report/ui/BusinessReportCard.d.ts +12 -0
  71. package/dist/client/ai-employees/business-report/ui/BusinessReportModal.d.ts +17 -0
  72. package/dist/client/ai-employees/business-report/ui/report-utils.d.ts +38 -0
  73. package/dist/client/ai-employees/chatbox/AIEmployeeSwitch.d.ts +3 -2
  74. package/dist/client/ai-employees/chatbox/HintMessageHeader.d.ts +10 -0
  75. package/dist/client/ai-employees/chatbox/ModelSwitcher.d.ts +3 -1
  76. package/dist/client/ai-employees/chatbox/SearchSwitch.d.ts +3 -1
  77. package/dist/client/ai-employees/chatbox/Upload.d.ts +3 -1
  78. package/dist/client/ai-employees/chatbox/conversations/ConversationsList.d.ts +27 -0
  79. package/dist/client/ai-employees/chatbox/conversations/WorkflowTasksList.d.ts +31 -0
  80. package/dist/client/ai-employees/chatbox/conversations/common.d.ts +43 -0
  81. package/dist/client/ai-employees/chatbox/conversations/index.d.ts +9 -0
  82. package/dist/client/ai-employees/chatbox/hooks/useChatBoxActions.d.ts +5 -3
  83. package/dist/client/ai-employees/chatbox/hooks/useWorkflowTasks.d.ts +24 -0
  84. package/dist/client/ai-employees/chatbox/markdown/ECharts.d.ts +1 -2
  85. package/dist/client/ai-employees/chatbox/markdown/Markdown.d.ts +1 -1
  86. package/dist/client/ai-employees/chatbox/roles.d.ts +1 -0
  87. package/dist/client/ai-employees/chatbox/stores/chat-box.d.ts +8 -0
  88. package/dist/client/ai-employees/chatbox/stores/chat-conversations.d.ts +4 -0
  89. package/dist/client/ai-employees/chatbox/stores/chat-messages.d.ts +8 -0
  90. package/dist/client/ai-employees/chatbox/stores/workflow-tasks.d.ts +41 -0
  91. package/dist/client/ai-employees/chatbox/utils.d.ts +17 -7
  92. package/dist/client/ai-employees/sub-agents/tools/index.d.ts +10 -0
  93. package/dist/client/ai-employees/sub-agents/ui/SubAgentDispatchCard.d.ts +21 -0
  94. package/dist/client/ai-employees/types.d.ts +24 -4
  95. package/dist/{server/ai-employees/built-in/ai-coding/document/example/js-filter → client/ai-employees/workflow-tasks/tools}/index.d.ts +2 -7
  96. package/dist/client/ai-employees/workflow-tasks/ui/WorkflowTaskOutputCard.d.ts +11 -0
  97. package/dist/client/components/ListCollapse.d.ts +28 -0
  98. package/dist/client/index.js +7 -7
  99. package/dist/client/manager/ai-manager.d.ts +4 -23
  100. package/dist/client/repositories/AIConfigRepository.d.ts +11 -3
  101. package/dist/client/workflow/nodes/employee/components/AIEmployeeSelect.d.ts +10 -0
  102. package/dist/client/workflow/nodes/employee/components/assigness.d.ts +11 -0
  103. package/dist/client/workflow/nodes/employee/components/file-inputs.d.ts +10 -0
  104. package/dist/client/workflow/nodes/employee/components/message-inputs.d.ts +12 -0
  105. package/dist/client/workflow/nodes/employee/components/model-options.d.ts +10 -0
  106. package/dist/client/workflow/nodes/employee/components/skill-settings.d.ts +10 -0
  107. package/dist/client/workflow/nodes/employee/components/structured-output.d.ts +10 -0
  108. package/dist/client/workflow/nodes/employee/components/users-select.d.ts +15 -0
  109. package/dist/client/workflow/nodes/employee/components/web-search-options.d.ts +10 -0
  110. package/dist/client/workflow/nodes/employee/configuration.d.ts +12 -0
  111. package/dist/client/workflow/nodes/employee/flow-models/feedback.d.ts +13 -0
  112. package/dist/client/workflow/nodes/employee/flow-models/task.d.ts +13 -0
  113. package/dist/client/workflow/nodes/employee/index.d.ts +7 -31
  114. package/dist/collections/ai-employees.js +2 -1
  115. package/dist/collections/ai-mcp-clients.d.ts +51 -0
  116. package/dist/collections/ai-mcp-clients.js +111 -0
  117. package/dist/externalVersion.js +17 -15
  118. package/dist/locale/en-US.json +136 -8
  119. package/dist/locale/zh-CN.json +138 -9
  120. package/dist/node_modules/fast-glob/out/index.js +8 -8
  121. package/dist/node_modules/fast-glob/package.json +1 -1
  122. package/dist/node_modules/flexsearch/dist/flexsearch.bundle.min.js +2 -2
  123. package/dist/node_modules/flexsearch/package.json +1 -1
  124. package/dist/node_modules/fs-extra/lib/index.js +1 -1
  125. package/dist/node_modules/fs-extra/package.json +1 -1
  126. package/dist/node_modules/nodejs-snowflake/nodejs_snowflake.js +1 -1
  127. package/dist/node_modules/nodejs-snowflake/package.json +1 -1
  128. package/dist/node_modules/openai/index.js +1 -1
  129. package/dist/node_modules/openai/package.json +1 -1
  130. package/dist/node_modules/zod/index.cjs +1 -1
  131. package/dist/node_modules/zod/package.json +1 -1
  132. package/dist/server/ai-employees/ai-conversations.d.ts +70 -0
  133. package/dist/server/ai-employees/ai-conversations.js +325 -0
  134. package/dist/server/ai-employees/ai-employee.d.ts +100 -19
  135. package/dist/server/ai-employees/ai-employee.js +484 -261
  136. package/dist/server/ai-employees/ai-knowledge-base.d.ts +28 -0
  137. package/dist/server/ai-employees/ai-knowledge-base.js +167 -0
  138. package/dist/server/ai-employees/middleware/conversation.d.ts +2 -0
  139. package/dist/server/ai-employees/middleware/conversation.js +38 -5
  140. package/dist/server/ai-employees/middleware/index.d.ts +2 -0
  141. package/dist/server/ai-employees/middleware/index.js +5 -1
  142. package/dist/server/ai-employees/middleware/skill-tools.d.ts +12 -0
  143. package/dist/server/ai-employees/middleware/skill-tools.js +88 -0
  144. package/dist/server/ai-employees/middleware/tools.js +37 -10
  145. package/dist/server/ai-employees/middleware/workflow-history.d.ts +22 -0
  146. package/dist/server/ai-employees/middleware/workflow-history.js +173 -0
  147. package/dist/server/ai-employees/prompts.d.ts +16 -1
  148. package/dist/server/ai-employees/prompts.js +37 -1
  149. package/dist/server/ai-employees/sub-agents/dispatcher.d.ts +36 -0
  150. package/dist/server/ai-employees/sub-agents/dispatcher.js +225 -0
  151. package/dist/server/ai-employees/sub-agents/index.d.ts +9 -0
  152. package/dist/server/{migrations/20250923221107-setup-build-in.js → ai-employees/sub-agents/index.js} +9 -13
  153. package/dist/server/ai-employees/templates/form-assistant.d.ts +2 -2
  154. package/dist/server/ai-employees/templates/form-assistant.js +2 -2
  155. package/dist/server/ai-employees/utils.js +2 -2
  156. package/dist/server/collections/ai-conversations.js +18 -0
  157. package/dist/server/{ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_contacts_en.d.ts → collections/ai-mcp-clients.d.ts} +1 -4
  158. package/dist/server/{ai-employees/built-in/nocobase-assistant/index.js → collections/ai-mcp-clients.js} +12 -13
  159. package/dist/server/{ai-employees/built-in/ai-coding/document/basic/flow-resource.d.ts → collections/ai-skills.d.ts} +1 -4
  160. package/dist/server/{ai-employees/built-in/email-assistant/index.js → collections/ai-skills.js} +46 -23
  161. package/dist/server/{ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_opportunities_en.d.ts → collections/ai-workflow-tasks.d.ts} +1 -4
  162. package/dist/server/collections/ai-workflow-tasks.js +112 -0
  163. package/dist/server/{ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_accounts_en.d.ts → collections/users-ai-workflow-tasks.d.ts} +1 -4
  164. package/dist/server/collections/users-ai-workflow-tasks.js +44 -0
  165. package/dist/server/llm-providers/anthropic.d.ts +1 -0
  166. package/dist/server/llm-providers/anthropic.js +2 -1
  167. package/dist/server/llm-providers/dashscope.d.ts +1 -0
  168. package/dist/server/llm-providers/deepseek.d.ts +1 -0
  169. package/dist/server/llm-providers/google-genai.d.ts +1 -0
  170. package/dist/server/llm-providers/google-genai.js +2 -1
  171. package/dist/server/llm-providers/kimi/provider.d.ts +1 -0
  172. package/dist/server/llm-providers/openai/responses.d.ts +1 -0
  173. package/dist/server/llm-providers/openai/responses.js +2 -1
  174. package/dist/server/llm-providers/provider.d.ts +1 -10
  175. package/dist/server/llm-providers/provider.js +3 -34
  176. package/dist/server/manager/ai-coding-manager.d.ts +1 -2
  177. package/dist/server/manager/ai-coding-manager.js +0 -41
  178. package/dist/server/manager/ai-context-datasource-manager.js +30 -1
  179. package/dist/server/manager/built-in-manager.d.ts +2 -4
  180. package/dist/server/manager/built-in-manager.js +8 -117
  181. package/dist/server/migrations/20260306000001-migrate-skill-settings-tools.js +68 -0
  182. package/dist/server/migrations/20260319000000-add-ai-conversations-from.d.ts +14 -0
  183. package/dist/server/migrations/20260319000000-add-ai-conversations-from.js +63 -0
  184. package/dist/server/plugin.d.ts +6 -1
  185. package/dist/server/plugin.js +31 -8
  186. package/dist/server/resource/aiConversations.js +112 -188
  187. package/dist/server/resource/aiEmployees.js +5 -7
  188. package/dist/server/resource/aiMcpClients.d.ts +11 -0
  189. package/dist/server/resource/aiMcpClients.js +78 -0
  190. package/dist/server/{ai-employees/built-in/ai-coding/document/example/js-column/index.d.ts → resource/aiSkills.d.ts} +3 -7
  191. package/dist/server/resource/aiSkills.js +71 -0
  192. package/dist/server/resource/aiTools.js +4 -6
  193. package/dist/server/resource/aiWorkflowTasks.d.ts +12 -0
  194. package/dist/server/resource/aiWorkflowTasks.js +290 -0
  195. package/dist/server/tools/docs.js +4 -3
  196. package/dist/server/tools/workflow-caller.js +1 -0
  197. package/dist/server/types/ai-chat-conversation.type.d.ts +8 -2
  198. package/dist/server/types/ai-message.type.d.ts +7 -0
  199. package/dist/server/utils.d.ts +3 -0
  200. package/dist/server/utils.js +28 -3
  201. package/dist/server/workflow/nodes/employee/files.d.ts +16 -0
  202. package/dist/server/workflow/nodes/employee/files.js +125 -0
  203. package/dist/server/workflow/nodes/employee/handler.d.ts +11 -0
  204. package/dist/server/workflow/nodes/employee/handler.js +107 -0
  205. package/dist/server/workflow/nodes/employee/index.d.ts +17 -0
  206. package/dist/server/workflow/nodes/employee/index.js +391 -0
  207. package/dist/server/workflow/nodes/employee/tools.d.ts +12 -0
  208. package/dist/server/workflow/nodes/employee/tools.js +133 -0
  209. package/dist/server/workflow/nodes/employee/types.d.ts +35 -0
  210. package/dist/server/workflow/nodes/employee/types.js +24 -0
  211. package/dist/server/workflow/utils.d.ts +14 -0
  212. package/dist/server/workflow/utils.js +111 -0
  213. package/package.json +4 -2
  214. package/dist/client/107.64d9efa24d6b9143.js +0 -10
  215. package/dist/client/124.768c8aa5d6e6b461.js +0 -10
  216. package/dist/client/159.d52107c7a34ce2da.js +0 -10
  217. package/dist/client/192.0419770b69678994.js +0 -10
  218. package/dist/client/204.91be8cfc54d91a59.js +0 -10
  219. package/dist/client/238.9f784a7cdb751999.js +0 -10
  220. package/dist/client/263.6e1dfb1cbb1964f5.js +0 -10
  221. package/dist/client/35.5ee7503d9c09daa8.js +0 -10
  222. package/dist/client/47.6bd245f2140efd24.js +0 -10
  223. package/dist/client/481.03b3d2306d409933.js +0 -10
  224. package/dist/client/586.6a1510cabaa84f23.js +0 -10
  225. package/dist/client/650.8871a07b31c307ea.js +0 -10
  226. package/dist/client/755.e295bbd2b2a1cc21.js +0 -10
  227. package/dist/client/772.d51f683c55e18dd4.js +0 -10
  228. package/dist/client/870.84187dcb8c89b4dc.js +0 -10
  229. package/dist/client/933.baab3aa75f30e020.js +0 -10
  230. package/dist/client/987.3aee964e7f406939.js +0 -10
  231. package/dist/server/ai-employees/built-in/ai-coding/document/basic/flow-resource.js +0 -256
  232. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/index.js +0 -48
  233. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_accounts_en.js +0 -452
  234. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_contacts_en.js +0 -363
  235. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_opportunities_en.js +0 -270
  236. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_quotations_en.d.ts +0 -13
  237. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_quotations_en.js +0 -219
  238. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_tickets_en.d.ts +0 -13
  239. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-column/js_columns_for_tickets_en.js +0 -409
  240. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/accounts_filter_ant_style.d.ts +0 -13
  241. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/accounts_filter_ant_style.js +0 -324
  242. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/contacts_filter_ant_style.d.ts +0 -13
  243. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/contacts_filter_ant_style.js +0 -309
  244. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/index.js +0 -50
  245. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/leads_filter_ant_style.d.ts +0 -13
  246. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/leads_filter_ant_style.js +0 -345
  247. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/opportunities_filter_ant_style.d.ts +0 -13
  248. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/opportunities_filter_ant_style.js +0 -381
  249. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/product_categories_ant_style.d.ts +0 -13
  250. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/product_categories_ant_style.js +0 -545
  251. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/tickets_filter_ant_style.d.ts +0 -13
  252. package/dist/server/ai-employees/built-in/ai-coding/document/example/js-filter/tickets_filter_ant_style.js +0 -346
  253. package/dist/server/ai-employees/built-in/ai-coding/document/js-action.d.ts +0 -13
  254. package/dist/server/ai-employees/built-in/ai-coding/document/js-action.js +0 -102
  255. package/dist/server/ai-employees/built-in/ai-coding/document/js-block.d.ts +0 -13
  256. package/dist/server/ai-employees/built-in/ai-coding/document/js-block.js +0 -314
  257. package/dist/server/ai-employees/built-in/ai-coding/document/js-column.d.ts +0 -13
  258. package/dist/server/ai-employees/built-in/ai-coding/document/js-column.js +0 -113
  259. package/dist/server/ai-employees/built-in/ai-coding/document/js-field.d.ts +0 -13
  260. package/dist/server/ai-employees/built-in/ai-coding/document/js-field.js +0 -498
  261. package/dist/server/ai-employees/built-in/ai-coding/document/js-item.d.ts +0 -13
  262. package/dist/server/ai-employees/built-in/ai-coding/document/js-item.js +0 -184
  263. package/dist/server/ai-employees/built-in/ai-coding/index.d.ts +0 -37
  264. package/dist/server/ai-employees/built-in/ai-coding/index.js +0 -99
  265. package/dist/server/ai-employees/built-in/ai-coding/profile.d.ts +0 -27
  266. package/dist/server/ai-employees/built-in/ai-coding/profile.js +0 -60
  267. package/dist/server/ai-employees/built-in/ai-coding/prompt_en.md +0 -110
  268. package/dist/server/ai-employees/built-in/data-modeling/index.d.ts +0 -37
  269. package/dist/server/ai-employees/built-in/data-modeling/profile.d.ts +0 -27
  270. package/dist/server/ai-employees/built-in/data-modeling/profile.js +0 -60
  271. package/dist/server/ai-employees/built-in/data-modeling/prompt.js +0 -283
  272. package/dist/server/ai-employees/built-in/data-organizer/index.d.ts +0 -37
  273. package/dist/server/ai-employees/built-in/data-organizer/index.js +0 -63
  274. package/dist/server/ai-employees/built-in/data-organizer/profile.d.ts +0 -27
  275. package/dist/server/ai-employees/built-in/data-organizer/profile.js +0 -60
  276. package/dist/server/ai-employees/built-in/data-visualization/index.d.ts +0 -37
  277. package/dist/server/ai-employees/built-in/data-visualization/index.js +0 -58
  278. package/dist/server/ai-employees/built-in/data-visualization/profile.d.ts +0 -27
  279. package/dist/server/ai-employees/built-in/data-visualization/profile.js +0 -60
  280. package/dist/server/ai-employees/built-in/email-assistant/index.d.ts +0 -34
  281. package/dist/server/ai-employees/built-in/email-assistant/profile.d.ts +0 -27
  282. package/dist/server/ai-employees/built-in/email-assistant/prompt.d.ts +0 -12
  283. package/dist/server/ai-employees/built-in/insights-analyst/index.d.ts +0 -37
  284. package/dist/server/ai-employees/built-in/insights-analyst/index.js +0 -63
  285. package/dist/server/ai-employees/built-in/insights-analyst/profile.d.ts +0 -27
  286. package/dist/server/ai-employees/built-in/insights-analyst/profile.js +0 -60
  287. package/dist/server/ai-employees/built-in/insights-analyst/prompt.d.ts +0 -12
  288. package/dist/server/ai-employees/built-in/nocobase-assistant/index.d.ts +0 -34
  289. package/dist/server/ai-employees/built-in/nocobase-assistant/profile.d.ts +0 -27
  290. package/dist/server/ai-employees/built-in/nocobase-assistant/profile.js +0 -60
  291. package/dist/server/ai-employees/built-in/nocobase-assistant/prompt.d.ts +0 -12
  292. package/dist/server/ai-employees/built-in/nocobase-assistant/prompt.js +0 -52
  293. package/dist/server/ai-employees/built-in/research-analyst/index.d.ts +0 -37
  294. package/dist/server/ai-employees/built-in/research-analyst/index.js +0 -63
  295. package/dist/server/ai-employees/built-in/research-analyst/profile.d.ts +0 -27
  296. package/dist/server/ai-employees/built-in/research-analyst/profile.js +0 -60
  297. package/dist/server/ai-employees/built-in/research-analyst/prompt.d.ts +0 -12
  298. package/dist/server/ai-employees/built-in/translator/index.d.ts +0 -37
  299. package/dist/server/ai-employees/built-in/translator/index.js +0 -67
  300. package/dist/server/ai-employees/built-in/translator/profile.d.ts +0 -27
  301. package/dist/server/ai-employees/built-in/translator/prompt.d.ts +0 -12
  302. /package/dist/client/ai-employees/chatbox/{Conversations.d.ts → conversations/Conversations.d.ts} +0 -0
  303. /package/dist/server/migrations/{20250923221107-setup-build-in.d.ts → 20260306000001-migrate-skill-settings-tools.d.ts} +0 -0
@@ -39,132 +39,23 @@ __export(built_in_manager_exports, {
39
39
  BuiltInManager: () => BuiltInManager
40
40
  });
41
41
  module.exports = __toCommonJS(built_in_manager_exports);
42
- var import_data_modeling = __toESM(require("../ai-employees/built-in/data-modeling"));
43
- var import_ai_coding = __toESM(require("../ai-employees/built-in/ai-coding"));
44
- var import_data_organizer = __toESM(require("../ai-employees/built-in/data-organizer"));
45
- var import_insights_analyst = __toESM(require("../ai-employees/built-in/insights-analyst"));
46
- var import_research_analyst = __toESM(require("../ai-employees/built-in/research-analyst"));
47
- var import_translator = __toESM(require("../ai-employees/built-in/translator"));
48
- var import_email_assistant = __toESM(require("../ai-employees/built-in/email-assistant"));
49
- var import_data_visualization = __toESM(require("../ai-employees/built-in/data-visualization"));
50
- var import_lodash = __toESM(require("lodash"));
51
- const DEFAULT_LANGUAGE = "en-US";
52
- const DEFAULT_KNOWLEDGE_BASE = {
53
- topK: 3,
54
- score: "0.6",
55
- knowledgeBaseIds: []
56
- };
57
- const DEFAULT_KNOWLEDGE_BASE_PROMPT = "From knowledge base:\n{knowledgeBaseData}\nanswer user's question using this information.";
42
+ var import_package = __toESM(require("../../../package.json"));
58
43
  class BuiltInManager {
59
44
  constructor(plugin) {
60
45
  this.plugin = plugin;
61
46
  }
62
- builtInEmployees = [
63
- import_data_modeling.default,
64
- import_ai_coding.default,
65
- import_data_organizer.default,
66
- import_insights_analyst.default,
67
- import_research_analyst.default,
68
- import_translator.default,
69
- // nocobaseAssistant,
70
- import_email_assistant.default,
71
- import_data_visualization.default
72
- ];
73
- builtInEmployeeMap = Object.fromEntries(this.builtInEmployees.map((x) => [x.username, x]));
74
- setupBuiltInInfo(locale, aiEmployee) {
75
- var _a;
47
+ setupBuiltInInfo(ctx, aiEmployee) {
48
+ var _a, _b, _c, _d;
76
49
  if (!aiEmployee) {
77
50
  return;
78
51
  }
79
- const builtInEmployeeInfo = this.builtInEmployeeMap[aiEmployee.username];
80
- if (!builtInEmployeeInfo) {
52
+ if (!aiEmployee.builtIn) {
81
53
  return;
82
54
  }
83
- const { profile } = builtInEmployeeInfo;
84
- const { avatar, nickname, position, bio, greeting, about } = profile[locale] ?? profile[DEFAULT_LANGUAGE];
85
- aiEmployee.avatar = avatar;
86
- aiEmployee.nickname = nickname;
87
- aiEmployee.position = position;
88
- aiEmployee.bio = bio;
89
- aiEmployee.greeting = greeting;
90
- aiEmployee.defaultPrompt = about;
91
- const builtInSkills = ((_a = builtInEmployeeInfo.skillSettings) == null ? void 0 : _a.skills) ?? [];
92
- const skillSettings = aiEmployee.skillSettings ?? {};
93
- const skills = skillSettings.skills ?? [];
94
- aiEmployee.skillSettings = {
95
- ...builtInEmployeeInfo.skillSettings ?? {},
96
- skills: import_lodash.default.uniqBy([...skills, ...builtInSkills], "name")
97
- };
98
- }
99
- async createOrUpdateAIEmployee(language = DEFAULT_LANGUAGE) {
100
- var _a;
101
- const aiEmployeesRepo = this.plugin.db.getRepository("aiEmployees");
102
- const employeeUsernames = this.builtInEmployees.map((employee) => employee.username);
103
- const existed = await aiEmployeesRepo.find({
104
- filter: {
105
- username: {
106
- $in: employeeUsernames
107
- }
108
- }
109
- });
110
- const existedUsername = existed.map((x) => x.username);
111
- const setups = this.builtInEmployees.filter((x) => !existedUsername.includes(x.username));
112
- if (setups.length) {
113
- this.plugin.log.info("setup built-in employees");
114
- for (const { username, description, profile, skillSettings } of setups) {
115
- let p = profile[language];
116
- if (!p) {
117
- p = profile[DEFAULT_LANGUAGE];
118
- }
119
- if (!p) {
120
- continue;
121
- }
122
- const { nickname, avatar, position, bio, greeting } = p;
123
- await aiEmployeesRepo.create({
124
- values: {
125
- username,
126
- nickname,
127
- position,
128
- avatar,
129
- bio,
130
- greeting,
131
- about: null,
132
- skillSettings,
133
- enableKnowledgeBase: false,
134
- knowledgeBase: DEFAULT_KNOWLEDGE_BASE,
135
- knowledgeBasePrompt: DEFAULT_KNOWLEDGE_BASE_PROMPT,
136
- enabled: true,
137
- builtIn: true
138
- }
139
- });
140
- this.plugin.log.info(`setup [${username}] ${description}`);
141
- }
142
- }
143
- const updates = this.builtInEmployees.filter((x) => existedUsername.includes(x.username));
144
- if (updates.length) {
145
- this.plugin.log.info("update built-in employees");
146
- const existedMap = new Map(existed.map((it) => [it.username, it.toJSON()]));
147
- for (const { username, description, skillSettings } of updates) {
148
- let { skills } = ((_a = existedMap.get(username)) == null ? void 0 : _a.skillSettings) ?? { skills: [] };
149
- skills = (skills ?? []).filter((s) => {
150
- var _a2;
151
- return (_a2 = s.name) == null ? void 0 : _a2.startsWith("workflowCaller-");
152
- });
153
- const mergedSkills = /* @__PURE__ */ new Set([...skills, ...skillSettings.skills]);
154
- await aiEmployeesRepo.update({
155
- values: {
156
- skillSettings: {
157
- skills: [...mergedSkills]
158
- },
159
- builtIn: true
160
- },
161
- filter: {
162
- username
163
- }
164
- });
165
- this.plugin.log.info(`update [${username}] ${description}`);
166
- }
167
- }
55
+ aiEmployee.nickname = (_a = ctx.t) == null ? void 0 : _a.call(ctx, aiEmployee.nickname, { ns: import_package.default.name });
56
+ aiEmployee.position = (_b = ctx.t) == null ? void 0 : _b.call(ctx, aiEmployee.position, { ns: import_package.default.name });
57
+ aiEmployee.bio = (_c = ctx.t) == null ? void 0 : _c.call(ctx, aiEmployee.bio, { ns: import_package.default.name });
58
+ aiEmployee.greeting = (_d = ctx.t) == null ? void 0 : _d.call(ctx, aiEmployee.greeting, { ns: import_package.default.name });
168
59
  }
169
60
  }
170
61
  // Annotate the CommonJS export names for ESM import in node:
@@ -0,0 +1,68 @@
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 migrate_skill_settings_tools_exports = {};
28
+ __export(migrate_skill_settings_tools_exports, {
29
+ default: () => migrate_skill_settings_tools_default
30
+ });
31
+ module.exports = __toCommonJS(migrate_skill_settings_tools_exports);
32
+ var import_server = require("@nocobase/server");
33
+ class migrate_skill_settings_tools_default extends import_server.Migration {
34
+ on = "afterSync";
35
+ appVersion = "<2.1.0";
36
+ async up() {
37
+ var _a;
38
+ const repo = this.db.getRepository("aiEmployees");
39
+ const rows = await repo.find({});
40
+ let updated = 0;
41
+ for (const row of rows) {
42
+ const skillSettings = ((_a = row.get) == null ? void 0 : _a.call(row, "skillSettings")) ?? row.skillSettings;
43
+ if (!skillSettings || typeof skillSettings !== "object") {
44
+ continue;
45
+ }
46
+ if (Array.isArray(skillSettings.tools) && skillSettings.tools.length > 0) {
47
+ continue;
48
+ }
49
+ const skills = skillSettings.skills;
50
+ let nextTools = null;
51
+ if (Array.isArray(skills)) {
52
+ const hasObject = skills.some((item) => item && typeof item === "object");
53
+ if (hasObject) {
54
+ nextTools = skills;
55
+ }
56
+ }
57
+ const nextSkillSettings = { ...skillSettings, tools: nextTools ?? [] };
58
+ if (Array.isArray(skills)) {
59
+ delete nextSkillSettings.skills;
60
+ }
61
+ await row.update({ skillSettings: nextSkillSettings });
62
+ updated += 1;
63
+ }
64
+ if (updated > 0) {
65
+ this.app.logger.info(`Migrated aiEmployees.skillSettings.skills -> skillSettings.tools (${updated})`);
66
+ }
67
+ }
68
+ }
@@ -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,63 @@
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 add_ai_conversations_from_exports = {};
28
+ __export(add_ai_conversations_from_exports, {
29
+ default: () => add_ai_conversations_from_default
30
+ });
31
+ module.exports = __toCommonJS(add_ai_conversations_from_exports);
32
+ var import_server = require("@nocobase/server");
33
+ class add_ai_conversations_from_default extends import_server.Migration {
34
+ on = "afterLoad";
35
+ appVersion = "<2.1.0";
36
+ async up() {
37
+ var _a;
38
+ const collection = this.db.getCollection("aiConversations");
39
+ if (!collection) {
40
+ return;
41
+ }
42
+ const field = collection.getField("from");
43
+ if (!field) {
44
+ await collection.sync();
45
+ }
46
+ const repo = this.db.getRepository("aiConversations");
47
+ const rows = await repo.find({});
48
+ let updated = 0;
49
+ for (const row of rows) {
50
+ const value = ((_a = row.get) == null ? void 0 : _a.call(row, "from")) ?? row.from;
51
+ if (value) {
52
+ continue;
53
+ }
54
+ await row.update({
55
+ from: "main-agent"
56
+ });
57
+ updated += 1;
58
+ }
59
+ if (updated > 0) {
60
+ this.app.logger.info(`Migrated aiConversations.from to main-agent (${updated})`);
61
+ }
62
+ }
63
+ }
@@ -10,21 +10,27 @@ import { Plugin } from '@nocobase/server';
10
10
  import { AIManager } from './manager/ai-manager';
11
11
  import { AIPluginFeatureManagerImpl } from './manager/ai-feature-manager';
12
12
  import { AIEmployeesManager } from './ai-employees/ai-employees-manager';
13
+ import { AIConversationsManager } from './ai-employees/ai-conversations';
13
14
  import Snowflake from './snowflake';
14
15
  import { BuiltInManager } from './manager/built-in-manager';
15
16
  import { AIContextDatasourceManager } from './manager/ai-context-datasource-manager';
16
17
  import { AICodingManager } from './manager/ai-coding-manager';
17
18
  import { DocumentLoaders } from './document-loader';
18
19
  import type PluginFileManagerServer from '@nocobase/plugin-file-manager';
20
+ import { SubAgentsDispatcher } from './ai-employees/sub-agents';
21
+ import { KnowledgeBaseManager } from './ai-employees/ai-knowledge-base';
19
22
  export declare class PluginAIServer extends Plugin {
20
23
  features: AIPluginFeatureManagerImpl;
21
24
  aiManager: AIManager;
22
25
  aiEmployeesManager: AIEmployeesManager;
26
+ aiConversationsManager: AIConversationsManager;
23
27
  builtInManager: BuiltInManager;
24
28
  aiContextDatasourceManager: AIContextDatasourceManager;
25
29
  aiCodingManager: AICodingManager;
26
30
  workContextHandler: import("./types").WorkContextHandler;
27
31
  documentLoaders: DocumentLoaders;
32
+ subAgentsDispatcher: SubAgentsDispatcher;
33
+ knowledgeBaseManager: KnowledgeBaseManager;
28
34
  snowflake: Snowflake;
29
35
  /**
30
36
  * Check if the AI employee is a builder/admin-only type (e.g., Nathan, Orin).
@@ -34,7 +40,6 @@ export declare class PluginAIServer extends Plugin {
34
40
  afterAdd(): Promise<void>;
35
41
  beforeLoad(): Promise<void>;
36
42
  load(): Promise<void>;
37
- setupBuiltIn(): Promise<void>;
38
43
  registerLLMProviders(): void;
39
44
  registerTools(): void;
40
45
  defineResources(): void;
@@ -49,8 +49,11 @@ var import_deepseek = require("./llm-providers/deepseek");
49
49
  var import_ai = __toESM(require("./resource/ai"));
50
50
  var import_llm = require("./workflow/nodes/llm");
51
51
  var import_aiConversations = __toESM(require("./resource/aiConversations"));
52
+ var import_aiWorkflowTasks = __toESM(require("./resource/aiWorkflowTasks"));
52
53
  var import_aiTools = __toESM(require("./resource/aiTools"));
54
+ var import_aiSkills = __toESM(require("./resource/aiSkills"));
53
55
  var import_ai_employees_manager = require("./ai-employees/ai-employees-manager");
56
+ var import_ai_conversations = require("./ai-employees/ai-conversations");
54
57
  var import_snowflake = __toESM(require("./snowflake"));
55
58
  var aiEmployeeActions = __toESM(require("./resource/aiEmployees"));
56
59
  var import_google_genai = require("./llm-providers/google-genai");
@@ -63,20 +66,27 @@ var import_ollama = require("./llm-providers/ollama");
63
66
  var import_built_in_manager = require("./manager/built-in-manager");
64
67
  var import_ai_context_datasource_manager = require("./manager/ai-context-datasource-manager");
65
68
  var import_aiContextDatasources = require("./resource/aiContextDatasources");
69
+ var import_aiMcpClients = __toESM(require("./resource/aiMcpClients"));
66
70
  var import_work_context_handler = require("./manager/work-context-handler");
67
71
  var import_ai_coding_manager = require("./manager/ai-coding-manager");
68
72
  var import_kimi = require("./llm-providers/kimi");
69
73
  var import_document_loader = require("./document-loader");
70
74
  var import_checkpoints = require("./ai-employees/checkpoints");
75
+ var import_sub_agents = require("./ai-employees/sub-agents");
76
+ var import_employee = require("./workflow/nodes/employee");
77
+ var import_ai_knowledge_base = require("./ai-employees/ai-knowledge-base");
71
78
  class PluginAIServer extends import_server.Plugin {
72
79
  features = new import_ai_feature_manager.AIPluginFeatureManagerImpl();
73
80
  aiManager = new import_ai_manager.AIManager(this);
74
81
  aiEmployeesManager = new import_ai_employees_manager.AIEmployeesManager(this);
82
+ aiConversationsManager = new import_ai_conversations.AIConversationsManager(this);
75
83
  builtInManager = new import_built_in_manager.BuiltInManager(this);
76
84
  aiContextDatasourceManager = new import_ai_context_datasource_manager.AIContextDatasourceManager(this);
77
85
  aiCodingManager = new import_ai_coding_manager.AICodingManager(this);
78
86
  workContextHandler = (0, import_work_context_handler.createWorkContextHandler)(this);
79
87
  documentLoaders = new import_document_loader.DocumentLoaders(this);
88
+ subAgentsDispatcher = new import_sub_agents.SubAgentsDispatcher(this);
89
+ knowledgeBaseManager = new import_ai_knowledge_base.KnowledgeBaseManager(this);
80
90
  snowflake;
81
91
  /**
82
92
  * Check if the AI employee is a builder/admin-only type (e.g., Nathan, Orin).
@@ -108,6 +118,11 @@ class PluginAIServer extends import_server.Plugin {
108
118
  }
109
119
  }
110
120
  });
121
+ this.app.on("afterStart", async () => {
122
+ await this.ai.skillsManager.init();
123
+ await this.ai.employeeManager.init();
124
+ await this.ai.mcpManager.init();
125
+ });
111
126
  }
112
127
  async load() {
113
128
  await (0, import_tools.loadDocsIndexes)();
@@ -117,9 +132,8 @@ class PluginAIServer extends import_server.Plugin {
117
132
  this.setPermissions();
118
133
  this.registerWorkflow();
119
134
  this.registerWorkContextResolveStrategy();
120
- }
121
- async setupBuiltIn() {
122
- await this.builtInManager.createOrUpdateAIEmployee();
135
+ (0, import_employee.registerAIEmployeeTaskNotification)(this);
136
+ (0, import_employee.registerOnJobAbortedHandler)(this);
123
137
  }
124
138
  registerLLMProviders() {
125
139
  this.aiManager.registerLLMProvider("google-genai", import_google_genai.googleGenAIProviderOptions);
@@ -135,13 +149,18 @@ class PluginAIServer extends import_server.Plugin {
135
149
  const toolsManager = this.ai.toolsManager;
136
150
  toolsManager.registerTools([(0, import_tools.createDocsSearchTool)(), (0, import_tools.createReadDocEntryTool)()]);
137
151
  toolsManager.registerDynamicTools((0, import_tools.getWorkflowCallers)(this, "workflowCaller"));
152
+ toolsManager.registerDynamicTools((0, import_employee.getWorkflowTasks)(this));
153
+ toolsManager.registerDynamicTools(this.ai.mcpManager.getMCPToolsProvider());
138
154
  }
139
155
  defineResources() {
140
156
  this.app.resourceManager.define(import_ai.default);
141
157
  this.app.resourceManager.define(import_aiConversations.default);
158
+ this.app.resourceManager.define(import_aiWorkflowTasks.default);
142
159
  this.app.resourceManager.define(import_aiTools.default);
160
+ this.app.resourceManager.define(import_aiSkills.default);
143
161
  this.app.resourceManager.define(import_aiSettings.default);
144
162
  this.app.resourceManager.define(import_aiContextDatasources.aiContextDatasources);
163
+ this.app.resourceManager.define(import_aiMcpClients.default);
145
164
  this.app.resourceManager.use(
146
165
  async (ctx, next) => {
147
166
  var _a;
@@ -164,15 +183,20 @@ class PluginAIServer extends import_server.Plugin {
164
183
  name: `pm.${this.name}.llm-services`,
165
184
  actions: ["ai:*", "llmServices:*"]
166
185
  });
186
+ this.app.acl.registerSnippet({
187
+ name: `pm.${this.name}.mcp-settings`,
188
+ actions: ["aiMcpClients:*"]
189
+ });
167
190
  this.app.acl.registerSnippet({
168
191
  name: `pm.${this.name}.ai-employees`,
169
- actions: ["aiEmployees:*", "aiTools:*", "roles.aiEmployees:*", "aiContextDatasources:*"]
192
+ actions: ["aiEmployees:*", "aiTools:*", "aiSkills:*", "roles.aiEmployees:*", "aiContextDatasources:*"]
170
193
  });
171
194
  this.app.acl.registerSnippet({
172
195
  name: `pm.${this.name}.ai-settings`,
173
196
  actions: ["aiSettings:*"]
174
197
  });
175
198
  this.app.acl.allow("aiConversations", "*", "loggedIn");
199
+ this.app.acl.allow("aiWorkflowTasks", "*", "loggedIn");
176
200
  this.app.acl.allow("aiContextDatasources", "get", "loggedIn");
177
201
  this.app.acl.allow("aiContextDatasources", "list", "loggedIn");
178
202
  this.app.acl.allow("aiContextDatasources", "preview", "loggedIn");
@@ -182,6 +206,7 @@ class PluginAIServer extends import_server.Plugin {
182
206
  this.app.acl.allow("aiEmployees", "listByUser", "loggedIn");
183
207
  this.app.acl.allow("aiEmployees", "updateUserPrompt", "loggedIn");
184
208
  this.app.acl.allow("aiTools", "list", "loggedIn");
209
+ this.app.acl.allow("aiSkills", "list", "loggedIn");
185
210
  const workflowSnippet = this.app.acl.snippetManager.snippets.get("pm.workflow.workflows");
186
211
  if (workflowSnippet) {
187
212
  workflowSnippet.actions.push("ai:listModels");
@@ -219,14 +244,14 @@ class PluginAIServer extends import_server.Plugin {
219
244
  const workflow = this.app.pm.get("workflow");
220
245
  workflow.registerTrigger("ai-employee", import_ai_employee.AIEmployeeTrigger);
221
246
  workflow.registerInstruction("llm", import_llm.LLMInstruction);
247
+ workflow.registerInstruction("ai-employee", import_employee.AIEmployeeInstruction);
222
248
  }
223
249
  registerWorkContextResolveStrategy() {
224
250
  this.workContextHandler.registerStrategy("datasource", {
225
251
  resolve: this.aiContextDatasourceManager.provideWorkContextResolveStrategy()
226
252
  });
227
253
  this.workContextHandler.registerStrategy("code-editor", {
228
- resolve: this.aiCodingManager.provideWorkContextResolveStrategy(),
229
- background: this.aiCodingManager.provideWorkContextBackgroundStrategy()
254
+ resolve: this.aiCodingManager.provideWorkContextResolveStrategy()
230
255
  });
231
256
  }
232
257
  handleSyncMessage(message) {
@@ -244,10 +269,8 @@ class PluginAIServer extends import_server.Plugin {
244
269
  return;
245
270
  }
246
271
  await this.db.getRepository("aiSettings").create({});
247
- await this.setupBuiltIn();
248
272
  }
249
273
  async upgrade() {
250
- await this.setupBuiltIn();
251
274
  }
252
275
  async afterEnable() {
253
276
  }