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

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 +85 -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 +41 -5
  356. package/dist/extensions/bootstrap.js +121 -19
  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 +4 -2
  509. package/dist/lifecycle/kernel-lifecycle.js +35 -7
  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
@@ -9,38 +9,35 @@ var __param = (this && this.__param) || function (paramIndex, decorator) {
9
9
  };
10
10
  import { Controller, Delete, Get, HttpCode, Inject, Param, Post, Put, Req, Res, } from "@nestjs/common";
11
11
  import { z } from "zod";
12
+ import { ClientBuilds } from "../client/client-builds.service.js";
12
13
  import { ApiError } from "../errors.js";
13
- import { CurrentPrincipal, EnterpriseAdmin, patTokenId, requireUser, } from "../identity/principal.js";
14
+ import { PluginGuides } from "../extensions/plugin-guides.js";
15
+ import { PluginIcons } from "../extensions/plugin-icons.js";
16
+ import { CurrentPrincipal, patTokenId, requireUser, SuperAdmin, } from "../identity/principal.js";
14
17
  import { createZodDto } from "../infra/validation/create-zod-dto.js";
15
18
  import { ZBody, ZQuery } from "../infra/validation/zod-params.js";
16
- import { CATALOG_LIST_MAX_LIMIT, CatalogService, } from "./catalog.service.js";
19
+ import { AdminCatalogGuideQuery, CatalogItemsQuery, CatalogUpdateBody, CatalogUpdatePreviewBody, CatalogDisabledBody as DisabledBody, CatalogGitImportBody as GitBody, CatalogHash as Hash, CatalogNpmImportBody as NpmBody, CatalogScopeOrgs as Orgs, CatalogScope as Scope, CatalogScopeBody as ScopeBody, CatalogScopePreviewBody as ScopePreviewBody, CatalogShownBody as ShownBody, } from "./admin-catalog.schemas.js";
20
+ import { AppearanceApplyBody } from "./appearance.schemas.js";
21
+ import { AppearanceService, suggestedAppearanceOf, } from "./appearance.service.js";
22
+ import { CatalogService, } from "./catalog.service.js";
23
+ import { CatalogScopeService } from "./catalog-scope.service.js";
17
24
  import { sendCatalogIcon } from "./org-catalog.controller.js";
18
25
  import { OrgCatalogService } from "./org-catalog.service.js";
19
26
  import { PluginImport } from "./plugin-import.js";
