@capybara-hq/kernel 0.1.0-rc.1 → 0.1.0-rc.10

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 (1146) hide show
  1. package/bootstrap.json +85 -5
  2. package/dist/admin/admin.controller.d.ts +52 -71
  3. package/dist/admin/admin.controller.js +117 -63
  4. package/dist/admin/admin.module.d.ts +3 -0
  5. package/dist/admin/admin.module.js +22 -0
  6. package/dist/admin/admin.schemas.d.ts +57 -0
  7. package/dist/admin/admin.schemas.js +50 -0
  8. package/dist/admin/extensions.controller.d.ts +47 -16
  9. package/dist/admin/extensions.controller.js +94 -23
  10. package/dist/admin/extensions.schemas.d.ts +7 -0
  11. package/dist/admin/extensions.schemas.js +10 -0
  12. package/dist/admin/limit-defaults.d.ts +20 -0
  13. package/dist/admin/limit-defaults.js +10 -0
  14. package/dist/admin/setup-lock.d.ts +16 -0
  15. package/dist/admin/setup-lock.js +47 -0
  16. package/dist/admin/setup.controller.d.ts +9 -9
  17. package/dist/admin/setup.controller.js +28 -26
  18. package/dist/admin/setup.service.d.ts +20 -28
  19. package/dist/admin/setup.service.js +65 -65
  20. package/dist/agents/agent-lookup.d.ts +72 -0
  21. package/dist/agents/agent-lookup.js +208 -0
  22. package/dist/agents/agent-profile.service.d.ts +31 -0
  23. package/dist/agents/agent-profile.service.js +122 -0
  24. package/dist/agents/agents.controller.d.ts +54 -169
  25. package/dist/agents/agents.controller.js +172 -37
  26. package/dist/agents/agents.module.d.ts +10 -0
  27. package/dist/agents/agents.module.js +71 -0
  28. package/dist/agents/agents.schemas.d.ts +389 -0
  29. package/dist/agents/agents.schemas.js +126 -0
  30. package/dist/agents/agents.service.d.ts +104 -76
  31. package/dist/agents/agents.service.js +509 -383
  32. package/dist/agents/definition.d.ts +133 -21
  33. package/dist/agents/definition.js +361 -41
  34. package/dist/agents/from-template.d.ts +106 -0
  35. package/dist/agents/from-template.js +680 -0
  36. package/dist/agents/from-template.service.d.ts +72 -0
  37. package/dist/agents/from-template.service.js +178 -0
  38. package/dist/agents/instruction-files.d.ts +60 -0
  39. package/dist/agents/instruction-files.js +111 -0
  40. package/dist/agents/models.controller.d.ts +44 -6
  41. package/dist/agents/models.controller.js +84 -8
  42. package/dist/agents/org-templates.d.ts +186 -0
  43. package/dist/agents/org-templates.js +868 -0
  44. package/dist/agents/pending-connector-requests.d.ts +79 -0
  45. package/dist/agents/pending-connector-requests.js +215 -0
  46. package/dist/agents/pending-connectors.controller.d.ts +39 -0
  47. package/dist/agents/pending-connectors.controller.js +91 -0
  48. package/dist/agents/pending-connectors.service.d.ts +62 -0
  49. package/dist/agents/pending-connectors.service.js +282 -0
  50. package/dist/agents/profile.d.ts +114 -0
  51. package/dist/agents/profile.js +55 -0
  52. package/dist/agents/readiness.controller.d.ts +26 -0
  53. package/dist/agents/readiness.controller.js +56 -0
  54. package/dist/agents/templates.controller.d.ts +78 -6
  55. package/dist/agents/templates.controller.js +154 -8
  56. package/dist/agents/templates.d.ts +132 -30
  57. package/dist/agents/templates.js +500 -46
  58. package/dist/agents/templates.schemas.d.ts +20 -0
  59. package/dist/agents/templates.schemas.js +45 -0
  60. package/dist/app.d.ts +93 -0
  61. package/dist/app.js +150 -0
  62. package/dist/background/background.controller.d.ts +38 -0
  63. package/dist/background/background.controller.js +88 -0
  64. package/dist/background/background.module.d.ts +10 -0
  65. package/dist/background/background.module.js +39 -0
  66. package/dist/background/background.schemas.d.ts +10 -0
  67. package/dist/background/background.schemas.js +16 -0
  68. package/dist/background/finish.d.ts +44 -0
  69. package/dist/background/finish.js +95 -0
  70. package/dist/background/launch-lock.d.ts +15 -0
  71. package/dist/background/launch-lock.js +40 -0
  72. package/dist/background/launch.d.ts +42 -0
  73. package/dist/background/launch.js +77 -0
  74. package/dist/background/poll.job.d.ts +56 -0
  75. package/dist/background/poll.job.js +195 -0
  76. package/dist/background/render.d.ts +23 -0
  77. package/dist/background/render.js +48 -0
  78. package/dist/background/session.d.ts +48 -0
  79. package/dist/background/session.js +80 -0
  80. package/dist/background/status.d.ts +35 -0
  81. package/dist/background/status.js +57 -0
  82. package/dist/background/stop.d.ts +68 -0
  83. package/dist/background/stop.js +244 -0
  84. package/dist/background/store.d.ts +167 -0
  85. package/dist/background/store.js +361 -0
  86. package/dist/background/store.module.d.ts +6 -0
  87. package/dist/background/store.module.js +22 -0
  88. package/dist/background/tasks.service.d.ts +77 -0
  89. package/dist/background/tasks.service.js +216 -0
  90. package/dist/background/wake-rules.d.ts +66 -0
  91. package/dist/background/wake-rules.js +113 -0
  92. package/dist/background/wake.d.ts +30 -0
  93. package/dist/background/wake.js +63 -0
  94. package/dist/catalog/admin-catalog.controller.d.ts +102 -52
  95. package/dist/catalog/admin-catalog.controller.js +222 -67
  96. package/dist/catalog/admin-catalog.schemas.d.ts +72 -0
  97. package/dist/catalog/admin-catalog.schemas.js +92 -0
  98. package/dist/catalog/catalog-content.d.ts +232 -0
  99. package/dist/catalog/catalog-content.js +367 -0
  100. package/dist/catalog/catalog-files.d.ts +41 -0
  101. package/dist/catalog/catalog-files.js +86 -0
  102. package/dist/catalog/catalog-import.module.d.ts +7 -0
  103. package/dist/catalog/catalog-import.module.js +60 -0
  104. package/dist/catalog/catalog-items.d.ts +290 -0
  105. package/dist/catalog/catalog-items.js +676 -0
  106. package/dist/catalog/catalog-scope.service.d.ts +260 -0
  107. package/dist/catalog/catalog-scope.service.js +1124 -0
  108. package/dist/catalog/catalog.module.d.ts +12 -0
  109. package/dist/catalog/catalog.module.js +81 -0
  110. package/dist/catalog/catalog.service.d.ts +141 -206
  111. package/dist/catalog/catalog.service.js +237 -528
  112. package/dist/catalog/claude/agents.js +15 -10
  113. package/dist/catalog/cli.d.ts +14 -3
  114. package/dist/catalog/cli.js +39 -32
  115. package/dist/catalog/component-promotion.d.ts +96 -0
  116. package/dist/catalog/component-promotion.js +395 -0
  117. package/dist/catalog/component-scope.controller.d.ts +90 -0
  118. package/dist/catalog/component-scope.controller.js +234 -0
  119. package/dist/catalog/component-scope.schemas.d.ts +114 -0
  120. package/dist/catalog/component-scope.schemas.js +97 -0
  121. package/dist/catalog/component-scope.service.d.ts +327 -0
  122. package/dist/catalog/component-scope.service.js +990 -0
  123. package/dist/catalog/component-state.d.ts +188 -0
  124. package/dist/catalog/component-state.js +455 -0
  125. package/dist/catalog/git-source.d.ts +9 -1
  126. package/dist/catalog/git-source.js +29 -2
  127. package/dist/catalog/job-ids.d.ts +45 -0
  128. package/dist/catalog/job-ids.js +40 -0
  129. package/dist/catalog/jobs.d.ts +27 -0
  130. package/dist/catalog/jobs.js +70 -0
  131. package/dist/catalog/locks.d.ts +24 -0
  132. package/dist/catalog/locks.js +63 -0
  133. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  134. package/dist/catalog/marketplace-icons.d.ts +64 -0
  135. package/dist/catalog/marketplace-icons.js +131 -0
  136. package/dist/catalog/marketplaces.controller.d.ts +53 -44
  137. package/dist/catalog/marketplaces.controller.js +146 -51
  138. package/dist/catalog/marketplaces.schemas.d.ts +48 -0
  139. package/dist/catalog/marketplaces.schemas.js +53 -0
  140. package/dist/catalog/marketplaces.service.d.ts +136 -26
  141. package/dist/catalog/marketplaces.service.js +663 -281
  142. package/dist/catalog/org-catalog.controller.d.ts +115 -63
  143. package/dist/catalog/org-catalog.controller.js +207 -100
  144. package/dist/catalog/org-catalog.schemas.d.ts +88 -0
  145. package/dist/catalog/org-catalog.schemas.js +93 -0
  146. package/dist/catalog/org-catalog.service.d.ts +89 -216
  147. package/dist/catalog/org-catalog.service.js +431 -472
  148. package/dist/catalog/org-extension-switch.d.ts +41 -0
  149. package/dist/catalog/org-extension-switch.js +115 -0
  150. package/dist/catalog/org-extension.controller.d.ts +113 -0
  151. package/dist/catalog/org-extension.controller.js +271 -0
  152. package/dist/catalog/org-extension.schemas.d.ts +15 -0
  153. package/dist/catalog/org-extension.schemas.js +22 -0
  154. package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
  155. package/dist/catalog/org-plugin-uploads.controller.js +200 -0
  156. package/dist/catalog/org-plugin-uploads.d.ts +71 -0
  157. package/dist/catalog/org-plugin-uploads.js +122 -0
  158. package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
  159. package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
  160. package/dist/catalog/owned-items.d.ts +188 -0
  161. package/dist/catalog/owned-items.js +801 -0
  162. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  163. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  164. package/dist/catalog/ownership.d.ts +172 -0
  165. package/dist/catalog/ownership.js +326 -0
  166. package/dist/catalog/platform-components.d.ts +223 -0
  167. package/dist/catalog/platform-components.js +763 -0
  168. package/dist/catalog/platform-migration.d.ts +115 -0
  169. package/dist/catalog/platform-migration.js +582 -0
  170. package/dist/catalog/plugin-import.d.ts +270 -68
  171. package/dist/catalog/plugin-import.js +1004 -277
  172. package/dist/catalog/plugin-install.d.ts +251 -65
  173. package/dist/catalog/plugin-install.js +1128 -344
  174. package/dist/catalog/plugin-package.js +14 -1
  175. package/dist/catalog/plugin-upgrade.d.ts +301 -188
  176. package/dist/catalog/plugin-upgrade.js +1256 -1068
  177. package/dist/catalog/request-rules.d.ts +65 -0
  178. package/dist/catalog/request-rules.js +217 -0
  179. package/dist/catalog/requests.service.d.ts +205 -117
  180. package/dist/catalog/requests.service.js +612 -369
  181. package/dist/catalog/reserved-names.d.ts +8 -0
  182. package/dist/catalog/reserved-names.js +42 -0
  183. package/dist/catalog/scope-orgs.d.ts +21 -0
  184. package/dist/catalog/scope-orgs.js +67 -0
  185. package/dist/catalog/scope-state.d.ts +35 -0
  186. package/dist/catalog/scope-state.js +87 -0
  187. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  188. package/dist/catalog/scope-sync-workers.js +29 -0
  189. package/dist/catalog/scope-sync.d.ts +176 -0
  190. package/dist/catalog/scope-sync.js +576 -0
  191. package/dist/catalog/scope.d.ts +42 -0
  192. package/dist/catalog/scope.js +42 -0
  193. package/dist/catalog/unshare.d.ts +22 -0
  194. package/dist/catalog/unshare.js +118 -0
  195. package/dist/channels/actions.d.ts +6 -4
  196. package/dist/channels/actions.js +11 -4
  197. package/dist/channels/cards.d.ts +33 -11
  198. package/dist/channels/cards.js +96 -24
  199. package/dist/channels/channels.module.d.ts +40 -0
  200. package/dist/channels/channels.module.js +130 -0
  201. package/dist/channels/channels.schemas.d.ts +37 -0
  202. package/dist/channels/channels.schemas.js +38 -0
  203. package/dist/channels/connections.controller.d.ts +44 -37
  204. package/dist/channels/connections.controller.js +83 -38
  205. package/dist/channels/connections.service.d.ts +101 -30
  206. package/dist/channels/connections.service.js +380 -147
  207. package/dist/channels/inbound.d.ts +44 -38
  208. package/dist/channels/inbound.js +190 -44
  209. package/dist/channels/job-ids.d.ts +10 -0
  210. package/dist/channels/job-ids.js +10 -0
  211. package/dist/channels/jobs.d.ts +85 -0
  212. package/dist/channels/jobs.js +157 -0
  213. package/dist/channels/outbound.d.ts +71 -80
  214. package/dist/channels/outbound.js +219 -202
  215. package/dist/channels/phrases.d.ts +33 -2
  216. package/dist/channels/phrases.js +29 -1
  217. package/dist/channels/supervisor.d.ts +88 -46
  218. package/dist/channels/supervisor.js +230 -132
  219. package/dist/channels/threads.d.ts +34 -8
  220. package/dist/channels/threads.js +79 -13
  221. package/dist/channels/webhook.d.ts +20 -14
  222. package/dist/channels/webhook.js +51 -20
  223. package/dist/config/docs.js +5 -1
  224. package/dist/config/load.d.ts +3 -2
  225. package/dist/config/load.js +3 -2
  226. package/dist/config/nacos-source.js +11 -2
  227. package/dist/config/schema.d.ts +36 -2
  228. package/dist/config/schema.js +226 -25
  229. package/dist/conversations/access.d.ts +31 -0
  230. package/dist/conversations/access.js +110 -0
  231. package/dist/conversations/agent-tree.d.ts +46 -0
  232. package/dist/conversations/agent-tree.js +92 -0
  233. package/dist/conversations/artifacts.d.ts +11 -11
  234. package/dist/conversations/artifacts.js +36 -10
  235. package/dist/conversations/attachments.controller.d.ts +1 -1
  236. package/dist/conversations/attachments.controller.js +8 -6
  237. package/dist/conversations/attachments.module.d.ts +7 -0
  238. package/dist/conversations/attachments.module.js +25 -0
  239. package/dist/conversations/attachments.service.d.ts +60 -22
  240. package/dist/conversations/attachments.service.js +249 -51
  241. package/dist/conversations/conversations.controller.d.ts +86 -50
  242. package/dist/conversations/conversations.controller.js +184 -103
  243. package/dist/conversations/conversations.module.d.ts +8 -0
  244. package/dist/conversations/conversations.module.js +72 -0
  245. package/dist/conversations/conversations.schemas.d.ts +52 -0
  246. package/dist/conversations/conversations.schemas.js +79 -0
  247. package/dist/conversations/conversations.service.d.ts +166 -49
  248. package/dist/conversations/conversations.service.js +383 -179
  249. package/dist/conversations/environment-status.d.ts +24 -0
  250. package/dist/conversations/environment-status.js +71 -0
  251. package/dist/conversations/event-log.d.ts +64 -27
  252. package/dist/conversations/event-log.js +167 -31
  253. package/dist/conversations/events.d.ts +252 -9
  254. package/dist/conversations/events.js +243 -32
  255. package/dist/conversations/files.d.ts +10 -10
  256. package/dist/conversations/files.js +37 -11
  257. package/dist/conversations/idem-keys.d.ts +5 -0
  258. package/dist/conversations/idem-keys.js +5 -0
  259. package/dist/conversations/job-ids.d.ts +6 -0
  260. package/dist/conversations/job-ids.js +6 -0
  261. package/dist/conversations/message-context.d.ts +79 -0
  262. package/dist/conversations/message-context.js +145 -0
  263. package/dist/conversations/outputs-read.d.ts +11 -11
  264. package/dist/conversations/outputs-read.js +31 -7
  265. package/dist/conversations/queue.d.ts +53 -58
  266. package/dist/conversations/queue.js +37 -293
  267. package/dist/conversations/queue.service.d.ts +60 -0
  268. package/dist/conversations/queue.service.js +350 -0
  269. package/dist/conversations/titles.d.ts +83 -27
  270. package/dist/conversations/titles.js +195 -71
  271. package/dist/conversations/tree.d.ts +17 -0
  272. package/dist/conversations/tree.js +42 -0
  273. package/dist/ctx/bus.js +9 -3
  274. package/dist/ctx/create-ctx.d.ts +26 -1
  275. package/dist/ctx/create-ctx.js +45 -16
  276. package/dist/ctx/lock.d.ts +7 -3
  277. package/dist/ctx/lock.js +9 -20
  278. package/dist/ctx/secrets.d.ts +10 -2
  279. package/dist/ctx/secrets.js +7 -3
  280. package/dist/db/kernel-schema.d.ts +550 -25
  281. package/dist/db/pool.d.ts +10 -0
  282. package/dist/db/pool.js +4 -0
  283. package/dist/devices/device-auth.controller.d.ts +42 -0
  284. package/dist/devices/device-auth.controller.js +116 -0
  285. package/dist/devices/device-auth.d.ts +119 -0
  286. package/dist/devices/device-auth.js +403 -0
  287. package/dist/devices/device-auth.module.d.ts +7 -0
  288. package/dist/devices/device-auth.module.js +25 -0
  289. package/dist/devices/device-gateway.d.ts +128 -0
  290. package/dist/devices/device-gateway.js +530 -0
  291. package/dist/devices/device-provider.d.ts +89 -0
  292. package/dist/devices/device-provider.js +151 -0
  293. package/dist/devices/device-routes.d.ts +36 -0
  294. package/dist/devices/device-routes.js +90 -0
  295. package/dist/devices/devices.module.d.ts +16 -0
  296. package/dist/devices/devices.module.js +44 -0
  297. package/dist/devices/dto.d.ts +66 -0
  298. package/dist/devices/dto.js +44 -0
  299. package/dist/devices/keys.d.ts +25 -0
  300. package/dist/devices/keys.js +25 -0
  301. package/dist/devices/machines.d.ts +118 -0
  302. package/dist/devices/machines.js +366 -0
  303. package/dist/devices/relay.d.ts +100 -0
  304. package/dist/devices/relay.js +373 -0
  305. package/dist/devices/targets.d.ts +28 -0
  306. package/dist/devices/targets.js +73 -0
  307. package/dist/environments/access.d.ts +66 -0
  308. package/dist/environments/access.js +113 -0
  309. package/dist/environments/conversation-environments.d.ts +75 -0
  310. package/dist/environments/conversation-environments.js +231 -0
  311. package/dist/environments/dto.d.ts +25 -0
  312. package/dist/environments/dto.js +12 -0
  313. package/dist/environments/environments.controller.d.ts +36 -0
  314. package/dist/environments/environments.controller.js +124 -0
  315. package/dist/environments/environments.module.d.ts +8 -0
  316. package/dist/environments/environments.module.js +31 -0
  317. package/dist/environments/environments.schemas.d.ts +3 -0
  318. package/dist/environments/environments.schemas.js +14 -0
  319. package/dist/environments/environments.service.d.ts +251 -0
  320. package/dist/environments/environments.service.js +791 -0
  321. package/dist/environments/label.d.ts +11 -0
  322. package/dist/environments/label.js +25 -0
  323. package/dist/environments/legacy-cleanup.job.d.ts +34 -0
  324. package/dist/environments/legacy-cleanup.job.js +141 -0
  325. package/dist/errors.d.ts +135 -2
  326. package/dist/errors.js +135 -2
  327. package/dist/evals/budget.d.ts +42 -21
  328. package/dist/evals/budget.js +114 -62
  329. package/dist/evals/evals.module.d.ts +31 -0
  330. package/dist/evals/evals.module.js +114 -0
  331. package/dist/evals/evals.schemas.d.ts +110 -0
  332. package/dist/evals/evals.schemas.js +107 -0
  333. package/dist/evals/jobs.d.ts +20 -0
  334. package/dist/evals/jobs.js +45 -0
  335. package/dist/evals/reconstruct.d.ts +18 -9
  336. package/dist/evals/reconstruct.js +36 -10
  337. package/dist/evals/recorded-tools.d.ts +37 -1
  338. package/dist/evals/recorded-tools.js +120 -10
  339. package/dist/evals/run-replay.d.ts +75 -10
  340. package/dist/evals/run-replay.js +218 -94
  341. package/dist/evals/runs.controller.d.ts +3 -58
  342. package/dist/evals/runs.controller.js +18 -50
  343. package/dist/evals/runs.service.d.ts +31 -52
  344. package/dist/evals/runs.service.js +281 -255
  345. package/dist/evals/sets.controller.d.ts +3 -29
  346. package/dist/evals/sets.controller.js +18 -39
  347. package/dist/evals/sets.service.d.ts +29 -13
  348. package/dist/evals/sets.service.js +262 -202
  349. package/dist/evals/snapshot.d.ts +5 -4
  350. package/dist/evals/snapshot.js +17 -4
  351. package/dist/evals/step-replay.d.ts +6 -8
  352. package/dist/evals/step-replay.js +17 -10
  353. package/dist/evals/trajectory.controller.d.ts +1 -1
  354. package/dist/evals/trajectory.controller.js +11 -7
  355. package/dist/evals/trajectory.d.ts +2 -2
  356. package/dist/evals/trajectory.js +1 -1
  357. package/dist/evals/trajectory.service.d.ts +13 -7
  358. package/dist/evals/trajectory.service.js +56 -21
  359. package/dist/evals/worker.d.ts +48 -31
  360. package/dist/evals/worker.js +229 -124
  361. package/dist/extensions/admin-ops.d.ts +133 -41
  362. package/dist/extensions/admin-ops.js +378 -172
  363. package/dist/extensions/admin-view.d.ts +82 -32
  364. package/dist/extensions/admin-view.js +284 -71
  365. package/dist/extensions/approvals.d.ts +24 -10
  366. package/dist/extensions/approvals.js +73 -46
  367. package/dist/extensions/blobs.d.ts +27 -10
  368. package/dist/extensions/blobs.js +112 -45
  369. package/dist/extensions/bootstrap.d.ts +99 -36
  370. package/dist/extensions/bootstrap.js +290 -134
  371. package/dist/extensions/cli.d.ts +32 -10
  372. package/dist/extensions/cli.js +52 -98
  373. package/dist/extensions/config-hash.d.ts +10 -0
  374. package/dist/extensions/config-hash.js +38 -0
  375. package/dist/extensions/config-issues.d.ts +19 -0
  376. package/dist/extensions/config-issues.js +48 -0
  377. package/dist/extensions/config-json-schema.d.ts +43 -7
  378. package/dist/extensions/config-json-schema.js +124 -58
  379. package/dist/extensions/deployment-config-store.d.ts +55 -0
  380. package/dist/extensions/deployment-config-store.js +133 -0
  381. package/dist/extensions/deployment-config.d.ts +146 -70
  382. package/dist/extensions/deployment-config.js +439 -246
  383. package/dist/extensions/display-name.d.ts +22 -0
  384. package/dist/extensions/display-name.js +77 -0
  385. package/dist/extensions/effective-config.d.ts +127 -0
  386. package/dist/extensions/effective-config.js +368 -0
  387. package/dist/extensions/enabled.d.ts +5 -5
  388. package/dist/extensions/extensions.module.d.ts +8 -0
  389. package/dist/extensions/extensions.module.js +96 -0
  390. package/dist/extensions/hooks.d.ts +40 -6
  391. package/dist/extensions/hooks.js +83 -17
  392. package/dist/extensions/host.d.ts +161 -80
  393. package/dist/extensions/host.js +505 -213
  394. package/dist/extensions/installs.d.ts +73 -19
  395. package/dist/extensions/installs.js +174 -37
  396. package/dist/extensions/job-ids.d.ts +6 -0
  397. package/dist/extensions/job-ids.js +6 -0
  398. package/dist/extensions/lifecycle-topics.d.ts +18 -0
  399. package/dist/extensions/lifecycle-topics.js +18 -0
  400. package/dist/extensions/lifecycle.d.ts +35 -47
  401. package/dist/extensions/lifecycle.js +103 -39
  402. package/dist/extensions/locks.d.ts +45 -0
  403. package/dist/extensions/locks.js +112 -0
  404. package/dist/extensions/migrate-lock.d.ts +3 -4
  405. package/dist/extensions/org-config.d.ts +141 -49
  406. package/dist/extensions/org-config.js +471 -243
  407. package/dist/extensions/org-levels.d.ts +37 -0
  408. package/dist/extensions/org-levels.js +71 -0
  409. package/dist/extensions/org-overrides.d.ts +151 -0
  410. package/dist/extensions/org-overrides.js +524 -0
  411. package/dist/extensions/package.d.ts +14 -1
  412. package/dist/extensions/package.js +51 -2
  413. package/dist/extensions/permission-view.d.ts +59 -6
  414. package/dist/extensions/permission-view.js +7 -5
  415. package/dist/extensions/plugin-guides.d.ts +129 -0
  416. package/dist/extensions/plugin-guides.js +283 -0
  417. package/dist/extensions/plugin-icons.d.ts +54 -0
  418. package/dist/extensions/plugin-icons.js +125 -0
  419. package/dist/extensions/plugin-items.d.ts +21 -0
  420. package/dist/extensions/plugin-items.js +42 -0
  421. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  422. package/dist/extensions/point-defaults.controller.js +69 -0
  423. package/dist/extensions/point-defaults.d.ts +73 -0
  424. package/dist/extensions/point-defaults.js +236 -0
  425. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  426. package/dist/extensions/point-defaults.schemas.js +14 -0
  427. package/dist/extensions/registry.d.ts +50 -2
  428. package/dist/extensions/registry.js +91 -4
  429. package/dist/extensions/resolve.d.ts +51 -1
  430. package/dist/extensions/resolve.js +85 -3
  431. package/dist/extensions/single-provider.d.ts +92 -0
  432. package/dist/extensions/single-provider.js +180 -0
  433. package/dist/extensions/sources.d.ts +19 -10
  434. package/dist/extensions/sources.js +34 -13
  435. package/dist/extensions/state.module.d.ts +9 -0
  436. package/dist/extensions/state.module.js +38 -0
  437. package/dist/extensions/unavailable.d.ts +50 -0
  438. package/dist/extensions/unavailable.js +115 -0
  439. package/dist/files/files.module.d.ts +3 -0
  440. package/dist/files/files.module.js +22 -0
  441. package/dist/files/previewers.controller.d.ts +7 -2
  442. package/dist/files/previewers.controller.js +19 -12
  443. package/dist/files/previewers.d.ts +21 -19
  444. package/dist/files/previewers.js +114 -38
  445. package/dist/files/previewers.schemas.d.ts +10 -0
  446. package/dist/files/previewers.schemas.js +9 -0
  447. package/dist/http/adapter.d.ts +3 -0
  448. package/dist/http/adapter.js +25 -0
  449. package/dist/http/api.module.d.ts +3 -110
  450. package/dist/http/api.module.js +86 -358
  451. package/dist/http/app.d.ts +22 -17
  452. package/dist/http/app.js +46 -65
  453. package/dist/http/error-filter.module.d.ts +5 -0
  454. package/dist/http/error-filter.module.js +18 -0
  455. package/dist/http/error.filter.js +2 -2
  456. package/dist/http/{gateway.module.d.ts → gateway-routes.d.ts} +7 -3
  457. package/dist/http/gateway-routes.js +16 -0
  458. package/dist/http/nest-logger.d.ts +6 -5
  459. package/dist/http/nest-logger.js +24 -10
  460. package/dist/http/plugin-dispatch.d.ts +4 -1
  461. package/dist/http/plugin-dispatch.js +14 -2
  462. package/dist/identity/accounts.d.ts +130 -38
  463. package/dist/identity/accounts.js +373 -186
  464. package/dist/identity/api-tokens.d.ts +11 -7
  465. package/dist/identity/api-tokens.js +71 -44
  466. package/dist/identity/audit.d.ts +9 -5
  467. package/dist/identity/audit.js +5 -1
  468. package/dist/identity/auth.controller.d.ts +11 -10
  469. package/dist/identity/auth.controller.js +40 -30
  470. package/dist/identity/auth.guard.d.ts +16 -8
  471. package/dist/identity/auth.guard.js +41 -13
  472. package/dist/identity/binding.d.ts +9 -11
  473. package/dist/identity/binding.js +41 -13
  474. package/dist/identity/cookies.d.ts +26 -5
  475. package/dist/identity/cookies.js +58 -6
  476. package/dist/identity/external-identity-lock.d.ts +17 -0
  477. package/dist/identity/external-identity-lock.js +39 -0
  478. package/dist/identity/external.d.ts +19 -15
  479. package/dist/identity/external.js +163 -125
  480. package/dist/identity/identity.module.d.ts +6 -0
  481. package/dist/identity/identity.module.js +59 -0
  482. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  483. package/dist/identity/initial-passwords.controller.js +49 -0
  484. package/dist/identity/initial-passwords.d.ts +61 -0
  485. package/dist/identity/initial-passwords.job.d.ts +16 -0
  486. package/dist/identity/initial-passwords.job.js +46 -0
  487. package/dist/identity/initial-passwords.js +159 -0
  488. package/dist/identity/me.controller.d.ts +32 -15
  489. package/dist/identity/me.controller.js +78 -33
  490. package/dist/identity/me.schemas.d.ts +14 -0
  491. package/dist/identity/me.schemas.js +17 -0
  492. package/dist/identity/principal.d.ts +11 -3
  493. package/dist/identity/principal.js +11 -3
  494. package/dist/identity/sessions.d.ts +24 -10
  495. package/dist/identity/sessions.js +119 -42
  496. package/dist/identity/settings.d.ts +42 -23
  497. package/dist/identity/settings.js +137 -72
  498. package/dist/identity/sso.controller.d.ts +7 -7
  499. package/dist/identity/sso.controller.js +13 -9
  500. package/dist/identity/sso.d.ts +9 -12
  501. package/dist/identity/sso.js +54 -24
  502. package/dist/identity/super-admin.d.ts +20 -0
  503. package/dist/identity/super-admin.js +81 -0
  504. package/dist/inbox/inbox.module.d.ts +6 -0
  505. package/dist/inbox/inbox.module.js +26 -0
  506. package/dist/inbox/inbox.schemas.d.ts +8 -0
  507. package/dist/inbox/inbox.schemas.js +11 -0
  508. package/dist/inbox/inbox.service.d.ts +68 -11
  509. package/dist/inbox/inbox.service.js +104 -13
  510. package/dist/inbox/org-notices.d.ts +63 -0
  511. package/dist/inbox/org-notices.js +91 -0
  512. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  513. package/dist/inbox/platform-inbox.controller.js +58 -0
  514. package/dist/inbox/platform-inbox.service.d.ts +151 -0
  515. package/dist/inbox/platform-inbox.service.js +263 -0
  516. package/dist/inbox/platform-notices.d.ts +19 -0
  517. package/dist/inbox/platform-notices.js +9 -0
  518. package/dist/index.d.ts +22 -13
  519. package/dist/index.js +16 -7
  520. package/dist/infra/cache/cache.module.d.ts +3 -0
  521. package/dist/infra/cache/cache.module.js +16 -0
  522. package/dist/infra/cache/cache.service.d.ts +21 -0
  523. package/dist/infra/cache/cache.service.js +80 -0
  524. package/dist/infra/cache/cacheable.decorator.d.ts +32 -0
  525. package/dist/infra/cache/cacheable.decorator.js +83 -0
  526. package/dist/infra/cli/kernel-cli.module.d.ts +66 -0
  527. package/dist/infra/cli/kernel-cli.module.js +173 -0
  528. package/dist/infra/close-within.d.ts +15 -0
  529. package/dist/infra/close-within.js +36 -0
  530. package/dist/infra/config/config.module.d.ts +13 -0
  531. package/dist/infra/config/config.module.js +39 -0
  532. package/dist/infra/config/kernel-config.service.d.ts +25 -0
  533. package/dist/infra/config/kernel-config.service.js +157 -0
  534. package/dist/infra/database/after-commit.d.ts +6 -0
  535. package/dist/infra/database/after-commit.js +9 -0
  536. package/dist/infra/database/database.module.d.ts +25 -0
  537. package/dist/infra/database/database.module.js +91 -0
  538. package/dist/infra/database/kernel-db.d.ts +22 -0
  539. package/dist/infra/database/kernel-db.js +65 -0
  540. package/dist/infra/database/transaction-host.d.ts +50 -0
  541. package/dist/infra/database/transaction-host.js +125 -0
  542. package/dist/infra/database/transactional.decorator.d.ts +15 -0
  543. package/dist/infra/database/transactional.decorator.js +27 -0
  544. package/dist/infra/database/xact-lock.d.ts +17 -0
  545. package/dist/infra/database/xact-lock.js +43 -0
  546. package/dist/infra/events/kernel-events.d.ts +121 -0
  547. package/dist/infra/events/kernel-events.js +65 -0
  548. package/dist/infra/health/health.controller.d.ts +26 -0
  549. package/dist/infra/health/health.controller.js +104 -0
  550. package/dist/infra/health/health.module.d.ts +9 -0
  551. package/dist/infra/health/health.module.js +24 -0
  552. package/dist/infra/health/health.options.d.ts +10 -0
  553. package/dist/infra/health/health.options.js +15 -0
  554. package/dist/infra/health/shutdown-state.d.ts +6 -0
  555. package/dist/infra/health/shutdown-state.js +2 -0
  556. package/dist/infra/lifecycle/graceful-shutdown.module.d.ts +6 -0
  557. package/dist/infra/lifecycle/graceful-shutdown.module.js +23 -0
  558. package/dist/infra/lifecycle/graceful-shutdown.service.d.ts +70 -0
  559. package/dist/infra/lifecycle/graceful-shutdown.service.js +135 -0
  560. package/dist/infra/lifecycle/process-guards.d.ts +52 -0
  561. package/dist/infra/lifecycle/process-guards.js +90 -0
  562. package/dist/infra/lifecycle/shutdown-signals.d.ts +30 -0
  563. package/dist/infra/lifecycle/shutdown-signals.js +48 -0
  564. package/dist/infra/lock/key-template.d.ts +13 -0
  565. package/dist/infra/lock/key-template.js +46 -0
  566. package/dist/infra/lock/lock.module.d.ts +3 -0
  567. package/dist/infra/lock/lock.module.js +16 -0
  568. package/dist/infra/lock/lock.service.d.ts +120 -0
  569. package/dist/infra/lock/lock.service.js +343 -0
  570. package/dist/infra/lock/shared-lease.d.ts +44 -0
  571. package/dist/infra/lock/shared-lease.js +121 -0
  572. package/dist/infra/lock/with-lock.decorator.d.ts +28 -0
  573. package/dist/infra/lock/with-lock.decorator.js +49 -0
  574. package/dist/infra/logging/logging.module.d.ts +18 -0
  575. package/dist/infra/logging/logging.module.js +52 -0
  576. package/dist/infra/queue/add-job-once.d.ts +14 -0
  577. package/dist/infra/queue/add-job-once.js +16 -0
  578. package/dist/infra/queue/configured-processor.d.ts +18 -0
  579. package/dist/infra/queue/configured-processor.js +23 -0
  580. package/dist/infra/queue/job-failure.d.ts +18 -0
  581. package/dist/infra/queue/job-failure.js +26 -0
  582. package/dist/infra/queue/queue-shutdown.d.ts +27 -0
  583. package/dist/infra/queue/queue-shutdown.js +81 -0
  584. package/dist/infra/queue/queue.module.d.ts +16 -0
  585. package/dist/infra/queue/queue.module.js +61 -0
  586. package/dist/infra/queue/redis-connection.d.ts +13 -0
  587. package/dist/infra/queue/redis-connection.js +25 -0
  588. package/dist/infra/queue/retired-schedulers.d.ts +7 -0
  589. package/dist/infra/queue/retired-schedulers.js +9 -0
  590. package/dist/infra/queue/run-job.d.ts +16 -0
  591. package/dist/infra/queue/run-job.js +19 -0
  592. package/dist/infra/redis/redis.module.d.ts +24 -0
  593. package/dist/infra/redis/redis.module.js +91 -0
  594. package/dist/infra/schedule/cron-tick.d.ts +12 -0
  595. package/dist/infra/schedule/cron-tick.js +25 -0
  596. package/dist/infra/schedule/locked-cron.decorator.d.ts +27 -0
  597. package/dist/infra/schedule/locked-cron.decorator.js +53 -0
  598. package/dist/infra/schedule/locked-interval.d.ts +69 -0
  599. package/dist/infra/schedule/locked-interval.js +190 -0
  600. package/dist/infra/schedule/locked-tick.d.ts +90 -0
  601. package/dist/infra/schedule/locked-tick.js +137 -0
  602. package/dist/infra/schedule/schedule.module.d.ts +8 -0
  603. package/dist/infra/schedule/schedule.module.js +27 -0
  604. package/dist/infra/schedule/scheduled-runs.d.ts +69 -0
  605. package/dist/infra/schedule/scheduled-runs.js +163 -0
  606. package/dist/infra/swagger/swagger.d.ts +16 -0
  607. package/dist/infra/swagger/swagger.js +31 -0
  608. package/dist/infra/throttler/credential-throttler.d.ts +35 -0
  609. package/dist/infra/throttler/credential-throttler.js +77 -0
  610. package/dist/infra/throttler/named-throttlers.d.ts +36 -0
  611. package/dist/infra/throttler/named-throttlers.js +157 -0
  612. package/dist/infra/throttler/redis-throttler-storage.d.ts +38 -0
  613. package/dist/infra/throttler/redis-throttler-storage.js +130 -0
  614. package/dist/infra/throttler/throttler.guard.d.ts +23 -0
  615. package/dist/infra/throttler/throttler.guard.js +68 -0
  616. package/dist/infra/throttler/throttler.module.d.ts +15 -0
  617. package/dist/infra/throttler/throttler.module.js +53 -0
  618. package/dist/infra/tokens.d.ts +20 -0
  619. package/dist/infra/tokens.js +20 -0
  620. package/dist/infra/validation/create-zod-dto.d.ts +23 -0
  621. package/dist/infra/validation/create-zod-dto.js +35 -0
  622. package/dist/infra/validation/parse-with-zod.d.ts +7 -0
  623. package/dist/infra/validation/parse-with-zod.js +12 -0
  624. package/dist/infra/validation/validation.module.d.ts +3 -0
  625. package/dist/infra/validation/validation.module.js +16 -0
  626. package/dist/infra/validation/zod-params.d.ts +7 -0
  627. package/dist/infra/validation/zod-params.js +42 -0
  628. package/dist/infra/validation/zod-validation.pipe.d.ts +11 -0
  629. package/dist/infra/validation/zod-validation.pipe.js +31 -0
  630. package/dist/kernel.d.ts +9 -244
  631. package/dist/kernel.js +8 -1305
  632. package/dist/kernel.module.d.ts +17 -0
  633. package/dist/kernel.module.js +145 -0
  634. package/dist/lifecycle/kernel-lifecycle.d.ts +140 -0
  635. package/dist/lifecycle/kernel-lifecycle.js +465 -0
  636. package/dist/lifecycle/tokens.d.ts +3 -0
  637. package/dist/lifecycle/tokens.js +3 -0
  638. package/dist/log-context.d.ts +2 -0
  639. package/dist/log-context.js +4 -0
  640. package/dist/log.d.ts +13 -1
  641. package/dist/log.js +93 -17
  642. package/dist/models/embeddings.d.ts +82 -0
  643. package/dist/models/embeddings.js +326 -0
  644. package/dist/models/enablement.controller.d.ts +40 -0
  645. package/dist/models/enablement.controller.js +74 -0
  646. package/dist/models/enablement.d.ts +101 -0
  647. package/dist/models/enablement.js +264 -0
  648. package/dist/models/models.module.d.ts +7 -0
  649. package/dist/models/models.module.js +36 -0
  650. package/dist/models/org-models.schemas.d.ts +8 -0
  651. package/dist/models/org-models.schemas.js +22 -0
  652. package/dist/models/prices.d.ts +13 -5
  653. package/dist/models/prices.js +69 -39
  654. package/dist/models/purposes.controller.d.ts +6 -4
  655. package/dist/models/purposes.controller.js +16 -11
  656. package/dist/models/purposes.d.ts +103 -23
  657. package/dist/models/purposes.js +208 -77
  658. package/dist/orgs/directory-sync.controller.d.ts +1 -1
  659. package/dist/orgs/directory-sync.controller.js +2 -2
  660. package/dist/orgs/directory-sync.d.ts +74 -35
  661. package/dist/orgs/directory-sync.js +243 -132
  662. package/dist/orgs/invitations.controller.d.ts +8 -8
  663. package/dist/orgs/invitations.controller.js +27 -26
  664. package/dist/orgs/invitations.service.d.ts +12 -9
  665. package/dist/orgs/invitations.service.js +130 -92
  666. package/dist/orgs/job-ids.d.ts +8 -0
  667. package/dist/orgs/job-ids.js +8 -0
  668. package/dist/orgs/members.service.d.ts +19 -12
  669. package/dist/orgs/members.service.js +161 -117
  670. package/dist/orgs/offboarding.d.ts +61 -60
  671. package/dist/orgs/offboarding.js +206 -95
  672. package/dist/orgs/org-lock.d.ts +33 -19
  673. package/dist/orgs/org-lock.js +94 -35
  674. package/dist/orgs/org.guard.d.ts +11 -1
  675. package/dist/orgs/org.guard.js +45 -34
  676. package/dist/orgs/orgs.controller.d.ts +13 -16
  677. package/dist/orgs/orgs.controller.js +29 -20
  678. package/dist/orgs/orgs.module.d.ts +6 -0
  679. package/dist/orgs/orgs.module.js +71 -0
  680. package/dist/orgs/orgs.schemas.d.ts +8 -0
  681. package/dist/orgs/orgs.schemas.js +16 -0
  682. package/dist/orgs/orgs.service.d.ts +47 -21
  683. package/dist/orgs/orgs.service.js +166 -91
  684. package/dist/orgs/roles.d.ts +1 -1
  685. package/dist/orgs/roles.js +5 -1
  686. package/dist/orgs/settings.controller.d.ts +2 -2
  687. package/dist/orgs/settings.controller.js +8 -6
  688. package/dist/orgs/settings.service.d.ts +45 -14
  689. package/dist/orgs/settings.service.js +110 -51
  690. package/dist/overrides.d.ts +63 -0
  691. package/dist/overrides.js +34 -0
  692. package/dist/platform/actor.d.ts +48 -0
  693. package/dist/platform/actor.js +100 -0
  694. package/dist/platform/agent-docs.d.ts +18 -0
  695. package/dist/platform/agent-docs.js +59 -0
  696. package/dist/platform/availability.d.ts +14 -0
  697. package/dist/platform/availability.js +43 -0
  698. package/dist/platform/errors.d.ts +28 -0
  699. package/dist/platform/errors.js +65 -0
  700. package/dist/platform/exclusions.d.ts +11 -0
  701. package/dist/platform/exclusions.js +667 -0
  702. package/dist/platform/method.d.ts +6 -0
  703. package/dist/platform/method.js +15 -0
  704. package/dist/platform/operation.d.ts +169 -0
  705. package/dist/platform/operation.js +90 -0
  706. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  707. package/dist/platform/ops/accounts.ops.js +291 -0
  708. package/dist/platform/ops/admin.ops.d.ts +36 -0
  709. package/dist/platform/ops/admin.ops.js +389 -0
  710. package/dist/platform/ops/agent-skills.ops.d.ts +24 -0
  711. package/dist/platform/ops/agent-skills.ops.js +226 -0
  712. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  713. package/dist/platform/ops/agent-templates.ops.js +272 -0
  714. package/dist/platform/ops/agents.ops.d.ts +37 -0
  715. package/dist/platform/ops/agents.ops.js +717 -0
  716. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  717. package/dist/platform/ops/approvals.ops.js +116 -0
  718. package/dist/platform/ops/background.ops.d.ts +14 -0
  719. package/dist/platform/ops/background.ops.js +134 -0
  720. package/dist/platform/ops/catalog-admin.ops.d.ts +74 -0
  721. package/dist/platform/ops/catalog-admin.ops.js +599 -0
  722. package/dist/platform/ops/channels.ops.d.ts +16 -0
  723. package/dist/platform/ops/channels.ops.js +195 -0
  724. package/dist/platform/ops/components.ops.d.ts +46 -0
  725. package/dist/platform/ops/components.ops.js +853 -0
  726. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  727. package/dist/platform/ops/connectors.ops.js +188 -0
  728. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  729. package/dist/platform/ops/conversations.ops.js +470 -0
  730. package/dist/platform/ops/environments.ops.d.ts +26 -0
  731. package/dist/platform/ops/environments.ops.js +311 -0
  732. package/dist/platform/ops/errors.d.ts +16 -0
  733. package/dist/platform/ops/errors.js +30 -0
  734. package/dist/platform/ops/evals.ops.d.ts +28 -0
  735. package/dist/platform/ops/evals.ops.js +783 -0
  736. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  737. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  738. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  739. package/dist/platform/ops/extensions.ops.js +347 -0
  740. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  741. package/dist/platform/ops/inbox.ops.js +378 -0
  742. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  743. package/dist/platform/ops/marketplaces.ops.js +466 -0
  744. package/dist/platform/ops/models.ops.d.ts +25 -0
  745. package/dist/platform/ops/models.ops.js +232 -0
  746. package/dist/platform/ops/org-plugins.ops.d.ts +29 -0
  747. package/dist/platform/ops/org-plugins.ops.js +329 -0
  748. package/dist/platform/ops/org-settings.ops.d.ts +16 -0
  749. package/dist/platform/ops/org-settings.ops.js +102 -0
  750. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  751. package/dist/platform/ops/orgs.ops.js +295 -0
  752. package/dist/platform/ops/other-orgs.d.ts +20 -0
  753. package/dist/platform/ops/other-orgs.js +72 -0
  754. package/dist/platform/ops/paging.d.ts +14 -0
  755. package/dist/platform/ops/paging.js +20 -0
  756. package/dist/platform/ops/platform.ops.d.ts +28 -0
  757. package/dist/platform/ops/platform.ops.js +204 -0
  758. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  759. package/dist/platform/ops/plugins.ops.js +476 -0
  760. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  761. package/dist/platform/ops/previewers.ops.js +109 -0
  762. package/dist/platform/ops/requests.ops.d.ts +14 -0
  763. package/dist/platform/ops/requests.ops.js +191 -0
  764. package/dist/platform/ops/role.d.ts +4 -0
  765. package/dist/platform/ops/role.js +10 -0
  766. package/dist/platform/ops/skills.ops.d.ts +17 -0
  767. package/dist/platform/ops/skills.ops.js +216 -0
  768. package/dist/platform/ops/summary.d.ts +10 -0
  769. package/dist/platform/ops/summary.js +18 -0
  770. package/dist/platform/ops/unavailable.d.ts +23 -0
  771. package/dist/platform/ops/unavailable.js +118 -0
  772. package/dist/platform/parity.d.ts +33 -0
  773. package/dist/platform/parity.js +272 -0
  774. package/dist/platform/platform-ops.module.d.ts +39 -0
  775. package/dist/platform/platform-ops.module.js +122 -0
  776. package/dist/platform/platform.module.d.ts +8 -0
  777. package/dist/platform/platform.module.js +25 -0
  778. package/dist/platform/registry.d.ts +30 -0
  779. package/dist/platform/registry.js +111 -0
  780. package/dist/platform/route-schemas.d.ts +18 -0
  781. package/dist/platform/route-schemas.js +63 -0
  782. package/dist/roles/gateway-role.d.ts +54 -0
  783. package/dist/roles/gateway-role.js +118 -0
  784. package/dist/roles/gateway.module.d.ts +9 -0
  785. package/dist/roles/gateway.module.js +31 -0
  786. package/dist/roles/worker-role.d.ts +65 -0
  787. package/dist/roles/worker-role.js +151 -0
  788. package/dist/roles/worker.module.d.ts +14 -0
  789. package/dist/roles/worker.module.js +106 -0
  790. package/dist/runtime/abort.js +19 -2
  791. package/dist/runtime/checkpointer.d.ts +8 -3
  792. package/dist/runtime/checkpointer.js +87 -55
  793. package/dist/runtime/context/build.d.ts +21 -13
  794. package/dist/runtime/context/build.js +106 -29
  795. package/dist/runtime/context/claude-tools.d.ts +4 -1
  796. package/dist/runtime/context/claude-tools.js +13 -12
  797. package/dist/runtime/context/compaction.js +24 -1
  798. package/dist/runtime/context/environment-paths.d.ts +40 -0
  799. package/dist/runtime/context/environment-paths.js +48 -0
  800. package/dist/runtime/context/legacy-text.d.ts +22 -0
  801. package/dist/runtime/context/legacy-text.js +37 -0
  802. package/dist/runtime/context/reminders.d.ts +2 -0
  803. package/dist/runtime/context/reminders.js +2 -0
  804. package/dist/runtime/context/run-context.d.ts +65 -0
  805. package/dist/runtime/context/run-context.js +215 -0
  806. package/dist/runtime/context/skills.d.ts +29 -11
  807. package/dist/runtime/context/skills.js +46 -32
  808. package/dist/runtime/context/tool-changes.d.ts +27 -0
  809. package/dist/runtime/context/tool-changes.js +60 -0
  810. package/dist/runtime/conversation-lock.d.ts +20 -11
  811. package/dist/runtime/conversation-lock.js +62 -72
  812. package/dist/runtime/hook-calls.d.ts +11 -4
  813. package/dist/runtime/hook-calls.js +41 -13
  814. package/dist/runtime/job-ids.d.ts +10 -0
  815. package/dist/runtime/job-ids.js +10 -0
  816. package/dist/runtime/langgraph-loop.d.ts +3 -1
  817. package/dist/runtime/langgraph-loop.js +37 -18
  818. package/dist/runtime/loop.d.ts +42 -6
  819. package/dist/runtime/loop.js +14 -0
  820. package/dist/runtime/maintenance-queue.d.ts +10 -0
  821. package/dist/runtime/maintenance-queue.js +10 -0
  822. package/dist/runtime/maintenance.d.ts +50 -74
  823. package/dist/runtime/maintenance.js +166 -137
  824. package/dist/runtime/model-call.d.ts +61 -15
  825. package/dist/runtime/model-call.js +128 -84
  826. package/dist/runtime/providers.d.ts +158 -27
  827. package/dist/runtime/providers.js +373 -63
  828. package/dist/runtime/quota.d.ts +17 -3
  829. package/dist/runtime/quota.js +27 -2
  830. package/dist/runtime/retired-schedulers.d.ts +7 -0
  831. package/dist/runtime/retired-schedulers.js +31 -0
  832. package/dist/runtime/run-context.service.d.ts +65 -0
  833. package/dist/runtime/run-context.service.js +236 -0
  834. package/dist/runtime/run-control.d.ts +43 -0
  835. package/dist/runtime/run-control.js +89 -0
  836. package/dist/runtime/run-drafts.d.ts +85 -0
  837. package/dist/runtime/run-drafts.js +230 -0
  838. package/dist/runtime/run-finish.d.ts +27 -18
  839. package/dist/runtime/run-finish.js +98 -51
  840. package/dist/runtime/run-jobs.d.ts +46 -0
  841. package/dist/runtime/run-jobs.js +91 -0
  842. package/dist/runtime/run-processors.d.ts +60 -0
  843. package/dist/runtime/run-processors.js +185 -0
  844. package/dist/runtime/run-queue.d.ts +90 -58
  845. package/dist/runtime/run-queue.js +566 -297
  846. package/dist/runtime/run-steps.d.ts +39 -0
  847. package/dist/runtime/run-steps.js +96 -0
  848. package/dist/runtime/run-worker.d.ts +134 -77
  849. package/dist/runtime/run-worker.js +412 -237
  850. package/dist/runtime/runtime.module.d.ts +10 -0
  851. package/dist/runtime/runtime.module.js +122 -0
  852. package/dist/runtime/step-log.d.ts +51 -0
  853. package/dist/runtime/step-log.js +111 -0
  854. package/dist/runtime/stream.controller.d.ts +28 -9
  855. package/dist/runtime/stream.controller.js +72 -13
  856. package/dist/runtime/stream.d.ts +27 -6
  857. package/dist/runtime/stream.js +102 -7
  858. package/dist/runtime/subagents/child.d.ts +58 -51
  859. package/dist/runtime/subagents/child.js +105 -86
  860. package/dist/runtime/subagents/definition.d.ts +32 -28
  861. package/dist/runtime/subagents/definition.js +89 -143
  862. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  863. package/dist/runtime/subagents/deliveries.js +228 -0
  864. package/dist/runtime/subagents/dispatch.d.ts +197 -27
  865. package/dist/runtime/subagents/dispatch.js +336 -270
  866. package/dist/runtime/subagents/limits.d.ts +32 -8
  867. package/dist/runtime/subagents/limits.js +44 -8
  868. package/dist/runtime/subagents/messages.d.ts +95 -0
  869. package/dist/runtime/subagents/messages.js +328 -0
  870. package/dist/runtime/subagents/org-agents.d.ts +4 -4
  871. package/dist/runtime/subagents/org-agents.js +3 -2
  872. package/dist/runtime/subagents/preamble.d.ts +4 -4
  873. package/dist/runtime/subagents/preamble.js +9 -7
  874. package/dist/runtime/subagents/progress.d.ts +10 -8
  875. package/dist/runtime/subagents/progress.js +11 -6
  876. package/dist/runtime/subagents/render.d.ts +30 -0
  877. package/dist/runtime/subagents/render.js +53 -0
  878. package/dist/runtime/subagents/roster.d.ts +27 -10
  879. package/dist/runtime/subagents/roster.js +49 -13
  880. package/dist/runtime/subagents/skill-fork.d.ts +10 -10
  881. package/dist/runtime/subagents/skill-fork.js +23 -8
  882. package/dist/runtime/subagents/status.d.ts +14 -0
  883. package/dist/runtime/subagents/status.js +23 -0
  884. package/dist/runtime/subagents/subagents.service.d.ts +43 -0
  885. package/dist/runtime/subagents/subagents.service.js +106 -0
  886. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  887. package/dist/runtime/usage-report-jobs.js +158 -0
  888. package/dist/runtime/usage-report.d.ts +121 -83
  889. package/dist/runtime/usage-report.js +355 -181
  890. package/dist/runtime/waits.d.ts +258 -81
  891. package/dist/runtime/waits.js +800 -263
  892. package/dist/sandbox/job-ids.d.ts +10 -0
  893. package/dist/sandbox/job-ids.js +10 -0
  894. package/dist/sandbox/jobs.d.ts +68 -0
  895. package/dist/sandbox/jobs.js +150 -0
  896. package/dist/sandbox/leases.d.ts +73 -82
  897. package/dist/sandbox/leases.js +162 -346
  898. package/dist/sandbox/providers.d.ts +46 -0
  899. package/dist/sandbox/providers.js +83 -0
  900. package/dist/sandbox/sandbox.module.d.ts +9 -0
  901. package/dist/sandbox/sandbox.module.js +36 -0
  902. package/dist/sandbox/sandbox.service.d.ts +359 -151
  903. package/dist/sandbox/sandbox.service.js +950 -435
  904. package/dist/sandbox/unreachable.d.ts +30 -0
  905. package/dist/sandbox/unreachable.js +108 -0
  906. package/dist/skills/catalog.d.ts +40 -26
  907. package/dist/skills/catalog.js +120 -99
  908. package/dist/skills/changes.controller.d.ts +11 -4
  909. package/dist/skills/changes.controller.js +34 -9
  910. package/dist/skills/changes.service.d.ts +31 -21
  911. package/dist/skills/changes.service.js +426 -368
  912. package/dist/skills/invocable.controller.d.ts +2 -2
  913. package/dist/skills/invocable.controller.js +10 -7
  914. package/dist/skills/invocation-keys.d.ts +1 -1
  915. package/dist/skills/invocation-keys.js +1 -1
  916. package/dist/skills/invoke.d.ts +19 -18
  917. package/dist/skills/invoke.js +68 -24
  918. package/dist/skills/package.d.ts +20 -1
  919. package/dist/skills/package.js +28 -1
  920. package/dist/skills/skills.controller.d.ts +33 -7
  921. package/dist/skills/skills.controller.js +79 -12
  922. package/dist/skills/skills.module.d.ts +6 -0
  923. package/dist/skills/skills.module.js +39 -0
  924. package/dist/skills/skills.schemas.d.ts +48 -0
  925. package/dist/skills/skills.schemas.js +61 -0
  926. package/dist/skills/skills.service.d.ts +151 -44
  927. package/dist/skills/skills.service.js +636 -204
  928. package/dist/skills/usable.d.ts +81 -0
  929. package/dist/skills/usable.js +379 -0
  930. package/dist/storage/job-ids.d.ts +6 -0
  931. package/dist/storage/job-ids.js +6 -0
  932. package/dist/storage/purge.d.ts +22 -7
  933. package/dist/storage/purge.js +55 -3
  934. package/dist/storage/storage.module.d.ts +6 -0
  935. package/dist/storage/storage.module.js +23 -0
  936. package/dist/storage/storage.service.d.ts +18 -4
  937. package/dist/storage/storage.service.js +44 -3
  938. package/dist/time-zone.d.ts +5 -0
  939. package/dist/time-zone.js +19 -0
  940. package/dist/tools/approvals.controller.d.ts +1 -1
  941. package/dist/tools/approvals.controller.js +14 -11
  942. package/dist/tools/approvals.schemas.d.ts +21 -0
  943. package/dist/tools/approvals.schemas.js +15 -0
  944. package/dist/tools/approvals.service.d.ts +53 -27
  945. package/dist/tools/approvals.service.js +365 -260
  946. package/dist/tools/breaker.d.ts +2 -2
  947. package/dist/tools/breaker.js +21 -3
  948. package/dist/tools/builtin-names.d.ts +109 -0
  949. package/dist/tools/builtin-names.js +173 -0
  950. package/dist/tools/builtins/agent.d.ts +27 -25
  951. package/dist/tools/builtins/agent.js +66 -63
  952. package/dist/tools/builtins/ask-user.d.ts +3 -3
  953. package/dist/tools/builtins/ask-user.js +3 -3
  954. package/dist/tools/builtins/builtin-tools.d.ts +41 -0
  955. package/dist/tools/builtins/builtin-tools.js +151 -0
  956. package/dist/tools/builtins/current-time.d.ts +26 -0
  957. package/dist/tools/builtins/current-time.js +99 -0
  958. package/dist/tools/builtins/handback.d.ts +28 -0
  959. package/dist/tools/builtins/handback.js +53 -0
  960. package/dist/tools/builtins/platform.d.ts +51 -0
  961. package/dist/tools/builtins/platform.js +451 -0
  962. package/dist/tools/builtins/read-tool-output.d.ts +3 -3
  963. package/dist/tools/builtins/read-tool-output.js +3 -3
  964. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  965. package/dist/tools/builtins/sandbox/bash.js +293 -41
  966. package/dist/tools/builtins/sandbox/common.d.ts +137 -37
  967. package/dist/tools/builtins/sandbox/common.js +222 -62
  968. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  969. package/dist/tools/builtins/sandbox/deliver.js +21 -18
  970. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  971. package/dist/tools/builtins/sandbox/edit.js +65 -51
  972. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  973. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  974. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  975. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  976. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  977. package/dist/tools/builtins/sandbox/glob.js +19 -14
  978. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  979. package/dist/tools/builtins/sandbox/grep.js +155 -36
  980. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  981. package/dist/tools/builtins/sandbox/index.js +13 -5
  982. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  983. package/dist/tools/builtins/sandbox/read.js +30 -20
  984. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  985. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  986. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  987. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  988. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  989. package/dist/tools/builtins/sandbox/write.js +52 -45
  990. package/dist/tools/builtins/send-message.d.ts +56 -0
  991. package/dist/tools/builtins/send-message.js +100 -0
  992. package/dist/tools/builtins/skill-load.d.ts +32 -21
  993. package/dist/tools/builtins/skill-load.js +125 -74
  994. package/dist/tools/builtins/skill-write.d.ts +4 -4
  995. package/dist/tools/builtins/skill-write.js +12 -12
  996. package/dist/tools/builtins/tool-search.d.ts +13 -9
  997. package/dist/tools/builtins/tool-search.js +25 -14
  998. package/dist/tools/builtins/web/errors.d.ts +8 -0
  999. package/dist/tools/builtins/web/errors.js +53 -0
  1000. package/dist/tools/builtins/web/extract.d.ts +62 -0
  1001. package/dist/tools/builtins/web/extract.js +271 -0
  1002. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  1003. package/dist/tools/builtins/web/fetch.js +175 -0
  1004. package/dist/tools/builtins/web/index.d.ts +13 -0
  1005. package/dist/tools/builtins/web/index.js +12 -0
  1006. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  1007. package/dist/tools/builtins/web/page-cache.js +77 -0
  1008. package/dist/tools/builtins/web/search.d.ts +25 -0
  1009. package/dist/tools/builtins/web/search.js +210 -0
  1010. package/dist/tools/builtins/web/url.d.ts +17 -0
  1011. package/dist/tools/builtins/web/url.js +43 -0
  1012. package/dist/tools/canonical-json.d.ts +6 -0
  1013. package/dist/tools/canonical-json.js +16 -0
  1014. package/dist/tools/connector-content.controller.d.ts +1 -1
  1015. package/dist/tools/connector-content.controller.js +11 -6
  1016. package/dist/tools/connector-content.d.ts +12 -15
  1017. package/dist/tools/connector-content.js +53 -18
  1018. package/dist/tools/connectors.controller.d.ts +16 -3
  1019. package/dist/tools/connectors.controller.js +34 -14
  1020. package/dist/tools/connectors.schemas.d.ts +12 -0
  1021. package/dist/tools/connectors.schemas.js +19 -0
  1022. package/dist/tools/connectors.service.d.ts +80 -18
  1023. package/dist/tools/connectors.service.js +529 -358
  1024. package/dist/tools/credentials.d.ts +20 -20
  1025. package/dist/tools/credentials.js +55 -34
  1026. package/dist/tools/display-names.d.ts +9 -0
  1027. package/dist/tools/display-names.js +24 -0
  1028. package/dist/tools/drift.d.ts +29 -41
  1029. package/dist/tools/drift.js +116 -84
  1030. package/dist/tools/elicitation.js +1 -1
  1031. package/dist/tools/extension-tools.controller.d.ts +14 -0
  1032. package/dist/tools/extension-tools.controller.js +37 -0
  1033. package/dist/tools/info.d.ts +73 -13
  1034. package/dist/tools/info.js +151 -39
  1035. package/dist/tools/job-ids.d.ts +13 -0
  1036. package/dist/tools/job-ids.js +15 -0
  1037. package/dist/tools/jobs.d.ts +24 -0
  1038. package/dist/tools/jobs.js +69 -0
  1039. package/dist/tools/legacy-data.d.ts +34 -0
  1040. package/dist/tools/legacy-data.js +76 -0
  1041. package/dist/tools/legacy-keys.d.ts +51 -0
  1042. package/dist/tools/legacy-keys.js +115 -0
  1043. package/dist/tools/naming.d.ts +1 -5
  1044. package/dist/tools/naming.js +1 -7
  1045. package/dist/tools/oauth/flow-paths.d.ts +16 -0
  1046. package/dist/tools/oauth/flow-paths.js +38 -0
  1047. package/dist/tools/oauth/flow.d.ts +30 -30
  1048. package/dist/tools/oauth/flow.js +109 -81
  1049. package/dist/tools/oauth/oauth.controller.d.ts +3 -3
  1050. package/dist/tools/oauth/oauth.controller.js +12 -9
  1051. package/dist/tools/oauth/tokens.d.ts +45 -10
  1052. package/dist/tools/oauth/tokens.js +70 -24
  1053. package/dist/tools/org-tool-switches.d.ts +88 -0
  1054. package/dist/tools/org-tool-switches.js +201 -0
  1055. package/dist/tools/outputs.d.ts +13 -4
  1056. package/dist/tools/outputs.js +48 -4
  1057. package/dist/tools/pipeline.d.ts +108 -80
  1058. package/dist/tools/pipeline.js +396 -409
  1059. package/dist/tools/policy.d.ts +4 -17
  1060. package/dist/tools/policy.js +49 -35
  1061. package/dist/tools/questions.controller.d.ts +2 -2
  1062. package/dist/tools/questions.controller.js +9 -6
  1063. package/dist/tools/questions.service.d.ts +26 -25
  1064. package/dist/tools/questions.service.js +201 -142
  1065. package/dist/tools/registry.d.ts +215 -84
  1066. package/dist/tools/registry.js +382 -264
  1067. package/dist/tools/resources.d.ts +1 -1
  1068. package/dist/tools/resources.js +1 -1
  1069. package/dist/tools/specs.d.ts +5 -4
  1070. package/dist/tools/specs.js +3 -1
  1071. package/dist/tools/tools.module.d.ts +10 -0
  1072. package/dist/tools/tools.module.js +113 -0
  1073. package/dist/tools/validate.js +1 -1
  1074. package/dist/ui/call-extension.d.ts +16 -0
  1075. package/dist/ui/call-extension.js +38 -0
  1076. package/dist/ui/embed-token.d.ts +9 -5
  1077. package/dist/ui/embed-token.js +34 -6
  1078. package/dist/ui/ui-stream.d.ts +22 -17
  1079. package/dist/ui/ui-stream.js +72 -12
  1080. package/dist/ui/ui.module.d.ts +7 -0
  1081. package/dist/ui/ui.module.js +28 -0
  1082. package/dist/ui/views.controller.d.ts +14 -12
  1083. package/dist/ui/views.controller.js +32 -25
  1084. package/dist/ui/views.d.ts +10 -57
  1085. package/dist/ui/views.js +58 -46
  1086. package/package.json +13 -3
  1087. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  1088. package/src/migrations/0064_account_last_org.sql +7 -0
  1089. package/src/migrations/0065_conversation_archive.sql +8 -0
  1090. package/src/migrations/0066_extension_display_name.sql +4 -0
  1091. package/src/migrations/0067_agent_profiles.sql +20 -0
  1092. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  1093. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  1094. package/src/migrations/0070_background_tasks.sql +37 -0
  1095. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  1096. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  1097. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  1098. package/src/migrations/0074_subagent_tree.sql +50 -0
  1099. package/src/migrations/0075_plugin_scope.sql +61 -0
  1100. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  1101. package/src/migrations/0077_scope_requests.sql +52 -0
  1102. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  1103. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  1104. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  1105. package/src/migrations/0081_platform_components.sql +129 -0
  1106. package/src/migrations/0082_platform_migration.sql +33 -0
  1107. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1108. package/src/migrations/0084_org_owned_items.sql +85 -0
  1109. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1110. package/src/migrations/0086_org_layering.sql +30 -0
  1111. package/src/migrations/0087_approval_summary.sql +6 -0
  1112. package/src/migrations/0088_environments.sql +80 -0
  1113. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1114. package/src/migrations/0090_initial_passwords.sql +27 -0
  1115. package/src/migrations/0091_account_time_zone.sql +4 -0
  1116. package/src/migrations/0092_tools_default_on.sql +27 -0
  1117. package/src/migrations/0093_connected_environments.sql +37 -0
  1118. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1119. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1120. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1121. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1122. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1123. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1124. package/src/migrations/0100_catalog_files.sql +13 -0
  1125. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1126. package/dist/catalog/upgrade-targets.d.ts +0 -59
  1127. package/dist/catalog/upgrade-targets.js +0 -90
  1128. package/dist/conversations/sandbox-status.d.ts +0 -21
  1129. package/dist/conversations/sandbox-status.js +0 -24
  1130. package/dist/extensions/org-config.controller.d.ts +0 -24
  1131. package/dist/extensions/org-config.controller.js +0 -59
  1132. package/dist/http/gateway.module.js +0 -13
  1133. package/dist/http/health.controller.d.ts +0 -26
  1134. package/dist/http/health.controller.js +0 -79
  1135. package/dist/http/tokens.d.ts +0 -131
  1136. package/dist/http/tokens.js +0 -131
  1137. package/dist/http/zod.pipe.d.ts +0 -8
  1138. package/dist/http/zod.pipe.js +0 -14
  1139. package/dist/identity/enterprise-admin.d.ts +0 -14
  1140. package/dist/identity/enterprise-admin.js +0 -27
  1141. package/dist/identity/rate-limit.d.ts +0 -55
  1142. package/dist/identity/rate-limit.js +0 -121
  1143. package/dist/sandbox/lifecycle.d.ts +0 -21
  1144. package/dist/sandbox/lifecycle.js +0 -68
  1145. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1146. package/dist/tools/builtins/sandbox/names.js +0 -20
