@capybara-hq/kernel 0.1.0-rc.2 → 0.1.0-rc.21

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 (1039) hide show
  1. package/bootstrap.json +94 -5
  2. package/dist/admin/admin-agents.controller.d.ts +28 -0
  3. package/dist/admin/admin-agents.controller.js +79 -0
  4. package/dist/admin/admin-connectors.controller.d.ts +29 -0
  5. package/dist/admin/admin-connectors.controller.js +79 -0
  6. package/dist/admin/admin-items.schemas.d.ts +42 -0
  7. package/dist/admin/admin-items.schemas.js +48 -0
  8. package/dist/admin/admin.controller.d.ts +52 -80
  9. package/dist/admin/admin.controller.js +112 -81
  10. package/dist/admin/admin.module.d.ts +4 -1
  11. package/dist/admin/admin.module.js +50 -4
  12. package/dist/admin/admin.schemas.d.ts +69 -0
  13. package/dist/admin/admin.schemas.js +53 -0
  14. package/dist/admin/audit.controller.d.ts +14 -0
  15. package/dist/admin/audit.controller.js +42 -0
  16. package/dist/admin/audit.schemas.d.ts +8 -0
  17. package/dist/admin/audit.schemas.js +17 -0
  18. package/dist/admin/extensions.controller.d.ts +34 -3
  19. package/dist/admin/extensions.controller.js +66 -8
  20. package/dist/admin/extensions.schemas.d.ts +7 -0
  21. package/dist/admin/extensions.schemas.js +10 -0
  22. package/dist/admin/health.service.d.ts +104 -0
  23. package/dist/admin/health.service.js +246 -0
  24. package/dist/admin/limit-defaults.d.ts +20 -0
  25. package/dist/admin/limit-defaults.js +10 -0
  26. package/dist/admin/overview.controller.d.ts +31 -0
  27. package/dist/admin/overview.controller.js +78 -0
  28. package/dist/admin/overview.schemas.d.ts +8 -0
  29. package/dist/admin/overview.schemas.js +13 -0
  30. package/dist/admin/overview.service.d.ts +112 -0
  31. package/dist/admin/overview.service.js +223 -0
  32. package/dist/admin/platform-audit.service.d.ts +41 -0
  33. package/dist/admin/platform-audit.service.js +70 -0
  34. package/dist/admin/setup-lock.d.ts +1 -1
  35. package/dist/admin/setup-lock.js +1 -1
  36. package/dist/admin/setup.controller.d.ts +1 -1
  37. package/dist/admin/setup.controller.js +1 -1
  38. package/dist/admin/setup.service.d.ts +4 -4
  39. package/dist/admin/setup.service.js +8 -8
  40. package/dist/admin/usage.service.d.ts +149 -0
  41. package/dist/admin/usage.service.js +321 -0
  42. package/dist/agents/admin-agents.d.ts +92 -0
  43. package/dist/agents/admin-agents.js +170 -0
  44. package/dist/agents/agent-lookup.d.ts +24 -0
  45. package/dist/agents/agent-lookup.js +46 -2
  46. package/dist/agents/agent-profile.service.d.ts +31 -0
  47. package/dist/agents/agent-profile.service.js +122 -0
  48. package/dist/agents/agents.controller.d.ts +53 -168
  49. package/dist/agents/agents.controller.js +163 -34
  50. package/dist/agents/agents.module.d.ts +6 -2
  51. package/dist/agents/agents.module.js +41 -7
  52. package/dist/agents/agents.schemas.d.ts +392 -0
  53. package/dist/agents/agents.schemas.js +126 -0
  54. package/dist/agents/agents.service.d.ts +121 -36
  55. package/dist/agents/agents.service.js +411 -121
  56. package/dist/agents/definition.d.ts +142 -21
  57. package/dist/agents/definition.js +389 -43
  58. package/dist/agents/from-template.d.ts +106 -0
  59. package/dist/agents/from-template.js +680 -0
  60. package/dist/agents/from-template.service.d.ts +72 -0
  61. package/dist/agents/from-template.service.js +178 -0
  62. package/dist/agents/instruction-files.d.ts +60 -0
  63. package/dist/agents/instruction-files.js +111 -0
  64. package/dist/agents/models.controller.d.ts +44 -6
  65. package/dist/agents/models.controller.js +84 -8
  66. package/dist/agents/org-templates.d.ts +186 -0
  67. package/dist/agents/org-templates.js +876 -0
  68. package/dist/agents/pending-connector-requests.d.ts +79 -0
  69. package/dist/agents/pending-connector-requests.js +215 -0
  70. package/dist/agents/pending-connectors.controller.d.ts +39 -0
  71. package/dist/agents/pending-connectors.controller.js +91 -0
  72. package/dist/agents/pending-connectors.service.d.ts +62 -0
  73. package/dist/agents/pending-connectors.service.js +282 -0
  74. package/dist/agents/profile.d.ts +114 -0
  75. package/dist/agents/profile.js +55 -0
  76. package/dist/agents/readiness.controller.d.ts +26 -0
  77. package/dist/agents/readiness.controller.js +56 -0
  78. package/dist/agents/templates.controller.d.ts +77 -5
  79. package/dist/agents/templates.controller.js +153 -7
  80. package/dist/agents/templates.d.ts +127 -23
  81. package/dist/agents/templates.js +482 -44
  82. package/dist/agents/templates.schemas.d.ts +20 -0
  83. package/dist/agents/templates.schemas.js +45 -0
  84. package/dist/background/background.controller.d.ts +38 -0
  85. package/dist/background/background.controller.js +88 -0
  86. package/dist/background/background.module.d.ts +10 -0
  87. package/dist/background/background.module.js +39 -0
  88. package/dist/background/background.schemas.d.ts +10 -0
  89. package/dist/background/background.schemas.js +16 -0
  90. package/dist/background/finish.d.ts +44 -0
  91. package/dist/background/finish.js +95 -0
  92. package/dist/background/launch-lock.d.ts +15 -0
  93. package/dist/background/launch-lock.js +40 -0
  94. package/dist/background/launch.d.ts +42 -0
  95. package/dist/background/launch.js +77 -0
  96. package/dist/background/poll.job.d.ts +56 -0
  97. package/dist/background/poll.job.js +195 -0
  98. package/dist/background/render.d.ts +23 -0
  99. package/dist/background/render.js +48 -0
  100. package/dist/background/session.d.ts +48 -0
  101. package/dist/background/session.js +80 -0
  102. package/dist/background/status.d.ts +35 -0
  103. package/dist/background/status.js +57 -0
  104. package/dist/background/stop.d.ts +68 -0
  105. package/dist/background/stop.js +244 -0
  106. package/dist/background/store.d.ts +167 -0
  107. package/dist/background/store.js +361 -0
  108. package/dist/background/store.module.d.ts +6 -0
  109. package/dist/background/store.module.js +22 -0
  110. package/dist/background/tasks.service.d.ts +109 -0
  111. package/dist/background/tasks.service.js +271 -0
  112. package/dist/background/wake-rules.d.ts +66 -0
  113. package/dist/background/wake-rules.js +113 -0
  114. package/dist/background/wake.d.ts +30 -0
  115. package/dist/background/wake.js +63 -0
  116. package/dist/catalog/admin-catalog.controller.d.ts +136 -52
  117. package/dist/catalog/admin-catalog.controller.js +275 -65
  118. package/dist/catalog/admin-catalog.schemas.d.ts +82 -0
  119. package/dist/catalog/admin-catalog.schemas.js +99 -0
  120. package/dist/catalog/appearance.schemas.d.ts +10 -0
  121. package/dist/catalog/appearance.schemas.js +20 -0
  122. package/dist/catalog/appearance.service.d.ts +105 -0
  123. package/dist/catalog/appearance.service.js +306 -0
  124. package/dist/catalog/catalog-content.d.ts +122 -35
  125. package/dist/catalog/catalog-content.js +122 -14
  126. package/dist/catalog/catalog-files.d.ts +42 -0
  127. package/dist/catalog/catalog-files.js +89 -0
  128. package/dist/catalog/catalog-import.module.d.ts +7 -0
  129. package/dist/catalog/catalog-import.module.js +63 -0
  130. package/dist/catalog/catalog-items.d.ts +122 -7
  131. package/dist/catalog/catalog-items.js +301 -13
  132. package/dist/catalog/catalog-scope.service.d.ts +293 -0
  133. package/dist/catalog/catalog-scope.service.js +1236 -0
  134. package/dist/catalog/catalog.module.d.ts +7 -9
  135. package/dist/catalog/catalog.module.js +47 -31
  136. package/dist/catalog/catalog.service.d.ts +122 -31
  137. package/dist/catalog/catalog.service.js +177 -105
  138. package/dist/catalog/claude/agents.js +15 -10
  139. package/dist/catalog/claude/translate.js +3 -0
  140. package/dist/catalog/cli.d.ts +11 -1
  141. package/dist/catalog/cli.js +29 -1
  142. package/dist/catalog/component-promotion.d.ts +96 -0
  143. package/dist/catalog/component-promotion.js +395 -0
  144. package/dist/catalog/component-scope.controller.d.ts +102 -0
  145. package/dist/catalog/component-scope.controller.js +257 -0
  146. package/dist/catalog/component-scope.schemas.d.ts +118 -0
  147. package/dist/catalog/component-scope.schemas.js +97 -0
  148. package/dist/catalog/component-scope.service.d.ts +394 -0
  149. package/dist/catalog/component-scope.service.js +1133 -0
  150. package/dist/catalog/component-state.d.ts +207 -0
  151. package/dist/catalog/component-state.js +484 -0
  152. package/dist/catalog/git-source.d.ts +9 -1
  153. package/dist/catalog/git-source.js +29 -2
  154. package/dist/catalog/job-ids.d.ts +30 -0
  155. package/dist/catalog/job-ids.js +25 -0
  156. package/dist/catalog/marketplace-fetch.d.ts +1 -1
  157. package/dist/catalog/marketplace-icons.d.ts +64 -0
  158. package/dist/catalog/marketplace-icons.js +131 -0
  159. package/dist/catalog/marketplaces.controller.d.ts +50 -41
  160. package/dist/catalog/marketplaces.controller.js +130 -46
  161. package/dist/catalog/marketplaces.schemas.d.ts +48 -0
  162. package/dist/catalog/marketplaces.schemas.js +53 -0
  163. package/dist/catalog/marketplaces.service.d.ts +110 -17
  164. package/dist/catalog/marketplaces.service.js +337 -29
  165. package/dist/catalog/org-catalog.controller.d.ts +114 -62
  166. package/dist/catalog/org-catalog.controller.js +191 -98
  167. package/dist/catalog/org-catalog.schemas.d.ts +104 -0
  168. package/dist/catalog/org-catalog.schemas.js +107 -0
  169. package/dist/catalog/org-catalog.service.d.ts +72 -33
  170. package/dist/catalog/org-catalog.service.js +367 -158
  171. package/dist/catalog/org-extension-switch.d.ts +41 -0
  172. package/dist/catalog/org-extension-switch.js +115 -0
  173. package/dist/catalog/org-extension.controller.d.ts +133 -0
  174. package/dist/catalog/org-extension.controller.js +313 -0
  175. package/dist/catalog/org-extension.schemas.d.ts +15 -0
  176. package/dist/catalog/org-extension.schemas.js +22 -0
  177. package/dist/catalog/org-plugin-uploads.controller.d.ts +77 -0
  178. package/dist/catalog/org-plugin-uploads.controller.js +200 -0
  179. package/dist/catalog/org-plugin-uploads.d.ts +71 -0
  180. package/dist/catalog/org-plugin-uploads.js +122 -0
  181. package/dist/catalog/org-plugin-uploads.schemas.d.ts +20 -0
  182. package/dist/catalog/org-plugin-uploads.schemas.js +32 -0
  183. package/dist/catalog/owned-items.d.ts +188 -0
  184. package/dist/catalog/owned-items.js +808 -0
  185. package/dist/catalog/owned-plugin-cleanup.d.ts +56 -0
  186. package/dist/catalog/owned-plugin-cleanup.js +194 -0
  187. package/dist/catalog/ownership.d.ts +172 -0
  188. package/dist/catalog/ownership.js +326 -0
  189. package/dist/catalog/platform-components.d.ts +243 -0
  190. package/dist/catalog/platform-components.js +872 -0
  191. package/dist/catalog/platform-migration.d.ts +115 -0
  192. package/dist/catalog/platform-migration.js +583 -0
  193. package/dist/catalog/plugin-import.d.ts +254 -47
  194. package/dist/catalog/plugin-import.js +810 -112
  195. package/dist/catalog/plugin-install.d.ts +205 -42
  196. package/dist/catalog/plugin-install.js +828 -126
  197. package/dist/catalog/plugin-package.d.ts +43 -4
  198. package/dist/catalog/plugin-package.js +194 -7
  199. package/dist/catalog/plugin-upgrade.d.ts +308 -225
  200. package/dist/catalog/plugin-upgrade.js +1325 -1131
  201. package/dist/catalog/request-rules.d.ts +65 -0
  202. package/dist/catalog/request-rules.js +217 -0
  203. package/dist/catalog/requests.service.d.ts +194 -118
  204. package/dist/catalog/requests.service.js +530 -343
  205. package/dist/catalog/reserved-names.d.ts +8 -0
  206. package/dist/catalog/reserved-names.js +42 -0
  207. package/dist/catalog/scope-orgs.d.ts +21 -0
  208. package/dist/catalog/scope-orgs.js +67 -0
  209. package/dist/catalog/scope-state.d.ts +35 -0
  210. package/dist/catalog/scope-state.js +87 -0
  211. package/dist/catalog/scope-sync-workers.d.ts +7 -0
  212. package/dist/catalog/scope-sync-workers.js +29 -0
  213. package/dist/catalog/scope-sync.d.ts +176 -0
  214. package/dist/catalog/scope-sync.js +576 -0
  215. package/dist/catalog/scope.d.ts +42 -0
  216. package/dist/catalog/scope.js +42 -0
  217. package/dist/catalog/unshare.d.ts +22 -0
  218. package/dist/catalog/unshare.js +119 -0
  219. package/dist/channels/actions.js +10 -3
  220. package/dist/channels/cards.d.ts +36 -10
  221. package/dist/channels/cards.js +100 -25
  222. package/dist/channels/channels.module.js +13 -2
  223. package/dist/channels/channels.schemas.d.ts +41 -0
  224. package/dist/channels/channels.schemas.js +40 -0
  225. package/dist/channels/connections.controller.d.ts +46 -37
  226. package/dist/channels/connections.controller.js +76 -34
  227. package/dist/channels/connections.service.d.ts +102 -10
  228. package/dist/channels/connections.service.js +271 -24
  229. package/dist/channels/inbound.d.ts +11 -1
  230. package/dist/channels/inbound.js +87 -7
  231. package/dist/channels/outbound.d.ts +14 -1
  232. package/dist/channels/outbound.js +64 -15
  233. package/dist/channels/phrases.d.ts +33 -2
  234. package/dist/channels/phrases.js +29 -1
  235. package/dist/channels/supervisor.d.ts +2 -0
  236. package/dist/channels/supervisor.js +4 -0
  237. package/dist/channels/threads.d.ts +5 -0
  238. package/dist/channels/threads.js +8 -0
  239. package/dist/channels/webhook.d.ts +21 -1
  240. package/dist/channels/webhook.js +39 -4
  241. package/dist/client/client-access.service.d.ts +102 -0
  242. package/dist/client/client-access.service.js +303 -0
  243. package/dist/client/client-builds.service.d.ts +109 -0
  244. package/dist/client/client-builds.service.js +229 -0
  245. package/dist/client/client-delivery.controller.d.ts +25 -0
  246. package/dist/client/client-delivery.controller.js +66 -0
  247. package/dist/client/client-files.d.ts +48 -0
  248. package/dist/client/client-files.js +136 -0
  249. package/dist/client/client-reports.cron.d.ts +13 -0
  250. package/dist/client/client-reports.cron.js +42 -0
  251. package/dist/client/client-reports.service.d.ts +30 -0
  252. package/dist/client/client-reports.service.js +102 -0
  253. package/dist/client/client-sign-in.service.d.ts +21 -0
  254. package/dist/client/client-sign-in.service.js +49 -0
  255. package/dist/client/client.controller.d.ts +49 -0
  256. package/dist/client/client.controller.js +129 -0
  257. package/dist/client/client.module.d.ts +8 -0
  258. package/dist/client/client.module.js +28 -0
  259. package/dist/client/client.schemas.d.ts +61 -0
  260. package/dist/client/client.schemas.js +27 -0
  261. package/dist/config/docs.js +5 -1
  262. package/dist/config/schema.d.ts +35 -2
  263. package/dist/config/schema.js +216 -21
  264. package/dist/conversations/access.d.ts +6 -4
  265. package/dist/conversations/access.js +29 -5
  266. package/dist/conversations/agent-tree.d.ts +46 -0
  267. package/dist/conversations/agent-tree.js +92 -0
  268. package/dist/conversations/artifacts.d.ts +1 -1
  269. package/dist/conversations/artifacts.js +1 -1
  270. package/dist/conversations/attachments.service.d.ts +30 -0
  271. package/dist/conversations/attachments.service.js +130 -5
  272. package/dist/conversations/conversations.controller.d.ts +79 -44
  273. package/dist/conversations/conversations.controller.js +133 -82
  274. package/dist/conversations/conversations.module.d.ts +1 -1
  275. package/dist/conversations/conversations.module.js +10 -7
  276. package/dist/conversations/conversations.schemas.d.ts +52 -0
  277. package/dist/conversations/conversations.schemas.js +79 -0
  278. package/dist/conversations/conversations.service.d.ts +161 -13
  279. package/dist/conversations/conversations.service.js +329 -57
  280. package/dist/conversations/device-status.d.ts +24 -0
  281. package/dist/conversations/device-status.js +71 -0
  282. package/dist/conversations/event-log.d.ts +45 -9
  283. package/dist/conversations/event-log.js +113 -6
  284. package/dist/conversations/events.d.ts +255 -9
  285. package/dist/conversations/events.js +250 -34
  286. package/dist/conversations/message-context.d.ts +79 -0
  287. package/dist/conversations/message-context.js +145 -0
  288. package/dist/conversations/queue.d.ts +5 -2
  289. package/dist/conversations/queue.js +24 -4
  290. package/dist/conversations/queue.service.d.ts +2 -2
  291. package/dist/conversations/queue.service.js +21 -3
  292. package/dist/conversations/titles.d.ts +12 -3
  293. package/dist/conversations/titles.js +40 -16
  294. package/dist/conversations/tree.d.ts +17 -0
  295. package/dist/conversations/tree.js +42 -0
  296. package/dist/ctx/create-ctx.d.ts +48 -5
  297. package/dist/ctx/create-ctx.js +174 -34
  298. package/dist/db/kernel-schema.d.ts +668 -27
  299. package/dist/db/pool.d.ts +5 -0
  300. package/dist/db/pool.js +3 -0
  301. package/dist/devices/access.d.ts +66 -0
  302. package/dist/devices/access.js +113 -0
  303. package/dist/devices/conversation-devices.d.ts +75 -0
  304. package/dist/devices/conversation-devices.js +230 -0
  305. package/dist/devices/devices.controller.d.ts +36 -0
  306. package/dist/devices/devices.controller.js +124 -0
  307. package/dist/devices/devices.module.d.ts +8 -0
  308. package/dist/devices/devices.module.js +34 -0
  309. package/dist/devices/devices.schemas.d.ts +3 -0
  310. package/dist/devices/devices.schemas.js +14 -0
  311. package/dist/devices/devices.service.d.ts +251 -0
  312. package/dist/devices/devices.service.js +791 -0
  313. package/dist/devices/dto.d.ts +25 -0
  314. package/dist/devices/dto.js +12 -0
  315. package/dist/devices/label.d.ts +11 -0
  316. package/dist/devices/label.js +25 -0
  317. package/dist/devices/legacy-cleanup.job.d.ts +34 -0
  318. package/dist/devices/legacy-cleanup.job.js +141 -0
  319. package/dist/errors.d.ts +215 -3
  320. package/dist/errors.js +215 -3
  321. package/dist/evals/evals.module.js +11 -2
  322. package/dist/evals/evals.schemas.d.ts +110 -0
  323. package/dist/evals/evals.schemas.js +107 -0
  324. package/dist/evals/reconstruct.d.ts +18 -9
  325. package/dist/evals/reconstruct.js +36 -10
  326. package/dist/evals/recorded-tools.d.ts +37 -1
  327. package/dist/evals/recorded-tools.js +120 -10
  328. package/dist/evals/run-replay.d.ts +20 -3
  329. package/dist/evals/run-replay.js +78 -14
  330. package/dist/evals/runs.controller.d.ts +2 -57
  331. package/dist/evals/runs.controller.js +1 -42
  332. package/dist/evals/runs.service.d.ts +8 -7
  333. package/dist/evals/runs.service.js +45 -30
  334. package/dist/evals/sets.controller.d.ts +2 -28
  335. package/dist/evals/sets.controller.js +1 -31
  336. package/dist/evals/sets.service.d.ts +7 -7
  337. package/dist/evals/sets.service.js +23 -17
  338. package/dist/evals/snapshot.d.ts +3 -2
  339. package/dist/evals/snapshot.js +17 -4
  340. package/dist/evals/step-replay.d.ts +4 -6
  341. package/dist/evals/step-replay.js +16 -9
  342. package/dist/evals/trajectory.d.ts +5 -3
  343. package/dist/evals/trajectory.js +4 -1
  344. package/dist/evals/trajectory.service.d.ts +8 -3
  345. package/dist/evals/trajectory.service.js +26 -14
  346. package/dist/evals/worker.d.ts +5 -5
  347. package/dist/evals/worker.js +9 -3
  348. package/dist/extensions/admin-ops.d.ts +81 -14
  349. package/dist/extensions/admin-ops.js +181 -47
  350. package/dist/extensions/admin-view.d.ts +57 -10
  351. package/dist/extensions/admin-view.js +249 -27
  352. package/dist/extensions/approvals.d.ts +12 -2
  353. package/dist/extensions/blobs.d.ts +14 -1
  354. package/dist/extensions/blobs.js +49 -5
  355. package/dist/extensions/bootstrap.d.ts +85 -10
  356. package/dist/extensions/bootstrap.js +215 -36
  357. package/dist/extensions/cli.d.ts +12 -0
  358. package/dist/extensions/cli.js +11 -2
  359. package/dist/extensions/config-hash.d.ts +10 -0
  360. package/dist/extensions/config-hash.js +38 -0
  361. package/dist/extensions/config-issues.d.ts +13 -1
  362. package/dist/extensions/config-issues.js +22 -5
  363. package/dist/extensions/config-json-schema.d.ts +43 -7
  364. package/dist/extensions/config-json-schema.js +124 -58
  365. package/dist/extensions/deployment-config-store.d.ts +6 -0
  366. package/dist/extensions/deployment-config.d.ts +94 -9
  367. package/dist/extensions/deployment-config.js +255 -34
  368. package/dist/extensions/display-name.d.ts +22 -0
  369. package/dist/extensions/display-name.js +77 -0
  370. package/dist/extensions/effective-config.d.ts +133 -0
  371. package/dist/extensions/effective-config.js +379 -0
  372. package/dist/extensions/extensions.module.js +31 -12
  373. package/dist/extensions/guide-places.d.ts +68 -0
  374. package/dist/extensions/guide-places.js +152 -0
  375. package/dist/extensions/hooks.d.ts +37 -4
  376. package/dist/extensions/hooks.js +82 -16
  377. package/dist/extensions/host.d.ts +105 -12
  378. package/dist/extensions/host.js +372 -87
  379. package/dist/extensions/installs.d.ts +30 -9
  380. package/dist/extensions/installs.js +57 -16
  381. package/dist/extensions/instance.d.ts +17 -2
  382. package/dist/extensions/instance.js +21 -0
  383. package/dist/extensions/ledger.d.ts +1 -1
  384. package/dist/extensions/locks.d.ts +12 -0
  385. package/dist/extensions/locks.js +26 -0
  386. package/dist/extensions/org-config.d.ts +97 -7
  387. package/dist/extensions/org-config.js +215 -45
  388. package/dist/extensions/org-levels.d.ts +37 -0
  389. package/dist/extensions/org-levels.js +71 -0
  390. package/dist/extensions/org-overrides.d.ts +151 -0
  391. package/dist/extensions/org-overrides.js +524 -0
  392. package/dist/extensions/package.d.ts +18 -4
  393. package/dist/extensions/package.js +56 -3
  394. package/dist/extensions/permission-set.d.ts +35 -5
  395. package/dist/extensions/permission-set.js +36 -5
  396. package/dist/extensions/permission-view.d.ts +106 -13
  397. package/dist/extensions/permission-view.js +33 -15
  398. package/dist/extensions/plugin-guides.d.ts +282 -0
  399. package/dist/extensions/plugin-guides.js +554 -0
  400. package/dist/extensions/plugin-icons.d.ts +54 -0
  401. package/dist/extensions/plugin-icons.js +125 -0
  402. package/dist/extensions/plugin-items.d.ts +21 -0
  403. package/dist/extensions/plugin-items.js +42 -0
  404. package/dist/extensions/point-defaults.controller.d.ts +28 -0
  405. package/dist/extensions/point-defaults.controller.js +69 -0
  406. package/dist/extensions/point-defaults.d.ts +73 -0
  407. package/dist/extensions/point-defaults.js +236 -0
  408. package/dist/extensions/point-defaults.schemas.d.ts +9 -0
  409. package/dist/extensions/point-defaults.schemas.js +14 -0
  410. package/dist/extensions/registry.d.ts +1 -1
  411. package/dist/extensions/registry.js +2 -0
  412. package/dist/extensions/resolve.d.ts +51 -1
  413. package/dist/extensions/resolve.js +85 -3
  414. package/dist/extensions/single-provider.d.ts +92 -0
  415. package/dist/extensions/single-provider.js +180 -0
  416. package/dist/extensions/sources.d.ts +13 -2
  417. package/dist/extensions/sources.js +2 -0
  418. package/dist/extensions/state.module.d.ts +9 -0
  419. package/dist/extensions/state.module.js +46 -0
  420. package/dist/extensions/unavailable.d.ts +50 -0
  421. package/dist/extensions/unavailable.js +115 -0
  422. package/dist/files/previewers.controller.js +2 -3
  423. package/dist/files/previewers.d.ts +10 -3
  424. package/dist/files/previewers.js +40 -11
  425. package/dist/files/previewers.schemas.d.ts +10 -0
  426. package/dist/files/previewers.schemas.js +9 -0
  427. package/dist/http/api.module.js +76 -4
  428. package/dist/http/app.d.ts +11 -2
  429. package/dist/http/app.js +31 -5
  430. package/dist/http/gateway-routes.d.ts +7 -3
  431. package/dist/http/gateway-routes.js +6 -3
  432. package/dist/http/nest-logger.d.ts +6 -5
  433. package/dist/http/nest-logger.js +24 -10
  434. package/dist/http/plugin-dispatch.d.ts +4 -1
  435. package/dist/http/plugin-dispatch.js +14 -2
  436. package/dist/identity/accounts.d.ts +77 -31
  437. package/dist/identity/accounts.js +133 -52
  438. package/dist/identity/audit.d.ts +2 -1
  439. package/dist/identity/auth.controller.js +9 -5
  440. package/dist/identity/auth.guard.d.ts +13 -5
  441. package/dist/identity/auth.guard.js +35 -9
  442. package/dist/identity/cookies.d.ts +26 -5
  443. package/dist/identity/cookies.js +58 -6
  444. package/dist/identity/identity.module.d.ts +1 -1
  445. package/dist/identity/identity.module.js +7 -4
  446. package/dist/identity/initial-passwords.controller.d.ts +22 -0
  447. package/dist/identity/initial-passwords.controller.js +49 -0
  448. package/dist/identity/initial-passwords.d.ts +61 -0
  449. package/dist/identity/initial-passwords.job.d.ts +16 -0
  450. package/dist/identity/initial-passwords.job.js +46 -0
  451. package/dist/identity/initial-passwords.js +159 -0
  452. package/dist/identity/me.controller.d.ts +17 -1
  453. package/dist/identity/me.controller.js +45 -4
  454. package/dist/identity/me.schemas.d.ts +24 -0
  455. package/dist/identity/me.schemas.js +25 -0
  456. package/dist/identity/principal.d.ts +11 -3
  457. package/dist/identity/principal.js +11 -3
  458. package/dist/identity/sessions.d.ts +12 -0
  459. package/dist/identity/sessions.js +45 -0
  460. package/dist/identity/settings.d.ts +99 -12
  461. package/dist/identity/settings.js +234 -25
  462. package/dist/identity/{enterprise-admin.d.ts → super-admin.d.ts} +5 -5
  463. package/dist/identity/{enterprise-admin.js → super-admin.js} +24 -24
  464. package/dist/identity/write-actor.d.ts +11 -0
  465. package/dist/identity/write-actor.js +7 -0
  466. package/dist/inbox/inbox.module.d.ts +4 -1
  467. package/dist/inbox/inbox.module.js +7 -3
  468. package/dist/inbox/inbox.schemas.d.ts +8 -0
  469. package/dist/inbox/inbox.schemas.js +11 -0
  470. package/dist/inbox/inbox.service.d.ts +64 -4
  471. package/dist/inbox/inbox.service.js +74 -4
  472. package/dist/inbox/org-notices.d.ts +63 -0
  473. package/dist/inbox/org-notices.js +91 -0
  474. package/dist/inbox/platform-inbox.controller.d.ts +23 -0
  475. package/dist/inbox/platform-inbox.controller.js +58 -0
  476. package/dist/inbox/platform-inbox.service.d.ts +157 -0
  477. package/dist/inbox/platform-inbox.service.js +281 -0
  478. package/dist/inbox/platform-notices.d.ts +19 -0
  479. package/dist/inbox/platform-notices.js +9 -0
  480. package/dist/index.d.ts +6 -2
  481. package/dist/index.js +7 -1
  482. package/dist/infra/cli/kernel-cli.module.js +9 -1
  483. package/dist/infra/config/kernel-config.service.js +32 -1
  484. package/dist/infra/database/database.module.js +1 -0
  485. package/dist/infra/database/xact-lock.d.ts +1 -1
  486. package/dist/infra/database/xact-lock.js +1 -1
  487. package/dist/infra/events/kernel-events.d.ts +31 -3
  488. package/dist/infra/lifecycle/process-guards.js +4 -0
  489. package/dist/infra/lock/lock.service.d.ts +8 -0
  490. package/dist/infra/lock/lock.service.js +27 -0
  491. package/dist/infra/logging/logging.module.d.ts +4 -2
  492. package/dist/infra/logging/logging.module.js +24 -6
  493. package/dist/infra/presence/presence.module.d.ts +6 -0
  494. package/dist/infra/presence/presence.module.js +22 -0
  495. package/dist/infra/presence/replica-presence.d.ts +87 -0
  496. package/dist/infra/presence/replica-presence.js +189 -0
  497. package/dist/infra/queue/add-job-once.d.ts +14 -0
  498. package/dist/infra/queue/add-job-once.js +16 -0
  499. package/dist/infra/queue/redis-connection.d.ts +6 -0
  500. package/dist/infra/queue/redis-connection.js +7 -0
  501. package/dist/infra/redis/redis.module.js +6 -2
  502. package/dist/infra/throttler/named-throttlers.d.ts +12 -0
  503. package/dist/infra/throttler/named-throttlers.js +67 -0
  504. package/dist/infra/throttler/throttler.guard.js +1 -1
  505. package/dist/infra/tokens.d.ts +6 -1
  506. package/dist/infra/tokens.js +6 -1
  507. package/dist/kernel.module.js +15 -0
  508. package/dist/lifecycle/kernel-lifecycle.d.ts +9 -3
  509. package/dist/lifecycle/kernel-lifecycle.js +51 -11
  510. package/dist/local-devices/device-auth.controller.d.ts +42 -0
  511. package/dist/local-devices/device-auth.controller.js +116 -0
  512. package/dist/local-devices/device-auth.d.ts +119 -0
  513. package/dist/local-devices/device-auth.js +401 -0
  514. package/dist/local-devices/device-auth.module.d.ts +7 -0
  515. package/dist/local-devices/device-auth.module.js +25 -0
  516. package/dist/local-devices/device-routes.d.ts +36 -0
  517. package/dist/local-devices/device-routes.js +90 -0
  518. package/dist/local-devices/dto.d.ts +66 -0
  519. package/dist/local-devices/dto.js +44 -0
  520. package/dist/local-devices/keys.d.ts +25 -0
  521. package/dist/local-devices/keys.js +25 -0
  522. package/dist/local-devices/local-device-gateway.d.ts +134 -0
  523. package/dist/local-devices/local-device-gateway.js +542 -0
  524. package/dist/local-devices/local-device-provider.d.ts +89 -0
  525. package/dist/local-devices/local-device-provider.js +151 -0
  526. package/dist/local-devices/local-devices.module.d.ts +16 -0
  527. package/dist/local-devices/local-devices.module.js +44 -0
  528. package/dist/local-devices/machines.d.ts +118 -0
  529. package/dist/local-devices/machines.js +366 -0
  530. package/dist/local-devices/relay.d.ts +100 -0
  531. package/dist/local-devices/relay.js +373 -0
  532. package/dist/local-devices/targets.d.ts +28 -0
  533. package/dist/local-devices/targets.js +73 -0
  534. package/dist/log.d.ts +13 -1
  535. package/dist/log.js +93 -17
  536. package/dist/models/embeddings.d.ts +82 -0
  537. package/dist/models/embeddings.js +326 -0
  538. package/dist/models/enablement.controller.d.ts +40 -0
  539. package/dist/models/enablement.controller.js +74 -0
  540. package/dist/models/enablement.d.ts +101 -0
  541. package/dist/models/enablement.js +264 -0
  542. package/dist/models/models.module.d.ts +5 -1
  543. package/dist/models/models.module.js +16 -4
  544. package/dist/models/org-models.schemas.d.ts +8 -0
  545. package/dist/models/org-models.schemas.js +22 -0
  546. package/dist/models/prices.d.ts +8 -6
  547. package/dist/models/prices.js +11 -9
  548. package/dist/models/purposes.controller.d.ts +6 -4
  549. package/dist/models/purposes.controller.js +13 -7
  550. package/dist/models/purposes.d.ts +72 -14
  551. package/dist/models/purposes.js +115 -34
  552. package/dist/orgs/directory-sync.d.ts +14 -5
  553. package/dist/orgs/directory-sync.js +41 -17
  554. package/dist/orgs/offboarding.d.ts +12 -8
  555. package/dist/orgs/offboarding.js +54 -33
  556. package/dist/orgs/org-lock.d.ts +5 -0
  557. package/dist/orgs/org-lock.js +13 -0
  558. package/dist/orgs/org.guard.d.ts +10 -0
  559. package/dist/orgs/org.guard.js +43 -32
  560. package/dist/orgs/orgs.controller.d.ts +2 -5
  561. package/dist/orgs/orgs.controller.js +3 -6
  562. package/dist/orgs/orgs.module.js +3 -0
  563. package/dist/orgs/orgs.schemas.d.ts +8 -0
  564. package/dist/orgs/orgs.schemas.js +16 -0
  565. package/dist/orgs/orgs.service.d.ts +23 -8
  566. package/dist/orgs/orgs.service.js +38 -16
  567. package/dist/orgs/roles.d.ts +1 -1
  568. package/dist/orgs/roles.js +5 -1
  569. package/dist/orgs/settings.controller.d.ts +1 -1
  570. package/dist/orgs/settings.service.d.ts +66 -6
  571. package/dist/orgs/settings.service.js +89 -10
  572. package/dist/overrides.d.ts +16 -1
  573. package/dist/overrides.js +10 -0
  574. package/dist/platform/actor.d.ts +48 -0
  575. package/dist/platform/actor.js +100 -0
  576. package/dist/platform/agent-docs.d.ts +18 -0
  577. package/dist/platform/agent-docs.js +59 -0
  578. package/dist/platform/availability.d.ts +14 -0
  579. package/dist/platform/availability.js +43 -0
  580. package/dist/platform/errors.d.ts +28 -0
  581. package/dist/platform/errors.js +65 -0
  582. package/dist/platform/exclusions.d.ts +11 -0
  583. package/dist/platform/exclusions.js +774 -0
  584. package/dist/platform/method.d.ts +6 -0
  585. package/dist/platform/method.js +15 -0
  586. package/dist/platform/operation.d.ts +169 -0
  587. package/dist/platform/operation.js +102 -0
  588. package/dist/platform/ops/accounts.ops.d.ts +32 -0
  589. package/dist/platform/ops/accounts.ops.js +291 -0
  590. package/dist/platform/ops/admin-items.ops.d.ts +37 -0
  591. package/dist/platform/ops/admin-items.ops.js +278 -0
  592. package/dist/platform/ops/admin.ops.d.ts +38 -0
  593. package/dist/platform/ops/admin.ops.js +497 -0
  594. package/dist/platform/ops/agent-skills.ops.d.ts +50 -0
  595. package/dist/platform/ops/agent-skills.ops.js +509 -0
  596. package/dist/platform/ops/agent-templates.ops.d.ts +17 -0
  597. package/dist/platform/ops/agent-templates.ops.js +272 -0
  598. package/dist/platform/ops/agents.ops.d.ts +37 -0
  599. package/dist/platform/ops/agents.ops.js +730 -0
  600. package/dist/platform/ops/approvals.ops.d.ts +30 -0
  601. package/dist/platform/ops/approvals.ops.js +116 -0
  602. package/dist/platform/ops/background.ops.d.ts +14 -0
  603. package/dist/platform/ops/background.ops.js +134 -0
  604. package/dist/platform/ops/catalog-admin.ops.d.ts +92 -0
  605. package/dist/platform/ops/catalog-admin.ops.js +682 -0
  606. package/dist/platform/ops/channels.ops.d.ts +16 -0
  607. package/dist/platform/ops/channels.ops.js +195 -0
  608. package/dist/platform/ops/components.ops.d.ts +46 -0
  609. package/dist/platform/ops/components.ops.js +854 -0
  610. package/dist/platform/ops/connectors.ops.d.ts +17 -0
  611. package/dist/platform/ops/connectors.ops.js +190 -0
  612. package/dist/platform/ops/conversations.ops.d.ts +30 -0
  613. package/dist/platform/ops/conversations.ops.js +470 -0
  614. package/dist/platform/ops/devices.ops.d.ts +26 -0
  615. package/dist/platform/ops/devices.ops.js +311 -0
  616. package/dist/platform/ops/errors.d.ts +16 -0
  617. package/dist/platform/ops/errors.js +30 -0
  618. package/dist/platform/ops/evals.ops.d.ts +28 -0
  619. package/dist/platform/ops/evals.ops.js +783 -0
  620. package/dist/platform/ops/extensions-admin.ops.d.ts +25 -0
  621. package/dist/platform/ops/extensions-admin.ops.js +372 -0
  622. package/dist/platform/ops/extensions.ops.d.ts +25 -0
  623. package/dist/platform/ops/extensions.ops.js +347 -0
  624. package/dist/platform/ops/inbox.ops.d.ts +25 -0
  625. package/dist/platform/ops/inbox.ops.js +381 -0
  626. package/dist/platform/ops/marketplaces.ops.d.ts +22 -0
  627. package/dist/platform/ops/marketplaces.ops.js +466 -0
  628. package/dist/platform/ops/models.ops.d.ts +25 -0
  629. package/dist/platform/ops/models.ops.js +232 -0
  630. package/dist/platform/ops/org-plugins.ops.d.ts +35 -0
  631. package/dist/platform/ops/org-plugins.ops.js +388 -0
  632. package/dist/platform/ops/org-settings.ops.d.ts +18 -0
  633. package/dist/platform/ops/org-settings.ops.js +127 -0
  634. package/dist/platform/ops/orgs.ops.d.ts +28 -0
  635. package/dist/platform/ops/orgs.ops.js +298 -0
  636. package/dist/platform/ops/other-orgs.d.ts +20 -0
  637. package/dist/platform/ops/other-orgs.js +72 -0
  638. package/dist/platform/ops/paging.d.ts +14 -0
  639. package/dist/platform/ops/paging.js +20 -0
  640. package/dist/platform/ops/platform.ops.d.ts +30 -0
  641. package/dist/platform/ops/platform.ops.js +231 -0
  642. package/dist/platform/ops/plugins.ops.d.ts +35 -0
  643. package/dist/platform/ops/plugins.ops.js +476 -0
  644. package/dist/platform/ops/previewers.ops.d.ts +14 -0
  645. package/dist/platform/ops/previewers.ops.js +109 -0
  646. package/dist/platform/ops/requests.ops.d.ts +14 -0
  647. package/dist/platform/ops/requests.ops.js +191 -0
  648. package/dist/platform/ops/role.d.ts +4 -0
  649. package/dist/platform/ops/role.js +10 -0
  650. package/dist/platform/ops/setup.ops.d.ts +24 -0
  651. package/dist/platform/ops/setup.ops.js +212 -0
  652. package/dist/platform/ops/skills.ops.d.ts +17 -0
  653. package/dist/platform/ops/skills.ops.js +160 -0
  654. package/dist/platform/ops/summary.d.ts +10 -0
  655. package/dist/platform/ops/summary.js +18 -0
  656. package/dist/platform/ops/themes.ops.d.ts +14 -0
  657. package/dist/platform/ops/themes.ops.js +47 -0
  658. package/dist/platform/ops/ui.ops.d.ts +8 -0
  659. package/dist/platform/ops/ui.ops.js +41 -0
  660. package/dist/platform/ops/unavailable.d.ts +23 -0
  661. package/dist/platform/ops/unavailable.js +118 -0
  662. package/dist/platform/parity.d.ts +33 -0
  663. package/dist/platform/parity.js +272 -0
  664. package/dist/platform/platform-ops.module.d.ts +43 -0
  665. package/dist/platform/platform-ops.module.js +142 -0
  666. package/dist/platform/platform.module.d.ts +8 -0
  667. package/dist/platform/platform.module.js +25 -0
  668. package/dist/platform/registry.d.ts +30 -0
  669. package/dist/platform/registry.js +111 -0
  670. package/dist/platform/route-schemas.d.ts +18 -0
  671. package/dist/platform/route-schemas.js +85 -0
  672. package/dist/roles/gateway-role.d.ts +18 -3
  673. package/dist/roles/gateway-role.js +33 -5
  674. package/dist/roles/gateway.module.d.ts +2 -1
  675. package/dist/roles/gateway.module.js +6 -3
  676. package/dist/roles/worker-role.d.ts +6 -4
  677. package/dist/roles/worker-role.js +14 -7
  678. package/dist/roles/worker.module.d.ts +1 -1
  679. package/dist/roles/worker.module.js +21 -1
  680. package/dist/runtime/context/build.d.ts +21 -13
  681. package/dist/runtime/context/build.js +106 -29
  682. package/dist/runtime/context/claude-tools.d.ts +4 -1
  683. package/dist/runtime/context/claude-tools.js +13 -12
  684. package/dist/runtime/context/compaction.js +24 -1
  685. package/dist/runtime/context/device-paths.d.ts +40 -0
  686. package/dist/runtime/context/device-paths.js +48 -0
  687. package/dist/runtime/context/legacy-text.d.ts +22 -0
  688. package/dist/runtime/context/legacy-text.js +37 -0
  689. package/dist/runtime/context/reminders.d.ts +2 -0
  690. package/dist/runtime/context/reminders.js +2 -0
  691. package/dist/runtime/context/run-context.d.ts +65 -0
  692. package/dist/runtime/context/run-context.js +215 -0
  693. package/dist/runtime/context/skills.d.ts +29 -11
  694. package/dist/runtime/context/skills.js +46 -32
  695. package/dist/runtime/context/tool-changes.d.ts +27 -0
  696. package/dist/runtime/context/tool-changes.js +60 -0
  697. package/dist/runtime/hook-calls.d.ts +8 -1
  698. package/dist/runtime/hook-calls.js +40 -7
  699. package/dist/runtime/langgraph-loop.d.ts +3 -1
  700. package/dist/runtime/langgraph-loop.js +36 -17
  701. package/dist/runtime/loop.d.ts +35 -6
  702. package/dist/runtime/maintenance.d.ts +9 -4
  703. package/dist/runtime/maintenance.js +35 -8
  704. package/dist/runtime/model-call.d.ts +54 -11
  705. package/dist/runtime/model-call.js +105 -28
  706. package/dist/runtime/providers.d.ts +149 -29
  707. package/dist/runtime/providers.js +332 -63
  708. package/dist/runtime/run-context.service.d.ts +65 -0
  709. package/dist/runtime/run-context.service.js +236 -0
  710. package/dist/runtime/run-control.d.ts +11 -1
  711. package/dist/runtime/run-control.js +12 -0
  712. package/dist/runtime/run-drafts.d.ts +85 -0
  713. package/dist/runtime/run-drafts.js +230 -0
  714. package/dist/runtime/run-finish.d.ts +1 -1
  715. package/dist/runtime/run-jobs.d.ts +3 -5
  716. package/dist/runtime/run-jobs.js +7 -9
  717. package/dist/runtime/run-queue.d.ts +62 -5
  718. package/dist/runtime/run-queue.js +313 -40
  719. package/dist/runtime/run-worker.d.ts +19 -8
  720. package/dist/runtime/run-worker.js +105 -44
  721. package/dist/runtime/runtime.module.js +13 -3
  722. package/dist/runtime/step-log.d.ts +15 -4
  723. package/dist/runtime/step-log.js +24 -7
  724. package/dist/runtime/stream.controller.d.ts +23 -1
  725. package/dist/runtime/stream.controller.js +60 -3
  726. package/dist/runtime/stream.d.ts +4 -1
  727. package/dist/runtime/stream.js +27 -3
  728. package/dist/runtime/subagents/child.d.ts +55 -7
  729. package/dist/runtime/subagents/child.js +105 -7
  730. package/dist/runtime/subagents/definition.d.ts +31 -26
  731. package/dist/runtime/subagents/definition.js +89 -142
  732. package/dist/runtime/subagents/deliveries.d.ts +71 -0
  733. package/dist/runtime/subagents/deliveries.js +228 -0
  734. package/dist/runtime/subagents/dispatch.d.ts +116 -27
  735. package/dist/runtime/subagents/dispatch.js +213 -142
  736. package/dist/runtime/subagents/limits.d.ts +24 -5
  737. package/dist/runtime/subagents/limits.js +40 -6
  738. package/dist/runtime/subagents/messages.d.ts +95 -0
  739. package/dist/runtime/subagents/messages.js +328 -0
  740. package/dist/runtime/subagents/org-agents.js +2 -1
  741. package/dist/runtime/subagents/preamble.d.ts +4 -4
  742. package/dist/runtime/subagents/preamble.js +9 -7
  743. package/dist/runtime/subagents/progress.d.ts +8 -6
  744. package/dist/runtime/subagents/progress.js +11 -6
  745. package/dist/runtime/subagents/render.d.ts +30 -0
  746. package/dist/runtime/subagents/render.js +53 -0
  747. package/dist/runtime/subagents/roster.d.ts +25 -8
  748. package/dist/runtime/subagents/roster.js +48 -12
  749. package/dist/runtime/subagents/skill-fork.d.ts +4 -3
  750. package/dist/runtime/subagents/skill-fork.js +9 -5
  751. package/dist/runtime/subagents/status.d.ts +14 -0
  752. package/dist/runtime/subagents/status.js +23 -0
  753. package/dist/runtime/subagents/subagents.service.d.ts +9 -6
  754. package/dist/runtime/subagents/subagents.service.js +13 -8
  755. package/dist/runtime/usage-report-jobs.d.ts +88 -0
  756. package/dist/runtime/usage-report-jobs.js +158 -0
  757. package/dist/runtime/usage-report.d.ts +35 -39
  758. package/dist/runtime/usage-report.js +171 -97
  759. package/dist/runtime/waits.d.ts +148 -39
  760. package/dist/runtime/waits.js +426 -112
  761. package/dist/sandbox/jobs.d.ts +40 -13
  762. package/dist/sandbox/jobs.js +57 -20
  763. package/dist/sandbox/leases.d.ts +37 -54
  764. package/dist/sandbox/leases.js +71 -115
  765. package/dist/sandbox/providers.d.ts +34 -7
  766. package/dist/sandbox/providers.js +54 -9
  767. package/dist/sandbox/sandbox-file-reader.d.ts +35 -0
  768. package/dist/sandbox/sandbox-file-reader.js +98 -0
  769. package/dist/sandbox/sandbox.module.d.ts +3 -2
  770. package/dist/sandbox/sandbox.module.js +10 -4
  771. package/dist/sandbox/sandbox.service.d.ts +345 -132
  772. package/dist/sandbox/sandbox.service.js +883 -399
  773. package/dist/sandbox/unreachable.d.ts +30 -0
  774. package/dist/sandbox/unreachable.js +108 -0
  775. package/dist/setup/kernel-checks.d.ts +91 -0
  776. package/dist/setup/kernel-checks.js +295 -0
  777. package/dist/setup/oauth-token-probe.d.ts +47 -0
  778. package/dist/setup/oauth-token-probe.js +108 -0
  779. package/dist/setup/redact-check.d.ts +18 -0
  780. package/dist/setup/redact-check.js +46 -0
  781. package/dist/setup/setup-check-registry.d.ts +86 -0
  782. package/dist/setup/setup-check-registry.js +75 -0
  783. package/dist/setup/setup-checks.controller.d.ts +28 -0
  784. package/dist/setup/setup-checks.controller.js +78 -0
  785. package/dist/setup/setup-checks.schemas.d.ts +38 -0
  786. package/dist/setup/setup-checks.schemas.js +43 -0
  787. package/dist/setup/setup-checks.service.d.ts +144 -0
  788. package/dist/setup/setup-checks.service.js +683 -0
  789. package/dist/setup/setup-guides.controller.d.ts +18 -0
  790. package/dist/setup/setup-guides.controller.js +48 -0
  791. package/dist/setup/setup-guides.schemas.d.ts +10 -0
  792. package/dist/setup/setup-guides.schemas.js +6 -0
  793. package/dist/setup/setup-guides.service.d.ts +126 -0
  794. package/dist/setup/setup-guides.service.js +315 -0
  795. package/dist/setup/setup.module.d.ts +8 -0
  796. package/dist/setup/setup.module.js +31 -0
  797. package/dist/skills/agent-skills.controller.d.ts +48 -0
  798. package/dist/skills/agent-skills.controller.js +131 -0
  799. package/dist/skills/agent-skills.service.d.ts +262 -0
  800. package/dist/skills/agent-skills.service.js +996 -0
  801. package/dist/skills/catalog.d.ts +14 -11
  802. package/dist/skills/catalog.js +32 -50
  803. package/dist/skills/changes.controller.d.ts +12 -22
  804. package/dist/skills/changes.controller.js +27 -56
  805. package/dist/skills/changes.service.d.ts +69 -115
  806. package/dist/skills/changes.service.js +249 -598
  807. package/dist/skills/conversation-catalog.d.ts +53 -0
  808. package/dist/skills/conversation-catalog.js +149 -0
  809. package/dist/skills/invocable.controller.d.ts +1 -1
  810. package/dist/skills/invocable.controller.js +2 -2
  811. package/dist/skills/invocation-keys.d.ts +1 -1
  812. package/dist/skills/invocation-keys.js +1 -1
  813. package/dist/skills/invoke.d.ts +3 -3
  814. package/dist/skills/invoke.js +21 -8
  815. package/dist/skills/package.d.ts +15 -1
  816. package/dist/skills/package.js +14 -1
  817. package/dist/skills/skills.controller.d.ts +32 -6
  818. package/dist/skills/skills.controller.js +64 -11
  819. package/dist/skills/skills.module.js +25 -3
  820. package/dist/skills/skills.schemas.d.ts +44 -0
  821. package/dist/skills/skills.schemas.js +68 -0
  822. package/dist/skills/skills.service.d.ts +123 -26
  823. package/dist/skills/skills.service.js +493 -76
  824. package/dist/skills/usable.d.ts +82 -0
  825. package/dist/skills/usable.js +388 -0
  826. package/dist/themes/render-css.d.ts +13 -0
  827. package/dist/themes/render-css.js +135 -0
  828. package/dist/themes/theme-delivery.service.d.ts +36 -0
  829. package/dist/themes/theme-delivery.service.js +116 -0
  830. package/dist/themes/theme-state.d.ts +116 -0
  831. package/dist/themes/theme-state.js +221 -0
  832. package/dist/themes/theme-usage.d.ts +61 -0
  833. package/dist/themes/theme-usage.js +98 -0
  834. package/dist/themes/themes-public.controller.d.ts +33 -0
  835. package/dist/themes/themes-public.controller.js +98 -0
  836. package/dist/themes/themes.controller.d.ts +13 -0
  837. package/dist/themes/themes.controller.js +38 -0
  838. package/dist/themes/themes.module.d.ts +3 -0
  839. package/dist/themes/themes.module.js +21 -0
  840. package/dist/themes/themes.schemas.d.ts +3 -0
  841. package/dist/themes/themes.schemas.js +2 -0
  842. package/dist/themes/themes.service.d.ts +50 -0
  843. package/dist/themes/themes.service.js +99 -0
  844. package/dist/time-zone.d.ts +5 -0
  845. package/dist/time-zone.js +19 -0
  846. package/dist/tools/admin-connectors.d.ts +69 -0
  847. package/dist/tools/admin-connectors.js +135 -0
  848. package/dist/tools/approvals.controller.js +2 -3
  849. package/dist/tools/approvals.schemas.d.ts +21 -0
  850. package/dist/tools/approvals.schemas.js +15 -0
  851. package/dist/tools/approvals.service.d.ts +26 -2
  852. package/dist/tools/approvals.service.js +44 -5
  853. package/dist/tools/builtin-names.d.ts +104 -0
  854. package/dist/tools/builtin-names.js +164 -0
  855. package/dist/tools/builtins/agent.d.ts +27 -25
  856. package/dist/tools/builtins/agent.js +66 -63
  857. package/dist/tools/builtins/ask-user.d.ts +1 -1
  858. package/dist/tools/builtins/ask-user.js +5 -4
  859. package/dist/tools/builtins/builtin-tools.d.ts +23 -4
  860. package/dist/tools/builtins/builtin-tools.js +78 -12
  861. package/dist/tools/builtins/current-time.d.ts +26 -0
  862. package/dist/tools/builtins/current-time.js +99 -0
  863. package/dist/tools/builtins/handback.d.ts +28 -0
  864. package/dist/tools/builtins/handback.js +53 -0
  865. package/dist/tools/builtins/platform.d.ts +51 -0
  866. package/dist/tools/builtins/platform.js +451 -0
  867. package/dist/tools/builtins/read-tool-output.d.ts +1 -1
  868. package/dist/tools/builtins/read-tool-output.js +2 -2
  869. package/dist/tools/builtins/sandbox/bash.d.ts +5 -5
  870. package/dist/tools/builtins/sandbox/bash.js +291 -39
  871. package/dist/tools/builtins/sandbox/common.d.ts +135 -36
  872. package/dist/tools/builtins/sandbox/common.js +222 -62
  873. package/dist/tools/builtins/sandbox/deliver.d.ts +1 -1
  874. package/dist/tools/builtins/sandbox/deliver.js +19 -16
  875. package/dist/tools/builtins/sandbox/edit.d.ts +1 -1
  876. package/dist/tools/builtins/sandbox/edit.js +64 -50
  877. package/dist/tools/builtins/sandbox/file-state.d.ts +34 -0
  878. package/dist/tools/builtins/sandbox/file-state.js +34 -0
  879. package/dist/tools/builtins/sandbox/glob-match.d.ts +1 -1
  880. package/dist/tools/builtins/sandbox/glob-match.js +1 -1
  881. package/dist/tools/builtins/sandbox/glob.d.ts +1 -1
  882. package/dist/tools/builtins/sandbox/glob.js +17 -12
  883. package/dist/tools/builtins/sandbox/grep.d.ts +7 -4
  884. package/dist/tools/builtins/sandbox/grep.js +153 -34
  885. package/dist/tools/builtins/sandbox/index.d.ts +9 -5
  886. package/dist/tools/builtins/sandbox/index.js +13 -5
  887. package/dist/tools/builtins/sandbox/read.d.ts +2 -2
  888. package/dist/tools/builtins/sandbox/read.js +29 -19
  889. package/dist/tools/builtins/sandbox/task-output.d.ts +79 -0
  890. package/dist/tools/builtins/sandbox/task-output.js +334 -0
  891. package/dist/tools/builtins/sandbox/task-stop.d.ts +10 -0
  892. package/dist/tools/builtins/sandbox/task-stop.js +113 -0
  893. package/dist/tools/builtins/sandbox/write.d.ts +1 -1
  894. package/dist/tools/builtins/sandbox/write.js +51 -44
  895. package/dist/tools/builtins/send-message.d.ts +56 -0
  896. package/dist/tools/builtins/send-message.js +100 -0
  897. package/dist/tools/builtins/skill-load.d.ts +29 -18
  898. package/dist/tools/builtins/skill-load.js +125 -73
  899. package/dist/tools/builtins/tool-search.d.ts +13 -9
  900. package/dist/tools/builtins/tool-search.js +25 -14
  901. package/dist/tools/builtins/web/errors.d.ts +8 -0
  902. package/dist/tools/builtins/web/errors.js +53 -0
  903. package/dist/tools/builtins/web/extract.d.ts +62 -0
  904. package/dist/tools/builtins/web/extract.js +271 -0
  905. package/dist/tools/builtins/web/fetch.d.ts +55 -0
  906. package/dist/tools/builtins/web/fetch.js +175 -0
  907. package/dist/tools/builtins/web/index.d.ts +13 -0
  908. package/dist/tools/builtins/web/index.js +12 -0
  909. package/dist/tools/builtins/web/page-cache.d.ts +25 -0
  910. package/dist/tools/builtins/web/page-cache.js +77 -0
  911. package/dist/tools/builtins/web/search.d.ts +25 -0
  912. package/dist/tools/builtins/web/search.js +210 -0
  913. package/dist/tools/builtins/web/url.d.ts +17 -0
  914. package/dist/tools/builtins/web/url.js +43 -0
  915. package/dist/tools/connector-account-policies.d.ts +51 -0
  916. package/dist/tools/connector-account-policies.js +165 -0
  917. package/dist/tools/connectors.controller.d.ts +74 -9
  918. package/dist/tools/connectors.controller.js +133 -16
  919. package/dist/tools/connectors.schemas.d.ts +27 -0
  920. package/dist/tools/connectors.schemas.js +34 -0
  921. package/dist/tools/connectors.service.d.ts +101 -8
  922. package/dist/tools/connectors.service.js +266 -28
  923. package/dist/tools/credentials.d.ts +23 -0
  924. package/dist/tools/credentials.js +90 -1
  925. package/dist/tools/display-names.d.ts +9 -0
  926. package/dist/tools/display-names.js +24 -0
  927. package/dist/tools/drift.js +5 -5
  928. package/dist/tools/elicitation.js +1 -1
  929. package/dist/tools/extension-tools.controller.d.ts +14 -0
  930. package/dist/tools/extension-tools.controller.js +37 -0
  931. package/dist/tools/info.d.ts +61 -4
  932. package/dist/tools/info.js +119 -33
  933. package/dist/tools/legacy-data.d.ts +34 -0
  934. package/dist/tools/legacy-data.js +76 -0
  935. package/dist/tools/legacy-keys.d.ts +51 -0
  936. package/dist/tools/legacy-keys.js +114 -0
  937. package/dist/tools/naming.d.ts +1 -5
  938. package/dist/tools/naming.js +1 -7
  939. package/dist/tools/oauth/flow-paths.d.ts +1 -1
  940. package/dist/tools/oauth/flow-paths.js +1 -1
  941. package/dist/tools/oauth/flow.js +1 -1
  942. package/dist/tools/oauth/tokens.d.ts +54 -7
  943. package/dist/tools/oauth/tokens.js +87 -17
  944. package/dist/tools/org-tool-switches.d.ts +89 -0
  945. package/dist/tools/org-tool-switches.js +201 -0
  946. package/dist/tools/outputs.js +1 -1
  947. package/dist/tools/pipeline.d.ts +67 -47
  948. package/dist/tools/pipeline.js +319 -380
  949. package/dist/tools/policy.d.ts +30 -23
  950. package/dist/tools/policy.js +142 -64
  951. package/dist/tools/questions.controller.d.ts +1 -1
  952. package/dist/tools/questions.controller.js +1 -1
  953. package/dist/tools/questions.service.d.ts +23 -2
  954. package/dist/tools/questions.service.js +104 -2
  955. package/dist/tools/registry.d.ts +189 -68
  956. package/dist/tools/registry.js +318 -236
  957. package/dist/tools/resources.d.ts +1 -1
  958. package/dist/tools/resources.js +1 -1
  959. package/dist/tools/tools.module.js +31 -3
  960. package/dist/tools/validate.js +1 -1
  961. package/dist/ui/admin-ui.controller.d.ts +56 -0
  962. package/dist/ui/admin-ui.controller.js +192 -0
  963. package/dist/ui/arrangement.d.ts +65 -0
  964. package/dist/ui/arrangement.js +171 -0
  965. package/dist/ui/embed-token.d.ts +2 -2
  966. package/dist/ui/embed-token.js +30 -5
  967. package/dist/ui/registry.d.ts +42 -17
  968. package/dist/ui/registry.js +46 -14
  969. package/dist/ui/slots.controller.d.ts +11 -0
  970. package/dist/ui/slots.controller.js +25 -0
  971. package/dist/ui/ui-stream.d.ts +20 -3
  972. package/dist/ui/ui-stream.js +25 -7
  973. package/dist/ui/ui.schemas.d.ts +70 -0
  974. package/dist/ui/ui.schemas.js +65 -0
  975. package/dist/ui/views.controller.d.ts +35 -49
  976. package/dist/ui/views.controller.js +48 -70
  977. package/dist/ui/views.d.ts +112 -18
  978. package/dist/ui/views.js +254 -47
  979. package/package.json +6 -3
  980. package/src/migrations/0063_tool_keys_claude_code.sql +220 -0
  981. package/src/migrations/0064_account_last_org.sql +7 -0
  982. package/src/migrations/0065_conversation_archive.sql +8 -0
  983. package/src/migrations/0066_extension_display_name.sql +4 -0
  984. package/src/migrations/0067_agent_profiles.sql +20 -0
  985. package/src/migrations/0068_agent_avatar_uploads.sql +7 -0
  986. package/src/migrations/0069_attachments_agent_idx.sql +3 -0
  987. package/src/migrations/0070_background_tasks.sql +37 -0
  988. package/src/migrations/0071_background_tasks_reserve.sql +6 -0
  989. package/src/migrations/0072_background_tasks_stopping.sql +5 -0
  990. package/src/migrations/0073_org_extension_point_defaults.sql +11 -0
  991. package/src/migrations/0074_subagent_tree.sql +50 -0
  992. package/src/migrations/0075_plugin_scope.sql +61 -0
  993. package/src/migrations/0076_skills_created_by_nullable.sql +6 -0
  994. package/src/migrations/0077_scope_requests.sql +52 -0
  995. package/src/migrations/0078_scope_grant_switches.sql +18 -0
  996. package/src/migrations/0079_scope_live_install_switches.sql +19 -0
  997. package/src/migrations/0080_rename_enterprise_admin.sql +18 -0
  998. package/src/migrations/0081_platform_components.sql +129 -0
  999. package/src/migrations/0082_platform_migration.sql +33 -0
  1000. package/src/migrations/0083_plugin_scope_sync_failures.sql +15 -0
  1001. package/src/migrations/0084_org_owned_items.sql +85 -0
  1002. package/src/migrations/0085_agent_templates_phase4.sql +45 -0
  1003. package/src/migrations/0086_org_layering.sql +30 -0
  1004. package/src/migrations/0087_approval_summary.sql +6 -0
  1005. package/src/migrations/0088_environments.sql +80 -0
  1006. package/src/migrations/0089_model_kinds_usage.sql +38 -0
  1007. package/src/migrations/0090_initial_passwords.sql +27 -0
  1008. package/src/migrations/0091_account_time_zone.sql +4 -0
  1009. package/src/migrations/0092_tools_default_on.sql +27 -0
  1010. package/src/migrations/0093_connected_environments.sql +37 -0
  1011. package/src/migrations/0094_environment_paths_idx.sql +7 -0
  1012. package/src/migrations/0095_environment_files_resets.sql +5 -0
  1013. package/src/migrations/0096_environment_demoted_default.sql +18 -0
  1014. package/src/migrations/0097_extension_installs_enabled_at.sql +16 -0
  1015. package/src/migrations/0098_single_provider_running_first.sql +41 -0
  1016. package/src/migrations/0099_channel_connection_guide_ack.sql +6 -0
  1017. package/src/migrations/0100_catalog_files.sql +13 -0
  1018. package/src/migrations/0101_marketplace_icons.sql +32 -0
  1019. package/src/migrations/0102_themes.sql +64 -0
  1020. package/src/migrations/0103_ui_theme_setting.sql +7 -0
  1021. package/src/migrations/0104_connector_tool_account_policies.sql +16 -0
  1022. package/src/migrations/0105_devices_rename.sql +136 -0
  1023. package/src/migrations/0106_setup_guides_v2.sql +10 -0
  1024. package/src/migrations/0107_extension_client_builds.sql +50 -0
  1025. package/src/migrations/0108_question_skipped.sql +6 -0
  1026. package/src/migrations/0109_audit_platform_idx.sql +5 -0
  1027. package/src/migrations/0110_usage_time_idx.sql +8 -0
  1028. package/src/migrations/0111_agent_skill_sharing.sql +22 -0
  1029. package/src/migrations/0112_skill_share_requests.sql +4 -0
  1030. package/dist/catalog/upgrade-targets.d.ts +0 -56
  1031. package/dist/catalog/upgrade-targets.js +0 -90
  1032. package/dist/conversations/sandbox-status.d.ts +0 -24
  1033. package/dist/conversations/sandbox-status.js +0 -52
  1034. package/dist/extensions/org-config.controller.d.ts +0 -24
  1035. package/dist/extensions/org-config.controller.js +0 -62
  1036. package/dist/tools/builtins/sandbox/names.d.ts +0 -7
  1037. package/dist/tools/builtins/sandbox/names.js +0 -20
  1038. package/dist/tools/builtins/skill-write.d.ts +0 -59
  1039. package/dist/tools/builtins/skill-write.js +0 -244