20
- const NpmBody = z.object({
21
- package: z.string().min(1).max(214),
22
- version: z.string().min(1).max(256).optional(),
23
- });
24
- const GitBody = z
27
+ import { PlatformPluginUpdater, } from "./plugin-upgrade.js";
28
+ const ConfirmBody = z
25
29
  .object({
26
- url: z.string().min(1).max(2000),
27
- ref: z.string().min(1).max(256).optional(),
28
- path: z.string().min(1).max(512).optional(),
29
- })
30
- .strict();
31
- const PolicyBody = z.object({ policy: z.enum(["allow", "needs_approval", "disabled"]) });
32
- const InstallBody = z.object({ version: z.string().min(1).max(256) });
33
- const ConfirmBody = z.object({
34
- reviewHash: z.string().min(1).max(128),
35
- deployExtension: z.boolean(),
30
+ reviewHash: Hash,
31
+ /** The new item's scope (default `optional`); `orgs` only with `named`. */
32
+ scope: Scope.optional(),
33
+ orgs: Orgs.optional(),
36
34
  /** Skill names suggested as pinned (spec §9.1); omitted keeps the plugin's flags. */
37
35
  pinnedSuggestions: z.array(z.string().min(1).max(64)).max(50).optional(),
38
- });
39
- const ListQuery = z.object({
40
- includeDeleted: z.enum(["true", "false"]).optional(),
41
- limit: z.coerce.number().int().min(1).max(CATALOG_LIST_MAX_LIMIT).optional(),
42
- offset: z.coerce.number().int().min(0).max(1_000_000).optional(),
43
- });
36
+ })
37
+ .strict();
38
+ const ConfirmPermissionsBody = z.object({ permissionsHash: Hash }).strict();
39
+ /** The reason shown to the owner org in its `upload_rejected` notice (optional). */
40
+ const RejectBody = z.object({ reason: z.string().trim().min(1).max(1000).optional() }).strict();
44
41
  const actorOpts = (actor) => {
45
42
  const tokenId = patTokenId(actor);
46
43
  return tokenId !== undefined ? { actorTokenId: tokenId } : {};
@@ -49,28 +46,56 @@ class CatalogImportConfirmBody extends createZodDto(ConfirmBody, "CatalogImportC
49
46
  }
50
47
  class CatalogGitImportBody extends createZodDto(GitBody, "CatalogGitImportBody") {
51
48
  }
52
- class CatalogDeploymentInstallBody extends createZodDto(InstallBody, "CatalogDeploymentInstallBody") {
49
+ class AdminCatalogGuideQueryDto extends createZodDto(AdminCatalogGuideQuery, "AdminCatalogGuideQuery") {
53
50
  }
54
- class CatalogItemsQuery extends createZodDto(ListQuery, "CatalogItemsQuery") {
51
+ class CatalogItemsQueryDto extends createZodDto(CatalogItemsQuery, "CatalogItemsQuery") {
55
52
  }
56
53
  class CatalogNpmImportBody extends createZodDto(NpmBody, "CatalogNpmImportBody") {
57
54
  }
58
- class CatalogPolicyBody extends createZodDto(PolicyBody, "CatalogPolicyBody") {
55
+ class CatalogScopePreviewBody extends createZodDto(ScopePreviewBody, "CatalogScopePreviewBody") {
56
+ }
57
+ class CatalogScopeBody extends createZodDto(ScopeBody, "CatalogScopeBody") {
58
+ }
59
+ class CatalogConfirmPermissionsBody extends createZodDto(ConfirmPermissionsBody, "CatalogConfirmPermissionsBody") {
60
+ }
61
+ class CatalogShownBody extends createZodDto(ShownBody, "CatalogShownBody") {
62
+ }
63
+ class CatalogRejectBody extends createZodDto(RejectBody, "CatalogRejectBody") {
64
+ }
65
+ class CatalogDisabledBody extends createZodDto(DisabledBody, "CatalogDisabledBody") {
66
+ }
67
+ class CatalogUpdatePreviewBodyDto extends createZodDto(CatalogUpdatePreviewBody, "CatalogUpdatePreviewBody") {
68
+ }
69
+ class CatalogUpdateBodyDto extends createZodDto(CatalogUpdateBody, "CatalogUpdateBody") {
70
+ }
71
+ class AppearanceApplyBodyDto extends createZodDto(AppearanceApplyBody, "AppearanceApplyBody") {
59
72
  }
60
73
  /**
61
- * The enterprise catalog (`/api/v1/admin/catalog/*`, enterprise admins): plugin import (upload / npm
62
- * prepare, then confirm), the item list and detail, policy, delete, and installing an item's
63
- * extension on the deployment. Writes re-check the enterprise admin inside the service's lock and are
74
+ * The platform catalog (`/api/v1/admin/catalog/*`, super admins): plugin import (upload / npm
75
+ * prepare, then confirm, which installs the plugin's extension), the item list and detail, scope and
76
+ * disable (previewed, then confirmed with `scopeHash`), delete. Writes re-check the super admin inside the service's lock and are
64
77
  * audited.
65
78
  */
66
79
  let AdminCatalogController = class AdminCatalogController {
67
80
  catalog;
68
81
  pluginImport;
69
82
  orgCatalog;
70
- constructor(catalog, pluginImport, orgCatalog) {
83
+ scope;
84
+ updater;
85
+ icons;
86
+ appearance;
87
+ clientBuilds;
88
+ guides;
89
+ constructor(catalog, pluginImport, orgCatalog, scope, updater, icons, appearance, clientBuilds, guides) {
71
90
  this.catalog = catalog;
72
91
  this.pluginImport = pluginImport;
73
92
  this.orgCatalog = orgCatalog;
93
+ this.scope = scope;
94
+ this.updater = updater;
95
+ this.icons = icons;
96
+ this.appearance = appearance;
97
+ this.clientBuilds = clientBuilds;
98
+ this.guides = guides;
74
99
  }
75
100
  /**
76
101
  * Prepares the import of an uploaded plugin (an npm-pack tgz as the raw body,
@@ -126,11 +151,13 @@ let AdminCatalogController = class AdminCatalogController {
126
151
  return this.pluginImport.staged(stagingId);
127
152
  }
128
153
  /**
129
- * Confirms a staged import: approves the plugin's extension when this import installs it (writes
130
- * its snapshot) and creates the item or adds the version; with `deployExtension` it installs and
131
- * enables the plugin's own extension after the commit and returns `{ item, deploy }`, where
132
- * `deploy` says enabled / failed (+ code); a failed deploy does not make the committed import fail
133
- * (retry from the extension admin by sha256). A foreseeable failure (a downgrade to a version with
154
+ * Confirms a staged import: approves the plugin's extension when this import installs or upgrades
155
+ * it (writes its snapshot), creates the item (with `scope`, default `optional`; `orgs` only with
156
+ * `named`, each an existing org, else 400 `validation_failed`) or adds the version, installs and
157
+ * enables the plugin's own extension after the commit and enqueues the item's scope sync; returns
158
+ * `{ item, deploy }`, where `deploy` says enabled / failed (+ code), null without an extension to
159
+ * deploy; a failed deploy does not make the committed import fail (retry from the extension admin
160
+ * by sha256). An unknown field (the removed `deployExtension`) -> 400 `validation_failed`. A foreseeable failure (a downgrade to a version with
134
161
  * unrun migrations) is a 409 `extension.downgrade_unsupported` before anything is written.
135
162
  * Staging missing or expired -> 404 `plugin.staging_not_found`; `reviewHash` differs or the
136
163
  * extension on the deployment changed -> 409 `plugin.review_stale`. `pinnedSuggestions` (skill
@@ -139,27 +166,65 @@ let AdminCatalogController = class AdminCatalogController {
139
166
  */
140
167
  confirm(principal, stagingId, body) {
141
168
  const actor = requireUser(principal);
142
- const { pinnedSuggestions, ...rest } = body;
143
- return this.pluginImport.confirm(actor.account.id, stagingId, { ...rest, ...(pinnedSuggestions !== undefined && { pinnedSuggestions }) }, actorOpts(actor));
169
+ return this.scope.confirmImport(actor.account.id, stagingId, {
170
+ reviewHash: body.reviewHash,
171
+ ...(body.scope !== undefined && { scope: body.scope }),
172
+ ...(body.orgs !== undefined && { orgs: body.orgs }),
173
+ ...(body.pinnedSuggestions !== undefined && { pinnedSuggestions: body.pinnedSuggestions }),
174
+ }, actorOpts(actor));
144
175
  }
145
176
  /**
146
177
  * The item list (`includeDeleted=true` includes deleted items). Paging: `limit` (default 200, at
147
178
  * most 1000) and `offset`; `nextOffset` is the next page's offset, null when there is none.
148
179
  */
149
- list(q) {
150
- return this.catalog.page({
180
+ async list(q) {
181
+ const page = await this.catalog.page({
151
182
  includeDeleted: q.includeDeleted === "true",
183
+ ...(q.pending === "true" && { pending: true }),
152
184
  ...(q.limit !== undefined && { limit: q.limit }),
153
185
  ...(q.offset !== undefined && { offset: q.offset }),
154
186
  });
187
+ // Each item's icon (admin route; a deleted item has none)
188
+ const icons = await this.icons.ofItems(page.items.map((i) => i.id), { kind: "admin" });
189
+ return { ...page, items: page.items.map((i) => ({ ...i, icon: icons.get(i.id) ?? null })) };
155
190
  }
156
191
  /**
157
- * 条目详情与各版本,另给出 `hasIcon`(最新版本有图标,`GET items/:id/icon` 可取);不存在 → 404
158
- * `catalog.item_not_found`。
192
+ * The item with its versions, plus `hasIcon` (the latest version has an icon, served by `GET
193
+ * items/:id/icon`) and `suggestedAppearance` (the platform version's, null without one: the page
194
+ * offers 应用此插件的外观 when set). Each version carries `client`: its extension package's
195
+ * client build (files with sizes, total, client API version; null without one), what the
196
+ * permission confirmation of an org's upload shows in its 客户端代码 group (client extensions spec
197
+ * §5.4). Unknown -> 404 `catalog.item_not_found`.
159
198
  */
160
199
  async get(id) {
161
200
  const detail = await this.catalog.get(id);
162
- return { ...detail, hasIcon: await this.orgCatalog.hasIcon(id) };
201
+ const platform = detail.versions.find((v) => v.version === detail.item.platformVersion);
202
+ const [hasIcon, builds] = await Promise.all([
203
+ this.orgCatalog.hasIcon(id),
204
+ this.clientBuilds.summaries(detail.versions.flatMap((v) => (v.extensionSha256 === null ? [] : [v.extensionSha256]))),
205
+ ]);
206
+ return {
207
+ ...detail,
208
+ versions: detail.versions.map((v) => ({
209
+ ...v,
210
+ client: v.extensionSha256 === null ? null : (builds.get(v.extensionSha256) ?? null),
211
+ })),
212
+ hasIcon,
213
+ suggestedAppearance: suggestedAppearanceOf(platform?.manifest),
214
+ };
215
+ }
216
+ /**
217
+ * 应用此插件的外观 (client extensions spec §6.5): sets the plugin's suggested theme as the platform
218
+ * default theme and each suggested replacement as the platform arrangement's `use` of its slot, in
219
+ * one transaction. `dryRun: true` answers the same changes and writes nothing. A theme that cannot
220
+ * be the platform default -> 400 `theme.not_available` (nothing written); a replacement not
221
+ * available on the platform is skipped. No such item, or no suggestion -> 404
222
+ * `catalog.item_not_found`.
223
+ */
224
+ applyAppearance(principal, id, body) {
225
+ const actor = requireUser(principal);
226
+ const tokenId = patTokenId(actor);
227
+ return this.appearance.apply({ platform: true }, id, { accountId: actor.account.id, ...(tokenId !== undefined && { tokenId }) }, body.dryRun === true);
163
228
  }
164
229
  /**
165
230
  * The item's icon (disabled items included; same response headers as the org side, see
@@ -168,24 +233,113 @@ let AdminCatalogController = class AdminCatalogController {
168
233
  async icon(id, reply) {
169
234
  await sendCatalogIcon(reply, await this.orgCatalog.icon(id, true));
170
235
  }
171
- /** 改策略(allow / needs_approval / disabled)。 */
172
- setPolicy(principal, id, body) {
236
+ /**
237
+ * A setup guide of the item as the platform sees it (spec 2026-11-09-setup-guides-v2-design.md
238
+ * §9.3; the admin console's connector template page): any live item, the admin audience, no org
239
+ * (`orgName` unresolved, reason `no_org`), no target, no checks run. Unknown item -> 404
240
+ * `catalog.item_not_found`, unknown guide -> 404 `catalog.guide_not_found`.
241
+ */
242
+ async guide(itemId, guideId, q) {
243
+ return { guide: await this.guides.renderForPlatform(itemId, guideId, q) };
244
+ }
245
+ /**
246
+ * What a scope change (`{ scope, orgs? }`, `orgs` only with `named`) or a disable
247
+ * (`{ disabled: true }`) would take away: `{ affected: [{ orgId, orgName, agents,
248
+ * connectorsKept }], needsConfig, scopeHash }` (spec §5 rule 8; nothing written; the connectors
249
+ * stay as the orgs' own). A builtin item -> 409 `plugin.builtin`; unknown
250
+ * orgs -> 400 `validation_failed`.
251
+ */
252
+ previewScope(id, body) {
253
+ return this.scope.preview(id, body.scope === undefined
254
+ ? { disabled: true }
255
+ : { scope: body.scope, ...(body.orgs !== undefined && { orgs: body.orgs }) });
256
+ }
257
+ /**
258
+ * Changes the scope, confirmed with the preview's `scopeHash` (recomputed under the item row lock;
259
+ * a difference -> 409 `plugin.scope_stale`); bumps the scope version, audits
260
+ * `catalog.scope_changed` and enqueues the scope sync. Builtin -> 409 `plugin.builtin`.
261
+ */
262
+ setScope(principal, id, body) {
173
263
  const actor = requireUser(principal);
174
- return this.catalog.setPolicy(actor.account.id, id, body.policy, actorOpts(actor));
264
+ return this.scope.setScope(actor.account.id, id, {
265
+ scope: body.scope,
266
+ scopeHash: body.scopeHash,
267
+ ...(body.orgs !== undefined && { orgs: body.orgs }),
268
+ }, actorOpts(actor));
175
269
  }
176
- /** 删除条目(软删除,已安装的组件不受影响)。 */
177
- async remove(principal, id) {
270
+ /**
271
+ * Disables the plugin on the whole deployment (`scopeHash` of the `{ disabled: true }` preview
272
+ * required; the scope sync then uninstalls it everywhere, its scope and the org switches are kept)
273
+ * or enables it again (no hash; the sync reinstalls where it is wanted). Builtin -> 409
274
+ * `plugin.builtin`; a stale hash -> 409 `plugin.scope_stale`.
275
+ */
276
+ setDisabled(principal, id, body) {
178
277
  const actor = requireUser(principal);
179
- await this.catalog.remove(actor.account.id, id, actorOpts(actor));
278
+ return this.scope.setDisabled(actor.account.id, id, {
279
+ disabled: body.disabled,
280
+ ...(body.scopeHash !== undefined && { scopeHash: body.scopeHash }),
281
+ }, actorOpts(actor));
282
+ }
283
+ /**
284
+ * Confirms the item's extension permissions (the admin's 待确认; body `{ permissionsHash }` from
285
+ * the item view): approves the current permission set (snapshot source `web`) and installs and
286
+ * enables an extension that was never deployed. A changed set -> 409 `extension.approval_stale`;
287
+ * nothing to confirm -> 409 `extension.not_pending`. Returns the item. An org's upload
288
+ * (`owner.kind` org, ruling P3-10): the digest of its pending version's package; a first version
289
+ * is installed, approved, enabled and synced, a new version applied by the platform update
290
+ * (the item removed meanwhile -> 409 `catalog.item_removed`, P3-21).
291
+ */
292
+ confirmPermissions(principal, id, body) {
293
+ const actor = requireUser(principal);
294
+ return this.scope.confirmPermissions(actor.account.id, id, body.permissionsHash, actorOpts(actor));
295
+ }
296
+ /**
297
+ * Rejects an org upload's pending version (ruling P3-10; body `{ reason? }`, told to the owner
298
+ * org in `upload_rejected`): a first version is removed (its name free again), a new version's
299
+ * pending state cleared. Nothing pending, or a platform item (pre-flight F11) -> 409
300
+ * `extension.not_pending`. 204.
301
+ */
302
+ async reject(principal, id, body) {
303
+ const actor = requireUser(principal);
304
+ await this.scope.reject(actor.account.id, id, body.reason ?? null, actorOpts(actor));
305
+ }
306
+ /**
307
+ * Whether orgs outside a `named` item's list see it as requestable (spec §5.1 rule 1). Hiding it
308
+ * keeps pending requests as they are; new requests from unlisted orgs are then 404. Never makes
309
+ * anything usable, so no preview and no scope sync. Audits `catalog.shown_changed`.
310
+ */
311
+ setShown(principal, id, body) {
312
+ const actor = requireUser(principal);
313
+ return this.scope.setShown(actor.account.id, id, body.shownToOthers, actorOpts(actor));
314
+ }
315
+ /**
316
+ * What updating the platform plugin to `version` would do (spec §7.1, `PlatformPluginUpdater`):
317
+ * `{ itemId, name, from, to, components: [{ kind, id, name, change: added | removed | upgrade |
318
+ * downgrade | same, from, to, updatedOnOwn, ownScope, pinnedOrgs, kept? }], extension,
319
+ * connectorOrgs: [{ orgId, connectors, needsConfig }], diffHash }`. Nothing written. The same
320
+ * version, a target the deployment's extension or a dependent plugin cannot take -> 409
321
+ * `plugin.upgrade_target_invalid`; an added skill named like one in use where the plugin is on
322
+ * -> 409 `plugin.skill_conflict`; disabled -> 403 `catalog.item_disabled`.
323
+ */
324
+ previewUpdate(id, body) {
325
+ return this.updater.preview(id, body.version);
180
326
  }
181
327
  /**
182
- * Installs the extension of a version of an item on the deployment (a new install starts disabled;
183
- * unapproved permissions still need approval). A version without an extension -> 409
184
- * `catalog.no_extension`.
328
+ * Updates the platform plugin, confirmed with the preview's `diffHash` (recomputed under the item
329
+ * lock; a difference -> 409 `plugin.upgrade_stale`; another update running -> 409
330
+ * `plugin.install_in_progress`). A failure undoes everything -> 502 `plugin.upgrade_failed`.
331
+ * Audits `plugin.platform_updated`. A version an org upload waits with (or an item whose first
332
+ * version waits) -> 409 `catalog.item_pending`: confirm it in 待确认 (pre-flight F8); the
333
+ * preview answers the same.
185
334
  */
186
- installToDeployment(principal, id, body) {
335
+ update(principal, id, body) {
187
336
  const actor = requireUser(principal);
188
- return this.catalog.installToDeployment(actor.account.id, id, body.version, actorOpts(actor));
337
+ return this.updater.update(actor.account.id, id, body, actorOpts(actor));
338
+ }
339
+ /** 删除条目(软删除,已安装的组件不受影响)。 */
340
+ async remove(principal, id) {
341
+ const actor = requireUser(principal);
342
+ await this.catalog.remove(actor.account.id, id, actorOpts(actor));
189
343
  }
190
344
  };
191
345
  __decorate([
@@ -219,41 +373,97 @@ __decorate([
219
373
  ], AdminCatalogController.prototype, "confirm", null);
220
374
  __decorate([
221
375
  Get("items"),
222
- __param(0, ZQuery(CatalogItemsQuery))
376
+ __param(0, ZQuery(CatalogItemsQueryDto))
223
377
  ], AdminCatalogController.prototype, "list", null);
224
378
  __decorate([
225
379
  Get("items/:id"),
226
380
  __param(0, Param("id"))
227
381
  ], AdminCatalogController.prototype, "get", null);
382
+ __decorate([
383
+ Post("items/:id/appearance"),
384
+ HttpCode(200),
385
+ __param(0, CurrentPrincipal()),
386
+ __param(1, Param("id")),
387
+ __param(2, ZBody(AppearanceApplyBodyDto))
388
+ ], AdminCatalogController.prototype, "applyAppearance", null);
228
389
  __decorate([
229
390
  Get("items/:id/icon"),
230
391
  __param(0, Param("id")),
231
392
  __param(1, Res())
232
393
  ], AdminCatalogController.prototype, "icon", null);
233
394
  __decorate([
234
- Put("items/:id/policy"),
395
+ Get(":itemId/guides/:guideId"),
396
+ __param(0, Param("itemId")),
397
+ __param(1, Param("guideId")),
398
+ __param(2, ZQuery(AdminCatalogGuideQueryDto))
399
+ ], AdminCatalogController.prototype, "guide", null);
400
+ __decorate([
401
+ Post("items/:id/scope/preview"),
402
+ HttpCode(200),
403
+ __param(0, Param("id")),
404
+ __param(1, ZBody(CatalogScopePreviewBody))
405
+ ], AdminCatalogController.prototype, "previewScope", null);
406
+ __decorate([
407
+ Put("items/:id/scope"),
235
408
  __param(0, CurrentPrincipal()),
236
409
  __param(1, Param("id")),
237
- __param(2, ZBody(CatalogPolicyBody))
238
- ], AdminCatalogController.prototype, "setPolicy", null);
410
+ __param(2, ZBody(CatalogScopeBody))
411
+ ], AdminCatalogController.prototype, "setScope", null);
239
412
  __decorate([
240
- Delete("items/:id"),
413
+ Put("items/:id/disabled"),
414
+ __param(0, CurrentPrincipal()),
415
+ __param(1, Param("id")),
416
+ __param(2, ZBody(CatalogDisabledBody))
417
+ ], AdminCatalogController.prototype, "setDisabled", null);
418
+ __decorate([
419
+ Post("items/:id/confirm"),
420
+ HttpCode(200),
421
+ __param(0, CurrentPrincipal()),
422
+ __param(1, Param("id")),
423
+ __param(2, ZBody(CatalogConfirmPermissionsBody))
424
+ ], AdminCatalogController.prototype, "confirmPermissions", null);
425
+ __decorate([
426
+ Post("items/:id/reject"),
241
427
  HttpCode(204),
242
428
  __param(0, CurrentPrincipal()),
243
- __param(1, Param("id"))
244
- ], AdminCatalogController.prototype, "remove", null);
429
+ __param(1, Param("id")),
430
+ __param(2, ZBody(CatalogRejectBody))
431
+ ], AdminCatalogController.prototype, "reject", null);
432
+ __decorate([
433
+ Put("items/:id/shown"),
434
+ __param(0, CurrentPrincipal()),
435
+ __param(1, Param("id")),
436
+ __param(2, ZBody(CatalogShownBody))
437
+ ], AdminCatalogController.prototype, "setShown", null);
245
438
  __decorate([
246
- Post("items/:id/install-deployment"),
439
+ Post("items/:id/update/preview"),
247
440
  HttpCode(200),
441
+ __param(0, Param("id")),
442
+ __param(1, ZBody(CatalogUpdatePreviewBodyDto))
443
+ ], AdminCatalogController.prototype, "previewUpdate", null);
444
+ __decorate([
445
+ Put("items/:id/update"),
248
446
  __param(0, CurrentPrincipal()),
249
447
  __param(1, Param("id")),
250
- __param(2, ZBody(CatalogDeploymentInstallBody))
251
- ], AdminCatalogController.prototype, "installToDeployment", null);
448
+ __param(2, ZBody(CatalogUpdateBodyDto))
449
+ ], AdminCatalogController.prototype, "update", null);
450
+ __decorate([
451
+ Delete("items/:id"),
452
+ HttpCode(204),
453
+ __param(0, CurrentPrincipal()),
454
+ __param(1, Param("id"))
455
+ ], AdminCatalogController.prototype, "remove", null);
252
456
  AdminCatalogController = __decorate([
253
457
  Controller("api/v1/admin/catalog"),
254
- EnterpriseAdmin(),
458
+ SuperAdmin(),
255
459
  __param(0, Inject(CatalogService)),
256
460
  __param(1, Inject(PluginImport)),
257
- __param(2, Inject(OrgCatalogService))
461
+ __param(2, Inject(OrgCatalogService)),
462
+ __param(3, Inject(CatalogScopeService)),
463
+ __param(4, Inject(PlatformPluginUpdater)),
464
+ __param(5, Inject(PluginIcons)),
465
+ __param(6, Inject(AppearanceService)),
466
+ __param(7, Inject(ClientBuilds)),
467
+ __param(8, Inject(PluginGuides))
258
468
  ], AdminCatalogController);
259
469
  export { AdminCatalogController };
@@ -0,0 +1,82 @@
1
+ import { z } from "zod";
2
+ import type { RouteSchemas } from "../platform/route-schemas.js";
3
+ export declare const CatalogHash: z.ZodString;
4
+ export declare const CatalogItemsQuery: z.ZodObject<{
5
+ includeDeleted: z.ZodOptional<z.ZodEnum<{
6
+ false: "false";
7
+ true: "true";
8
+ }>>;
9
+ limit: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
10
+ offset: z.ZodOptional<z.ZodCoercedNumber<unknown>>;
11
+ pending: z.ZodOptional<z.ZodEnum<{
12
+ false: "false";
13
+ true: "true";
14
+ }>>;
15
+ }, z.core.$strip>;
16
+ export declare const CatalogUpdatePreviewBody: z.ZodObject<{
17
+ version: z.ZodString;
18
+ }, z.core.$strict>;
19
+ export declare const CatalogUpdateBody: z.ZodObject<{
20
+ version: z.ZodString;
21
+ diffHash: z.ZodString;
22
+ }, z.core.$strict>;
23
+ /** `:id` as the routes take it (`@Param`). */
24
+ export declare const CatalogIdPathParams: z.ZodObject<{
25
+ id: z.ZodString;
26
+ }, z.core.$strip>;
27
+ /** `:stagingId` of a staged import as the route takes it (`@Param`). */
28
+ export declare const CatalogStagingPathParams: z.ZodObject<{
29
+ stagingId: z.ZodString;
30
+ }, z.core.$strip>;
31
+ export declare const CatalogNpmImportBody: z.ZodObject<{
32
+ package: z.ZodString;
33
+ version: z.ZodOptional<z.ZodString>;
34
+ }, z.core.$strip>;
35
+ export declare const CatalogGitImportBody: z.ZodObject<{
36
+ url: z.ZodString;
37
+ ref: z.ZodOptional<z.ZodString>;
38
+ path: z.ZodOptional<z.ZodString>;
39
+ }, z.core.$strict>;
40
+ export declare const CatalogScope: z.ZodEnum<{
41
+ all: "all";
42
+ named: "named";
43
+ optional: "optional";
44
+ }>;
45
+ export declare const CatalogScopeOrgs: z.ZodArray<z.ZodString>;
46
+ /** `{ scope, orgs? }` (a scope change) or `{ disabled: true }` (a disable), not both. */
47
+ export declare const CatalogScopePreviewBody: z.ZodObject<{
48
+ scope: z.ZodOptional<z.ZodEnum<{
49
+ all: "all";
50
+ named: "named";
51
+ optional: "optional";
52
+ }>>;
53
+ orgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
54
+ disabled: z.ZodOptional<z.ZodLiteral<true>>;
55
+ }, z.core.$strict>;
56
+ export declare const CatalogScopeBody: z.ZodObject<{
57
+ scope: z.ZodEnum<{
58
+ all: "all";
59
+ named: "named";
60
+ optional: "optional";
61
+ }>;
62
+ orgs: z.ZodOptional<z.ZodArray<z.ZodString>>;
63
+ scopeHash: z.ZodString;
64
+ }, z.core.$strict>;
65
+ export declare const CatalogDisabledBody: z.ZodObject<{
66
+ disabled: z.ZodBoolean;
67
+ scopeHash: z.ZodOptional<z.ZodString>;
68
+ }, z.core.$strict>;
69
+ export declare const CatalogShownBody: z.ZodObject<{
70
+ shownToOthers: z.ZodBoolean;
71
+ }, z.core.$strict>;
72
+ /**
73
+ * `GET :itemId/guides/:guideId`, the super admin's preview of a setup guide (spec
74
+ * 2026-11-09-setup-guides-v2-design.md §9.3): only the document language; no org, no target.
75
+ */
76
+ export declare const AdminCatalogGuideQuery: z.ZodObject<{
77
+ locale: z.ZodOptional<z.ZodEnum<{
78
+ en: "en";
79
+ zh: "zh";
80
+ }>>;
81
+ }, z.core.$strict>;
82
+ export declare const ADMIN_CATALOG_ROUTES: readonly RouteSchemas[];
@@ -0,0 +1,99 @@
1
+ import { z } from "zod";
2
+ import { CATALOG_LIST_MAX_LIMIT } from "./catalog.service.js";
3
+ export const CatalogHash = z.string().min(1).max(128);
4
+ export const CatalogItemsQuery = z.object({
5
+ includeDeleted: z.enum(["true", "false"]).optional(),
6
+ limit: z.coerce.number().int().min(1).max(CATALOG_LIST_MAX_LIMIT).optional(),
7
+ offset: z.coerce.number().int().min(0).max(1_000_000).optional(),
8
+ /** `true`: only the items waiting for a permission confirmation (not paged). */
9
+ pending: z.enum(["true", "false"]).optional(),
10
+ });
11
+ const CatalogVersion = z.string().min(1).max(256);
12
+ export const CatalogUpdatePreviewBody = z.object({ version: CatalogVersion }).strict();
13
+ export const CatalogUpdateBody = z
14
+ .object({ version: CatalogVersion, diffHash: CatalogHash })
15
+ .strict();
16
+ /** `:id` as the routes take it (`@Param`). */
17
+ export const CatalogIdPathParams = z.object({ id: z.string().min(1) });
18
+ /** `:stagingId` of a staged import as the route takes it (`@Param`). */
19
+ export const CatalogStagingPathParams = z.object({ stagingId: z.string().min(1) });
20
+ export const CatalogNpmImportBody = z.object({
21
+ package: z.string().min(1).max(214),
22
+ version: z.string().min(1).max(256).optional(),
23
+ });
24
+ export const CatalogGitImportBody = z
25
+ .object({
26
+ url: z.string().min(1).max(2000),
27
+ ref: z.string().min(1).max(256).optional(),
28
+ path: z.string().min(1).max(512).optional(),
29
+ })
30
+ .strict();
31
+ export const CatalogScope = z.enum(["all", "optional", "named"]);
32
+ export const CatalogScopeOrgs = z.array(z.string().min(1).max(128)).max(1000);
33
+ /** `{ scope, orgs? }` (a scope change) or `{ disabled: true }` (a disable), not both. */
34
+ export const CatalogScopePreviewBody = z
35
+ .object({
36
+ scope: CatalogScope.optional(),
37
+ orgs: CatalogScopeOrgs.optional(),
38
+ disabled: z.literal(true).optional(),
39
+ })
40
+ .strict()
41
+ .refine((b) => (b.disabled === true) !== (b.scope !== undefined), {
42
+ message: "send either scope (with orgs for named) or disabled: true",
43
+ })
44
+ .refine((b) => b.disabled === undefined || b.orgs === undefined, {
45
+ message: "orgs: only allowed with scope named",
46
+ path: ["orgs"],
47
+ });
48
+ export const CatalogScopeBody = z
49
+ .object({ scope: CatalogScope, orgs: CatalogScopeOrgs.optional(), scopeHash: CatalogHash })
50
+ .strict();
51
+ export const CatalogDisabledBody = z
52
+ .object({ disabled: z.boolean(), scopeHash: CatalogHash.optional() })
53
+ .strict();
54
+ export const CatalogShownBody = z.object({ shownToOthers: z.boolean() }).strict();
55
+ /**
56
+ * `GET :itemId/guides/:guideId`, the super admin's preview of a setup guide (spec
57
+ * 2026-11-09-setup-guides-v2-design.md §9.3): only the document language; no org, no target.
58
+ */
59
+ export const AdminCatalogGuideQuery = z
60
+ .object({ locale: z.enum(["en", "zh"]).optional() })
61
+ .strict();
62
+ export const ADMIN_CATALOG_ROUTES = [
63
+ { route: "GET /api/v1/admin/catalog/items", query: CatalogItemsQuery },
64
+ { route: "GET /api/v1/admin/catalog/items/:id", params: CatalogIdPathParams },
65
+ {
66
+ route: "POST /api/v1/admin/catalog/items/:id/update/preview",
67
+ params: CatalogIdPathParams,
68
+ body: CatalogUpdatePreviewBody,
69
+ },
70
+ {
71
+ route: "PUT /api/v1/admin/catalog/items/:id/update",
72
+ params: CatalogIdPathParams,
73
+ body: CatalogUpdateBody,
74
+ },
75
+ { route: "POST /api/v1/admin/catalog/import/npm", body: CatalogNpmImportBody },
76
+ { route: "POST /api/v1/admin/catalog/import/git", body: CatalogGitImportBody },
77
+ { route: "GET /api/v1/admin/catalog/imports/:stagingId", params: CatalogStagingPathParams },
78
+ {
79
+ route: "POST /api/v1/admin/catalog/items/:id/scope/preview",
80
+ params: CatalogIdPathParams,
81
+ body: CatalogScopePreviewBody,
82
+ },
83
+ {
84
+ route: "PUT /api/v1/admin/catalog/items/:id/scope",
85
+ params: CatalogIdPathParams,
86
+ body: CatalogScopeBody,
87
+ },
88
+ {
89
+ route: "PUT /api/v1/admin/catalog/items/:id/disabled",
90
+ params: CatalogIdPathParams,
91
+ body: CatalogDisabledBody,
92
+ },
93
+ {
94
+ route: "PUT /api/v1/admin/catalog/items/:id/shown",
95
+ params: CatalogIdPathParams,
96
+ body: CatalogShownBody,
97
+ },
98
+ { route: "DELETE /api/v1/admin/catalog/items/:id", params: CatalogIdPathParams },
99
+ ];
@@ -0,0 +1,10 @@
1
+ import { z } from "zod";
2
+ import type { RouteSchemas } from "../platform/route-schemas.js";
3
+ /**
4
+ * The body of both "apply this plugin's appearance" routes (client extensions spec §6.5):
5
+ * `dryRun: true` answers what would change and writes nothing (the confirm dialog's preview).
6
+ */
7
+ export declare const AppearanceApplyBody: z.ZodObject<{
8
+ dryRun: z.ZodOptional<z.ZodBoolean>;
9
+ }, z.core.$strict>;
10
+ export declare const APPEARANCE_ROUTES: readonly RouteSchemas[];