@nocobase/app-plugin-agents 0.1.0-beta.1 → 0.1.0-beta.11

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 (649) hide show
  1. package/CHANGELOG.md +398 -0
  2. package/README.md +129 -67
  3. package/dist/client/api/client.d.ts +25 -17
  4. package/dist/client/api/client.d.ts.map +1 -1
  5. package/dist/client/api/client.js +29 -27
  6. package/dist/client/api/client.js.map +1 -1
  7. package/dist/client/api/keys.d.ts +1 -1
  8. package/dist/client/api/keys.d.ts.map +1 -1
  9. package/dist/client/api/keys.js +1 -1
  10. package/dist/client/api/keys.js.map +1 -1
  11. package/dist/client/chat/api.d.ts +2 -7
  12. package/dist/client/chat/api.d.ts.map +1 -1
  13. package/dist/client/chat/api.js +0 -7
  14. package/dist/client/chat/api.js.map +1 -1
  15. package/dist/client/chat/consultation-identity.d.ts +7 -0
  16. package/dist/client/chat/consultation-identity.d.ts.map +1 -0
  17. package/dist/client/chat/consultation-identity.js +39 -0
  18. package/dist/client/chat/consultation-identity.js.map +1 -0
  19. package/dist/client/chat/message-model.d.ts +4 -2
  20. package/dist/client/chat/message-model.d.ts.map +1 -1
  21. package/dist/client/chat/message-model.js +28 -3
  22. package/dist/client/chat/message-model.js.map +1 -1
  23. package/dist/client/chat/use-chat.d.ts +2 -10
  24. package/dist/client/chat/use-chat.d.ts.map +1 -1
  25. package/dist/client/chat/use-chat.js +3 -10
  26. package/dist/client/chat/use-chat.js.map +1 -1
  27. package/dist/client/chat.d.ts +4 -1
  28. package/dist/client/chat.d.ts.map +1 -1
  29. package/dist/client/chat.js +3 -0
  30. package/dist/client/chat.js.map +1 -1
  31. package/dist/client/components/agent-picker.d.ts +6 -23
  32. package/dist/client/components/agent-picker.d.ts.map +1 -1
  33. package/dist/client/components/agent-picker.js +19 -39
  34. package/dist/client/components/agent-picker.js.map +1 -1
  35. package/dist/client/components/variables/variable-dialogs.d.ts +6 -1
  36. package/dist/client/components/variables/variable-dialogs.d.ts.map +1 -1
  37. package/dist/client/components/variables/variable-dialogs.js +27 -11
  38. package/dist/client/components/variables/variable-dialogs.js.map +1 -1
  39. package/dist/client/components/variables/variables-panel.d.ts.map +1 -1
  40. package/dist/client/components/variables/variables-panel.js +9 -2
  41. package/dist/client/components/variables/variables-panel.js.map +1 -1
  42. package/dist/client/hooks/use-agent-picker-labels.d.ts.map +1 -1
  43. package/dist/client/hooks/use-agent-picker-labels.js +3 -12
  44. package/dist/client/hooks/use-agent-picker-labels.js.map +1 -1
  45. package/dist/client/kit.d.ts +9 -12
  46. package/dist/client/kit.d.ts.map +1 -1
  47. package/dist/client/kit.js +12 -14
  48. package/dist/client/kit.js.map +1 -1
  49. package/dist/client/lib/agents.d.ts +5 -13
  50. package/dist/client/lib/agents.d.ts.map +1 -1
  51. package/dist/client/lib/agents.js +17 -32
  52. package/dist/client/lib/agents.js.map +1 -1
  53. package/dist/client/lib/install.js +1 -1
  54. package/dist/client/locales/chat.en-US.d.ts +9 -22
  55. package/dist/client/locales/chat.en-US.d.ts.map +1 -1
  56. package/dist/client/locales/chat.en-US.js +13 -25
  57. package/dist/client/locales/chat.en-US.js.map +1 -1
  58. package/dist/client/locales/chat.zh-CN.d.ts.map +1 -1
  59. package/dist/client/locales/chat.zh-CN.js +10 -22
  60. package/dist/client/locales/chat.zh-CN.js.map +1 -1
  61. package/dist/client/locales/en-US.d.ts +101 -219
  62. package/dist/client/locales/en-US.d.ts.map +1 -1
  63. package/dist/client/locales/en-US.js +106 -219
  64. package/dist/client/locales/en-US.js.map +1 -1
  65. package/dist/client/locales/runWait.en-US.d.ts +38 -0
  66. package/dist/client/locales/runWait.en-US.d.ts.map +1 -0
  67. package/dist/client/locales/runWait.en-US.js +37 -0
  68. package/dist/client/locales/runWait.en-US.js.map +1 -0
  69. package/dist/client/locales/runWait.zh-CN.d.ts +5 -0
  70. package/dist/client/locales/runWait.zh-CN.d.ts.map +1 -0
  71. package/dist/client/locales/runWait.zh-CN.js +32 -0
  72. package/dist/client/locales/runWait.zh-CN.js.map +1 -0
  73. package/dist/client/locales/runtimes.en-US.d.ts +54 -0
  74. package/dist/client/locales/runtimes.en-US.d.ts.map +1 -1
  75. package/dist/client/locales/runtimes.en-US.js +57 -3
  76. package/dist/client/locales/runtimes.en-US.js.map +1 -1
  77. package/dist/client/locales/runtimes.zh-CN.d.ts.map +1 -1
  78. package/dist/client/locales/runtimes.zh-CN.js +57 -3
  79. package/dist/client/locales/runtimes.zh-CN.js.map +1 -1
  80. package/dist/client/locales/skills.en-US.d.ts +1 -0
  81. package/dist/client/locales/skills.en-US.d.ts.map +1 -1
  82. package/dist/client/locales/skills.en-US.js +2 -1
  83. package/dist/client/locales/skills.en-US.js.map +1 -1
  84. package/dist/client/locales/skills.zh-CN.d.ts.map +1 -1
  85. package/dist/client/locales/skills.zh-CN.js +2 -1
  86. package/dist/client/locales/skills.zh-CN.js.map +1 -1
  87. package/dist/client/locales/zh-CN.d.ts.map +1 -1
  88. package/dist/client/locales/zh-CN.js +108 -221
  89. package/dist/client/locales/zh-CN.js.map +1 -1
  90. package/dist/client/online/services.d.ts.map +1 -1
  91. package/dist/client/online/services.js +5 -6
  92. package/dist/client/online/services.js.map +1 -1
  93. package/dist/client/pages/agents/agent-dialog.d.ts +9 -0
  94. package/dist/client/pages/agents/agent-dialog.d.ts.map +1 -0
  95. package/dist/client/pages/agents/agent-dialog.js +106 -0
  96. package/dist/client/pages/agents/agent-dialog.js.map +1 -0
  97. package/dist/client/pages/agents/agent-state.d.ts +11 -0
  98. package/dist/client/pages/agents/agent-state.d.ts.map +1 -0
  99. package/dist/client/pages/agents/agent-state.js +28 -0
  100. package/dist/client/pages/agents/agent-state.js.map +1 -0
  101. package/dist/client/pages/agents/index.d.ts +1 -1
  102. package/dist/client/pages/agents/index.d.ts.map +1 -1
  103. package/dist/client/pages/agents/index.js +6 -100
  104. package/dist/client/pages/agents/index.js.map +1 -1
  105. package/dist/client/pages/agents/runner-agents.d.ts +3 -0
  106. package/dist/client/pages/agents/runner-agents.d.ts.map +1 -0
  107. package/dist/client/pages/agents/runner-agents.js +172 -0
  108. package/dist/client/pages/agents/runner-agents.js.map +1 -0
  109. package/dist/client/pages/runtimes/connect.js +1 -1
  110. package/dist/client/pages/runtimes/connect.js.map +1 -1
  111. package/dist/client/pages/runtimes/index.d.ts.map +1 -1
  112. package/dist/client/pages/runtimes/index.js +3 -2
  113. package/dist/client/pages/runtimes/index.js.map +1 -1
  114. package/dist/client/pages/runtimes/runner-cells.d.ts +1 -1
  115. package/dist/client/pages/runtimes/runner-cells.d.ts.map +1 -1
  116. package/dist/client/pages/runtimes/runner-cells.js +4 -1
  117. package/dist/client/pages/runtimes/runner-cells.js.map +1 -1
  118. package/dist/client/pages/runtimes/runner-sheet.d.ts.map +1 -1
  119. package/dist/client/pages/runtimes/runner-sheet.js +12 -3
  120. package/dist/client/pages/runtimes/runner-sheet.js.map +1 -1
  121. package/dist/client/pages/runtimes/workspace-diagnostics.d.ts +9 -0
  122. package/dist/client/pages/runtimes/workspace-diagnostics.d.ts.map +1 -0
  123. package/dist/client/pages/runtimes/workspace-diagnostics.js +68 -0
  124. package/dist/client/pages/runtimes/workspace-diagnostics.js.map +1 -0
  125. package/dist/client/pages/skills/detail/index.d.ts.map +1 -1
  126. package/dist/client/pages/skills/detail/index.js +7 -10
  127. package/dist/client/pages/skills/detail/index.js.map +1 -1
  128. package/dist/client/pages/skills/index.d.ts.map +1 -1
  129. package/dist/client/pages/skills/index.js +2 -2
  130. package/dist/client/pages/skills/index.js.map +1 -1
  131. package/dist/client/pages/usage/index.js +2 -2
  132. package/dist/client/pages/usage/index.js.map +1 -1
  133. package/dist/client/profile/default-agent.d.ts.map +1 -1
  134. package/dist/client/profile/default-agent.js +2 -4
  135. package/dist/client/profile/default-agent.js.map +1 -1
  136. package/dist/client/routes.d.ts +1 -1
  137. package/dist/client/routes.d.ts.map +1 -1
  138. package/dist/client/routes.js +1 -13
  139. package/dist/client/routes.js.map +1 -1
  140. package/dist/client/runs/format-wait.d.ts +21 -0
  141. package/dist/client/runs/format-wait.d.ts.map +1 -0
  142. package/dist/client/runs/format-wait.js +90 -0
  143. package/dist/client/runs/format-wait.js.map +1 -0
  144. package/dist/client/runs/subject-runs.d.ts +5 -0
  145. package/dist/client/runs/subject-runs.d.ts.map +1 -1
  146. package/dist/client/runs/subject-runs.js +13 -7
  147. package/dist/client/runs/subject-runs.js.map +1 -1
  148. package/dist/client/runs.d.ts +3 -1
  149. package/dist/client/runs.d.ts.map +1 -1
  150. package/dist/client/runs.js +3 -1
  151. package/dist/client/runs.js.map +1 -1
  152. package/dist/database/migrations/.manifest.json +62 -2
  153. package/dist/database/migrations/202610020003_ag_create_runs.d.ts.map +1 -1
  154. package/dist/database/migrations/202610020003_ag_create_runs.js +0 -1
  155. package/dist/database/migrations/202610020003_ag_create_runs.js.map +1 -1
  156. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.d.ts +9 -0
  157. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.d.ts.map +1 -0
  158. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.js +28 -0
  159. package/dist/database/migrations/202610090001_ag_add_team_runner_variables.js.map +1 -0
  160. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts +10 -0
  161. package/dist/database/migrations/202610090002_ag_create_run_requests.d.ts.map +1 -0
  162. package/dist/database/migrations/202610090002_ag_create_run_requests.js +105 -0
  163. package/dist/database/migrations/202610090002_ag_create_run_requests.js.map +1 -0
  164. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts +4 -0
  165. package/dist/database/migrations/202610090003_ag_add_execution_history.d.ts.map +1 -0
  166. package/dist/database/migrations/202610090003_ag_add_execution_history.js +17 -0
  167. package/dist/database/migrations/202610090003_ag_add_execution_history.js.map +1 -0
  168. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts +9 -0
  169. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.d.ts.map +1 -0
  170. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js +22 -0
  171. package/dist/database/migrations/202610090004_ag_add_runner_workspace_usage.js.map +1 -0
  172. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts +10 -0
  173. package/dist/database/migrations/202610090005_ag_add_runner_variables.d.ts.map +1 -0
  174. package/dist/database/migrations/202610090005_ag_add_runner_variables.js +36 -0
  175. package/dist/database/migrations/202610090005_ag_add_runner_variables.js.map +1 -0
  176. package/dist/database/migrations/202610100001_ag_index_run_event_types.d.ts +4 -0
  177. package/dist/database/migrations/202610100001_ag_index_run_event_types.d.ts.map +1 -0
  178. package/dist/database/migrations/202610100001_ag_index_run_event_types.js +17 -0
  179. package/dist/database/migrations/202610100001_ag_index_run_event_types.js.map +1 -0
  180. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.d.ts +9 -0
  181. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.d.ts.map +1 -0
  182. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.js +30 -0
  183. package/dist/database/migrations/202610100002_ag_add_run_git_credentials.js.map +1 -0
  184. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.d.ts +4 -0
  185. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.d.ts.map +1 -0
  186. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.js +23 -0
  187. package/dist/database/migrations/202610110001_ag_add_fresh_sessions.js.map +1 -0
  188. package/dist/database/migrations/202610120001_ag_index_run_retries.d.ts +4 -0
  189. package/dist/database/migrations/202610120001_ag_index_run_retries.d.ts.map +1 -0
  190. package/dist/database/migrations/202610120001_ag_index_run_retries.js +17 -0
  191. package/dist/database/migrations/202610120001_ag_index_run_retries.js.map +1 -0
  192. package/dist/database/migrations/202610120002_ag_add_queue_entered_at.d.ts +4 -0
  193. package/dist/database/migrations/202610120002_ag_add_queue_entered_at.d.ts.map +1 -0
  194. package/dist/database/migrations/202610120002_ag_add_queue_entered_at.js +50 -0
  195. package/dist/database/migrations/202610120002_ag_add_queue_entered_at.js.map +1 -0
  196. package/dist/database/migrations/202610240020_ag_runner_agents.d.ts +4 -0
  197. package/dist/database/migrations/202610240020_ag_runner_agents.d.ts.map +1 -0
  198. package/dist/database/migrations/202610240020_ag_runner_agents.js +115 -0
  199. package/dist/database/migrations/202610240020_ag_runner_agents.js.map +1 -0
  200. package/dist/database/migrations/202610240040_ag_discovery_preferences.d.ts +4 -0
  201. package/dist/database/migrations/202610240040_ag_discovery_preferences.d.ts.map +1 -0
  202. package/dist/database/migrations/202610240040_ag_discovery_preferences.js +18 -0
  203. package/dist/database/migrations/202610240040_ag_discovery_preferences.js.map +1 -0
  204. package/dist/database/migrations/202610250001_ag_comment_runner_consent.d.ts +4 -0
  205. package/dist/database/migrations/202610250001_ag_comment_runner_consent.d.ts.map +1 -0
  206. package/dist/database/migrations/202610250001_ag_comment_runner_consent.js +41 -0
  207. package/dist/database/migrations/202610250001_ag_comment_runner_consent.js.map +1 -0
  208. package/dist/database/migrations/202610260001_ag_drop_directory_index.d.ts +4 -0
  209. package/dist/database/migrations/202610260001_ag_drop_directory_index.d.ts.map +1 -0
  210. package/dist/database/migrations/202610260001_ag_drop_directory_index.js +24 -0
  211. package/dist/database/migrations/202610260001_ag_drop_directory_index.js.map +1 -0
  212. package/dist/database/migrations/202610260001_ag_run_revision.d.ts +4 -0
  213. package/dist/database/migrations/202610260001_ag_run_revision.d.ts.map +1 -0
  214. package/dist/database/migrations/202610260001_ag_run_revision.js +19 -0
  215. package/dist/database/migrations/202610260001_ag_run_revision.js.map +1 -0
  216. package/dist/package.json +8 -10
  217. package/dist/server/cli/run-credential.js +1 -1
  218. package/dist/server/composition.d.ts +41 -37
  219. package/dist/server/composition.d.ts.map +1 -1
  220. package/dist/server/composition.js +66 -66
  221. package/dist/server/composition.js.map +1 -1
  222. package/dist/server/core/agents/agent.service.d.ts +51 -43
  223. package/dist/server/core/agents/agent.service.d.ts.map +1 -1
  224. package/dist/server/core/agents/agent.service.js +342 -317
  225. package/dist/server/core/agents/agent.service.js.map +1 -1
  226. package/dist/server/core/agents/agent.store.d.ts +24 -12
  227. package/dist/server/core/agents/agent.store.d.ts.map +1 -1
  228. package/dist/server/core/agents/agent.store.js +64 -66
  229. package/dist/server/core/agents/agent.store.js.map +1 -1
  230. package/dist/server/core/agents/agent.views.d.ts +29 -0
  231. package/dist/server/core/agents/agent.views.d.ts.map +1 -0
  232. package/dist/server/core/agents/agent.views.js +86 -0
  233. package/dist/server/core/agents/agent.views.js.map +1 -0
  234. package/dist/server/core/agents/discovery.d.ts +12 -0
  235. package/dist/server/core/agents/discovery.d.ts.map +1 -0
  236. package/dist/server/core/agents/discovery.js +39 -0
  237. package/dist/server/core/agents/discovery.js.map +1 -0
  238. package/dist/server/core/agents/index.d.ts +2 -1
  239. package/dist/server/core/agents/index.d.ts.map +1 -1
  240. package/dist/server/core/agents/index.js +2 -1
  241. package/dist/server/core/agents/index.js.map +1 -1
  242. package/dist/server/core/brief/brief.js +1 -1
  243. package/dist/server/core/brief/brief.js.map +1 -1
  244. package/dist/server/core/callers/index.d.ts +1 -1
  245. package/dist/server/core/conversations/availability.d.ts +11 -10
  246. package/dist/server/core/conversations/availability.d.ts.map +1 -1
  247. package/dist/server/core/conversations/availability.js +14 -32
  248. package/dist/server/core/conversations/availability.js.map +1 -1
  249. package/dist/server/core/conversations/chat-settings.d.ts.map +1 -1
  250. package/dist/server/core/conversations/chat-settings.js +5 -3
  251. package/dist/server/core/conversations/chat-settings.js.map +1 -1
  252. package/dist/server/core/conversations/conversation.service.d.ts +3 -5
  253. package/dist/server/core/conversations/conversation.service.d.ts.map +1 -1
  254. package/dist/server/core/conversations/conversation.service.js +161 -221
  255. package/dist/server/core/conversations/conversation.service.js.map +1 -1
  256. package/dist/server/core/conversations/ports.d.ts +3 -17
  257. package/dist/server/core/conversations/ports.d.ts.map +1 -1
  258. package/dist/server/core/reports/report.service.d.ts.map +1 -1
  259. package/dist/server/core/reports/report.service.js +5 -2
  260. package/dist/server/core/reports/report.service.js.map +1 -1
  261. package/dist/server/core/runs/availability.d.ts +18 -7
  262. package/dist/server/core/runs/availability.d.ts.map +1 -1
  263. package/dist/server/core/runs/availability.js +35 -24
  264. package/dist/server/core/runs/availability.js.map +1 -1
  265. package/dist/server/core/runs/claim.d.ts +47 -67
  266. package/dist/server/core/runs/claim.d.ts.map +1 -1
  267. package/dist/server/core/runs/claim.js +805 -313
  268. package/dist/server/core/runs/claim.js.map +1 -1
  269. package/dist/server/core/runs/comment-consent.d.ts +24 -0
  270. package/dist/server/core/runs/comment-consent.d.ts.map +1 -0
  271. package/dist/server/core/runs/comment-consent.js +116 -0
  272. package/dist/server/core/runs/comment-consent.js.map +1 -0
  273. package/dist/server/core/runs/eligibility.d.ts +51 -0
  274. package/dist/server/core/runs/eligibility.d.ts.map +1 -0
  275. package/dist/server/core/runs/eligibility.js +44 -0
  276. package/dist/server/core/runs/eligibility.js.map +1 -0
  277. package/dist/server/core/runs/execution-view.d.ts +10 -0
  278. package/dist/server/core/runs/execution-view.d.ts.map +1 -0
  279. package/dist/server/core/runs/execution-view.js +25 -0
  280. package/dist/server/core/runs/execution-view.js.map +1 -0
  281. package/dist/server/core/runs/execution.d.ts +13 -0
  282. package/dist/server/core/runs/execution.d.ts.map +1 -0
  283. package/dist/server/core/runs/execution.js +85 -0
  284. package/dist/server/core/runs/execution.js.map +1 -0
  285. package/dist/server/core/runs/extensions.d.ts +59 -4
  286. package/dist/server/core/runs/extensions.d.ts.map +1 -1
  287. package/dist/server/core/runs/extensions.js +45 -9
  288. package/dist/server/core/runs/extensions.js.map +1 -1
  289. package/dist/server/core/runs/git-credentials.d.ts +43 -0
  290. package/dist/server/core/runs/git-credentials.d.ts.map +1 -0
  291. package/dist/server/core/runs/git-credentials.js +129 -0
  292. package/dist/server/core/runs/git-credentials.js.map +1 -0
  293. package/dist/server/core/runs/identity.d.ts +9 -0
  294. package/dist/server/core/runs/identity.d.ts.map +1 -0
  295. package/dist/server/core/runs/identity.js +75 -0
  296. package/dist/server/core/runs/identity.js.map +1 -0
  297. package/dist/server/core/runs/index.d.ts +9 -5
  298. package/dist/server/core/runs/index.d.ts.map +1 -1
  299. package/dist/server/core/runs/index.js +9 -5
  300. package/dist/server/core/runs/index.js.map +1 -1
  301. package/dist/server/core/runs/input-gate.d.ts +34 -0
  302. package/dist/server/core/runs/input-gate.d.ts.map +1 -0
  303. package/dist/server/core/runs/input-gate.js +58 -0
  304. package/dist/server/core/runs/input-gate.js.map +1 -0
  305. package/dist/server/core/runs/lifecycle.d.ts +9 -19
  306. package/dist/server/core/runs/lifecycle.d.ts.map +1 -1
  307. package/dist/server/core/runs/lifecycle.js +98 -50
  308. package/dist/server/core/runs/lifecycle.js.map +1 -1
  309. package/dist/server/core/runs/policy.d.ts +8 -0
  310. package/dist/server/core/runs/policy.d.ts.map +1 -1
  311. package/dist/server/core/runs/policy.js +10 -0
  312. package/dist/server/core/runs/policy.js.map +1 -1
  313. package/dist/server/core/runs/ports.d.ts +91 -28
  314. package/dist/server/core/runs/ports.d.ts.map +1 -1
  315. package/dist/server/core/runs/ports.js +2 -13
  316. package/dist/server/core/runs/ports.js.map +1 -1
  317. package/dist/server/core/runs/preview.d.ts.map +1 -1
  318. package/dist/server/core/runs/preview.js +3 -3
  319. package/dist/server/core/runs/preview.js.map +1 -1
  320. package/dist/server/core/runs/run-data-purge.d.ts +15 -0
  321. package/dist/server/core/runs/run-data-purge.d.ts.map +1 -0
  322. package/dist/server/core/runs/run-data-purge.js +82 -0
  323. package/dist/server/core/runs/run-data-purge.js.map +1 -0
  324. package/dist/server/core/runs/run-requests.d.ts +245 -0
  325. package/dist/server/core/runs/run-requests.d.ts.map +1 -0
  326. package/dist/server/core/runs/run-requests.js +543 -0
  327. package/dist/server/core/runs/run-requests.js.map +1 -0
  328. package/dist/server/core/runs/run.service.d.ts +96 -11
  329. package/dist/server/core/runs/run.service.d.ts.map +1 -1
  330. package/dist/server/core/runs/run.service.js +921 -96
  331. package/dist/server/core/runs/run.service.js.map +1 -1
  332. package/dist/server/core/runs/run.store.d.ts +25 -3
  333. package/dist/server/core/runs/run.store.d.ts.map +1 -1
  334. package/dist/server/core/runs/run.store.js +52 -2
  335. package/dist/server/core/runs/run.store.js.map +1 -1
  336. package/dist/server/core/runs/runner-view.d.ts +6 -4
  337. package/dist/server/core/runs/runner-view.d.ts.map +1 -1
  338. package/dist/server/core/runs/runner-view.js +13 -11
  339. package/dist/server/core/runs/runner-view.js.map +1 -1
  340. package/dist/server/core/runs/selection.d.ts +13 -0
  341. package/dist/server/core/runs/selection.d.ts.map +1 -0
  342. package/dist/server/core/runs/selection.js +21 -0
  343. package/dist/server/core/runs/selection.js.map +1 -0
  344. package/dist/server/core/runs/sweeper.d.ts +1 -0
  345. package/dist/server/core/runs/sweeper.d.ts.map +1 -1
  346. package/dist/server/core/runs/sweeper.js +55 -10
  347. package/dist/server/core/runs/sweeper.js.map +1 -1
  348. package/dist/server/core/runs/transitions.d.ts +2 -2
  349. package/dist/server/core/runs/transitions.d.ts.map +1 -1
  350. package/dist/server/core/runs/transitions.js +80 -8
  351. package/dist/server/core/runs/transitions.js.map +1 -1
  352. package/dist/server/core/runs/workload.d.ts +3 -3
  353. package/dist/server/core/runs/workload.d.ts.map +1 -1
  354. package/dist/server/core/runs/workload.js +154 -45
  355. package/dist/server/core/runs/workload.js.map +1 -1
  356. package/dist/server/core/skills/skill.service.d.ts +6 -2
  357. package/dist/server/core/skills/skill.service.d.ts.map +1 -1
  358. package/dist/server/core/skills/skill.service.js +43 -58
  359. package/dist/server/core/skills/skill.service.js.map +1 -1
  360. package/dist/server/core/skills/skill.store.d.ts +14 -0
  361. package/dist/server/core/skills/skill.store.d.ts.map +1 -1
  362. package/dist/server/core/skills/skill.store.js +30 -0
  363. package/dist/server/core/skills/skill.store.js.map +1 -1
  364. package/dist/server/core/variables/index.d.ts +1 -1
  365. package/dist/server/core/variables/index.d.ts.map +1 -1
  366. package/dist/server/core/variables/index.js +1 -1
  367. package/dist/server/core/variables/index.js.map +1 -1
  368. package/dist/server/core/variables/variable.service.d.ts +38 -6
  369. package/dist/server/core/variables/variable.service.d.ts.map +1 -1
  370. package/dist/server/core/variables/variable.service.js +201 -30
  371. package/dist/server/core/variables/variable.service.js.map +1 -1
  372. package/dist/server/distribution/dist.service.d.ts +27 -5
  373. package/dist/server/distribution/dist.service.d.ts.map +1 -1
  374. package/dist/server/distribution/dist.service.js +41 -5
  375. package/dist/server/distribution/dist.service.js.map +1 -1
  376. package/dist/server/distribution/download-tokens.d.ts +1 -1
  377. package/dist/server/distribution/download-tokens.d.ts.map +1 -1
  378. package/dist/server/distribution/download-tokens.js +7 -4
  379. package/dist/server/distribution/download-tokens.js.map +1 -1
  380. package/dist/server/distribution/index.d.ts +11 -3
  381. package/dist/server/distribution/index.d.ts.map +1 -1
  382. package/dist/server/distribution/index.js +31 -8
  383. package/dist/server/distribution/index.js.map +1 -1
  384. package/dist/server/jobs/index.d.ts +1 -1
  385. package/dist/server/jobs/index.d.ts.map +1 -1
  386. package/dist/server/jobs/index.js +1 -1
  387. package/dist/server/jobs/index.js.map +1 -1
  388. package/dist/server/jobs/job.service.d.ts +3 -1
  389. package/dist/server/jobs/job.service.d.ts.map +1 -1
  390. package/dist/server/jobs/job.service.js +11 -3
  391. package/dist/server/jobs/job.service.js.map +1 -1
  392. package/dist/server/jobs/spec.d.ts +4 -0
  393. package/dist/server/jobs/spec.d.ts.map +1 -1
  394. package/dist/server/jobs/spec.js +6 -0
  395. package/dist/server/jobs/spec.js.map +1 -1
  396. package/dist/server/kernel/errors.d.ts +1 -1
  397. package/dist/server/kernel/errors.d.ts.map +1 -1
  398. package/dist/server/kernel/errors.js +1 -0
  399. package/dist/server/kernel/errors.js.map +1 -1
  400. package/dist/server/kernel/events.d.ts +34 -9
  401. package/dist/server/kernel/events.d.ts.map +1 -1
  402. package/dist/server/kernel/events.js.map +1 -1
  403. package/dist/server/kernel/redaction.d.ts +2 -0
  404. package/dist/server/kernel/redaction.d.ts.map +1 -1
  405. package/dist/server/kernel/redaction.js +17 -0
  406. package/dist/server/kernel/redaction.js.map +1 -1
  407. package/dist/server/kernel/scopes.d.ts.map +1 -1
  408. package/dist/server/kernel/scopes.js +3 -1
  409. package/dist/server/kernel/scopes.js.map +1 -1
  410. package/dist/server/online/index.d.ts +0 -5
  411. package/dist/server/online/index.d.ts.map +1 -1
  412. package/dist/server/online/index.js +0 -5
  413. package/dist/server/online/index.js.map +1 -1
  414. package/dist/server/online/routes.d.ts.map +1 -1
  415. package/dist/server/online/routes.js +6 -35
  416. package/dist/server/online/routes.js.map +1 -1
  417. package/dist/server/providers/agents.d.ts +8 -25
  418. package/dist/server/providers/agents.d.ts.map +1 -1
  419. package/dist/server/providers/agents.js +11 -75
  420. package/dist/server/providers/agents.js.map +1 -1
  421. package/dist/server/providers/runners.d.ts.map +1 -1
  422. package/dist/server/providers/runners.js +23 -0
  423. package/dist/server/providers/runners.js.map +1 -1
  424. package/dist/server/routes/admin.d.ts.map +1 -1
  425. package/dist/server/routes/admin.js +158 -209
  426. package/dist/server/routes/admin.js.map +1 -1
  427. package/dist/server/routes/chat.d.ts.map +1 -1
  428. package/dist/server/routes/chat.js +12 -70
  429. package/dist/server/routes/chat.js.map +1 -1
  430. package/dist/server/routes/index.d.ts.map +1 -1
  431. package/dist/server/routes/index.js +11 -1
  432. package/dist/server/routes/index.js.map +1 -1
  433. package/dist/server/routes/roster.d.ts.map +1 -1
  434. package/dist/server/routes/roster.js +6 -21
  435. package/dist/server/routes/roster.js.map +1 -1
  436. package/dist/server/routes/run-requests.d.ts +6 -0
  437. package/dist/server/routes/run-requests.d.ts.map +1 -0
  438. package/dist/server/routes/run-requests.js +216 -0
  439. package/dist/server/routes/run-requests.js.map +1 -0
  440. package/dist/server/routes/runners/admin.d.ts +9 -1
  441. package/dist/server/routes/runners/admin.d.ts.map +1 -1
  442. package/dist/server/routes/runners/admin.js +62 -24
  443. package/dist/server/routes/runners/admin.js.map +1 -1
  444. package/dist/server/routes/runners/dist.d.ts +5 -1
  445. package/dist/server/routes/runners/dist.d.ts.map +1 -1
  446. package/dist/server/routes/runners/dist.js +36 -9
  447. package/dist/server/routes/runners/dist.js.map +1 -1
  448. package/dist/server/routes/runners/install.d.ts.map +1 -1
  449. package/dist/server/routes/runners/install.js +98 -15
  450. package/dist/server/routes/runners/install.js.map +1 -1
  451. package/dist/server/routes/runners/runner.d.ts.map +1 -1
  452. package/dist/server/routes/runners/runner.js +27 -7
  453. package/dist/server/routes/runners/runner.js.map +1 -1
  454. package/dist/server/routes/runners/runs.d.ts +1 -1
  455. package/dist/server/routes/runners/runs.d.ts.map +1 -1
  456. package/dist/server/routes/runners/runs.js +23 -3
  457. package/dist/server/routes/runners/runs.js.map +1 -1
  458. package/dist/server/routes/schemas.d.ts +37 -8
  459. package/dist/server/routes/schemas.d.ts.map +1 -1
  460. package/dist/server/routes/schemas.js +381 -84
  461. package/dist/server/routes/schemas.js.map +1 -1
  462. package/dist/server/runners/index.d.ts +1 -0
  463. package/dist/server/runners/index.d.ts.map +1 -1
  464. package/dist/server/runners/index.js +1 -0
  465. package/dist/server/runners/index.js.map +1 -1
  466. package/dist/server/runners/runner.service.d.ts +32 -8
  467. package/dist/server/runners/runner.service.d.ts.map +1 -1
  468. package/dist/server/runners/runner.service.js +130 -14
  469. package/dist/server/runners/runner.service.js.map +1 -1
  470. package/dist/server/runners/runner.store.d.ts +10 -1
  471. package/dist/server/runners/runner.store.d.ts.map +1 -1
  472. package/dist/server/runners/runner.store.js +117 -4
  473. package/dist/server/runners/runner.store.js.map +1 -1
  474. package/dist/server/runners/sweeper.d.ts +5 -0
  475. package/dist/server/runners/sweeper.d.ts.map +1 -1
  476. package/dist/server/runners/sweeper.js +4 -2
  477. package/dist/server/runners/sweeper.js.map +1 -1
  478. package/dist/server/runners/workspaces.d.ts +33 -0
  479. package/dist/server/runners/workspaces.d.ts.map +1 -0
  480. package/dist/server/runners/workspaces.js +248 -0
  481. package/dist/server/runners/workspaces.js.map +1 -0
  482. package/dist/server/testing.d.ts +0 -2
  483. package/dist/server/testing.d.ts.map +1 -1
  484. package/dist/server/testing.js +1 -4
  485. package/dist/server/testing.js.map +1 -1
  486. package/dist/server/tokens.d.ts +13 -9
  487. package/dist/server/tokens.d.ts.map +1 -1
  488. package/dist/server/tokens.js +7 -2
  489. package/dist/server/tokens.js.map +1 -1
  490. package/dist/shared/access.d.ts +2 -6
  491. package/dist/shared/access.d.ts.map +1 -1
  492. package/dist/shared/access.js +2 -6
  493. package/dist/shared/access.js.map +1 -1
  494. package/dist/shared/agents.d.ts +128 -167
  495. package/dist/shared/agents.d.ts.map +1 -1
  496. package/dist/shared/agents.js +46 -97
  497. package/dist/shared/agents.js.map +1 -1
  498. package/dist/shared/conversations.d.ts +43 -89
  499. package/dist/shared/conversations.d.ts.map +1 -1
  500. package/dist/shared/conversations.js +5 -24
  501. package/dist/shared/conversations.js.map +1 -1
  502. package/dist/shared/model-catalog.d.ts +48 -0
  503. package/dist/shared/model-catalog.d.ts.map +1 -0
  504. package/dist/shared/model-catalog.js +148 -0
  505. package/dist/shared/model-catalog.js.map +1 -0
  506. package/dist/shared/models.js +1 -1
  507. package/dist/shared/models.js.map +1 -1
  508. package/dist/shared/runners.d.ts +107 -17
  509. package/dist/shared/runners.d.ts.map +1 -1
  510. package/dist/shared/runners.js +49 -7
  511. package/dist/shared/runners.js.map +1 -1
  512. package/dist/shared/runs.d.ts +213 -1
  513. package/dist/shared/runs.d.ts.map +1 -1
  514. package/dist/shared/runs.js +24 -0
  515. package/dist/shared/runs.js.map +1 -1
  516. package/dist/shared/skills.d.ts +8 -4
  517. package/dist/shared/skills.d.ts.map +1 -1
  518. package/dist/shared/skills.js +7 -2
  519. package/dist/shared/skills.js.map +1 -1
  520. package/dist/shared/variables.d.ts +22 -0
  521. package/dist/shared/variables.d.ts.map +1 -1
  522. package/dist/shared/variables.js +10 -2
  523. package/dist/shared/variables.js.map +1 -1
  524. package/package.json +24 -26
  525. package/skills/nocobase-app-plugin-agents/SKILL.md +8 -7
  526. package/skills/nocobase-app-plugin-agents/references/agents.md +30 -0
  527. package/skills/nocobase-app-plugin-agents/references/distribution.md +21 -4
  528. package/skills/nocobase-app-plugin-agents/references/extension-points.md +30 -20
  529. package/skills/nocobase-app-plugin-agents/references/model-services.md +17 -0
  530. package/skills/nocobase-app-plugin-agents/references/runners.md +15 -1
  531. package/skills/nocobase-app-plugin-agents/references/setup-and-config.md +4 -7
  532. package/skills/nocobase-app-plugin-agents/references/variables-skills-usage.md +6 -4
  533. package/skills/nocobase-app-plugin-agents/references/verification-and-troubleshooting.md +33 -32
  534. package/dist/client/chat/settings-section.d.ts +0 -5
  535. package/dist/client/chat/settings-section.d.ts.map +0 -1
  536. package/dist/client/chat/settings-section.js +0 -76
  537. package/dist/client/chat/settings-section.js.map +0 -1
  538. package/dist/client/components/agent-fields.d.ts +0 -45
  539. package/dist/client/components/agent-fields.d.ts.map +0 -1
  540. package/dist/client/components/agent-fields.js +0 -83
  541. package/dist/client/components/agent-fields.js.map +0 -1
  542. package/dist/client/components/agent-type.d.ts +0 -32
  543. package/dist/client/components/agent-type.d.ts.map +0 -1
  544. package/dist/client/components/agent-type.js +0 -80
  545. package/dist/client/components/agent-type.js.map +0 -1
  546. package/dist/client/components/model-entries.d.ts +0 -35
  547. package/dist/client/components/model-entries.d.ts.map +0 -1
  548. package/dist/client/components/model-entries.js +0 -82
  549. package/dist/client/components/model-entries.js.map +0 -1
  550. package/dist/client/hooks/use-agent-save.d.ts +0 -9
  551. package/dist/client/hooks/use-agent-save.d.ts.map +0 -1
  552. package/dist/client/hooks/use-agent-save.js +0 -40
  553. package/dist/client/hooks/use-agent-save.js.map +0 -1
  554. package/dist/client/hooks/use-model-catalog.d.ts +0 -9
  555. package/dist/client/hooks/use-model-catalog.d.ts.map +0 -1
  556. package/dist/client/hooks/use-model-catalog.js +0 -27
  557. package/dist/client/hooks/use-model-catalog.js.map +0 -1
  558. package/dist/client/lib/tool-policy.d.ts +0 -5
  559. package/dist/client/lib/tool-policy.d.ts.map +0 -1
  560. package/dist/client/lib/tool-policy.js +0 -10
  561. package/dist/client/lib/tool-policy.js.map +0 -1
  562. package/dist/client/online/default-model.d.ts +0 -5
  563. package/dist/client/online/default-model.d.ts.map +0 -1
  564. package/dist/client/online/default-model.js +0 -65
  565. package/dist/client/online/default-model.js.map +0 -1
  566. package/dist/client/pages/agents/agent-model.d.ts +0 -73
  567. package/dist/client/pages/agents/agent-model.d.ts.map +0 -1
  568. package/dist/client/pages/agents/agent-model.js +0 -172
  569. package/dist/client/pages/agents/agent-model.js.map +0 -1
  570. package/dist/client/pages/agents/detail/brief-preview.d.ts +0 -7
  571. package/dist/client/pages/agents/detail/brief-preview.d.ts.map +0 -1
  572. package/dist/client/pages/agents/detail/brief-preview.js +0 -43
  573. package/dist/client/pages/agents/detail/brief-preview.js.map +0 -1
  574. package/dist/client/pages/agents/detail/history.d.ts +0 -11
  575. package/dist/client/pages/agents/detail/history.d.ts.map +0 -1
  576. package/dist/client/pages/agents/detail/history.js +0 -149
  577. package/dist/client/pages/agents/detail/history.js.map +0 -1
  578. package/dist/client/pages/agents/detail/index.d.ts +0 -3
  579. package/dist/client/pages/agents/detail/index.d.ts.map +0 -1
  580. package/dist/client/pages/agents/detail/index.js +0 -241
  581. package/dist/client/pages/agents/detail/index.js.map +0 -1
  582. package/dist/client/pages/agents/detail/sections.d.ts +0 -22
  583. package/dist/client/pages/agents/detail/sections.d.ts.map +0 -1
  584. package/dist/client/pages/agents/detail/sections.js +0 -311
  585. package/dist/client/pages/agents/detail/sections.js.map +0 -1
  586. package/dist/client/pages/agents/detail/tab-draft.d.ts +0 -43
  587. package/dist/client/pages/agents/detail/tab-draft.d.ts.map +0 -1
  588. package/dist/client/pages/agents/detail/tab-draft.js +0 -115
  589. package/dist/client/pages/agents/detail/tab-draft.js.map +0 -1
  590. package/dist/client/pages/agents/detail/unsaved-bar.d.ts +0 -13
  591. package/dist/client/pages/agents/detail/unsaved-bar.d.ts.map +0 -1
  592. package/dist/client/pages/agents/detail/unsaved-bar.js +0 -21
  593. package/dist/client/pages/agents/detail/unsaved-bar.js.map +0 -1
  594. package/dist/client/pages/agents/new.d.ts +0 -3
  595. package/dist/client/pages/agents/new.d.ts.map +0 -1
  596. package/dist/client/pages/agents/new.js +0 -149
  597. package/dist/client/pages/agents/new.js.map +0 -1
  598. package/dist/client/pages/agents/preset-picker.d.ts +0 -8
  599. package/dist/client/pages/agents/preset-picker.d.ts.map +0 -1
  600. package/dist/client/pages/agents/preset-picker.js +0 -41
  601. package/dist/client/pages/agents/preset-picker.js.map +0 -1
  602. package/dist/server/core/consultations/consultation.service.d.ts +0 -59
  603. package/dist/server/core/consultations/consultation.service.d.ts.map +0 -1
  604. package/dist/server/core/consultations/consultation.service.js +0 -195
  605. package/dist/server/core/consultations/consultation.service.js.map +0 -1
  606. package/dist/server/core/consultations/index.d.ts +0 -3
  607. package/dist/server/core/consultations/index.d.ts.map +0 -1
  608. package/dist/server/core/consultations/index.js +0 -3
  609. package/dist/server/core/consultations/index.js.map +0 -1
  610. package/dist/server/core/consultations/prompt.d.ts +0 -41
  611. package/dist/server/core/consultations/prompt.d.ts.map +0 -1
  612. package/dist/server/core/consultations/prompt.js +0 -64
  613. package/dist/server/core/consultations/prompt.js.map +0 -1
  614. package/dist/server/core/presets/index.d.ts +0 -19
  615. package/dist/server/core/presets/index.d.ts.map +0 -1
  616. package/dist/server/core/presets/index.js +0 -28
  617. package/dist/server/core/presets/index.js.map +0 -1
  618. package/dist/server/online/cli-command.d.ts +0 -20
  619. package/dist/server/online/cli-command.d.ts.map +0 -1
  620. package/dist/server/online/cli-command.js +0 -345
  621. package/dist/server/online/cli-command.js.map +0 -1
  622. package/dist/server/online/consult-tool.d.ts +0 -54
  623. package/dist/server/online/consult-tool.d.ts.map +0 -1
  624. package/dist/server/online/consult-tool.js +0 -177
  625. package/dist/server/online/consult-tool.js.map +0 -1
  626. package/dist/server/online/executor.d.ts +0 -83
  627. package/dist/server/online/executor.d.ts.map +0 -1
  628. package/dist/server/online/executor.js +0 -714
  629. package/dist/server/online/executor.js.map +0 -1
  630. package/dist/server/online/sandbox.d.ts +0 -32
  631. package/dist/server/online/sandbox.d.ts.map +0 -1
  632. package/dist/server/online/sandbox.js +0 -246
  633. package/dist/server/online/sandbox.js.map +0 -1
  634. package/dist/server/online/scripted.d.ts +0 -12
  635. package/dist/server/online/scripted.d.ts.map +0 -1
  636. package/dist/server/online/scripted.js +0 -176
  637. package/dist/server/online/scripted.js.map +0 -1
  638. package/dist/server/online/tools.d.ts +0 -17
  639. package/dist/server/online/tools.d.ts.map +0 -1
  640. package/dist/server/online/tools.js +0 -31
  641. package/dist/server/online/tools.js.map +0 -1
  642. package/dist/server/vendor/THIRD_PARTY_LICENSES.txt +0 -782
  643. package/dist/server/vendor/just-bash.d.ts +0 -83
  644. package/dist/server/vendor/just-bash.js +0 -2102
  645. package/dist/shared/presets.d.ts +0 -30
  646. package/dist/shared/presets.d.ts.map +0 -1
  647. package/dist/shared/presets.js +0 -2
  648. package/dist/shared/presets.js.map +0 -1
  649. package/skills/nocobase-app-plugin-agents/references/online-agents.md +0 -31