@@ -0,0 +1,53 @@
1
+ import { type Selectable } from "kysely";
2
+ import type { EventLog } from "../conversations/event-log.js";
3
+ import type { SkillChangeRequestsTable } from "../db/kernel-schema.js";
4
+ import type { KernelDb } from "../infra/database/kernel-db.js";
5
+ import type { KernelLogger } from "../log.js";
6
+ import { type SkillsSnapshot } from "../runtime/context/skills.js";
7
+ /** What appending a conversation's skills catalog snapshot needs. */
8
+ export interface ConversationCatalogDeps {
9
+ db: KernelDb;
10
+ log: KernelLogger;
11
+ eventLog: EventLog;
12
+ }
13
+ /** Cancelled requests: draft prefixes to delete and (conversation, seq) to publish after the commit. */
14
+ export interface CancelledDrafts {
15
+ prefixes: string[];
16
+ seqs: [string, number][];
17
+ }
18
+ /**
19
+ * In the caller's transaction, derives the conversation's next skills catalog snapshot from its
20
+ * latest one and appends it (only when different). It first locks the conversation row (the lock
21
+ * `EventLog.append` takes) and reads the latest snapshot under it, so no other snapshot slips in
22
+ * between "read latest" and "append". Returns the seq written, or null when nothing was written;
23
+ * the caller calls `eventLog.notify` after the commit.
24
+ * `derive` gets the whole latest payload, so `pinned` and `toolMap` are carried forward; a pinned
25
+ * entry is kept only while `skills` has the same id, version and source (pinned ⊆ skills), and the
26
+ * pinned bodies still fit the size limit. The tool map is only recomputed at run start.
27
+ */
28
+ export declare function appendConversationCatalog(deps: ConversationCatalogDeps, conversationId: string, derive: (base: SkillsSnapshot) => SkillsSnapshot | null, idemKey: string, runId?: string | null): Promise<number | null>;
29
+ /**
30
+ * When a draft stops applying (rejected / cancelled), appends a reverting snapshot to the
31
+ * requesting conversation in the caller's transaction: derived from that conversation's latest
32
+ * snapshot, the draft's entry is replaced by the skill's current real version (already the
33
+ * post-decision state in the transaction; for a version proposal the org skill it targets), or
34
+ * removed when there is none. No snapshot is written when the latest one no longer has the draft,
35
+ * nor for a request without a conversation or a share request (no trial). While the conversation
36
+ * runs, the notice lands at the current position (built after the tool results) and applies at
37
+ * the next step. A removal does not guess an org skill of the same name (it was replaced in the
38
+ * snapshot); the next run start's resolution brings it back.
39
+ */
40
+ export declare function revertTrialCatalog(deps: ConversationCatalogDeps, req: Selectable<SkillChangeRequestsTable>): Promise<number | null>;
41
+ /**
42
+ * In the caller's transaction (the request row locked), cancels a pending request: status
43
+ * `cancelled`, audit `skill.change_decided` with the reason. A version draft also gets a
44
+ * reverting snapshot in its conversation (unless `revert` is false: the caller appends the next
45
+ * one) and its prefix is queued in `out` for deletion after the commit; a share request points at
46
+ * the skill's own version files, which stay.
47
+ */
48
+ export declare function cancelRequestIn(deps: ConversationCatalogDeps, req: Selectable<SkillChangeRequestsTable>, out: CancelledDrafts, how: {
49
+ actorAccountId: string;
50
+ actorTokenId?: string;
51
+ reason: string;
52
+ revert?: boolean;
53
+ }): Promise<void>;
@@ -0,0 +1,149 @@
1
+ import { sql } from "kysely";
2
+ import { audit } from "../identity/audit.js";
3
+ import { sameSnapshot, } from "../runtime/context/skills.js";
4
+ import { fitPinned, invocationOf, lockLatestCatalog } from "./catalog.js";
5
+ const byName = (a, b) => a.name < b.name ? -1 : a.name > b.name ? 1 : 0;
6
+ /**
7
+ * In the caller's transaction, derives the conversation's next skills catalog snapshot from its
8
+ * latest one and appends it (only when different). It first locks the conversation row (the lock
9
+ * `EventLog.append` takes) and reads the latest snapshot under it, so no other snapshot slips in
10
+ * between "read latest" and "append". Returns the seq written, or null when nothing was written;
11
+ * the caller calls `eventLog.notify` after the commit.
12
+ * `derive` gets the whole latest payload, so `pinned` and `toolMap` are carried forward; a pinned
13
+ * entry is kept only while `skills` has the same id, version and source (pinned ⊆ skills), and the
14
+ * pinned bodies still fit the size limit. The tool map is only recomputed at run start.
15
+ */
16
+ export async function appendConversationCatalog(deps, conversationId, derive, idemKey, runId) {
17
+ const base = (await lockLatestCatalog(deps.db.db, conversationId)) ?? { skills: [] };
18
+ const derived = derive(base);
19
+ if (derived === null)
20
+ return null;
21
+ const skills = [...derived.skills].sort(byName);
22
+ const live = (p) => skills.some((s) => s.id === p.id && s.version === p.version && s.source === p.source);
23
+ const pinned = fitPinned((derived.pinned ?? []).filter(live), deps.log, { conversationId });
24
+ const next = {
25
+ skills,
26
+ ...(pinned.length > 0 && { pinned }),
27
+ ...(derived.toolMap !== undefined && { toolMap: derived.toolMap }),
28
+ };
29
+ if (sameSnapshot(base, next))
30
+ return null;
31
+ const written = await deps.eventLog.appendIn(conversationId, [
32
+ {
33
+ type: "skills_catalog",
34
+ ...(runId !== undefined && runId !== null && { runId }),
35
+ idemKey,
36
+ payload: next,
37
+ },
38
+ ]);
39
+ return Math.max(...written.map((e) => e.seq));
40
+ }
41
+ /**
42
+ * When a draft stops applying (rejected / cancelled), appends a reverting snapshot to the
43
+ * requesting conversation in the caller's transaction: derived from that conversation's latest
44
+ * snapshot, the draft's entry is replaced by the skill's current real version (already the
45
+ * post-decision state in the transaction; for a version proposal the org skill it targets), or
46
+ * removed when there is none. No snapshot is written when the latest one no longer has the draft,
47
+ * nor for a request without a conversation or a share request (no trial). While the conversation
48
+ * runs, the notice lands at the current position (built after the tool results) and applies at
49
+ * the next step. A removal does not guess an org skill of the same name (it was replaced in the
50
+ * snapshot); the next run start's resolution brings it back.
51
+ */
52
+ export async function revertTrialCatalog(deps, req) {
53
+ const conversationId = req.requested_in_conversation;
54
+ if (conversationId === null || req.kind === "share")
55
+ return null;
56
+ const name = req.proposed_version.manifest.name;
57
+ let q = deps.db
58
+ .selectFrom("skills")
59
+ .innerJoin("skill_versions", (j) => j
60
+ .onRef("skill_versions.skill_id", "=", "skills.id")
61
+ .onRef("skill_versions.version", "=", "skills.current_version"))
62
+ .select([
63
+ "skills.id",
64
+ "skills.current_version",
65
+ "skill_versions.manifest",
66
+ "skill_versions.object_prefix",
67
+ ])
68
+ .where("skills.org_id", "=", req.org_id)
69
+ .where("skills.deleted_at", "is", null);
70
+ // A proposal on a shared org skill goes back to that skill's current version; one served from
71
+ // a platform skill (promoted or linked without a pin) is removed instead, and the next run start
72
+ // resolves it again
73
+ q =
74
+ req.skill_id !== null
75
+ ? q
76
+ .where("skills.id", "=", req.skill_id)
77
+ .where("skills.scope", "=", "org")
78
+ .where((eb) => eb.or([
79
+ eb("skills.platform_skill_id", "is", null),
80
+ eb("skills.pinned_version", "is not", null),
81
+ ]))
82
+ : q
83
+ .where("skills.scope", "=", "agent")
84
+ .where("skills.agent_id", "=", req.agent_id)
85
+ .where("skills.name", "=", name);
86
+ const real = await q.executeTakeFirst();
87
+ return appendConversationCatalog(deps, conversationId, (base) => {
88
+ if (!base.skills.some((s) => s.source === req.object_prefix))
89
+ return null;
90
+ const rest = base.skills.filter((s) => s.source !== req.object_prefix);
91
+ // The draft's pinned entry goes (Decision 8): the next run start pins the real version
92
+ return {
93
+ ...base,
94
+ // A manual-only current version (phase D) stays out of the model's catalog
95
+ skills: real && invocationOf(real.manifest).model
96
+ ? [
97
+ ...rest,
98
+ {
99
+ id: real.id,
100
+ name,
101
+ description: real.manifest.description,
102
+ version: real.current_version,
103
+ source: real.object_prefix,
104
+ },
105
+ ]
106
+ : rest,
107
+ ...(base.pinned && {
108
+ pinned: base.pinned.filter((p) => p.source !== req.object_prefix),
109
+ }),
110
+ };
111
+ }, `skills_catalog:revert:${req.id}`);
112
+ }
113
+ /**
114
+ * In the caller's transaction (the request row locked), cancels a pending request: status
115
+ * `cancelled`, audit `skill.change_decided` with the reason. A version draft also gets a
116
+ * reverting snapshot in its conversation (unless `revert` is false: the caller appends the next
117
+ * one) and its prefix is queued in `out` for deletion after the commit; a share request points at
118
+ * the skill's own version files, which stay.
119
+ */
120
+ export async function cancelRequestIn(deps, req, out, how) {
121
+ await deps.db
122
+ .updateTable("skill_change_requests")
123
+ .set({ status: "cancelled", decided_at: sql `now()` })
124
+ .where("id", "=", req.id)
125
+ .execute();
126
+ await audit(deps.db.db, {
127
+ actorAccountId: how.actorAccountId,
128
+ ...(how.actorTokenId !== undefined && { actorTokenId: how.actorTokenId }),
129
+ orgId: req.org_id,
130
+ action: "skill.change_decided",
131
+ target: req.id,
132
+ detail: {
133
+ decision: "cancelled",
134
+ reason: how.reason,
135
+ kind: req.kind,
136
+ agentId: req.agent_id,
137
+ name: req.proposed_version.manifest.name,
138
+ },
139
+ });
140
+ if (req.kind === "share")
141
+ return;
142
+ if (how.revert !== false) {
143
+ const seq = await revertTrialCatalog(deps, req);
144
+ if (seq !== null && req.requested_in_conversation !== null) {
145
+ out.seqs.push([req.requested_in_conversation, seq]);
146
+ }
147
+ }
148
+ out.prefixes.push(req.object_prefix);
149
+ }
@@ -1,4 +1,4 @@
1
- import { z } from "zod";
1
+ import type { z } from "zod";
2
2
  import { type Principal } from "../identity/principal.js";