@@ -1,38 +1,34 @@
1
+ var __decorate = (this && this.__decorate) || function (decorators, target, key, desc) {
2
+ var c = arguments.length, r = c < 3 ? target : desc === null ? desc = Object.getOwnPropertyDescriptor(target, key) : desc, d;
3
+ if (typeof Reflect === "object" && typeof Reflect.decorate === "function") r = Reflect.decorate(decorators, target, key, desc);
4
+ else for (var i = decorators.length - 1; i >= 0; i--) if (d = decorators[i]) r = (c < 3 ? d(r) : c > 3 ? d(target, key, r) : d(target, key)) || r;
5
+ return c > 3 && r && Object.defineProperty(target, key, r), r;
6
+ };
7
+ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
+ return function (target, key) { decorator(target, key, paramIndex); }
9
+ };
1
10
  import { createHash } from "node:crypto";
11
+ import { connectorToolKey, extensionToolKey } from "@capybara-hq/plugin-sdk";
12
+ import { Inject, Injectable } from "@nestjs/common";
13
+ import { builtinDisabled, connectorToolDisabled, extensionToolDisabled, } from "../agents/definition.js";
14
+ import { EffectiveConfigs, NEEDS_CONFIG_REASON } from "../extensions/effective-config.js";
15
+ import { ExtensionHost } from "../extensions/host.js";
16
+ import { ExtensionRegistry } from "../extensions/registry.js";
17
+ import { KernelConfigService } from "../infra/config/kernel-config.service.js";
18
+ import { KernelDb } from "../infra/database/kernel-db.js";
2
19
  import { readOrgSettings } from "../orgs/settings.service.js";