@@ -2,45 +2,46 @@
2
2
 
3
3
  ## What to test
4
4
 
5
- Test what the App builds on the plugin, not the plugin itself. `@nocobase/app-plugin-agents/testing` assembles the services against a test database (`createAgents`, `AGENTS_MIGRATIONS`), mounts the run and runner routes on a test server, and runs the online executor over a scripted model gateway; use it with `createAppTest()` from `@nocobase/app-testing/server`.
5
+ Test what the App builds on the plugin, not the plugin itself. `@nocobase/app-plugin-agents/testing` assembles the services against a test database (`createAgents`, `AGENTS_MIGRATIONS`), and mounts the run and runner routes on a test server; use it with `createAppTest()` from `@nocobase/app-testing/server`.
6
6
 
7
7
  - Each subject kind: `assemble` returns the task, context and working directories for a sample subject, reads only the database, and `sink.onRunFinished` does what the App expects for completed and failed runs.
8
8
  - The gate: a person holds exactly their actions; a run holds only the waking person's actions its agent is configured with; an API key's scope narrows a person.
9
9
  - Routes a run may call: `findUndeclaredApiRoutes(app)` lists none, each route lists `runToken` in its `security`, and the command manifest for a run shows the command only when the gate allows its `action`.
10
- - Contributed actions, presets and scopes appear in `GET /api/agents/actions`, `GET /api/agents/presets` and `GET /api/agents/vocabulary`.
10
+ - Contributed actions and scopes appear in `GET /api/agents/actions` and `GET /api/agents/vocabulary`, and the App's own agents (`ensureSystem`) in `GET /api/agents`.
11
11
 