3
3
  import { type OrgContext } from "../orgs/org.guard.js";
4
4
  import { type InvocableSkill, SkillInvoker } from "./invoke.js";
@@ -8,13 +8,13 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
10
  import { Controller, Get, Header, Inject, Param } from "@nestjs/common";
11
- import { z } from "zod";
12
11
  import { CurrentPrincipal, requireUser } from "../identity/principal.js";
13
12
  import { createZodDto } from "../infra/validation/create-zod-dto.js";
14
13
  import { ZQuery } from "../infra/validation/zod-params.js";
15
14
  import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
16
15
  import { SkillInvoker } from "./invoke.js";
17
- const ListQuery = z.object({ conversationId: z.string().min(1).max(100).optional() }).strict();
16
+ import { InvocableSkillsQuerySchema } from "./skills.schemas.js";
17
+ const ListQuery = InvocableSkillsQuerySchema;
18
18
  class InvocableSkillsQuery extends createZodDto(ListQuery, "InvocableSkillsQuery") {
19
19
  }
20
20
  /**
@@ -2,7 +2,7 @@
2
2
  * The SKILL.md invocation keys (package ecosystem phase D) and their lenient reading: readers of
3
3
  * stored files (catalog install and upgrade) and the Claude Code translation drop a key the strict
4
4
  * `parseSkillMd` checks would refuse, with the reason, instead of refusing the skill or storing an
5
- * invocation nobody can use. Uploads, native imports and `skill_write` stay strict.
5
+ * invocation nobody can use. Uploads and native imports stay strict.
6
6
  */