3
20
  import { estimateTokens } from "../runtime/context/tokens.js";
4
21
  import { SUBAGENT_LIMIT_DEFAULTS, subagentLimits } from "../runtime/subagents/limits.js";
5
22
  import { resolveRoster } from "../runtime/subagents/roster.js";
6
- import { AGENT_TOOL, agentToolSpec } from "./builtins/agent.js";
7
- import { SANDBOX_TOOL_NAMES } from "./builtins/sandbox/names.js";
8
- import { toolKey, toolKeyIssue } from "./naming.js";
9
- /**
10
- * 内核内置工具的名字(Task 10 / Task 19 实现;M5 T8 加沙箱工具)。保存 agent 时内置工具引用按这份清单校验,
11
- * 不依赖当前是否已注册,避免实现落地顺序影响已保存的定义;运行时未注册的照常报不可用。
12
- * `skill_write`(M5 T15)由 agent 定义显式引用才可用(负责人决定 agent 能否改自己的技能)。
13
- */
14
- export const BUILTIN_TOOL_NAMES = [
15
- "ask_user",
16
- "read_tool_output",
17
- "tool_search",
18
- "skill_load",
19
- "skill_write",
20
- ...SANDBOX_TOOL_NAMES,
21
- // phase C: dispatches sub-agents; its description is built per agent from the roster
22
- "agent",
23
- ];
24
- /** 键排序、去掉 undefined 的 JSON(jsonb 不保留键顺序,指纹必须与顺序无关)。 */
25
- export function canonicalJson(v) {
26
- if (Array.isArray(v))
27
- return `[${v.map(canonicalJson).join(",")}]`;
28
- if (v !== null && typeof v === "object") {
29
- const entries = Object.entries(v)
30
- .filter(([, x]) => x !== undefined)
31
- .sort(([a], [b]) => (a < b ? -1 : a > b ? 1 : 0));
32
- return `{${entries.map(([k, x]) => `${JSON.stringify(k)}:${canonicalJson(x)}`).join(",")}}`;
33
- }
34
- return JSON.stringify(v);
35
- }
23
+ import { AGENT_BUILTIN_NAMES, AGENT_TOOL, BASH_COMPANION_TOOLS, BUILTIN, SEND_MESSAGE, SKILL_LOAD, SUBAGENT_HANDBACK, TOOL_SEARCH, } from "./builtin-names.js";
24
+ import { agentToolSpec } from "./builtins/agent.js";
25
+ import { BuiltinTools } from "./builtins/builtin-tools.js";
26
+ import { canonicalJson } from "./canonical-json.js";
27
+ import { legacyKeySaveText } from "./legacy-keys.js";
28
+ import { toolKeyIssue } from "./naming.js";
29
+ import { OrgToolSwitches, toolTurnedOffReason } from "./org-tool-switches.js";
30
+ export { BUILTIN_TOOL_NAMES } from "./builtin-names.js";
31
+ export { canonicalJson } from "./canonical-json.js";
36
32
  /** The first 16 hex digits of sha256(canonicalJson(v)): a fingerprint independent of key order. */