12
12
  ## Health checks on a running App
13
13
 
14
- | Check | How |
15
- | ------------------------- | --------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
16
- | Runners | `GET /api/agents/runners` (`runtime list`): `status` (`online`, `offline`, `revoked`, `upgrade_required`), `lastSeenAt`, `tools` (installed, version, signed in), `policy`, `updateVersion`, `requiredProtocol` |
17
- | Agents that can take work | `GET /api/agents/available` (`agent list`): each agent and whether it can take work now |
18
- | Why a run waits | The run's detail and `runs.workload()`: `RUN_WAIT_REASONS` (`noRunnerOnline`, `toolUnavailable`, `noSharedRunner`, `missingFeatures`, `concurrencyFull`, `runnersBusy`, …) |
19
- | A run's history | `GET /api/agents/runs/:runId` and its events (`run get`, `run events`); `failureReason` and `failureDetail` |
20
- | Models | `GET /api/agents/models` (what agents may use), `POST /api/agents/checkModel` (`model check`), `GET /api/agents/defaultModels` |
21
- | Tarballs served | `GET /api/agents/dist/manifest` signed in; `GET /api/agents/dist/products/<product>/targets/linux-x64?format=env` |
22
- | Vectors | `vectors.status()` on `agentsToken`: availability, store and the `VectorUnavailableCode` |
23
- | The runner itself | `nocobase-runner status`, `nocobase-runner logs -f [--run <id>]`, `~/.nocobase-runner/policy.json` |
14
+ | Check | How |
15
+ | ------------------------- | ------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
16
+ | Runners | `GET /api/agents/runners` (`runtime list`): `status` (`online`, `offline`, `revoked`, `upgrade_required`), `lastSeenAt`, `tools` (installed, version, signed in), `policy`, `updateVersion`, `requiredProtocol` |
17
+ | Agents that can take work | `GET /api/agents` (`agent list-all`): every agent, its state and why it cannot take the caller's work (`unusable`); `GET /api/agents/available` (`agent list`): the enabled ones and whether each can take work now |
18
+ | Why a run waits | The run's detail and `runs.workload()`: `RUN_WAIT_REASONS` (`noRunnerOnline`, `toolUnavailable`, `noSharedRunner`, `missingFeatures`, `secretsNotAllowed`, `concurrencyFull`, `runnersBusy`, …) |
19
+ | A run's history | `GET /api/agents/runs/:runId` and its events (`run get`, `run events`); `failureReason` and `failureDetail` |
20
+ | Model services | `GET /api/agents/models` (what the App's own model calls may use), `POST /api/agents/checkModel` (`model check`) |
21
+ | Tarballs served | `GET /api/agents/dist/manifest` signed in; `GET /api/agents/dist/products/<product>/targets/linux-x64?format=env` |
22
+ | Vectors | `vectors.status()` on `agentsToken`: availability, store and the `VectorUnavailableCode` |
23
+ | The runner itself | `nocobase-runner status`, `nocobase-runner logs -f [--run <id>]`, `~/.nocobase-runner/policy.json` |
24
+
25
+ ## Filtering a run transcript
26
+
27
+ `GET /api/agents/runs/:runId/events` accepts repeated `type` query parameters (for example, `?type=text&type=input`). The generated `run events` command exposes repeatable `--type` flags. Values are raw protocol event types, not UI groups: `text`, `thinking`, `toolUse`, `toolResult`, `permission`, `input`, `checkout`, `status`, `error`, `usage`. Omitting the filter returns every type. The service equivalent is `agents.runs.events(runId, afterSeq, limit, types?)`. Filtering happens before pagination; retain the same types with `pageToken` or the returned `lastSeq`. These API/CLI filters are exact and do not automatically include errors. A UI that summarizes hidden events must load the complete history and filter locally.
24
28
 
25
29
  ## Troubleshooting
26
30
 
27
- | Symptom | Cause and fix |
28
- | ---------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
29
- | Runner shows offline | No heartbeat for 150 s. Check `nocobase-runner status` and `logs`, that its service is installed (`nocobase-runner service install`) and that it reaches the App's URL. `RUNNER_KEY_INVALID` or `RUNNER_REVOKED`: register it again with a new token. `RUNNER_OWNER_DISABLED`: its owner can no longer act (`people.provide` `inactive`). |
30
- | Runner shows `upgrade_required` | It speaks a protocol outside the App's range. Rebuild and remount the runner tarball from the App's `@nocobase/agent-runner`, then `nocobase-runner update` (an npm-installed runner: `npm install -g @nocobase/agent-runner@<version>`); one that reports no product: reinstall with the one-line install. See [Runners](runners.md). |
31
- | Runs queue with `toolUnavailable` or fail `toolAuth` | The agent's coding tool is not installed, not enabled for that runner, or not signed in. Sign in on the runner's machine as the runner's user and check the Runtimes page's Tools tab. |
32
- | Runs queue with `noRunnerOnline`, `noSharedRunner` or `missingFeatures` | No online runner fits: only other people's personal runners, the agent names an offline runner, or the runner is too old for what the run needs (skills, secrets, mounts). Add or share a runner, or update it. |
33
- | Run fails `policyRefused` | The runner owner's `policy.json` excludes the agent, subject or repository. Retried on another runner; change the policy on the machine if this one should take it. |
34
- | Run fails `modelUnavailable` | Runner: the tool's account cannot use the model; pick another model on the agent. Online: the service or model is disabled, deleted or unknown to its provider; check the Models page and `model check`. |
35
- | Online run fails `toolAuth`, `toolQuota`, `toolRateLimit`, `contextOverflow` | The model service's key, quota or rate limit, or a conversation too long for the model. Fix the service's key or plan; rate limits and network errors are retried. |
36
- | Online run fails `stepLimit` | The model kept calling tools; raise `agents.server.maxSteps` or tighten the agent's instructions. |
37
- | Run fails `cliUnavailable` | The run's CLI could not be installed: no served tarball for the runner's platform (`PLATFORM_UNSUPPORTED`), or `agents.cli.name` differs from the App's `nocobase.cli.bin`. Build and mount the CLI tarballs. |
38
- | Run fails `setupFailed` | `assemble`, a brief section or a mount threw three times; read the server log for the throw. |
39
- | Run fails `queuedExpired` | Waited longer than the subject's `queuedExpiryMs`; see why it waited. |
40
- | `SECRETS_KEY_MISSING` (503) | `secrets.keys` is not configured; set it before storing variables or model service keys. |
41
- | `SCOPED_KEY_FORBIDDEN` | A scoped API key called a route outside the settings-only ones; use a session or an unscoped key. |
42
- | `AGENT_TYPE_NOT_ALLOWED` | The subject kind does not list the agent's type in `agentTypes`. |
43
- | `PLATFORM_UNSUPPORTED` / `PRODUCT_NOT_FOUND` from the install script | The product or the platform is not in `agents.dist.dir/<channel>/`; check the mount and the `--targets` the build used. |
44
- | `REGISTRATION_TOKEN_INVALID` / `DOWNLOAD_TOKEN_INVALID` | The token expired (10 minutes for registration, 30 for downloads), was used up, or is of the other kind; mint a new one. |
45
- | `VARIABLES_MISSING` | Not this plugin: a deployment refused because a required deployment variable is unset. Set it where the deploying plugin keeps variables; agent variables never cause it. |
46
- | `SQLITE_VEC_UNSUPPORTED` | No sqlite-vec build for the platform (Alpine/musl); configure `agents.vectors.store: pgvector`. |
31
+ | Symptom | Cause and fix |
32
+ | ----------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------------- |
33
+ | Runner shows offline | No heartbeat for 150 s. Check `nocobase-runner status` and `logs`, that its service is installed (`nocobase-runner service install`) and that it reaches the App's URL. `RUNNER_KEY_INVALID` or `RUNNER_REVOKED`: register it again with a new token. `RUNNER_OWNER_DISABLED`: its owner can no longer act (`people.provide` `inactive`). |
34
+ | Runner shows `upgrade_required` | It speaks a protocol outside the App's range. Rebuild and remount the runner tarball from the App's `@nocobase/agent-runner`, then `nocobase-runner update` (an npm-installed runner: `npm install -g @nocobase/agent-runner@<version>`); one that reports no product: reinstall with the one-line install. See [Runners](runners.md). |
35
+ | Runs queue with `toolUnavailable` or fail `toolAuth` | The agent's coding tool is not installed, not enabled for that runner, or not signed in. Sign in on the runner's machine as the runner's user and check the Runtimes page's Tools tab. |
36
+ | Runs queue with `noRunnerOnline`, `noSharedRunner` or `missingFeatures` | No online runner fits: only other people's personal runners have the agent, or the runner is too old for what the run needs (skills, secrets, mounts). Add or share a runner, or update it. |
37
+ | Run fails `policyRefused` | The runner owner's `policy.json` excludes the agent, subject or repository. Retried on another runner; change the policy on the machine if this one should take it. |
38
+ | Run fails `modelUnavailable` | The tool's account on that runner cannot use the model. The runner is marked so and offered none of that model's runs until it reports the tool's models differently; sign in with an account that has the model, or use another agent. |
39
+ | Run fails `cliUnavailable` | The run's CLI could not be installed: no served tarball for the runner's platform (`PLATFORM_UNSUPPORTED`), or `agents.cli.name` differs from the App's `nocobase.cli.bin`. Build and mount the CLI tarballs. |
40
+ | Run fails `setupFailed` | `assemble`, a brief section or a mount threw three times; read the server log for the throw. |
41
+ | Run fails `queuedExpired` | Waited longer than the subject's `queuedExpiryMs`; see why it waited. |
42
+ | `SECRETS_KEY_MISSING` (503) | `secrets.keys` is not configured; set it before storing variables or model service keys. |
43
+ | `SCOPED_KEY_FORBIDDEN` | A scoped API key called a route outside the settings-only ones; use a session or an unscoped key. |
44
+ | `PLATFORM_UNSUPPORTED` / `PRODUCT_NOT_FOUND` from the install script | The product or the platform is not in `agents.dist.dir/<channel>/`; check the mount and the `--targets` the build used. |
45
+ | `REGISTRATION_TOKEN_INVALID` / `DOWNLOAD_TOKEN_INVALID` | The token expired (10 minutes for registration, 30 for downloads), was used up, or is of the other kind; mint a new one. |
46
+ | `VARIABLES_MISSING` | Not this plugin: a deployment refused because a required deployment variable is unset. Set it where the deploying plugin keeps variables; agent variables never cause it. |
47
+ | `SQLITE_VEC_UNSUPPORTED` | No sqlite-vec build for the platform (Alpine/musl); configure `agents.vectors.store: pgvector`. |
@@ -1,5 +0,0 @@
1
- import type { ReactElement } from 'react';
2
- export declare function ChatSettingsSection({ canManage, }: {
3
- readonly canManage: boolean;
4
- }): ReactElement;
5
- //# sourceMappingURL=settings-section.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings-section.d.ts","sourceRoot":"","sources":["../../../client/chat/settings-section.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAsB1C,wBAAgB,mBAAmB,CAAC,EAClC,SAAS,GACV,EAAE;IACD,QAAQ,CAAC,SAAS,EAAE,OAAO,CAAC;CAC7B,GAAG,YAAY,CAoGf"}
@@ -1,76 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * The system default chat agent, at the top of the agents page: new conversations go to it when a person has no
4
- * default of their own (and a conversation may switch to it while its agent is offline). Those who manage agents
5
- * change it with the agent picker as a form field (avatar with availability, the menu grouped by type, "None" first);
6
- * everyone else reads its name.
7
- */
8
- import { useTranslation } from '@nocobase/i18n/client';
9
- import { useMutation, useQuery, useQueryClient } from '@tanstack/react-query';
10
- import { agentsKeys } from '../api/keys.js';
11
- import { AgentPicker } from '../components/agent-picker.js';
12
- import { Field, FieldContent, FieldDescription, FieldGroup, FieldLabel, FieldTitle, } from '../components/ui/field.js';
13
- import { Skeleton } from '../components/ui/skeleton.js';
14
- import { useAgentPickerLabels } from '../hooks/use-agent-picker-labels.js';
15
- import { useAgentsApi } from '../hooks/use-agents-api.js';
16
- import { useNotify } from '../hooks/use-notify.js';
17
- import { useAgentText } from '../hooks/use-vocabulary.js';
18
- import { pickerAgentOf } from '../lib/agents.js';
19
- import { chatKeys } from './keys.js';
20
- import { useChatApi } from './use-chat.js';
21
- export function ChatSettingsSection({ canManage, }) {
22
- const { t } = useTranslation();
23
- const text = useAgentText();
24
- const chat = useChatApi();
25
- const agentsApi = useAgentsApi();
26
- const notify = useNotify();
27
- const queryClient = useQueryClient();
28
- const settings = useQuery({
29
- queryKey: chatKeys.settings,
30
- queryFn: () => chat.settings(),
31
- });
32
- const agents = useQuery({
33
- queryKey: agentsKeys.agents,
34
- queryFn: () => agentsApi.agents(),
35
- });
36
- const save = useMutation({
37
- mutationFn: (defaultAgentId) => chat.updateSettings({ defaultAgentId }),
38
- onSuccess: (next) => {
39
- queryClient.setQueryData(chatKeys.settings, next);
40
- void queryClient.invalidateQueries({ queryKey: chatKeys.agents });
41
- notify.success(t('chat.settings.saved'));
42
- },
43
- onError: (error) => notify.error(error),
44
- });
45
- const id = 'ag-chat-default';
46
- const current = settings.data?.defaultAgentId ?? null;
47
- const labels = useAgentPickerLabels(t('chat.settings.title'));
48
- // The picker's agents, as the chat lists them.
49
- const options = (agents.data ?? [])
50
- .filter((agent) => !agent.archivedAt)
51
- .map((agent) => pickerAgentOf(agent, text.name(agent), agent.id === current));
52
- const currentName = current === null
53
- ? t('chat.settings.none')
54
- : (options.find((option) => option.id === current)?.name ??
55
- t('chat.settings.unknown'));
56
- let control;
57
- if (!settings.data || !agents.data)
58
- control = _jsx(Skeleton, { className: 'h-8 w-full sm:w-80' });
59
- else if (!canManage)
60
- control = (_jsx("p", { className: 'text-sm font-medium sm:max-w-80 sm:text-right', children: currentName }));
61
- else
62
- control = (_jsx(AgentPicker, { id: id, agents: options,
63
- // None, or an agent the list does not hold, reads as such.
64
- value: current, labels: { ...labels, unknown: t('chat.settings.unknown') }, noneOption: {
65
- label: t('chat.settings.none'),
66
- onSelect: () => {
67
- if (current !== null)
68
- save.mutate(null);
69
- },
70
- }, onSelect: (agentId) => {
71
- if (agentId !== current)
72
- save.mutate(agentId);
73
- }, disabled: save.isPending, align: 'end', className: 'sm:w-80', "data-testid": 'chat-default-agent' }));
74
- return (_jsx("section", { className: 'rounded-lg border p-4', "aria-labelledby": `${id}-title`, "data-testid": 'chat-settings', children: _jsx(FieldGroup, { children: _jsxs(Field, { orientation: 'responsive', children: [_jsxs(FieldContent, { children: [canManage ? (_jsx(FieldLabel, { id: `${id}-title`, htmlFor: id, children: t('chat.settings.title') })) : (_jsx(FieldTitle, { id: `${id}-title`, children: t('chat.settings.title') })), _jsx(FieldDescription, { children: t('chat.settings.description') })] }), control] }) }) }));
75
- }
76
- //# sourceMappingURL=settings-section.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"settings-section.js","sourceRoot":"","sources":["../../../client/chat/settings-section.tsx"],"names":[],"mappings":"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"}
@@ -1,45 +0,0 @@
1
- /**
2
- * Fields the new-agent dialog and the agent page share: the coding tool (with how many runners offer it now), an
3
- * entry's reasoning effort, and the business actions the application lets an agent be given.
4
- */
5
- import { type AgentTool } from '@nocobase/agent-protocol';
6
- import type { ReactElement } from 'react';
7
- import { type AgentType } from '../../shared/agents.js';
8
- import type { RunnerSummary } from '../../shared/runners.js';
9
- export declare function ToolSelect({ id, value, runners, disabled, ariaLabel, onChange, }: {
10
- readonly id: string;
11
- readonly value: AgentTool;
12
- /** For the count of runners each tool can run on now; none while loading. */
13
- readonly runners: readonly RunnerSummary[] | undefined;
14
- readonly disabled?: boolean;
15
- /** For a select with no visible label. */
16
- readonly ariaLabel?: string;
17
- readonly onChange: (tool: AgentTool) => void;
18
- }): ReactElement;
19
- /** An entry's reasoning effort, among those its tool or service takes (`effortsFor`). */
20
- export declare function EffortSelect({ id, efforts, value, disabled, ariaLabel, onChange, }: {
21
- readonly id: string;
22
- readonly efforts: readonly string[];
23
- /** Empty: the tool's or provider's default. */
24
- readonly value: string;
25
- readonly disabled?: boolean;
26
- /** For a select with no visible label. */
27
- readonly ariaLabel?: string;
28
- readonly onChange: (effort: string) => void;
29
- }): ReactElement;
30
- /**
31
- * The business actions as checkboxes, grouped as the application groups them, with its titles. Actions meant for
32
- * another type of agent (`AgentActionOption.types`) are left out. `detailed` (the agent page) adds each action's
33
- * description, and lists the actions that are never granted to an agent greyed out with the reason, so people see the
34
- * boundary; elsewhere those are left out.
35
- */
36
- export declare function ActionCheckboxes({ idPrefix, value, type, disabled, detailed, onChange, }: {
37
- readonly idPrefix: string;
38
- readonly value: readonly string[];
39
- /** The agent's type; every action when absent. */
40
- readonly type?: AgentType;
41
- readonly disabled?: boolean;
42
- readonly detailed?: boolean;
43
- readonly onChange: (actions: string[]) => void;
44
- }): ReactElement;
45
- //# sourceMappingURL=agent-fields.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-fields.d.ts","sourceRoot":"","sources":["../../../client/components/agent-fields.tsx"],"names":[],"mappings":"AAAA;;;GAGG;AACH,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,0BAA0B,CAAC;AAEvE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAE1C,OAAO,EAA0B,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AAChF,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAkD7D,wBAAgB,UAAU,CAAC,EACzB,EAAE,EACF,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,6EAA6E;IAC7E,QAAQ,CAAC,OAAO,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,CAAC;IACvD,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C,GAAG,YAAY,CAiCf;AAED,yFAAyF;AACzF,wBAAgB,YAAY,CAAC,EAC3B,EAAE,EACF,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,OAAO,EAAE,SAAS,MAAM,EAAE,CAAC;IACpC,+CAA+C;IAC/C,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,0CAA0C;IAC1C,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,MAAM,EAAE,MAAM,KAAK,IAAI,CAAC;CAC7C,GAAG,YAAY,CAgCf;AAED;;;;;GAKG;AACH,wBAAgB,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,KAAK,EAAE,SAAS,MAAM,EAAE,CAAC;IAClC,kDAAkD;IAClD,QAAQ,CAAC,IAAI,CAAC,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,MAAM,EAAE,KAAK,IAAI,CAAC;CAChD,GAAG,YAAY,CA2Ff"}
@@ -1,83 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
2
- /**
3
- * Fields the new-agent dialog and the agent page share: the coding tool (with how many runners offer it now), an
4
- * entry's reasoning effort, and the business actions the application lets an agent be given.
5
- */
6
- import { AGENT_TOOLS } from '@nocobase/agent-protocol';
7
- import { useTranslation } from '@nocobase/i18n/client';
8
- import { useText } from '../hooks/use-vocabulary.js';
9
- import { useAgentActions } from '../lib/action-catalog.js';
10
- import { onlineFor } from '../lib/agents.js';
11
- import { cn } from 'cn';
12
- import { Checkbox } from './ui/checkbox.js';
13
- import { Field, FieldContent, FieldDescription, FieldLabel, } from './ui/field.js';
14
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from './ui/select.js';
15
- import { Skeleton } from './ui/skeleton.js';
16
- import { Tooltip, TooltipContent, TooltipTrigger } from './ui/tooltip.js';
17
- /** How many runtimes can run a tool now, as a dot and a count, with the full sentence in a tooltip. */
18
- function OnlineCount({ count }) {
19
- const { t } = useTranslation();
20
- const label = t('agentForm.toolOnline', { count });
21
- return (_jsxs(Tooltip, { children: [_jsxs(TooltipTrigger, { render: _jsx("span", { "aria-label": label, className: 'ml-auto inline-flex items-center gap-1 text-xs text-muted-foreground tabular-nums' }), children: [_jsx("span", { "aria-hidden": true, className: cn('size-1.5 rounded-full', count > 0 ? 'bg-primary' : 'bg-muted-foreground/40') }), count] }), _jsx(TooltipContent, { children: label })] }));
22
- }
23
- export function ToolSelect({ id, value, runners, disabled, ariaLabel, onChange, }) {
24
- const { t } = useTranslation();
25
- const items = AGENT_TOOLS.map((tool) => ({
26
- value: tool,
27
- label: t(`tools.${tool}`),
28
- }));
29
- return (_jsxs(Select, { items: items, value: value, disabled: disabled, onValueChange: (next) => {
30
- const tool = AGENT_TOOLS.find((candidate) => candidate === next);
31
- if (tool)
32
- onChange(tool);
33
- }, children: [_jsx(SelectTrigger, { id: id, "aria-label": ariaLabel, className: 'w-full', children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { className: 'w-auto max-w-[min(var(--container-sm),var(--available-width))] min-w-(--anchor-width) [&_[data-slot=select-item]>:first-child]:whitespace-normal', children: AGENT_TOOLS.map((tool) => (_jsx(SelectItem, { value: tool, children: _jsxs("span", { className: 'flex min-w-0 flex-1 items-center gap-2', children: [_jsx("span", { children: t(`tools.${tool}`) }), runners ? (_jsx(OnlineCount, { count: onlineFor(runners, tool) })) : null] }) }, tool))) })] }));
34
- }
35
- /** An entry's reasoning effort, among those its tool or service takes (`effortsFor`). */
36
- export function EffortSelect({ id, efforts, value, disabled, ariaLabel, onChange, }) {
37
- const { t } = useTranslation();
38
- const items = [
39
- { value: 'default', label: t('agentForm.reasoningDefault') },
40
- ...efforts.map((effort) => ({
41
- value: effort,
42
- label: t(`agentForm.efforts.${effort}`, { defaultValue: effort }),
43
- })),
44
- // An effort saved before stays listed so it shows.
45
- ...(value && !efforts.includes(value) ? [{ value, label: value }] : []),
46
- ];
47
- return (_jsxs(Select, { items: items, value: value || 'default', disabled: disabled, onValueChange: (next) => onChange(!next || next === 'default' ? '' : next), children: [_jsx(SelectTrigger, { id: id, "aria-label": ariaLabel, className: 'w-full', children: _jsx(SelectValue, {}) }), _jsx(SelectContent, { className: 'w-auto max-w-[min(var(--container-sm),var(--available-width))] min-w-(--anchor-width) [&_[data-slot=select-item]>:first-child]:whitespace-normal', children: items.map((item) => (_jsx(SelectItem, { value: item.value, children: item.label }, item.value))) })] }));
48
- }
49
- /**
50
- * The business actions as checkboxes, grouped as the application groups them, with its titles. Actions meant for
51
- * another type of agent (`AgentActionOption.types`) are left out. `detailed` (the agent page) adds each action's
52
- * description, and lists the actions that are never granted to an agent greyed out with the reason, so people see the
53
- * boundary; elsewhere those are left out.
54
- */
55
- export function ActionCheckboxes({ idPrefix, value, type, disabled, detailed, onChange, }) {
56
- const { t } = useTranslation();
57
- const text = useText();
58
- const all = useAgentActions(value);
59
- const actions = all?.filter((action) => (!type || !action.types || action.types.includes(type)) &&
60
- (detailed || action.grantable !== false));
61
- if (!actions)
62
- return _jsx(Skeleton, { className: 'h-16 w-full' });
63
- const groups = new Map();
64
- for (const action of actions)
65
- groups.set(action.group, [...(groups.get(action.group) ?? []), action]);
66
- if (![...actions].some((action) => action.grantable !== false))
67
- return (_jsx("p", { className: 'text-sm text-muted-foreground', children: t('capabilities.none') }));
68
- return (_jsx("div", { className: detailed
69
- ? 'grid gap-x-6 gap-y-5 sm:grid-cols-2'
70
- : 'grid gap-3 sm:grid-cols-2', children: [...groups].map(([group, options]) => (_jsxs("div", { role: 'group', "aria-label": text(options[0]?.groupTitle, group), className: detailed ? 'space-y-3' : 'space-y-2', children: [_jsx("p", { className: 'text-xs font-medium text-muted-foreground', children: text(options[0]?.groupTitle, group) }), options.map((option) => {
71
- const grantable = option.grantable !== false;
72
- const id = `${idPrefix}-${option.key}`;
73
- const label = text(option.title, option.key);
74
- return (_jsxs(Field, { orientation: 'horizontal', "data-disabled": grantable ? undefined : true, "data-testid": detailed ? `capability-${option.key}` : undefined, children: [_jsx(Checkbox, { id: id, checked: grantable && value.includes(option.key), disabled: disabled || !grantable, onCheckedChange: (checked) => onChange(checked
75
- ? [...value, option.key]
76
- : value.filter((item) => item !== option.key)) }), detailed ? (_jsxs(FieldContent, { children: [_jsx(FieldLabel, { htmlFor: id, className: 'font-normal', children: label }), grantable ? (option.description ? (_jsx(FieldDescription, { children: text(option.description, '') })) : null) : (_jsx(FieldDescription, { children: option.reason
77
- ? t('capabilities.notGrantableBecause', {
78
- reason: text(option.reason, ''),
79
- })
80
- : t('capabilities.notGrantable') }))] })) : (_jsx(FieldLabel, { htmlFor: id, className: 'font-normal', children: label }))] }, option.key));
81
- })] }, group))) }));
82
- }
83
- //# sourceMappingURL=agent-fields.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-fields.js","sourceRoot":"","sources":["../../../client/components/agent-fields.tsx"],"names":[],"mappings":";AAAA;;;GAGG;AACH,OAAO,EAAE,WAAW,EAAkB,MAAM,0BAA0B,CAAC;AACvE,OAAO,EAAE,cAAc,EAAE,MAAM,uBAAuB,CAAC;AAKvD,OAAO,EAAE,OAAO,EAAE,MAAM,4BAA4B,CAAC;AACrD,OAAO,EAAE,eAAe,EAAE,MAAM,0BAA0B,CAAC;AAC3D,OAAO,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAC7C,OAAO,EAAE,EAAE,EAAE,MAAM,IAAI,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EACL,KAAK,EACL,YAAY,EACZ,gBAAgB,EAChB,UAAU,GACX,MAAM,eAAe,CAAC;AACvB,OAAO,EACL,MAAM,EACN,aAAa,EACb,UAAU,EACV,aAAa,EACb,WAAW,GACZ,MAAM,gBAAgB,CAAC;AACxB,OAAO,EAAE,QAAQ,EAAE,MAAM,kBAAkB,CAAC;AAC5C,OAAO,EAAE,OAAO,EAAE,cAAc,EAAE,cAAc,EAAE,MAAM,iBAAiB,CAAC;AAE1E,uGAAuG;AACvG,SAAS,WAAW,CAAC,EAAE,KAAK,EAA8B;IACxD,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,CAAC,CAAC,sBAAsB,EAAE,EAAE,KAAK,EAAE,CAAC,CAAC;IACnD,OAAO,CACL,MAAC,OAAO,eACN,MAAC,cAAc,IACb,MAAM,EACJ,6BACc,KAAK,EACjB,SAAS,EAAC,mFAAmF,GAC7F,aAGJ,oCAEE,SAAS,EAAE,EAAE,CACX,uBAAuB,EACvB,KAAK,GAAG,CAAC,CAAC,CAAC,CAAC,YAAY,CAAC,CAAC,CAAC,wBAAwB,CACpD,GACD,EACD,KAAK,IACS,EACjB,KAAC,cAAc,cAAE,KAAK,GAAkB,IAChC,CACX,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,UAAU,CAAC,EACzB,EAAE,EACF,KAAK,EACL,OAAO,EACP,QAAQ,EACR,SAAS,EACT,QAAQ,GAUT;IACC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CAAC;QACvC,KAAK,EAAE,IAAI;QACX,KAAK,EAAE,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC;KAC1B,CAAC,CAAC,CAAC;IACJ,OAAO,CACL,MAAC,MAAM,IACL,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,EACZ,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,CAAC,IAAmB,EAAE,EAAE;YACrC,MAAM,IAAI,GAAG,WAAW,CAAC,IAAI,CAAC,CAAC,SAAS,EAAE,EAAE,CAAC,SAAS,KAAK,IAAI,CAAC,CAAC;YACjE,IAAI,IAAI;gBAAE,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC3B,CAAC,aAED,KAAC,aAAa,IAAC,EAAE,EAAE,EAAE,gBAAc,SAAS,EAAE,SAAS,EAAC,QAAQ,YAC9D,KAAC,WAAW,KAAG,GACD,EAChB,KAAC,aAAa,IAAC,SAAS,EAAC,kJAAkJ,YACxK,WAAW,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACzB,KAAC,UAAU,IAAY,KAAK,EAAE,IAAI,YAChC,gBAAM,SAAS,EAAC,wCAAwC,aACtD,yBAAO,CAAC,CAAC,SAAS,IAAI,EAAE,CAAC,GAAQ,EAChC,OAAO,CAAC,CAAC,CAAC,CACT,KAAC,WAAW,IAAC,KAAK,EAAE,SAAS,CAAC,OAAO,EAAE,IAAI,CAAC,GAAI,CACjD,CAAC,CAAC,CAAC,IAAI,IACH,IANQ,IAAI,CAOR,CACd,CAAC,GACY,IACT,CACV,CAAC;AACJ,CAAC;AAED,yFAAyF;AACzF,MAAM,UAAU,YAAY,CAAC,EAC3B,EAAE,EACF,OAAO,EACP,KAAK,EACL,QAAQ,EACR,SAAS,EACT,QAAQ,GAUT;IACC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,KAAK,GAAG;QACZ,EAAE,KAAK,EAAE,SAAS,EAAE,KAAK,EAAE,CAAC,CAAC,4BAA4B,CAAC,EAAE;QAC5D,GAAG,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,CAAC;YAC1B,KAAK,EAAE,MAAM;YACb,KAAK,EAAE,CAAC,CAAC,qBAAqB,MAAM,EAAE,EAAE,EAAE,YAAY,EAAE,MAAM,EAAE,CAAC;SAClE,CAAC,CAAC;QACH,mDAAmD;QACnD,GAAG,CAAC,KAAK,IAAI,CAAC,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,EAAE,KAAK,EAAE,KAAK,EAAE,KAAK,EAAE,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;KACxE,CAAC;IACF,OAAO,CACL,MAAC,MAAM,IACL,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,KAAK,IAAI,SAAS,EACzB,QAAQ,EAAE,QAAQ,EAClB,aAAa,EAAE,CAAC,IAAmB,EAAE,EAAE,CACrC,QAAQ,CAAC,CAAC,IAAI,IAAI,IAAI,KAAK,SAAS,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,CAAC,IAAI,CAAC,aAGnD,KAAC,aAAa,IAAC,EAAE,EAAE,EAAE,gBAAc,SAAS,EAAE,SAAS,EAAC,QAAQ,YAC9D,KAAC,WAAW,KAAG,GACD,EAChB,KAAC,aAAa,IAAC,SAAS,EAAC,kJAAkJ,YACxK,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,CACnB,KAAC,UAAU,IAAkB,KAAK,EAAE,IAAI,CAAC,KAAK,YAC3C,IAAI,CAAC,KAAK,IADI,IAAI,CAAC,KAAK,CAEd,CACd,CAAC,GACY,IACT,CACV,CAAC;AACJ,CAAC;AAED;;;;;GAKG;AACH,MAAM,UAAU,gBAAgB,CAAC,EAC/B,QAAQ,EACR,KAAK,EACL,IAAI,EACJ,QAAQ,EACR,QAAQ,EACR,QAAQ,GAST;IACC,MAAM,EAAE,CAAC,EAAE,GAAG,cAAc,EAAE,CAAC;IAC/B,MAAM,IAAI,GAAG,OAAO,EAAE,CAAC;IACvB,MAAM,GAAG,GAAG,eAAe,CAAC,KAAK,CAAC,CAAC;IACnC,MAAM,OAAO,GAAG,GAAG,EAAE,MAAM,CACzB,CAAC,MAAM,EAAE,EAAE,CACT,CAAC,CAAC,IAAI,IAAI,CAAC,MAAM,CAAC,KAAK,IAAI,MAAM,CAAC,KAAK,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QACvD,CAAC,QAAQ,IAAI,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC,CAC3C,CAAC;IACF,IAAI,CAAC,OAAO;QAAE,OAAO,KAAC,QAAQ,IAAC,SAAS,EAAC,aAAa,GAAG,CAAC;IAC1D,MAAM,MAAM,GAAG,IAAI,GAAG,EAA+B,CAAC;IACtD,KAAK,MAAM,MAAM,IAAI,OAAO;QAC1B,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,EAAE,CAAC,GAAG,CAAC,MAAM,CAAC,GAAG,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE,CAAC,EAAE,MAAM,CAAC,CAAC,CAAC;IAC1E,IAAI,CAAC,CAAC,GAAG,OAAO,CAAC,CAAC,IAAI,CAAC,CAAC,MAAM,EAAE,EAAE,CAAC,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC;QAC5D,OAAO,CACL,YAAG,SAAS,EAAC,+BAA+B,YAAE,CAAC,CAAC,mBAAmB,CAAC,GAAK,CAC1E,CAAC;IACJ,OAAO,CACL,cACE,SAAS,EACP,QAAQ;YACN,CAAC,CAAC,qCAAqC;YACvC,CAAC,CAAC,2BAA2B,YAGhC,CAAC,GAAG,MAAM,CAAC,CAAC,GAAG,CAAC,CAAC,CAAC,KAAK,EAAE,OAAO,CAAC,EAAE,EAAE,CAAC,CACrC,eAEE,IAAI,EAAC,OAAO,gBACA,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,EAC/C,SAAS,EAAE,QAAQ,CAAC,CAAC,CAAC,WAAW,CAAC,CAAC,CAAC,WAAW,aAE/C,YAAG,SAAS,EAAC,2CAA2C,YACrD,IAAI,CAAC,OAAO,CAAC,CAAC,CAAC,EAAE,UAAU,EAAE,KAAK,CAAC,GAClC,EACH,OAAO,CAAC,GAAG,CAAC,CAAC,MAAM,EAAE,EAAE;oBACtB,MAAM,SAAS,GAAG,MAAM,CAAC,SAAS,KAAK,KAAK,CAAC;oBAC7C,MAAM,EAAE,GAAG,GAAG,QAAQ,IAAI,MAAM,CAAC,GAAG,EAAE,CAAC;oBACvC,MAAM,KAAK,GAAG,IAAI,CAAC,MAAM,CAAC,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC,CAAC;oBAC7C,OAAO,CACL,MAAC,KAAK,IAEJ,WAAW,EAAC,YAAY,mBACT,SAAS,CAAC,CAAC,CAAC,SAAS,CAAC,CAAC,CAAC,IAAI,iBAC9B,QAAQ,CAAC,CAAC,CAAC,cAAc,MAAM,CAAC,GAAG,EAAE,CAAC,CAAC,CAAC,SAAS,aAE9D,KAAC,QAAQ,IACP,EAAE,EAAE,EAAE,EACN,OAAO,EAAE,SAAS,IAAI,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,GAAG,CAAC,EAChD,QAAQ,EAAE,QAAQ,IAAI,CAAC,SAAS,EAChC,eAAe,EAAE,CAAC,OAAO,EAAE,EAAE,CAC3B,QAAQ,CACN,OAAO;oCACL,CAAC,CAAC,CAAC,GAAG,KAAK,EAAE,MAAM,CAAC,GAAG,CAAC;oCACxB,CAAC,CAAC,KAAK,CAAC,MAAM,CAAC,CAAC,IAAI,EAAE,EAAE,CAAC,IAAI,KAAK,MAAM,CAAC,GAAG,CAAC,CAChD,GAEH,EACD,QAAQ,CAAC,CAAC,CAAC,CACV,MAAC,YAAY,eACX,KAAC,UAAU,IAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,aAAa,YAC7C,KAAK,GACK,EACZ,SAAS,CAAC,CAAC,CAAC,CACX,MAAM,CAAC,WAAW,CAAC,CAAC,CAAC,CACnB,KAAC,gBAAgB,cACd,IAAI,CAAC,MAAM,CAAC,WAAW,EAAE,EAAE,CAAC,GACZ,CACpB,CAAC,CAAC,CAAC,IAAI,CACT,CAAC,CAAC,CAAC,CACF,KAAC,gBAAgB,cACd,MAAM,CAAC,MAAM;4CACZ,CAAC,CAAC,CAAC,CAAC,kCAAkC,EAAE;gDACpC,MAAM,EAAE,IAAI,CAAC,MAAM,CAAC,MAAM,EAAE,EAAE,CAAC;6CAChC,CAAC;4CACJ,CAAC,CAAC,CAAC,CAAC,2BAA2B,CAAC,GACjB,CACpB,IACY,CAChB,CAAC,CAAC,CAAC,CACF,KAAC,UAAU,IAAC,OAAO,EAAE,EAAE,EAAE,SAAS,EAAC,aAAa,YAC7C,KAAK,GACK,CACd,KA1CI,MAAM,CAAC,GAAG,CA2CT,CACT,CAAC;gBACJ,CAAC,CAAC,KA3DG,KAAK,CA4DN,CACP,CAAC,GACE,CACP,CAAC;AACJ,CAAC"}
@@ -1,32 +0,0 @@
1
- import type { ReactElement } from 'react';
2
- import { type AgentType } from '../../shared/agents.js';
3
- import type { ModelCatalog } from '../../shared/models.js';
4
- /** A small Online / Runner tag. */
5
- export declare function AgentTypeTag({ type, }: {
6
- readonly type: AgentType;
7
- }): ReactElement;
8
- /** The new-agent dialog's first question: an online agent or a runner agent. */
9
- export declare function AgentTypePicker({ value, onChange, }: {
10
- readonly value: AgentType;
11
- readonly onChange: (type: AgentType) => void;
12
- }): ReactElement;
13
- /**
14
- * What an online agent that lists no model answers with: the system default chat model, with a link to change it on
15
- * the Models page; or, while no service offers a chat model, that it needs one, with a link to set one up.
16
- */
17
- export declare function DefaultModelNote(): ReactElement | null;
18
- /** What online agents need and is missing: no model service offers a model yet. */
19
- export declare function NoModels(): ReactElement;
20
- /**
21
- * The model service and model selects of a row of the tools-and-models list, labelled for assistive technology only
22
- * (the list's header names the columns); a model no longer offered stays listed so it shows.
23
- */
24
- export declare function ModelFields({ idPrefix, catalog, modelService, model, disabled, onChange, }: {
25
- readonly idPrefix: string;
26
- readonly catalog: ModelCatalog | undefined;
27
- readonly modelService: string;
28
- readonly model: string;
29
- readonly disabled?: boolean;
30
- readonly onChange: (modelService: string, model: string) => void;
31
- }): ReactElement;
32
- //# sourceMappingURL=agent-type.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-type.d.ts","sourceRoot":"","sources":["../../../client/components/agent-type.tsx"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,OAAO,CAAC;AAG1C,OAAO,EAAe,KAAK,SAAS,EAAE,MAAM,wBAAwB,CAAC;AACrE,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAsB3D,mCAAmC;AACnC,wBAAgB,YAAY,CAAC,EAC3B,IAAI,GACL,EAAE;IACD,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;CAC1B,GAAG,YAAY,CAQf;AAED,gFAAgF;AAChF,wBAAgB,eAAe,CAAC,EAC9B,KAAK,EACL,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,KAAK,EAAE,SAAS,CAAC;IAC1B,QAAQ,CAAC,QAAQ,EAAE,CAAC,IAAI,EAAE,SAAS,KAAK,IAAI,CAAC;CAC9C,GAAG,YAAY,CA4Bf;AAED;;;GAGG;AACH,wBAAgB,gBAAgB,IAAI,YAAY,GAAG,IAAI,CAiBtD;AAED,mFAAmF;AACnF,wBAAgB,QAAQ,IAAI,YAAY,CAGvC;AAED;;;GAGG;AACH,wBAAgB,WAAW,CAAC,EAC1B,QAAQ,EACR,OAAO,EACP,YAAY,EACZ,KAAK,EACL,QAAQ,EACR,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,OAAO,EAAE,YAAY,GAAG,SAAS,CAAC;IAC3C,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAC;IAC9B,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,YAAY,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAClE,GAAG,YAAY,CA0Ef"}
@@ -1,80 +0,0 @@
1
- import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
2
- /**
3
- * What the agent pages show of an agent's type: the Online / Runner tag, the type choice of the new-agent dialog, the
4
- * model service and model selects of an online agent's entry, whose options come from the server's model catalog
5
- * (`GET agents/admin/models`), and what an online agent that lists no model answers with: the system default chat
6
- * model (`GET agents/defaultModels`), with the way to the Models page to change it.
7
- */
8
- import { useTranslation } from '@nocobase/i18n/client';
9
- import { MessageSquareIcon, WrenchIcon } from 'lucide-react';
10
- import { Link } from 'react-router';
11
- import { AGENT_TYPES } from '../../shared/agents.js';
12
- import { useDefaultModels, useDefaultModelText, } from '../hooks/use-model-catalog.js';
13
- import { AgTag } from './ag-tag.js';
14
- import { Field, FieldContent, FieldDescription, FieldLabel, FieldTitle, } from './ui/field.js';
15
- import { RadioGroup, RadioGroupItem } from './ui/radio-group.js';
16
- import { Select, SelectContent, SelectItem, SelectTrigger, SelectValue, } from './ui/select.js';
17
- /** A small Online / Runner tag. */
18
- export function AgentTypeTag({ type, }) {
19
- const { t } = useTranslation();
20
- return (_jsxs(AgTag, { tone: type === 'online' ? 'violet' : 'blue', children: [type === 'online' ? _jsx(MessageSquareIcon, {}) : _jsx(WrenchIcon, {}), t(`agentTypes.${type}`)] }));
21
- }
22
- /** The new-agent dialog's first question: an online agent or a runner agent. */
23
- export function AgentTypePicker({ value, onChange, }) {
24
- const { t } = useTranslation();
25
- return (_jsx(RadioGroup, { "aria-label": t('agentTypes.label'), value: value, className: 'grid-cols-1 sm:grid-cols-2', onValueChange: (next) => {
26
- const type = AGENT_TYPES.find((candidate) => candidate === next);
27
- if (type)
28
- onChange(type);
29
- }, children: ['online', 'runner'].map((type) => (_jsx(FieldLabel, { htmlFor: `ag-agent-type-${type}`, children: _jsxs(Field, { orientation: 'horizontal', children: [_jsxs(FieldContent, { children: [_jsxs(FieldTitle, { children: [type === 'online' ? _jsx(MessageSquareIcon, {}) : _jsx(WrenchIcon, {}), t(`agentTypes.${type}`)] }), _jsx(FieldDescription, { children: t(`agentTypes.${type}Hint`) })] }), _jsx(RadioGroupItem, { value: type, id: `ag-agent-type-${type}` })] }) }, type))) }));
30
- }
31
- /**
32
- * What an online agent that lists no model answers with: the system default chat model, with a link to change it on
33
- * the Models page; or, while no service offers a chat model, that it needs one, with a link to set one up.
34
- */
35
- export function DefaultModelNote() {
36
- const { t } = useTranslation();
37
- const defaults = useDefaultModels();
38
- const model = useDefaultModelText();
39
- if (!defaults.data)
40
- return null;
41
- return (_jsxs(FieldDescription, { "data-testid": 'ag-default-model-note', children: [_jsx("span", { children: model
42
- ? t('agents.usesDefaultModel', { model })
43
- : t('agentForm.noModels') }), ' ', _jsx(Link, { to: '/models', className: 'underline underline-offset-4', children: model ? t('agents.changeDefaultModel') : t('agents.setUpModels') })] }));
44
- }
45
- /** What online agents need and is missing: no model service offers a model yet. */
46
- export function NoModels() {
47
- const { t } = useTranslation();
48
- return _jsx(FieldDescription, { children: t('agentForm.noModels') });
49
- }
50
- /**
51
- * The model service and model selects of a row of the tools-and-models list, labelled for assistive technology only
52
- * (the list's header names the columns); a model no longer offered stays listed so it shows.
53
- */
54
- export function ModelFields({ idPrefix, catalog, modelService, model, disabled, onChange, }) {
55
- const { t } = useTranslation();
56
- const services = catalog?.services ?? [];
57
- const serviceItems = [
58
- ...services.map((service) => ({
59
- value: service.name,
60
- label: service.title,
61
- })),
62
- ...(modelService &&
63
- !services.some((service) => service.name === modelService)
64
- ? [{ value: modelService, label: modelService }]
65
- : []),
66
- ];
67
- const offered = services.find((service) => service.name === modelService)?.models ?? [];
68
- const modelItems = [
69
- ...offered.map((option) => ({ value: option.value, label: option.label })),
70
- ...(model && !offered.some((option) => option.value === model)
71
- ? [{ value: model, label: model }]
72
- : []),
73
- ];
74
- return (_jsxs(_Fragment, { children: [_jsxs(Select, { items: serviceItems, value: modelService || null, disabled: disabled, onValueChange: (next) => {
75
- const first = services.find((service) => service.name === next)?.models[0]
76
- ?.value ?? '';
77
- onChange(next ?? '', first);
78
- }, children: [_jsx(SelectTrigger, { id: `${idPrefix}-service`, "aria-label": t('agentForm.modelService'), className: 'w-full', children: _jsx(SelectValue, { placeholder: t('agentForm.chooseService') }) }), _jsx(SelectContent, { className: 'w-auto max-w-[min(var(--container-sm),var(--available-width))] min-w-(--anchor-width) [&_[data-slot=select-item]>:first-child]:whitespace-normal', children: serviceItems.map((item) => (_jsx(SelectItem, { value: item.value, children: item.label }, item.value))) })] }), _jsxs(Select, { items: modelItems, value: model || null, disabled: disabled || !modelService, onValueChange: (next) => onChange(modelService, next ?? ''), children: [_jsx(SelectTrigger, { id: `${idPrefix}-model`, "aria-label": t('agentForm.model'), className: 'w-full', children: _jsx(SelectValue, { placeholder: t('agentForm.chooseModel') }) }), _jsx(SelectContent, { className: 'w-auto max-w-[min(var(--container-sm),var(--available-width))] min-w-(--anchor-width) [&_[data-slot=select-item]>:first-child]:whitespace-normal', children: modelItems.map((item) => (_jsx(SelectItem, { value: item.value, children: item.label }, item.value))) })] })] }));
79
- }
80
- //# sourceMappingURL=agent-type.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"agent-type.js","sourceRoot":"","sources":["../../../client/components/agent-type.tsx"],"names":[],"mappings":"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"}
@@ -1,35 +0,0 @@
1
- import { type AgentTool } from '@nocobase/agent-protocol';
2
- import type { ReactElement, ReactNode } from 'react';
3
- import { type AgentType } from '../../shared/agents.js';
4
- import type { ModelCatalog } from '../../shared/models.js';
5
- import type { RunnerSummary } from '../../shared/runners.js';
6
- import { type EntryDraft } from '../pages/agents/agent-model.js';
7
- /** A model typed freely, with the tool's common models suggested as the person types. */
8
- export declare function ModelInput({ id, tool, value, disabled, placeholder, ariaLabel, onChange, }: {
9
- readonly id: string;
10
- readonly tool: AgentTool;
11
- readonly value: string;
12
- readonly disabled?: boolean;
13
- readonly placeholder?: string;
14
- /** For a field with no visible label. */
15
- readonly ariaLabel?: string;
16
- readonly onChange: (model: string) => void;
17
- }): ReactElement;
18
- export declare function ModelEntriesEditor({ idPrefix, type, value, runners, catalog, disabled, onChange, onTest, testing, empty, }: {
19
- readonly idPrefix: string;
20
- readonly type: AgentType;
21
- readonly value: readonly EntryDraft[];
22
- /** For the count of runners each tool can run on now. */
23
- readonly runners?: readonly RunnerSummary[] | undefined;
24
- /** The services and models online rows choose from. */
25
- readonly catalog?: ModelCatalog | undefined;
26
- readonly disabled?: boolean;
27
- readonly onChange: (entries: EntryDraft[]) => void;
28
- /** Online rows: asks the model of a row for a short answer. */
29
- readonly onTest?: (entry: EntryDraft) => void;
30
- /** The key of the row being tested. */
31
- readonly testing?: string | null;
32
- /** What an online list without rows says: which model answers instead (`DefaultModelNote`). */
33
- readonly empty?: ReactNode;
34
- }): ReactElement;
35
- //# sourceMappingURL=model-entries.d.ts.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"model-entries.d.ts","sourceRoot":"","sources":["../../../client/components/model-entries.tsx"],"names":[],"mappings":"AAQA,OAAO,EAEL,KAAK,SAAS,EACf,MAAM,0BAA0B,CAAC;AASlC,OAAO,KAAK,EAAE,YAAY,EAAE,SAAS,EAAE,MAAM,OAAO,CAAC;AAErD,OAAO,EAGL,KAAK,SAAS,EACf,MAAM,wBAAwB,CAAC;AAChC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,wBAAwB,CAAC;AAC3D,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,yBAAyB,CAAC;AAE7D,OAAO,EAGL,KAAK,UAAU,EAChB,MAAM,gCAAgC,CAAC;AAQxC,yFAAyF;AACzF,wBAAgB,UAAU,CAAC,EACzB,EAAE,EACF,IAAI,EACJ,KAAK,EACL,QAAQ,EACR,WAAW,EACX,SAAS,EACT,QAAQ,GACT,EAAE;IACD,QAAQ,CAAC,EAAE,EAAE,MAAM,CAAC;IACpB,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,MAAM,CAAC;IACvB,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,WAAW,CAAC,EAAE,MAAM,CAAC;IAC9B,yCAAyC;IACzC,QAAQ,CAAC,SAAS,CAAC,EAAE,MAAM,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,KAAK,EAAE,MAAM,KAAK,IAAI,CAAC;CAC5C,GAAG,YAAY,CA8Cf;AA2DD,wBAAgB,kBAAkB,CAAC,EACjC,QAAQ,EACR,IAAI,EACJ,KAAK,EACL,OAAO,EACP,OAAO,EACP,QAAQ,EACR,QAAQ,EACR,MAAM,EACN,OAAO,EACP,KAAK,GACN,EAAE;IACD,QAAQ,CAAC,QAAQ,EAAE,MAAM,CAAC;IAC1B,QAAQ,CAAC,IAAI,EAAE,SAAS,CAAC;IACzB,QAAQ,CAAC,KAAK,EAAE,SAAS,UAAU,EAAE,CAAC;IACtC,yDAAyD;IACzD,QAAQ,CAAC,OAAO,CAAC,EAAE,SAAS,aAAa,EAAE,GAAG,SAAS,CAAC;IACxD,uDAAuD;IACvD,QAAQ,CAAC,OAAO,CAAC,EAAE,YAAY,GAAG,SAAS,CAAC;IAC5C,QAAQ,CAAC,QAAQ,CAAC,EAAE,OAAO,CAAC;IAC5B,QAAQ,CAAC,QAAQ,EAAE,CAAC,OAAO,EAAE,UAAU,EAAE,KAAK,IAAI,CAAC;IACnD,+DAA+D;IAC/D,QAAQ,CAAC,MAAM,CAAC,EAAE,CAAC,KAAK,EAAE,UAAU,KAAK,IAAI,CAAC;IAC9C,uCAAuC;IACvC,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACjC,+FAA+F;IAC/F,QAAQ,CAAC,KAAK,CAAC,EAAE,SAAS,CAAC;CAC5B,GAAG,YAAY,CA8Lf"}