7
7
  /** The frontmatter keys that make up a skill's invocation metadata. */
8
8
  export declare const INVOCATION_KEYS: readonly ["disable-model-invocation", "user-invocable", "context", "agent", "argument-hint", "arguments"];
@@ -3,7 +3,7 @@ import { parseSkillMd } from "@capybara-hq/plugin-sdk";
3
3
  * The SKILL.md invocation keys (package ecosystem phase D) and their lenient reading: readers of
4
4
  * stored files (catalog install and upgrade) and the Claude Code translation drop a key the strict
5
5
  * `parseSkillMd` checks would refuse, with the reason, instead of refusing the skill or storing an
6
- * invocation nobody can use. Uploads, native imports and `skill_write` stay strict.
6
+ * invocation nobody can use. Uploads and native imports stay strict.
7
7
  */
8
8
  /** The frontmatter keys that make up a skill's invocation metadata. */
9
9
  export const INVOCATION_KEYS = [
@@ -1,5 +1,5 @@
1
1
  import { AgentLookup } from "../agents/agent-lookup.js";
2
- import type { AgentDefinition } from "../agents/definition.js";
2
+ import { type AgentDefinition } from "../agents/definition.js";
3
3
  import type { EventPayload } from "../conversations/events.js";
4
4
  import type { KernelSchemaDb } from "../db/kernel-schema.js";
5
5
  import { ApiError } from "../errors.js";
@@ -121,14 +121,14 @@ export declare class SkillInvoker {
121
121
  * `storage.unavailable` (`skill_unreadable`) when the version is gone or its SKILL.md cannot be
122
122
  * read, plain `storage.unavailable` when storage is down. `task` renders the text for the
123
123
  * sub-agent's effective definition: the shell-injection line only when the sub-agent has
124
- * `sandbox_bash` (batch 3 review m1).
124
+ * `Bash` (batch 3 review m1).
125
125
  */
126
126
  renderTask(a: {
127
127
  orgId: string;
128
128
  conversationId: string;
129
129
  skill: InvocationRecord;
130
130
  }): Promise<{
131
- task: (child: Pick<AgentDefinition, "tools">) => string;
131
+ task: (child: Pick<AgentDefinition, "disabledTools" | "subagentTools">) => string;
132
132
  warning?: string;
133
133
  }>;
134
134
  /** Reads and parses the version's SKILL.md (checked against the manifest), returns the body. */
@@ -7,16 +7,19 @@ var __decorate = (this && this.__decorate) || function (decorators, target, key,
7
7
  var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
- import { escapeSkillInvocationTags, hasShellInjection, parseSkillMd, renderSkillBody, renderSkillInvocation, SKILL_ENTRY_FILE, SKILL_INVOCATION_LIMITS, } from "@capybara-hq/plugin-sdk";
10
+ import { escapeSkillInvocationTags, hasShellInjection, parseSkillMd, renderSkillBody, renderSkillInvocation, SKILL_ENTRY_FILE, SKILL_INVOCATION_LIMITS, skillDigest, } from "@capybara-hq/plugin-sdk";
11
11
  import { Inject, Injectable } from "@nestjs/common";
12
12
  import { AgentLookup } from "../agents/agent-lookup.js";
13
+ import { builtinDisabled } from "../agents/definition.js";
13
14
  import { ApiError } from "../errors.js";
14
15
  import { KernelDb } from "../infra/database/kernel-db.js";
15
16
  import { KERNEL_LOGGER } from "../infra/tokens.js";
16
17
  import { isGeneralAlias, resolveSkillForkType } from "../runtime/subagents/roster.js";
17
18
  import { StorageService } from "../storage/storage.service.js";
19
+ import { BUILTIN } from "../tools/builtin-names.js";
18
20
  import { findSkillVersion, readSkillFile, SkillIntegrityError, } from "../tools/builtins/skill-load.js";
19
21
  import { invocationOf, resolveSkills } from "./catalog.js";
22
+ import { skillFileStore } from "./usable.js";
20
23
  /** A leading `/<name>` or `/<plugin>:<name>`, then whitespace or the end (spec §3.2). */
21
24
  const SLASH_COMMAND_RE = /^\/([a-z0-9-]+(?::[a-z0-9-]+)?)(?:\s|$)/;
22
25
  /** `/name args` at the very start of a message, or null (`/etc/hosts`, ` /x`, `/Upper`). */
@@ -142,14 +145,15 @@ let SkillInvoker = class SkillInvoker {
142
145
  const body = await this.readBody(a.orgId, found);
143
146
  const others = found.manifest.files.some((f) => f.path !== SKILL_ENTRY_FILE);
144
147
  const lines = {
145
- // the invocation itself makes the conversation's next run offer skill_load (skillLoadOffered)
148
+ // the invocation itself makes the conversation's next run offer Skill (skillLoadOffered)
146
149
  ...(others && { files: "load" }),
147
150
  ...(hasShellInjection(body) &&
148
- hasBuiltin(a.agent, "sandbox_bash") && { shellHint: true }),
151
+ hasBuiltin(a.agent, BUILTIN.Bash) && { shellHint: true }),
149
152
  };
150
153
  const input = {
151
154
  name: a.name,
152
155
  skillName: found.skill.name,
156
+ digest: skillDigest(found.manifest.files),
153
157
  version: found.skill.version,
154
158
  body,
155
159
  invocation: inv,
@@ -158,7 +162,7 @@ let SkillInvoker = class SkillInvoker {
158
162
  };
159
163
  // a SKILL.md whose body alone renders over the limit can never be invoked: say so, rather than
160
164
  // "shorten the arguments"
161
- tooLarge(found.skill.name, () => renderSkillBody(body, inv, "", found.skill.name));
165
+ tooLarge(found.skill.name, () => renderSkillBody(body, inv, "", found.skill.name, input.digest));
162
166
  const args = a.args.trim();
163
167
  const record = {
164
168
  id: found.skill.id,
@@ -192,7 +196,7 @@ let SkillInvoker = class SkillInvoker {
192
196
  * `storage.unavailable` (`skill_unreadable`) when the version is gone or its SKILL.md cannot be
193
197
  * read, plain `storage.unavailable` when storage is down. `task` renders the text for the
194
198
  * sub-agent's effective definition: the shell-injection line only when the sub-agent has
195
- * `sandbox_bash` (batch 3 review m1).
199
+ * `Bash` (batch 3 review m1).
196
200
  */
197
201
  async renderTask(a) {
198
202
  const { skill } = a;
@@ -218,6 +222,7 @@ let SkillInvoker = class SkillInvoker {
218
222
  const task = (child) => renderSkillInvocation({
219
223
  name: skill.name,
220
224
  skillName: skill.name,
225
+ digest: skillDigest(found.manifest.files),
221
226
  version: skill.version,
222
227
  body,
223
228
  invocation: inv,
@@ -225,7 +230,7 @@ let SkillInvoker = class SkillInvoker {
225
230
  lines: {
226
231
  ...(others && { files: "load" }),
227
232
  ...(hasShellInjection(body) &&
228
- hasBuiltin(child, "sandbox_bash") && { shellHint: true }),
233
+ hasBuiltin(child, BUILTIN.Bash) && { shellHint: true }),
229
234
  },
230
235
  lead: false,
231
236
  });
@@ -253,7 +258,9 @@ let SkillInvoker = class SkillInvoker {
253
258
  this.storage.assertAvailable();
254
259
  let bytes;
255
260
  try {
256
- bytes = await readSkillFile(this.storage.kernel(orgId), `${r.skill.source}${SKILL_ENTRY_FILE}`, md);
261
+ // a platform version (`platform:<prefix>`) is read from deployment/ (ruling D2)
262
+ const { store, prefix } = skillFileStore(this.storage, orgId, r.skill.source);
263
+ bytes = await readSkillFile(store, `${prefix}${SKILL_ENTRY_FILE}`, md);
257
264
  }
258
265
  catch (e) {
259
266
  if (e instanceof SkillIntegrityError)
@@ -283,7 +290,13 @@ SkillInvoker = __decorate([
283
290
  __param(3, Inject(KERNEL_LOGGER))
284
291
  ], SkillInvoker);
285
292
  export { SkillInvoker };
286
- const hasBuiltin = (agent, name) => (agent.tools ?? []).some((t) => t.kind === "builtin" && t.name === name);
293
+ /**
294
+ * Does the definition leave builtin `name` on (tools default-on spec §4): not turned off and not
295
+ * removed by a sub-agent's key filter. Whether it can run now (a sandbox) is not checked.
296
+ */
297
+ const hasBuiltin = (agent, name) => !builtinDisabled(agent.disabledTools, name) &&
298
+ !(agent.subagentTools?.deny ?? []).includes(name) &&
299
+ (agent.subagentTools?.allow === undefined || agent.subagentTools.allow.includes(name));
287
300
  /** The skill's own body over the rendered limit: a 400 on `skill` naming the skill. */
288
301
  function tooLarge(name, render) {
289
302
  try {
@@ -1,4 +1,5 @@
1
1
  import { type SkillInvocation } from "@capybara-hq/plugin-sdk";
2
+ import type { SkillManifest } from "../db/kernel-schema.js";
2
3
  /**
3
4
  * 技能包(zip)解包与校验。zip 一律当作恶意输入:
4
5
  *
@@ -45,7 +46,7 @@ export interface SkillPackage {
45
46
  export declare function storedInvocation(i: SkillInvocation): SkillInvocation | undefined;
46
47
  /**
47
48
  * Invalid zip or skill content (`problems` lists each one, in English). Independent of HTTP: a
48
- * skill upload maps it to `skill.invalid_package`, an enterprise catalog import to
49
+ * skill upload maps it to `skill.invalid_package`, a platform catalog import to
49
50
  * `catalog.invalid_manifest`.
50
51
  */
51
52
  export declare class SkillArchiveError extends Error {
@@ -85,3 +86,16 @@ export declare function checkSkillFiles(files: SkillPackageFile[], opts?: {
85
86
  * 不合法 → {@link SkillArchiveError}。
86
87
  */
87
88
  export declare function readZipFiles(bytes: Uint8Array, maxBytes: number): Promise<SkillPackageFile[]>;
89
+ /** A validated skill package: its name, description, files and invocation. */
90
+ export interface SkillPackageInput {
91
+ name: string;
92
+ description: string;
93
+ files: SkillPackageFile[];
94
+ /** Phase D: stored in the manifest when it is not the default. */
95
+ invocation?: SkillInvocation;
96
+ }
97
+ /**
98
+ * The stored manifest of a skill package (the invocation only when it is not the default); org
99
+ * skills and platform skills store the same shape.
100
+ */
101
+ export declare function skillManifest(pkg: SkillPackageInput): SkillManifest;
@@ -48,7 +48,7 @@ export function storedInvocation(i) {
48
48
  const ignored = (path) => path.startsWith("__MACOSX/") || path === ".DS_Store" || path.endsWith("/.DS_Store");
49
49
  /**
50
50
  * Invalid zip or skill content (`problems` lists each one, in English). Independent of HTTP: a
51
- * skill upload maps it to `skill.invalid_package`, an enterprise catalog import to
51
+ * skill upload maps it to `skill.invalid_package`, a platform catalog import to
52
52
  * `catalog.invalid_manifest`.
53
53
  */
54
54
  export class SkillArchiveError extends Error {
@@ -225,3 +225,16 @@ export async function readZipFiles(bytes, maxBytes) {
225
225
  }
226
226
  return raw;
227
227
  }
228
+ /**
229
+ * The stored manifest of a skill package (the invocation only when it is not the default); org
230
+ * skills and platform skills store the same shape.
231
+ */
232
+ export function skillManifest(pkg) {
233
+ const invocation = pkg.invocation && storedInvocation(pkg.invocation);
234
+ return {
235
+ name: pkg.name,
236
+ description: pkg.description,
237
+ files: pkg.files.map(({ path, size, sha256 }) => ({ path, size, sha256 })),
238
+ ...(invocation !== undefined && { invocation }),
239
+ };
240
+ }
@@ -1,14 +1,16 @@
1
1
  import { z } from "zod";
2
+ import { OwnedItems, type OwnedSkillDeletePreview } from "../catalog/owned-items.js";
2
3
  import { type CreatedAttachment } from "../conversations/attachments.service.js";
3
4
  import { type Principal } from "../identity/principal.js";
4
5
  import { type OrgContext } from "../orgs/org.guard.js";
6
+ import { SkillCreateBody, SkillIdParams } from "./skills.schemas.js";
5
7
  import { type SkillDetail, type SkillSummary, SkillsService, type UploadedSkill } from "./skills.service.js";
6
8
  declare const UploadBody: z.ZodObject<{
7
9
  name: z.ZodString;
8
10
  size: z.ZodNumber;
9
11
  }, z.core.$strict>;
10
- declare const CreateBody: z.ZodObject<{
11
- uploadId: z.ZodString;
12
+ declare const ShareableBody: z.ZodObject<{
13
+ shareable: z.ZodBoolean;
12
14
  }, z.core.$strict>;
13
15
  /**
14
16
  * The org skill library (`/api/v1/orgs/:orgId/skills`, human users only):
@@ -21,20 +23,44 @@ declare const CreateBody: z.ZodObject<{
21
23
  * `POST /attachments/:id/finalize`, or skip it and let the next step finalize);
22
24
  * 3. `POST /` `{ uploadId }` unpacks and checks it, creating a skill or adding a version to the
23
25
  * skill with the same name;
24
- * `DELETE /:id` soft-deletes (the web asks for confirmation, R3).
26
+ * `DELETE /:id` soft-deletes (the web asks for confirmation, R3; `GET /:id/delete-preview` says
27
+ * what it does), `PUT /:id/shareable` sets 可共享 (plugin scope phase 3, ruling P3-6).
25
28
  * When the deployment setting `customSkills` is deny, registering an upload and creating both
26
29
  * return 403 `catalog.custom_disabled` (decided in the service, re-checked inside the org row lock
27
- * on create); installing skills from the enterprise catalog is unaffected.
30
+ * on create); installing skills from the platform catalog is unaffected.
28
31
  */
29
32
  export declare class SkillsController {
30
33
  private readonly skills;
31
- constructor(skills: SkillsService);
34
+ /** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
35
+ private readonly owned;
36
+ constructor(skills: SkillsService,
37
+ /** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
38
+ owned: OwnedItems);
32
39
  createUpload(principal: Principal, org: OrgContext, body: z.infer<typeof UploadBody>): Promise<CreatedAttachment>;
33
- create(principal: Principal, org: OrgContext, body: z.infer<typeof CreateBody>): Promise<UploadedSkill>;
40
+ create(principal: Principal, org: OrgContext, body: z.infer<typeof SkillCreateBody>): Promise<UploadedSkill>;
34
41
  list(principal: Principal, org: OrgContext): Promise<{
35
42
  skills: SkillSummary[];
36
43
  }>;
37
44
  get(principal: Principal, org: OrgContext, id: string): Promise<SkillDetail>;
45
+ /**
46
+ * Sets 可共享 on the org's own skill (`{ shareable }` -> 200 `{ id, shareable }`): only an org
47
+ * skill of the org's own (P3-6: an agent's skill or a copy of another owner's platform skill ->
48
+ * 409 `catalog.not_owned`); one it promoted writes its platform row too (ruling P3-2).
49
+ */
50
+ setShareable(principal: Principal, org: OrgContext, params: z.infer<typeof SkillIdParams>, body: z.infer<typeof ShareableBody>): Promise<{
51
+ id: string;
52
+ shareable: boolean;
53
+ }>;
54
+ /**
55
+ * What deleting the skill does (pre-flight F19, P3-19; nothing written): `outcome`
56
+ * `transferred` when it was shared and another org uses it (`orgs`), else `removed`; `agents`
57
+ * the org's agents that lose it.
58
+ */
59
+ deletePreview(principal: Principal, org: OrgContext, params: z.infer<typeof SkillIdParams>): Promise<OwnedSkillDeletePreview>;
60
+ /**
61
+ * Soft-deletes the skill; one the org shared that another org uses is transferred to the
62
+ * platform first (P3-19, platform notice `ownership_transferred`). 204.
63
+ */
38
64
  remove(principal: Principal, org: OrgContext, id: string): Promise<void>;
39
65
  }
40
66
  export {};
@@ -8,13 +8,15 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
8
8
  return function (target, key) { decorator(target, key, paramIndex); }
9
9
  };
10
10
  import { hasControlChars, MEDIA_NAME_MAX_CHARS } from "@capybara-hq/plugin-sdk";
11
- import { Controller, Delete, Get, HttpCode, Inject, Param, Post } from "@nestjs/common";
11
+ import { Controller, Delete, Get, HttpCode, Inject, Param, Post, Put } from "@nestjs/common";
12
12
  import { z } from "zod";
13
+ import { OwnedItems } from "../catalog/owned-items.js";
13
14
  import { SKILL_PACKAGE_UPLOAD_MAX_BYTES, } from "../conversations/attachments.service.js";
14
15
  import { CurrentPrincipal, patTokenId, requireUser, } from "../identity/principal.js";
15
16
  import { createZodDto } from "../infra/validation/create-zod-dto.js";
16
- import { ZBody } from "../infra/validation/zod-params.js";
17
+ import { ZBody, ZParam } from "../infra/validation/zod-params.js";
17
18
  import { CurrentOrg, OrgAction } from "../orgs/org.guard.js";
19
+ import { SkillCreateBody, SkillIdParams, SkillShareableSchema } from "./skills.schemas.js";
18
20
  import { SkillsService, } from "./skills.service.js";
19
21
  const UploadBody = z
20
22
  .object({
@@ -26,10 +28,14 @@ const UploadBody = z
26
28
  size: z.number().int().min(1).max(SKILL_PACKAGE_UPLOAD_MAX_BYTES),
27
29
  })
28
30
  .strict();
29
- const CreateBody = z.object({ uploadId: z.string().min(1).max(100) }).strict();
30
31
  class SkillUploadBody extends createZodDto(UploadBody, "SkillUploadBody") {
31
32
  }
32
- class SkillCreateBody extends createZodDto(CreateBody, "SkillCreateBody") {
33
+ class SkillCreateBodyDto extends createZodDto(SkillCreateBody, "SkillCreateBody") {
34
+ }
35
+ const ShareableBody = SkillShareableSchema;
36
+ class SkillIdParamsDto extends createZodDto(SkillIdParams, "SkillIdParams") {
37
+ }
38
+ class SkillShareableBody extends createZodDto(ShareableBody, "SkillShareableBody") {
33
39
  }
34
40
  /**
35
41
  * The org skill library (`/api/v1/orgs/:orgId/skills`, human users only):
@@ -42,15 +48,20 @@ class SkillCreateBody extends createZodDto(CreateBody, "SkillCreateBody") {
42
48
  * `POST /attachments/:id/finalize`, or skip it and let the next step finalize);
43
49
  * 3. `POST /` `{ uploadId }` unpacks and checks it, creating a skill or adding a version to the
44
50
  * skill with the same name;
45
- * `DELETE /:id` soft-deletes (the web asks for confirmation, R3).
51
+ * `DELETE /:id` soft-deletes (the web asks for confirmation, R3; `GET /:id/delete-preview` says
52
+ * what it does), `PUT /:id/shareable` sets 可共享 (plugin scope phase 3, ruling P3-6).
46
53
  * When the deployment setting `customSkills` is deny, registering an upload and creating both
47
54
  * return 403 `catalog.custom_disabled` (decided in the service, re-checked inside the org row lock
48
- * on create); installing skills from the enterprise catalog is unaffected.
55
+ * on create); installing skills from the platform catalog is unaffected.
49
56
  */
50
57
  let SkillsController = class SkillsController {
51
58
  skills;
52
- constructor(skills) {
59
+ owned;
60
+ constructor(skills,
61
+ /** The org's own items: 可共享 and the delete of a promoted skill (rulings P3-3, P3-19). */
62
+ owned) {
53
63
  this.skills = skills;
64
+ this.owned = owned;
54
65
  }
55
66
  async createUpload(principal, org, body) {
56
67
  const p = requireUser(principal);
@@ -58,7 +69,8 @@ let SkillsController = class SkillsController {
58
69
  }
59
70
  async create(principal, org, body) {
60
71
  const p = requireUser(principal);
61
- return this.skills.upload(org.orgId, p.account.id, body.uploadId, patTokenId(p));
72
+ const tokenId = patTokenId(p);
73
+ return this.skills.upload(org.orgId, p.account.id, body.uploadId, tokenId, body.shareable);
62
74
  }
63
75
  async list(principal, org) {
64
76
  requireUser(principal);
@@ -68,9 +80,34 @@ let SkillsController = class SkillsController {
68
80
  requireUser(principal);
69
81
  return this.skills.get(org.orgId, id);
70
82
  }
83
+ /**
84
+ * Sets 可共享 on the org's own skill (`{ shareable }` -> 200 `{ id, shareable }`): only an org
85
+ * skill of the org's own (P3-6: an agent's skill or a copy of another owner's platform skill ->
86
+ * 409 `catalog.not_owned`); one it promoted writes its platform row too (ruling P3-2).
87
+ */
88
+ async setShareable(principal, org, params, body) {
89
+ const p = requireUser(principal);
90
+ const tokenId = patTokenId(p);
91
+ await this.owned.setShareable(org.orgId, p.account.id, { kind: "skill", id: params.id }, body.shareable, tokenId !== undefined ? { actorTokenId: tokenId } : {});
92
+ return { id: params.id, shareable: body.shareable };
93
+ }
94
+ /**
95
+ * What deleting the skill does (pre-flight F19, P3-19; nothing written): `outcome`
96
+ * `transferred` when it was shared and another org uses it (`orgs`), else `removed`; `agents`
97
+ * the org's agents that lose it.
98
+ */
99
+ async deletePreview(principal, org, params) {
100
+ requireUser(principal);
101
+ return this.owned.previewSkillDelete(org.orgId, params.id);
102
+ }
103
+ /**
104
+ * Soft-deletes the skill; one the org shared that another org uses is transferred to the
105
+ * platform first (P3-19, platform notice `ownership_transferred`). 204.
106
+ */
71
107
  async remove(principal, org, id) {
72
108
  const p = requireUser(principal);
73
- await this.skills.softDelete(org.orgId, id, p.account.id, patTokenId(p));
109
+ const tokenId = patTokenId(p);
110
+ await this.owned.deleteSkill(org.orgId, p.account.id, id, tokenId !== undefined ? { actorTokenId: tokenId } : {});
74
111
  }
75
112
  };
76
113
  __decorate([
@@ -85,7 +122,7 @@ __decorate([
85
122
  OrgAction("skills.manage"),
86
123
  __param(0, CurrentPrincipal()),
87
124
  __param(1, CurrentOrg()),
88
- __param(2, ZBody(SkillCreateBody))
125
+ __param(2, ZBody(SkillCreateBodyDto))
89
126
  ], SkillsController.prototype, "create", null);
90
127
  __decorate([
91
128
  Get(),
@@ -100,6 +137,21 @@ __decorate([
100
137
  __param(1, CurrentOrg()),
101
138
  __param(2, Param("id"))
102
139
  ], SkillsController.prototype, "get", null);
140
+ __decorate([
141
+ Put(":id/shareable"),
142
+ OrgAction("skills.manage"),
143
+ __param(0, CurrentPrincipal()),
144
+ __param(1, CurrentOrg()),
145
+ __param(2, ZParam(SkillIdParamsDto)),
146
+ __param(3, ZBody(SkillShareableBody))
147
+ ], SkillsController.prototype, "setShareable", null);
148
+ __decorate([
149
+ Get(":id/delete-preview"),
150
+ OrgAction("skills.manage"),
151
+ __param(0, CurrentPrincipal()),
152
+ __param(1, CurrentOrg()),
153
+ __param(2, ZParam(SkillIdParamsDto))
154
+ ], SkillsController.prototype, "deletePreview", null);
103
155
  __decorate([
104
156
  Delete(":id"),
105
157
  HttpCode(204),
@@ -110,6 +162,7 @@ __decorate([
110
162
  ], SkillsController.prototype, "remove", null);
111
163
  SkillsController = __decorate([
112
164
  Controller("api/v1/orgs/:orgId/skills"),
113
- __param(0, Inject(SkillsService))
165
+ __param(0, Inject(SkillsService)),
166
+ __param(1, Inject(OwnedItems))
114
167
  ], SkillsController);
115
168
  export { SkillsController };