37
33
  export function contentHash(v) {
38
34
  return createHash("sha256").update(canonicalJson(v)).digest("hex").slice(0, 16);
@@ -63,10 +59,8 @@ export function specHash(spec) {
63
59
  export function policyFromAnnotations(a) {
64
60
  return a?.readOnlyHint === true ? "allow" : "ask";
65
61
  }
66
- /** 内置 `tool_search` 的名字(由注册表按组织设置与阈值自动加入,不进 agent 定义)。 */
67
- const TOOL_SEARCH = "tool_search";
68
- /** 内置 `skill_load` 的名字(对话日志里有技能目录快照时由注册表自动加入,不进 agent 定义)。 */
69
- const SKILL_LOAD = "skill_load";
62
+ // `ToolSearch` is added by the registry by org setting and threshold, `Skill` when the log has a
63
+ // skills catalog snapshot; neither comes from agent definitions (`./builtin-names.ts`).
70
64
  /** 工具定义(模型可见三项)的估算 token 数(与请求估算同一口径)。 */
71
65
  function estimateToolTokens(tools) {
72
66
  return estimateTokens([], [], tools.map((t) => ({
@@ -80,31 +74,74 @@ const sourceId = (s) => s.kind === "builtin"
80
74
  : s.kind === "plugin"
81
75
  ? `plugin:${s.plugin}:${s.name}`
82
76
  : `connector:${s.connectorId}:${s.name}`;
77
+ /** A builtin as a resolved tool (with `spec`, which `Agent` builds per definition). */
78
+ const builtinTool = (b, spec) => ({
79
+ key: b.spec.name,
80
+ source: { kind: "builtin", name: b.spec.name },
81
+ spec,
82
+ specHash: specHash(spec),
83
+ defaultPolicy: b.defaultPolicy,
84
+ ...(b.timeoutMs !== undefined && { timeoutMs: b.timeoutMs }),
85
+ ...(b.spillChars !== undefined && { spillChars: b.spillChars }),
86
+ ...(b.callPolicy !== undefined && { callPolicy: b.callPolicy }),
87
+ });
83
88
  /**
84
- * Tool registry: resolves the references in an agent definition into the tools available for this
85
- * run. Not cached (reads PG and the host live every time), so changes take effect right away across
86
- * replicas.
89
+ * Tool registry: resolves what an agent has for this run (tools default-on spec §4): everything
90
+ * the org offers minus the definition's `disabledTools`. Not cached (reads PG and the host live
91
+ * every time), so changes take effect right away across replicas.
87
92
  *
88
- * Availability:
89
- * - builtin: in `builtins`;
90
- * - extension tools: the extension is loaded and registered the tool, and this org enabled the
91
- * extension (`extension_org_configs.enabled`, spec 2.2 "installed at deployment level, enabled at
92
- * org level"; required bootstrap plugins are enabled in every org, `enabled.ts`);
93
- * - connector tools: the connector belongs to this org, is not deleted or disabled, the connector is
94
- * installed, the tool status is `enabled` and the key is valid.
95
- * `tools: "all"` takes only enabled tools; disabled / pending-review ones count as deliberately
96
- * turned off by an admin and are not reported; named tools report their reason one by one.
97
- * Only the first of a key is kept; the same source referenced twice is deduplicated silently,
98
- * different sources with the same key report a duplicate.
93
+ * What is offered:
94
+ * - builtins: every {@link AGENT_BUILTIN_NAMES} entry registered here that can run (`unavailable`
95
+ * says why not), `TaskOutput` / `TaskStop` with `Bash`, `Agent` while its roster is not empty;
96
+ * - extension tools: every tool registered by an extension loaded on this replica and enabled in
97
+ * the org (`extension_org_configs.enabled`; required bootstrap plugins are enabled in every org,
98
+ * `enabled.ts`), whose effective config for the org is valid (layering spec A §6) and that the
99
+ * org did not switch off (§7: the org's switch wins);
100
+ * - connector tools: every enabled tool of every live, active connector of the org whose
101
+ * connector extension is installed, with a valid key.
102
+ * What cannot be offered goes to `hidden` with the reason; nothing is reported to the model as
103
+ * unavailable except two sources with one key (the first wins).
99
104
  */
100
- export class ToolRegistry {
101
- deps;
102
- constructor(deps) {
103
- this.deps = deps;
105
+ let ToolRegistry = class ToolRegistry {
106
+ db;
107
+ host;
108
+ extensions;
109
+ builtinTools;
110
+ effective;
111
+ switches;
112
+ config;
113
+ constructor(db,
114
+ /** Extension tools and the organization's enabled extensions. */
115
+ host,
116
+ /** The installed connectors (`connector@1`, from the extension registry). */
117
+ extensions, builtinTools,
118
+ /**
119
+ * The extensions' effective config per org (layering spec A §6): an extension tool is
120
+ * unavailable in an org whose effective config is not valid.
121
+ */
122
+ effective,
123
+ /** The org's switches of single extension tools (layering spec A §7). */
124
+ switches,
125
+ /**
126
+ * `tools.searchThreshold*` and the sub-agent limits. Absent (some tests): `ToolSearch` is never
127
+ * offered and the sub-agent limits are the schema defaults.
128
+ */
129
+ config) {
130
+ this.db = db;
131
+ this.host = host;
132
+ this.extensions = extensions;
133
+ this.builtinTools = builtinTools;
134
+ this.effective = effective;
135
+ this.switches = switches;
136
+ this.config = config;
137
+ }
138
+ /** The kernel's builtin tools (`ToolSearch` is added by {@link forAgent}, not by definitions). */
139
+ get builtins() {
140
+ return this.builtinTools.list();
104
141
  }
105
142
  /** `host.list("connector")` 中 `kind` 匹配的第一个实现;未安装返回 undefined。 */
106
143
  findConnector(kind) {
107
- for (const e of this.deps.host.list("connector")) {
144
+ for (const e of this.extensions.list("connector")) {
108
145
  const impl = e.impl;
109
146
  if (impl?.kind === kind)
110
147
  return impl;
@@ -127,10 +164,10 @@ export class ToolRegistry {
127
164
  */
128
165
  handler(source) {
129
166
  if (source.kind === "builtin") {
130
- return this.deps.builtins.find((b) => b.spec.name === source.name)?.run;
167
+ return this.builtins.find((b) => b.spec.name === source.name)?.run;
131
168
  }
132
169
  if (source.kind === "plugin") {
133
- const t = this.deps.host
170
+ const t = this.host
134
171
  .tools()
135
172
  .find((x) => x.plugin === source.plugin && x.spec.name === source.name);
136
173
  if (!t)
@@ -141,93 +178,140 @@ export class ToolRegistry {
141
178
  }
142
179
  /** The registered builtin tools' specs (display metadata for `tools/info.ts`). */
143
180
  builtinSpecs() {
144
- return this.deps.builtins.map((b) => b.spec);
181
+ return this.builtins.map((b) => b.spec);
145
182
  }
146
183
  /** The loaded extensions' registered tool specs, with their extension's name. */
147
184
  extensionToolSpecs() {
148
- return this.deps.host.tools().map((t) => ({ plugin: t.plugin, spec: t.spec }));
185
+ return this.host.tools().map((t) => ({ plugin: t.plugin, spec: t.spec }));
149
186
  }
150
187
  /** 已安装连接器的 kind 列表(去重,按加载顺序)。 */
151
188
  connectorKinds() {
152
- return [...new Set(this.deps.host.list("connector").map((e) => e.impl.kind))];
189
+ return [...new Set(this.extensions.list("connector").map((e) => e.impl.kind))];
190
+ }
191
+ /**
192
+ * The connector kinds `orgId` can create connectors of: the `connector@1` implementations loaded
193
+ * on this replica whose extension is enabled in the org (the first implementation of a kind, as
194
+ * {@link findConnector} picks it), sorted by kind.
195
+ */
196
+ async connectorKindsFor(orgId) {
197
+ const enabled = await this.enabledPlugins(orgId);
198
+ const out = new Map();
199
+ for (const e of this.extensions.list("connector")) {
200
+ const kind = e.impl?.kind;
201
+ if (typeof kind !== "string" || out.has(kind))
202
+ continue;
203
+ out.set(kind, e.plugin);
204
+ }
205
+ return [...out]
206
+ .filter(([, plugin]) => enabled.has(plugin))
207
+ .map(([kind, plugin]) => ({ kind, plugin }))
208
+ .sort((a, b) => a.kind.localeCompare(b.kind));
209
+ }
210
+ /** True when `kind` is one of {@link connectorKindsFor}: loaded here and enabled in the org. */
211
+ async connectorKindAvailable(orgId, kind) {
212
+ return (await this.connectorKindsFor(orgId)).some((k) => k.kind === kind);
153
213
  }
154
214
  /**
155
- * 保存 agent 时校验工具引用(只看「存在」,停用 / 待复核 / 插件未启用等运行时状态不拒绝,由 `forAgent` 报不可用):
156
- * - 内置:名字在 {@link BUILTIN_TOOL_NAMES} 中;
157
- * - 插件:插件已加载且注册了该工具,key 合法;
158
- * - 连接器:连接器属于本组织且未删除;点名的工具必须在连接器的工具快照中。
159
- * 不同来源拼出同一个 key 也报出来(不截断、不猜)。
160
- * 返回 `keys`:这些引用可能产生的全部工具 key(`"all"` 含连接器当前所有工具,不论状态),供校验 `toolPolicies`。
215
+ * Checks a definition's `disabledTools` on save (existence only): a builtin an agent can turn off
216
+ * ({@link AGENT_BUILTIN_NAMES}), an extension loaded here and the tools it registered, a live
217
+ * connector of the org and tools of its snapshot. An entry equal to one of `kept` (the current
218
+ * version's) is not re-checked: a connector deleted or an extension uninstalled later never
219
+ * blocks other edits. Returns `keys`: every tool key the agent could have, on or turned off (all
220
+ * its builtins, every loaded extension's tools, every tool of the org's live connectors in any
221
+ * status), the keys `toolPolicies` may use.
161
222
  */
162
- async checkRefs(orgId, refs) {
223
+ async checkDisabled(orgId, disabled, kept = []) {
163
224
  const issues = [];
164
- const owner = new Map();
165
- const pluginTools = this.deps.host.tools();
166
- const connectorIds = [
167
- ...new Set(refs.flatMap((r) => (r.kind === "connector" ? [r.connectorId] : []))),
168
- ];
169
- const apps = await this.loadConnectors(orgId, connectorIds);
170
- const claim = (path, key, source) => {
171
- const prev = owner.get(key);
172
- if (prev === undefined)
173
- owner.set(key, source);
174
- else if (prev !== source) {
175
- issues.push({ path, message: `Tool key "${key}" is already used by another tool` });
176
- }
177
- };
178
- refs.forEach((ref, i) => {
179
- const path = `tools.${i}`;
225
+ const keys = new Set();
226
+ for (const name of AGENT_BUILTIN_NAMES)
227
+ keys.add(name);
228
+ for (const name of BASH_COMPANION_TOOLS)
229
+ keys.add(name);
230
+ const pluginTools = this.host.tools();
231
+ for (const t of pluginTools)
232
+ keys.add(extensionToolKey(t.plugin, t.spec.name));
233
+ const apps = await this.loadOrgConnectors(orgId, { includeDeleted: false });
234
+ for (const app of apps)
235
+ for (const t of app.tools)
236
+ keys.add(connectorToolKey(app.slug, t.name));
237
+ const builtins = new Set(AGENT_BUILTIN_NAMES);
238
+ const keptJson = new Set(kept.map((r) => canonicalJson(r)));
239
+ disabled.forEach((ref, i) => {
240
+ const path = `disabledTools.${i}`;
241
+ if (keptJson.has(canonicalJson(ref)))
242
+ return;
180
243
  if (ref.kind === "builtin") {
181
- if (!BUILTIN_TOOL_NAMES.includes(ref.name)) {
182
- issues.push({ path, message: `Built-in tool "${ref.name}" does not exist` });
183
- return;
244
+ if (!builtins.has(ref.name)) {
245
+ const renamed = legacyKeySaveText(ref.name);
246
+ issues.push({
247
+ path,
248
+ message: renamed !== null
249
+ ? `Built-in tool ${renamed}`
250
+ : `"${ref.name}" is not a built-in tool an agent can turn off`,
251
+ });
184
252
  }
185
- claim(path, ref.name, `builtin:${ref.name}`);
186
253
  }
187
254
  else if (ref.kind === "plugin") {
188
- const key = toolKey(ref.plugin, ref.name);
189
- if (!pluginTools.some((x) => x.plugin === ref.plugin && x.spec.name === ref.name)) {
190
- issues.push({ path, message: `Plugin tool "${key}" does not exist` });
255
+ const own = pluginTools.filter((x) => x.plugin === ref.plugin);
256
+ if (own.length === 0) {
257
+ issues.push({ path, message: `Extension "${ref.plugin}" has no tools` });
191
258
  return;
192
259
  }
193
- const issue = toolKeyIssue(key);
194
- if (issue) {
195
- issues.push({ path, message: issue });
260
+ if (ref.tools === "all")
196
261
  return;
262
+ for (const name of ref.tools) {
263
+ if (!own.some((x) => x.spec.name === name)) {
264
+ issues.push({
265
+ path,
266
+ message: `Extension tool "${extensionToolKey(ref.plugin, name)}" does not exist`,
267
+ });
268
+ }
197
269
  }
198
- claim(path, key, `plugin:${ref.plugin}:${ref.name}`);
199
270
  }
200
271
  else {
201
- const app = apps.get(ref.connectorId);
202
- if (!app || app.deleted) {
272
+ const app = apps.find((a) => a.id === ref.connectorId);
273
+ if (!app) {
203
274
  issues.push({ path, message: `Connector "${ref.connectorId}" does not exist` });
204
275
  return;
205
276
  }
206
- const names = ref.tools === "all" ? app.tools.map((t) => t.name) : [...new Set(ref.tools)];
207
- for (const name of names) {
277
+ if (ref.tools === "all")
278
+ return;
279
+ for (const name of ref.tools) {
208
280
  if (!app.tools.some((t) => t.name === name)) {
209
281
  issues.push({
210
282
  path,
211
283
  message: `Tool "${name}" does not exist in connector ${app.slug}`,
212
284
  });
213
- continue;
214
285
  }
215
- claim(path, toolKey(app.slug, name), `connector:${app.id}:${name}`);
216
286
  }
217
287
  }
218
288
  });
219
- return { keys: new Set(owner.keys()), issues };
289
+ return { keys, issues };
220
290
  }
221
291
  /**
222
- * 解析 agent 引用的工具(见类注释),再判定是否启用 `tool_search`:组织设置 `toolSearch === "on"`,且
223
- * 可用工具数 > `tools.searchThresholdTools` 或其定义的估算 token > `tools.searchThresholdTokens`。
224
- * 启用时把内置 `tool_search` 追加到末尾。定义里显式引用的 `tool_search` 忽略(由这里按设置管理)。
225
- * `skillLoad`:对话日志里有技能目录快照(`skills_catalog`,Ruling M17)→ 加入内置 `skill_load`(始终完整加载);
226
- * 定义里显式引用的 `skill_load` 同样忽略。
292
+ * Resolves what the agent has (see the class comment), then decides on `ToolSearch`: the org
293
+ * setting `toolSearch === "on"` and more than `tools.searchThresholdTools` tools or more than
294
+ * `tools.searchThresholdTokens` estimated definition tokens; when on, the builtin `ToolSearch` is
295
+ * appended. `skillLoad`: the log has a skills catalog snapshot (`skills_catalog`, Ruling M17) →
296
+ * the builtin `Skill` is added (always fully loaded).
227
297
  */
228
298
  async forAgent(orgId, def) {
229
- const { tools, unavailable, hidden } = await this.resolve(orgId, def);
230
- const sl = def.skillLoad === true && this.deps.builtins.find((x) => x.spec.name === SKILL_LOAD);
299
+ const resolved = await this.resolve(orgId, def);
300
+ const { unavailable, hidden } = resolved;
301
+ const tools = filterSubagentTools(resolved.tools, def.subagentTools);
302
+ // `SendMessage` to an agent that has `Agent` (to reach its sub-agents) or a parent;
303
+ // `SubagentHandback` to a sub-agent only; a fork invocation's child reports by its reply
304
+ const toParent = def.child === true && def.forkChild !== true;
305
+ const messageTools = [
306
+ ...(toParent || tools.some((t) => t.key === AGENT_TOOL) ? [SEND_MESSAGE] : []),
307
+ ...(toParent ? [SUBAGENT_HANDBACK] : []),
308
+ ];
309
+ for (const name of messageTools) {
310
+ const b = this.builtins.find((x) => x.spec.name === name);
311
+ if (b)
312
+ tools.push(builtinTool(b, b.spec));
313
+ }
314
+ const sl = def.skillLoad === true && this.builtins.find((x) => x.spec.name === SKILL_LOAD);
231
315
  if (sl) {
232
316
  tools.push({
233
317
  key: SKILL_LOAD,
@@ -240,7 +324,7 @@ export class ToolRegistry {
240
324
  }
241
325
  const toolSearch = await this.searchActive(orgId, tools);
242
326
  if (toolSearch) {
243
- const b = this.deps.builtins.find((x) => x.spec.name === TOOL_SEARCH);
327
+ const b = this.builtins.find((x) => x.spec.name === TOOL_SEARCH);
244
328
  tools.push({
245
329
  key: TOOL_SEARCH,
246
330
  source: { kind: "builtin", name: TOOL_SEARCH },
@@ -251,18 +335,27 @@ export class ToolRegistry {
251
335
  }
252
336
  return { tools, unavailable, hidden, toolSearch };
253
337
  }
254
- /** 是否启用 `tool_search`(见 {@link forAgent});先比阈值,超过才读组织设置。 */
338
+ /** 是否启用 `ToolSearch`(见 {@link forAgent});先比阈值,超过才读组织设置。 */
255
339
  async searchActive(orgId, tools) {
256
- const cfg = this.deps.config?.().tools;
257
- if (!cfg || !this.deps.builtins.some((b) => b.spec.name === TOOL_SEARCH))
340
+ const cfg = this.config?.get().tools;
341
+ if (!cfg || !this.builtins.some((b) => b.spec.name === TOOL_SEARCH))
258
342
  return false;
259
343
  const over = tools.length > cfg.searchThresholdTools ||
260
344
  estimateToolTokens(tools) > cfg.searchThresholdTokens;
261
345
  if (!over)
262
346
  return false;
263
- return (await readOrgSettings(this.deps.db, orgId)).toolSearch === "on";
347
+ return (await readOrgSettings(this.db.db, orgId)).toolSearch === "on";
264
348
  }
265
349
  async resolve(orgId, def) {
350
+ const disabled = def.disabledTools ?? [];
351
+ const scope = {
352
+ orgId,
353
+ ...(def.sandboxConversationId !== undefined && {
354
+ conversationId: def.sandboxConversationId,
355
+ }),
356
+ ...(def.replay === true && { replay: true }),
357
+ memo: new Map(),
358
+ };
266
359
  const tools = [];
267
360
  const unavailable = [];
268
361
  const hidden = [];
@@ -281,201 +374,226 @@ export class ToolRegistry {
281
374
  });
282
375
  }
283
376
  };
284
- const enabledPlugins = def.tools.some((r) => r.kind === "plugin")
285
- ? await this.enabledPlugins(orgId)
286
- : new Set();
287
- const connectorIds = [
288
- ...new Set(def.tools.flatMap((r) => (r.kind === "connector" ? [r.connectorId] : []))),
289
- ];
290
- const apps = await this.loadConnectors(orgId, connectorIds);
291
- const pluginTools = this.deps.host.tools();
292
- for (const ref of def.tools) {
293
- if (ref.kind === "builtin") {
294
- if (ref.name === TOOL_SEARCH || ref.name === SKILL_LOAD)
295
- continue;
296
- const b = this.deps.builtins.find((x) => x.spec.name === ref.name);
297
- if (!b) {
298
- unavailable.push({ ref: ref.name, reason: "Built-in tool does not exist" });
299
- continue;
300
- }
301
- const why = b.unavailable?.() ?? null;
302
- if (why !== null) {
303
- unavailable.push({ ref: ref.name, reason: why });
377
+ // builtins
378
+ for (const name of AGENT_BUILTIN_NAMES) {
379
+ if (builtinDisabled(disabled, name))
380
+ continue;
381
+ const b = this.builtins.find((x) => x.spec.name === name);
382
+ if (!b)
383
+ continue;
384
+ const why = (await b.unavailable?.(scope)) ?? null;
385
+ if (why !== null) {
386
+ hidden.push({ ref: name, reason: why });
387
+ continue;
388
+ }
389
+ // `Agent`: the description lists this definition's roster (sub-agents spec §4.3); with an
390
+ // empty roster there is nothing to dispatch, so the tool is not offered at all
391
+ let spec = b.spec;
392
+ if (name === AGENT_TOOL) {
393
+ const roster = await resolveRoster(this.db.db, orgId, { subagents: def.subagents });
394
+ if (roster.length === 0)
304
395
  continue;
396
+ spec = agentToolSpec(roster, await this.maxConcurrentSubagents(orgId));
397
+ }
398
+ add(builtinTool(b, spec));
399
+ // `TaskOutput` and `TaskStop` come with an available `Bash` (background Bash spec §2)
400
+ if (name === BUILTIN.Bash) {
401
+ for (const companion of BASH_COMPANION_TOOLS) {
402
+ const c = this.builtins.find((x) => x.spec.name === companion);
403
+ if (c && ((await c.unavailable?.(scope)) ?? null) === null) {
404
+ add(builtinTool(c, c.spec));
405
+ }
305
406
  }
306
- // `agent`: the description lists this definition's roster (sub-agents spec §4.3); with an
307
- // empty roster there is nothing to dispatch, so the tool is not offered at all
308
- let spec = b.spec;
309
- if (b.spec.name === AGENT_TOOL) {
310
- const roster = await resolveRoster(this.deps.db, orgId, { subagents: def.subagents });
311
- if (roster.length === 0)
312
- continue;
313
- spec = agentToolSpec(roster, await this.maxConcurrentSubagents(orgId));
314
- }
315
- add({
316
- key: b.spec.name,
317
- source: { kind: "builtin", name: b.spec.name },
318
- spec,
319
- specHash: specHash(spec),
320
- defaultPolicy: b.defaultPolicy,
321
- ...(b.timeoutMs !== undefined && { timeoutMs: b.timeoutMs }),
322
- ...(b.spillChars !== undefined && { spillChars: b.spillChars }),
323
- });
324
407
  }
325
- else if (ref.kind === "plugin") {
326
- const key = toolKey(ref.plugin, ref.name);
327
- const t = pluginTools.find((x) => x.plugin === ref.plugin && x.spec.name === ref.name);
328
- if (!t) {
329
- unavailable.push({ ref: key, reason: "Plugin tool does not exist" });
408
+ }
409
+ // extension tools: the extensions enabled in the org
410
+ const pluginTools = this.host.tools();
411
+ if (pluginTools.length > 0) {
412
+ const [enabledPlugins, offKeys] = await Promise.all([
413
+ this.enabledPlugins(orgId),
414
+ this.switches.offKeys(orgId),
415
+ ]);
416
+ // one effective config read per extension and resolution, however many tools it has
417
+ const configured = new Map();
418
+ const configuredIn = (plugin) => {
419
+ let ok = configured.get(plugin);
420
+ if (!ok) {
421
+ ok = this.effective.get(orgId, plugin).then((e) => e.ok);
422
+ configured.set(plugin, ok);
423
+ }
424
+ return ok;
425
+ };
426
+ for (const t of pluginTools) {
427
+ if (!enabledPlugins.has(t.plugin))
428
+ continue;
429
+ if (extensionToolDisabled(disabled, t.plugin, t.spec.name))
430
+ continue;
431
+ const key = extensionToolKey(t.plugin, t.spec.name);
432
+ // the pipeline refuses such calls too (a resumed step), this keeps them from the model
433
+ if (offKeys.has(key)) {
434
+ hidden.push({ ref: key, reason: toolTurnedOffReason(key) });
330
435
  continue;
331
436
  }
332
- if (!enabledPlugins.has(ref.plugin)) {
333
- unavailable.push({
334
- ref: key,
335
- reason: `Plugin ${ref.plugin} is not enabled in this organization`,
336
- });
437
+ if (!(await configuredIn(t.plugin))) {
438
+ hidden.push({ ref: key, reason: `Plugin ${t.plugin} ${NEEDS_CONFIG_REASON}` });
337
439
  continue;
338
440
  }
339
441
  const issue = toolKeyIssue(key);
340
442
  if (issue) {
341
- unavailable.push({ ref: key, reason: issue });
443
+ hidden.push({ ref: key, reason: issue });
342
444
  continue;
343
445
  }
344
446
  add({
345
447
  key,
346
- source: { kind: "plugin", plugin: ref.plugin, name: ref.name },
448
+ source: { kind: "plugin", plugin: t.plugin, name: t.spec.name },
347
449
  spec: t.spec,
348
450
  specHash: specHash(t.spec),
349
451
  defaultPolicy: t.spec.defaultPolicy ?? policyFromAnnotations(t.spec.annotations),
350
452
  });
351
453
  }
352
- else {
353
- const app = apps.get(ref.connectorId);
354
- if (!app) {
355
- unavailable.push({ ref: `app:${ref.connectorId}`, reason: "App does not exist" });
454
+ }
455
+ // connector tools: the org's live connectors
456
+ for (const app of await this.loadOrgConnectors(orgId, { includeDeleted: false })) {
457
+ if (disabled.some((r) => r.kind === "connector" && r.connectorId === app.id && r.tools === "all")) {
458
+ continue;
459
+ }
460
+ const all = connectorToolKey(app.slug, "*");
461
+ if (app.status !== "active") {
462
+ hidden.push({ ref: all, reason: `App ${app.slug} is disabled` });
463
+ continue;
464
+ }
465
+ if (!this.findConnector(app.connector)) {
466
+ hidden.push({
467
+ ref: all,
468
+ reason: `Connector ${app.connector} for app ${app.slug} is not installed`,
469
+ });
470
+ continue;
471
+ }
472
+ for (const t of app.tools) {
473
+ if (connectorToolDisabled(disabled, app.id, t.name))
356
474
  continue;
357
- }
358
- const all = toolKey(app.slug, "*");
359
- if (app.deleted) {
360
- unavailable.push({ ref: all, reason: `App ${app.slug} was deleted` });
475
+ const key = connectorToolKey(app.slug, t.name);
476
+ // 远端已不再提供(漂移检测置停用并标记,见 drift.ts)
477
+ if (t.gone) {
478
+ hidden.push({ ref: key, reason: `Tool no longer exists in app ${app.slug}` });
361
479
  continue;
362
480
  }
363
- if (app.status !== "active") {
364
- unavailable.push({ ref: all, reason: `App ${app.slug} is disabled` });
481
+ if (t.status === "disabled") {
482
+ hidden.push({ ref: key, reason: "Tool is disabled" });
365
483
  continue;
366
484
  }
367
- if (!this.findConnector(app.connector)) {
368
- unavailable.push({
369
- ref: all,
370
- reason: `Connector ${app.connector} for app ${app.slug} is not installed`,
371
- });
485
+ if (t.status === "pending_review") {
486
+ hidden.push({ ref: key, reason: "Tool is pending review" });
372
487
  continue;
373
488
  }
374
- const wanted = ref.tools === "all"
375
- ? app.tools
376
- : ref.tools.map((name) => app.tools.find((t) => t.name === name) ?? { name, missing: true });
377
- // 「all」里未启用的工具不算 agent 点名要的,不进 unavailable(不提醒),只记进 hidden 备查
378
- const notEnabled = ref.tools === "all" ? hidden : unavailable;
379
- for (const t of wanted) {
380
- const key = toolKey(app.slug, t.name);
381
- // 远端已不再提供(漂移检测置停用并标记,见 drift.ts):与「没有这一行」同一个事实
382
- if ("missing" in t || t.gone) {
383
- notEnabled.push({ ref: key, reason: `Tool no longer exists in app ${app.slug}` });
384
- continue;
385
- }
386
- if (t.status === "disabled") {
387
- notEnabled.push({ ref: key, reason: "Tool is disabled" });
388
- continue;
389
- }
390
- if (t.status === "pending_review") {
391
- notEnabled.push({ ref: key, reason: "Tool is pending review" });
392
- continue;
393
- }
394
- const issue = toolKeyIssue(key);
395
- if (issue) {
396
- unavailable.push({ ref: key, reason: issue });
397
- continue;
398
- }
399
- add({
400
- key,
401
- source: {
402
- kind: "connector",
403
- connectorId: app.id,
404
- name: t.name,
405
- ...(t.source === "resources" && { resources: true }),
406
- },
407
- spec: t.spec,
408
- specHash: t.specHash,
409
- defaultPolicy: t.defaultPolicy,
410
- });
489
+ const issue = toolKeyIssue(key);
490
+ if (issue) {
491
+ hidden.push({ ref: key, reason: issue });
492
+ continue;
411
493
  }
494
+ add({
495
+ key,
496
+ source: {
497
+ kind: "connector",
498
+ connectorId: app.id,
499
+ name: t.name,
500
+ ...(t.source === "resources" && { resources: true }),
501
+ },
502
+ spec: t.spec,
503
+ specHash: t.specHash,
504
+ defaultPolicy: t.defaultPolicy,
505
+ });
412
506
  }
413
507
  }
414
508
  return { tools, unavailable, hidden };
415
509
  }
416
510
  /**
417
- * `subagents.maxConcurrentPerRun` with the organization's override, for the `agent` tool's
511
+ * `subagents.maxConcurrentPerConversation` with the organization's override, for the `Agent` tool's
418
512
  * description (§4.3). A change of the limit changes the tool's spec hash; replays read the
419
513
  * definition logged by hash, so no drift reason is involved. Without config (some tests): the
420
514
  * schema default.
421
515
  */
422
516
  async maxConcurrentSubagents(orgId) {
423
- const config = this.deps.config ?? (() => ({ subagents: SUBAGENT_LIMIT_DEFAULTS }));
424
- return (await subagentLimits(this.deps.db, config, orgId)).maxConcurrentPerRun;
517
+ const cfg = this.config;
518
+ const config = cfg ?? { get: () => ({ subagents: SUBAGENT_LIMIT_DEFAULTS }) };
519
+ return (await subagentLimits(this.db.db, config, orgId)).maxConcurrentPerConversation;
520
+ }
521
+ /** The extensions enabled in the org (`extensions/enabled.ts`, through the host). */
522
+ async enabledExtensions(orgId) {
523
+ return this.host.enabledPlugins(orgId);
425
524
  }
426
525
  /** Plugins the organization enabled (built-in plugins always count as enabled, C14). */
427
526
  async enabledPlugins(orgId) {
428
- return this.deps.host.enabledPlugins(orgId);
527
+ return this.host.enabledPlugins(orgId);
429
528
  }
430
- async loadConnectors(orgId, ids) {
431
- const out = new Map();
432
- if (ids.length === 0)
433
- return out;
434
- // 软删除的连接器也读出来,只为给出「已删除」这个更准确的原因(slug 可能已被新连接器复用,按 id 区分)
435
- const apps = await this.deps.db
529
+ /** The org's connectors (live ones, sorted by slug) with their tool snapshots (by name). */
530
+ async loadOrgConnectors(orgId, _opts) {
531
+ const apps = await this.db
436
532
  .selectFrom("connectors")
437
- .select(["id", "slug", "connector", "status", "deleted_at"])
533
+ .select(["id", "slug", "connector", "status"])
438
534
  .where("org_id", "=", orgId)
439
- .where("id", "in", ids)
535
+ .where("deleted_at", "is", null)
536
+ .orderBy("slug")
537
+ .orderBy("id")
440
538
  .execute();
441
- const live = apps.filter((a) => a.deleted_at === null).map((a) => a.id);
442
- const toolRows = live.length === 0
443
- ? []
444
- : await this.deps.db
445
- .selectFrom("connector_tools")
446
- .select([
447
- "connector_id",
448
- "name",
449
- "spec",
450
- "spec_hash",
451
- "status",
452
- "default_policy",
453
- "source",
454
- "missing_since",
455
- ])
456
- .where("connector_id", "in", live)
457
- .orderBy("name")
458
- .execute();
459
- for (const a of apps) {
460
- out.set(a.id, {
461
- id: a.id,
462
- slug: a.slug,
463
- connector: a.connector,
464
- status: a.status,
465
- deleted: a.deleted_at !== null,
466
- tools: toolRows
467
- .filter((t) => t.connector_id === a.id)
468
- .map((t) => ({
469
- name: t.name,
470
- spec: t.spec,
471
- specHash: t.spec_hash,
472
- status: t.status,
473
- defaultPolicy: t.default_policy,
474
- source: t.source,
475
- gone: t.missing_since !== null,
476
- })),
477
- });
478
- }
479
- return out;
539
+ if (apps.length === 0)
540
+ return [];
541
+ const toolRows = await this.db
542
+ .selectFrom("connector_tools")
543
+ .select([
544
+ "connector_id",
545
+ "name",
546
+ "spec",
547
+ "spec_hash",
548
+ "status",
549
+ "default_policy",
550
+ "source",
551
+ "missing_since",
552
+ ])
553
+ .where("connector_id", "in", apps.map((a) => a.id))
554
+ .orderBy("name")
555
+ .execute();
556
+ return apps.map((a) => ({
557
+ id: a.id,
558
+ slug: a.slug,
559
+ connector: a.connector,
560
+ status: a.status,
561
+ tools: toolRows
562
+ .filter((t) => t.connector_id === a.id)
563
+ .map((t) => ({
564
+ name: t.name,
565
+ spec: t.spec,
566
+ specHash: t.spec_hash,
567
+ status: t.status,
568
+ defaultPolicy: t.default_policy,
569
+ source: t.source,
570
+ gone: t.missing_since !== null,
571
+ })),
572
+ }));
480
573
  }
574
+ };
575
+ ToolRegistry = __decorate([
576
+ Injectable(),
577
+ __param(0, Inject(KernelDb)),
578
+ __param(1, Inject(ExtensionHost)),
579
+ __param(2, Inject(ExtensionRegistry)),
580
+ __param(3, Inject(BuiltinTools)),
581
+ __param(4, Inject(EffectiveConfigs)),
582
+ __param(5, Inject(OrgToolSwitches)),
583
+ __param(6, Inject(KernelConfigService))
584
+ ], ToolRegistry);
585
+ export { ToolRegistry };
586
+ /**
587
+ * `tools` narrowed by a sub-agent's key filter (tools default-on spec §4): `deny` keys removed,
588
+ * and with `allow` only its keys kept. `TaskOutput` / `TaskStop` follow `Bash`, as they come with
589
+ * it. Without a filter the list is returned as it is.
590
+ */
591
+ export function filterSubagentTools(tools, filter) {
592
+ if (filter === undefined)
593
+ return tools;
594
+ const companions = new Set(BASH_COMPANION_TOOLS);
595
+ const deny = new Set(filter.deny ?? []);
596
+ const allow = filter.allow === undefined ? null : new Set(filter.allow);
597
+ const keep = (key) => !deny.has(key) && (allow === null || allow.has(key));
598
+ return tools.filter((t) => (companions.has(t.key) ? keep(BUILTIN.Bash) : keep(t.key)));
481
599
  }