@capybara-hq/kernel 0.0.0-stage → 0.1.0-rc.0

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 (631) hide show
  1. package/LICENSE +202 -0
  2. package/NOTICE +2 -0
  3. package/README.md +20 -2
  4. package/bootstrap.json +22 -0
  5. package/dist/admin/admin.controller.d.ts +139 -0
  6. package/dist/admin/admin.controller.js +238 -0
  7. package/dist/admin/extensions.controller.d.ts +100 -0
  8. package/dist/admin/extensions.controller.js +226 -0
  9. package/dist/admin/setup.controller.d.ts +36 -0
  10. package/dist/admin/setup.controller.js +106 -0
  11. package/dist/admin/setup.service.d.ts +47 -0
  12. package/dist/admin/setup.service.js +90 -0
  13. package/dist/agents/agents.controller.d.ts +205 -0
  14. package/dist/agents/agents.controller.js +144 -0
  15. package/dist/agents/agents.service.d.ts +177 -0
  16. package/dist/agents/agents.service.js +677 -0
  17. package/dist/agents/definition.d.ts +198 -0
  18. package/dist/agents/definition.js +152 -0
  19. package/dist/agents/models.controller.d.ts +13 -0
  20. package/dist/agents/models.controller.js +31 -0
  21. package/dist/agents/templates.controller.d.ts +15 -0
  22. package/dist/agents/templates.controller.js +37 -0
  23. package/dist/agents/templates.d.ts +83 -0
  24. package/dist/agents/templates.js +173 -0
  25. package/dist/catalog/admin-catalog.controller.d.ts +143 -0
  26. package/dist/catalog/admin-catalog.controller.js +245 -0
  27. package/dist/catalog/catalog.service.d.ts +430 -0
  28. package/dist/catalog/catalog.service.js +882 -0
  29. package/dist/catalog/claude/agents.d.ts +27 -0
  30. package/dist/catalog/claude/agents.js +270 -0
  31. package/dist/catalog/claude/commands.d.ts +50 -0
  32. package/dist/catalog/claude/commands.js +179 -0
  33. package/dist/catalog/claude/manifest.d.ts +69 -0
  34. package/dist/catalog/claude/manifest.js +134 -0
  35. package/dist/catalog/claude/marketplace.d.ts +35 -0
  36. package/dist/catalog/claude/marketplace.js +194 -0
  37. package/dist/catalog/claude/mcp.d.ts +33 -0
  38. package/dist/catalog/claude/mcp.js +226 -0
  39. package/dist/catalog/claude/report.d.ts +86 -0
  40. package/dist/catalog/claude/report.js +121 -0
  41. package/dist/catalog/claude/translate.d.ts +56 -0
  42. package/dist/catalog/claude/translate.js +857 -0
  43. package/dist/catalog/cli.d.ts +46 -0
  44. package/dist/catalog/cli.js +211 -0
  45. package/dist/catalog/git-source.d.ts +127 -0
  46. package/dist/catalog/git-source.js +520 -0
  47. package/dist/catalog/marketplace-fetch.d.ts +99 -0
  48. package/dist/catalog/marketplace-fetch.js +203 -0
  49. package/dist/catalog/marketplaces.controller.d.ts +97 -0
  50. package/dist/catalog/marketplaces.controller.js +197 -0
  51. package/dist/catalog/marketplaces.service.d.ts +340 -0
  52. package/dist/catalog/marketplaces.service.js +1217 -0
  53. package/dist/catalog/org-catalog.controller.d.ts +128 -0
  54. package/dist/catalog/org-catalog.controller.js +277 -0
  55. package/dist/catalog/org-catalog.service.d.ts +246 -0
  56. package/dist/catalog/org-catalog.service.js +625 -0
  57. package/dist/catalog/plugin-import.d.ts +436 -0
  58. package/dist/catalog/plugin-import.js +1069 -0
  59. package/dist/catalog/plugin-install.d.ts +447 -0
  60. package/dist/catalog/plugin-install.js +1333 -0
  61. package/dist/catalog/plugin-package.d.ts +143 -0
  62. package/dist/catalog/plugin-package.js +382 -0
  63. package/dist/catalog/plugin-upgrade.d.ts +222 -0
  64. package/dist/catalog/plugin-upgrade.js +1219 -0
  65. package/dist/catalog/requests.service.d.ts +162 -0
  66. package/dist/catalog/requests.service.js +504 -0
  67. package/dist/catalog/schema-path.d.ts +7 -0
  68. package/dist/catalog/schema-path.js +63 -0
  69. package/dist/catalog/upgrade-targets.d.ts +59 -0
  70. package/dist/catalog/upgrade-targets.js +90 -0
  71. package/dist/catalog/versions.d.ts +31 -0
  72. package/dist/catalog/versions.js +44 -0
  73. package/dist/channels/actions.d.ts +37 -0
  74. package/dist/channels/actions.js +121 -0
  75. package/dist/channels/cards.d.ts +44 -0
  76. package/dist/channels/cards.js +156 -0
  77. package/dist/channels/connections.controller.d.ts +59 -0
  78. package/dist/channels/connections.controller.js +115 -0
  79. package/dist/channels/connections.service.d.ts +187 -0
  80. package/dist/channels/connections.service.js +534 -0
  81. package/dist/channels/features.d.ts +12 -0
  82. package/dist/channels/features.js +22 -0
  83. package/dist/channels/inbound.d.ts +120 -0
  84. package/dist/channels/inbound.js +332 -0
  85. package/dist/channels/outbound.d.ts +140 -0
  86. package/dist/channels/outbound.js +1125 -0
  87. package/dist/channels/phrases.d.ts +100 -0
  88. package/dist/channels/phrases.js +81 -0
  89. package/dist/channels/supervisor.d.ts +182 -0
  90. package/dist/channels/supervisor.js +625 -0
  91. package/dist/channels/threads.d.ts +29 -0
  92. package/dist/channels/threads.js +104 -0
  93. package/dist/channels/webhook-url.d.ts +16 -0
  94. package/dist/channels/webhook-url.js +34 -0
  95. package/dist/channels/webhook.controller.d.ts +19 -0
  96. package/dist/channels/webhook.controller.js +72 -0
  97. package/dist/channels/webhook.d.ts +73 -0
  98. package/dist/channels/webhook.js +274 -0
  99. package/dist/config/docs.d.ts +9 -0
  100. package/dist/config/docs.js +85 -0
  101. package/dist/config/env.d.ts +6 -0
  102. package/dist/config/env.js +73 -0
  103. package/dist/config/fields.d.ts +42 -0
  104. package/dist/config/fields.js +214 -0
  105. package/dist/config/file-source.d.ts +3 -0
  106. package/dist/config/file-source.js +31 -0
  107. package/dist/config/load.d.ts +20 -0
  108. package/dist/config/load.js +98 -0
  109. package/dist/config/nacos-source.d.ts +31 -0
  110. package/dist/config/nacos-source.js +229 -0
  111. package/dist/config/schema.d.ts +223 -0
  112. package/dist/config/schema.js +1151 -0
  113. package/dist/config/sources.d.ts +18 -0
  114. package/dist/config/sources.js +59 -0
  115. package/dist/config/types.d.ts +9 -0
  116. package/dist/config/types.js +7 -0
  117. package/dist/conversations/artifacts.d.ts +52 -0
  118. package/dist/conversations/artifacts.js +137 -0
  119. package/dist/conversations/attachments.controller.d.ts +28 -0
  120. package/dist/conversations/attachments.controller.js +96 -0
  121. package/dist/conversations/attachments.service.d.ts +180 -0
  122. package/dist/conversations/attachments.service.js +578 -0
  123. package/dist/conversations/conversations.controller.d.ts +288 -0
  124. package/dist/conversations/conversations.controller.js +607 -0
  125. package/dist/conversations/conversations.service.d.ts +321 -0
  126. package/dist/conversations/conversations.service.js +754 -0
  127. package/dist/conversations/event-log.d.ts +122 -0
  128. package/dist/conversations/event-log.js +259 -0
  129. package/dist/conversations/events.d.ts +856 -0
  130. package/dist/conversations/events.js +639 -0
  131. package/dist/conversations/files.d.ts +92 -0
  132. package/dist/conversations/files.js +213 -0
  133. package/dist/conversations/outputs-read.d.ts +34 -0
  134. package/dist/conversations/outputs-read.js +37 -0
  135. package/dist/conversations/queue.d.ts +169 -0
  136. package/dist/conversations/queue.js +527 -0
  137. package/dist/conversations/sandbox-status.d.ts +21 -0
  138. package/dist/conversations/sandbox-status.js +24 -0
  139. package/dist/conversations/selection.d.ts +46 -0
  140. package/dist/conversations/selection.js +75 -0
  141. package/dist/conversations/titles.d.ts +93 -0
  142. package/dist/conversations/titles.js +422 -0
  143. package/dist/ctx/bus.d.ts +16 -0
  144. package/dist/ctx/bus.js +101 -0
  145. package/dist/ctx/create-ctx.d.ts +109 -0
  146. package/dist/ctx/create-ctx.js +592 -0
  147. package/dist/ctx/kv.d.ts +4 -0
  148. package/dist/ctx/kv.js +31 -0
  149. package/dist/ctx/lock.d.ts +4 -0
  150. package/dist/ctx/lock.js +39 -0
  151. package/dist/ctx/namespace.d.ts +6 -0
  152. package/dist/ctx/namespace.js +12 -0
  153. package/dist/ctx/queue.d.ts +25 -0
  154. package/dist/ctx/queue.js +150 -0
  155. package/dist/ctx/secrets.d.ts +45 -0
  156. package/dist/ctx/secrets.js +175 -0
  157. package/dist/db/kernel-schema.d.ts +1122 -0
  158. package/dist/db/kernel-schema.js +5 -0
  159. package/dist/db/migrator.d.ts +28 -0
  160. package/dist/db/migrator.js +140 -0
  161. package/dist/db/pool.d.ts +21 -0
  162. package/dist/db/pool.js +28 -0
  163. package/dist/db/sql-statements.d.ts +34 -0
  164. package/dist/db/sql-statements.js +168 -0
  165. package/dist/errors.d.ts +210 -0
  166. package/dist/errors.js +212 -0
  167. package/dist/evals/budget.d.ts +61 -0
  168. package/dist/evals/budget.js +181 -0
  169. package/dist/evals/diff.d.ts +55 -0
  170. package/dist/evals/diff.js +133 -0
  171. package/dist/evals/judge.d.ts +53 -0
  172. package/dist/evals/judge.js +149 -0
  173. package/dist/evals/plan.d.ts +47 -0
  174. package/dist/evals/plan.js +77 -0
  175. package/dist/evals/reconstruct.d.ts +137 -0
  176. package/dist/evals/reconstruct.js +322 -0
  177. package/dist/evals/recorded-tools.d.ts +54 -0
  178. package/dist/evals/recorded-tools.js +167 -0
  179. package/dist/evals/run-replay.d.ts +86 -0
  180. package/dist/evals/run-replay.js +502 -0
  181. package/dist/evals/runs.controller.d.ts +100 -0
  182. package/dist/evals/runs.controller.js +199 -0
  183. package/dist/evals/runs.service.d.ts +275 -0
  184. package/dist/evals/runs.service.js +836 -0
  185. package/dist/evals/sets.controller.d.ts +61 -0
  186. package/dist/evals/sets.controller.js +183 -0
  187. package/dist/evals/sets.service.d.ts +128 -0
  188. package/dist/evals/sets.service.js +558 -0
  189. package/dist/evals/snapshot.d.ts +76 -0
  190. package/dist/evals/snapshot.js +207 -0
  191. package/dist/evals/step-replay.d.ts +113 -0
  192. package/dist/evals/step-replay.js +181 -0
  193. package/dist/evals/trajectory.controller.d.ts +41 -0
  194. package/dist/evals/trajectory.controller.js +88 -0
  195. package/dist/evals/trajectory.d.ts +144 -0
  196. package/dist/evals/trajectory.js +338 -0
  197. package/dist/evals/trajectory.service.d.ts +108 -0
  198. package/dist/evals/trajectory.service.js +323 -0
  199. package/dist/evals/worker.d.ts +101 -0
  200. package/dist/evals/worker.js +789 -0
  201. package/dist/extensions/admin-ops.d.ts +105 -0
  202. package/dist/extensions/admin-ops.js +353 -0
  203. package/dist/extensions/admin-view.d.ts +79 -0
  204. package/dist/extensions/admin-view.js +327 -0
  205. package/dist/extensions/approvals.d.ts +119 -0
  206. package/dist/extensions/approvals.js +205 -0
  207. package/dist/extensions/blobs.d.ts +45 -0
  208. package/dist/extensions/blobs.js +160 -0
  209. package/dist/extensions/bootstrap.d.ts +149 -0
  210. package/dist/extensions/bootstrap.js +441 -0
  211. package/dist/extensions/cli.d.ts +61 -0
  212. package/dist/extensions/cli.js +165 -0
  213. package/dist/extensions/config-json-schema.d.ts +9 -0
  214. package/dist/extensions/config-json-schema.js +73 -0
  215. package/dist/extensions/deployment-config.d.ts +138 -0
  216. package/dist/extensions/deployment-config.js +394 -0
  217. package/dist/extensions/enabled.d.ts +31 -0
  218. package/dist/extensions/enabled.js +55 -0
  219. package/dist/extensions/hooks.d.ts +161 -0
  220. package/dist/extensions/hooks.js +425 -0
  221. package/dist/extensions/host.d.ts +577 -0
  222. package/dist/extensions/host.js +2071 -0
  223. package/dist/extensions/inflight.d.ts +69 -0
  224. package/dist/extensions/inflight.js +277 -0
  225. package/dist/extensions/installs.d.ts +166 -0
  226. package/dist/extensions/installs.js +253 -0
  227. package/dist/extensions/instance.d.ts +167 -0
  228. package/dist/extensions/instance.js +329 -0
  229. package/dist/extensions/ledger.d.ts +30 -0
  230. package/dist/extensions/ledger.js +50 -0
  231. package/dist/extensions/lifecycle.d.ts +80 -0
  232. package/dist/extensions/lifecycle.js +152 -0
  233. package/dist/extensions/migrate-lock.d.ts +51 -0
  234. package/dist/extensions/migrate-lock.js +100 -0
  235. package/dist/extensions/org-config.controller.d.ts +24 -0
  236. package/dist/extensions/org-config.controller.js +59 -0
  237. package/dist/extensions/org-config.d.ts +169 -0
  238. package/dist/extensions/org-config.js +520 -0
  239. package/dist/extensions/package.d.ts +115 -0
  240. package/dist/extensions/package.js +246 -0
  241. package/dist/extensions/permission-set.d.ts +117 -0
  242. package/dist/extensions/permission-set.js +184 -0
  243. package/dist/extensions/permission-view.d.ts +194 -0
  244. package/dist/extensions/permission-view.js +284 -0
  245. package/dist/extensions/registry.d.ts +24 -0
  246. package/dist/extensions/registry.js +56 -0
  247. package/dist/extensions/resolve.d.ts +12 -0
  248. package/dist/extensions/resolve.js +71 -0
  249. package/dist/extensions/sources.d.ts +69 -0
  250. package/dist/extensions/sources.js +120 -0
  251. package/dist/extensions/sync.d.ts +40 -0
  252. package/dist/extensions/sync.js +242 -0
  253. package/dist/files/previewers.controller.d.ts +46 -0
  254. package/dist/files/previewers.controller.js +105 -0
  255. package/dist/files/previewers.d.ts +100 -0
  256. package/dist/files/previewers.js +250 -0
  257. package/dist/http/api.module.d.ts +114 -0
  258. package/dist/http/api.module.js +448 -0
  259. package/dist/http/app.d.ts +77 -0
  260. package/dist/http/app.js +170 -0
  261. package/dist/http/error.filter.d.ts +21 -0
  262. package/dist/http/error.filter.js +85 -0
  263. package/dist/http/gateway.module.d.ts +15 -0
  264. package/dist/http/gateway.module.js +13 -0
  265. package/dist/http/health.controller.d.ts +26 -0
  266. package/dist/http/health.controller.js +79 -0
  267. package/dist/http/nest-logger.d.ts +20 -0
  268. package/dist/http/nest-logger.js +28 -0
  269. package/dist/http/plugin-dispatch.d.ts +68 -0
  270. package/dist/http/plugin-dispatch.js +200 -0
  271. package/dist/http/tokens.d.ts +131 -0
  272. package/dist/http/tokens.js +131 -0
  273. package/dist/http/zod.pipe.d.ts +8 -0
  274. package/dist/http/zod.pipe.js +14 -0
  275. package/dist/identity/accounts.d.ts +93 -0
  276. package/dist/identity/accounts.js +367 -0
  277. package/dist/identity/api-tokens.d.ts +73 -0
  278. package/dist/identity/api-tokens.js +197 -0
  279. package/dist/identity/audit.d.ts +23 -0
  280. package/dist/identity/audit.js +41 -0
  281. package/dist/identity/auth.controller.d.ts +40 -0
  282. package/dist/identity/auth.controller.js +130 -0
  283. package/dist/identity/auth.guard.d.ts +41 -0
  284. package/dist/identity/auth.guard.js +162 -0
  285. package/dist/identity/binding.d.ts +47 -0
  286. package/dist/identity/binding.js +84 -0
  287. package/dist/identity/cookies.d.ts +16 -0
  288. package/dist/identity/cookies.js +32 -0
  289. package/dist/identity/credential-check.d.ts +17 -0
  290. package/dist/identity/credential-check.js +24 -0
  291. package/dist/identity/enterprise-admin.d.ts +14 -0
  292. package/dist/identity/enterprise-admin.js +27 -0
  293. package/dist/identity/external.d.ts +106 -0
  294. package/dist/identity/external.js +337 -0
  295. package/dist/identity/hash.d.ts +2 -0
  296. package/dist/identity/hash.js +3 -0
  297. package/dist/identity/login.d.ts +6 -0
  298. package/dist/identity/login.js +20 -0
  299. package/dist/identity/me.controller.d.ts +61 -0
  300. package/dist/identity/me.controller.js +159 -0
  301. package/dist/identity/passwords.d.ts +6 -0
  302. package/dist/identity/passwords.js +37 -0
  303. package/dist/identity/principal.d.ts +56 -0
  304. package/dist/identity/principal.js +38 -0
  305. package/dist/identity/rate-limit.d.ts +55 -0
  306. package/dist/identity/rate-limit.js +121 -0
  307. package/dist/identity/sessions.d.ts +84 -0
  308. package/dist/identity/sessions.js +306 -0
  309. package/dist/identity/settings.d.ts +121 -0
  310. package/dist/identity/settings.js +248 -0
  311. package/dist/identity/sso.controller.d.ts +59 -0
  312. package/dist/identity/sso.controller.js +192 -0
  313. package/dist/identity/sso.d.ts +83 -0
  314. package/dist/identity/sso.js +202 -0
  315. package/dist/inbox/inbox.service.d.ts +43 -0
  316. package/dist/inbox/inbox.service.js +57 -0
  317. package/dist/index.d.ts +67 -0
  318. package/dist/index.js +65 -0
  319. package/dist/kernel.d.ts +256 -0
  320. package/dist/kernel.js +1326 -0
  321. package/dist/log.d.ts +48 -0
  322. package/dist/log.js +229 -0
  323. package/dist/models/prices.d.ts +53 -0
  324. package/dist/models/prices.js +121 -0
  325. package/dist/models/purposes.controller.d.ts +19 -0
  326. package/dist/models/purposes.controller.js +56 -0
  327. package/dist/models/purposes.d.ts +140 -0
  328. package/dist/models/purposes.js +267 -0
  329. package/dist/net/proxy.d.ts +44 -0
  330. package/dist/net/proxy.js +162 -0
  331. package/dist/net/public-address.d.ts +60 -0
  332. package/dist/net/public-address.js +271 -0
  333. package/dist/net/safe-fetch.d.ts +38 -0
  334. package/dist/net/safe-fetch.js +140 -0
  335. package/dist/orgs/directory-sync.controller.d.ts +14 -0
  336. package/dist/orgs/directory-sync.controller.js +40 -0
  337. package/dist/orgs/directory-sync.d.ts +166 -0
  338. package/dist/orgs/directory-sync.js +558 -0
  339. package/dist/orgs/invitations.controller.d.ts +58 -0
  340. package/dist/orgs/invitations.controller.js +137 -0
  341. package/dist/orgs/invitations.service.d.ts +80 -0
  342. package/dist/orgs/invitations.service.js +217 -0
  343. package/dist/orgs/members.service.d.ts +63 -0
  344. package/dist/orgs/members.service.js +234 -0
  345. package/dist/orgs/offboarding.d.ts +141 -0
  346. package/dist/orgs/offboarding.js +398 -0
  347. package/dist/orgs/org-lock.d.ts +32 -0
  348. package/dist/orgs/org-lock.js +46 -0
  349. package/dist/orgs/org.guard.d.ts +35 -0
  350. package/dist/orgs/org.guard.js +95 -0
  351. package/dist/orgs/orgs.controller.d.ts +78 -0
  352. package/dist/orgs/orgs.controller.js +192 -0
  353. package/dist/orgs/orgs.service.d.ts +61 -0
  354. package/dist/orgs/orgs.service.js +209 -0
  355. package/dist/orgs/roles.d.ts +13 -0
  356. package/dist/orgs/roles.js +58 -0
  357. package/dist/orgs/settings.controller.d.ts +20 -0
  358. package/dist/orgs/settings.controller.js +53 -0
  359. package/dist/orgs/settings.service.d.ts +120 -0
  360. package/dist/orgs/settings.service.js +178 -0
  361. package/dist/packages/npm.d.ts +50 -0
  362. package/dist/packages/npm.js +218 -0
  363. package/dist/packages/provenance.d.ts +47 -0
  364. package/dist/packages/provenance.js +147 -0
  365. package/dist/packages/tgz.d.ts +76 -0
  366. package/dist/packages/tgz.js +225 -0
  367. package/dist/runtime/abort.d.ts +32 -0
  368. package/dist/runtime/abort.js +71 -0
  369. package/dist/runtime/checkpointer.d.ts +32 -0
  370. package/dist/runtime/checkpointer.js +243 -0
  371. package/dist/runtime/context/build.d.ts +254 -0
  372. package/dist/runtime/context/build.js +693 -0
  373. package/dist/runtime/context/claude-tools.d.ts +11 -0
  374. package/dist/runtime/context/claude-tools.js +24 -0
  375. package/dist/runtime/context/compaction.d.ts +26 -0
  376. package/dist/runtime/context/compaction.js +195 -0
  377. package/dist/runtime/context/pairing.d.ts +11 -0
  378. package/dist/runtime/context/pairing.js +82 -0
  379. package/dist/runtime/context/reminders.d.ts +5 -0
  380. package/dist/runtime/context/reminders.js +11 -0
  381. package/dist/runtime/context/skills.d.ts +105 -0
  382. package/dist/runtime/context/skills.js +283 -0
  383. package/dist/runtime/context/tokens.d.ts +19 -0
  384. package/dist/runtime/context/tokens.js +104 -0
  385. package/dist/runtime/conversation-lock.d.ts +40 -0
  386. package/dist/runtime/conversation-lock.js +97 -0
  387. package/dist/runtime/hook-calls.d.ts +84 -0
  388. package/dist/runtime/hook-calls.js +136 -0
  389. package/dist/runtime/langgraph-loop.d.ts +52 -0
  390. package/dist/runtime/langgraph-loop.js +247 -0
  391. package/dist/runtime/loop.d.ts +93 -0
  392. package/dist/runtime/loop.js +7 -0
  393. package/dist/runtime/maintenance.d.ts +80 -0
  394. package/dist/runtime/maintenance.js +147 -0
  395. package/dist/runtime/media-cache.d.ts +21 -0
  396. package/dist/runtime/media-cache.js +51 -0
  397. package/dist/runtime/model-call.d.ts +176 -0
  398. package/dist/runtime/model-call.js +1049 -0
  399. package/dist/runtime/providers.d.ts +86 -0
  400. package/dist/runtime/providers.js +224 -0
  401. package/dist/runtime/quota.d.ts +29 -0
  402. package/dist/runtime/quota.js +70 -0
  403. package/dist/runtime/run-finish.d.ts +45 -0
  404. package/dist/runtime/run-finish.js +69 -0
  405. package/dist/runtime/run-queue.d.ts +121 -0
  406. package/dist/runtime/run-queue.js +493 -0
  407. package/dist/runtime/run-worker.d.ts +138 -0
  408. package/dist/runtime/run-worker.js +805 -0
  409. package/dist/runtime/stream.controller.d.ts +34 -0
  410. package/dist/runtime/stream.controller.js +122 -0
  411. package/dist/runtime/stream.d.ts +63 -0
  412. package/dist/runtime/stream.js +262 -0
  413. package/dist/runtime/subagents/child.d.ts +80 -0
  414. package/dist/runtime/subagents/child.js +225 -0
  415. package/dist/runtime/subagents/definition.d.ts +103 -0
  416. package/dist/runtime/subagents/definition.js +392 -0
  417. package/dist/runtime/subagents/dispatch.d.ts +69 -0
  418. package/dist/runtime/subagents/dispatch.js +502 -0
  419. package/dist/runtime/subagents/limits.d.ts +23 -0
  420. package/dist/runtime/subagents/limits.js +34 -0
  421. package/dist/runtime/subagents/org-agents.d.ts +50 -0
  422. package/dist/runtime/subagents/org-agents.js +70 -0
  423. package/dist/runtime/subagents/preamble.d.ts +7 -0
  424. package/dist/runtime/subagents/preamble.js +11 -0
  425. package/dist/runtime/subagents/progress.d.ts +26 -0
  426. package/dist/runtime/subagents/progress.js +36 -0
  427. package/dist/runtime/subagents/roster.d.ts +55 -0
  428. package/dist/runtime/subagents/roster.js +111 -0
  429. package/dist/runtime/subagents/skill-fork.d.ts +123 -0
  430. package/dist/runtime/subagents/skill-fork.js +259 -0
  431. package/dist/runtime/usage-report.d.ts +163 -0
  432. package/dist/runtime/usage-report.js +550 -0
  433. package/dist/runtime/waits.d.ts +233 -0
  434. package/dist/runtime/waits.js +883 -0
  435. package/dist/sandbox/leases.d.ts +169 -0
  436. package/dist/sandbox/leases.js +515 -0
  437. package/dist/sandbox/lifecycle.d.ts +21 -0
  438. package/dist/sandbox/lifecycle.js +68 -0
  439. package/dist/sandbox/sandbox.service.d.ts +249 -0
  440. package/dist/sandbox/sandbox.service.js +908 -0
  441. package/dist/skills/catalog.d.ts +149 -0
  442. package/dist/skills/catalog.js +405 -0
  443. package/dist/skills/changes.controller.d.ts +56 -0
  444. package/dist/skills/changes.controller.js +136 -0
  445. package/dist/skills/changes.service.d.ts +175 -0
  446. package/dist/skills/changes.service.js +805 -0
  447. package/dist/skills/invocable.controller.d.ts +23 -0
  448. package/dist/skills/invocable.controller.js +50 -0
  449. package/dist/skills/invocation-keys.d.ts +23 -0
  450. package/dist/skills/invocation-keys.js +44 -0
  451. package/dist/skills/invoke.d.ts +135 -0
  452. package/dist/skills/invoke.js +286 -0
  453. package/dist/skills/package.d.ts +87 -0
  454. package/dist/skills/package.js +227 -0
  455. package/dist/skills/skills.controller.d.ts +40 -0
  456. package/dist/skills/skills.controller.js +110 -0
  457. package/dist/skills/skills.service.d.ts +192 -0
  458. package/dist/skills/skills.service.js +567 -0
  459. package/dist/storage/prefix.d.ts +36 -0
  460. package/dist/storage/prefix.js +104 -0
  461. package/dist/storage/purge.d.ts +27 -0
  462. package/dist/storage/purge.js +75 -0
  463. package/dist/storage/storage.service.d.ts +44 -0
  464. package/dist/storage/storage.service.js +145 -0
  465. package/dist/text.d.ts +13 -0
  466. package/dist/text.js +13 -0
  467. package/dist/tools/approvals.controller.d.ts +53 -0
  468. package/dist/tools/approvals.controller.js +128 -0
  469. package/dist/tools/approvals.service.d.ts +172 -0
  470. package/dist/tools/approvals.service.js +568 -0
  471. package/dist/tools/breaker.d.ts +28 -0
  472. package/dist/tools/breaker.js +72 -0
  473. package/dist/tools/builtins/agent.d.ts +81 -0
  474. package/dist/tools/builtins/agent.js +223 -0
  475. package/dist/tools/builtins/ask-user.d.ts +28 -0
  476. package/dist/tools/builtins/ask-user.js +139 -0
  477. package/dist/tools/builtins/read-tool-output.d.ts +18 -0
  478. package/dist/tools/builtins/read-tool-output.js +108 -0
  479. package/dist/tools/builtins/sandbox/bash.d.ts +16 -0
  480. package/dist/tools/builtins/sandbox/bash.js +137 -0
  481. package/dist/tools/builtins/sandbox/common.d.ts +114 -0
  482. package/dist/tools/builtins/sandbox/common.js +304 -0
  483. package/dist/tools/builtins/sandbox/deliver.d.ts +5 -0
  484. package/dist/tools/builtins/sandbox/deliver.js +180 -0
  485. package/dist/tools/builtins/sandbox/edit.d.ts +4 -0
  486. package/dist/tools/builtins/sandbox/edit.js +98 -0
  487. package/dist/tools/builtins/sandbox/glob-match.d.ts +25 -0
  488. package/dist/tools/builtins/sandbox/glob-match.js +240 -0
  489. package/dist/tools/builtins/sandbox/glob.d.ts +4 -0
  490. package/dist/tools/builtins/sandbox/glob.js +104 -0
  491. package/dist/tools/builtins/sandbox/grep.d.ts +9 -0
  492. package/dist/tools/builtins/sandbox/grep.js +133 -0
  493. package/dist/tools/builtins/sandbox/index.d.ts +12 -0
  494. package/dist/tools/builtins/sandbox/index.js +27 -0
  495. package/dist/tools/builtins/sandbox/names.d.ts +7 -0
  496. package/dist/tools/builtins/sandbox/names.js +20 -0
  497. package/dist/tools/builtins/sandbox/read.d.ts +8 -0
  498. package/dist/tools/builtins/sandbox/read.js +121 -0
  499. package/dist/tools/builtins/sandbox/write.d.ts +4 -0
  500. package/dist/tools/builtins/sandbox/write.js +88 -0
  501. package/dist/tools/builtins/skill-load.d.ts +53 -0
  502. package/dist/tools/builtins/skill-load.js +446 -0
  503. package/dist/tools/builtins/skill-write.d.ts +59 -0
  504. package/dist/tools/builtins/skill-write.js +244 -0
  505. package/dist/tools/builtins/tool-search.d.ts +31 -0
  506. package/dist/tools/builtins/tool-search.js +171 -0
  507. package/dist/tools/connector-content.controller.d.ts +34 -0
  508. package/dist/tools/connector-content.controller.js +78 -0
  509. package/dist/tools/connector-content.d.ts +104 -0
  510. package/dist/tools/connector-content.js +267 -0
  511. package/dist/tools/connectors.controller.d.ts +210 -0
  512. package/dist/tools/connectors.controller.js +234 -0
  513. package/dist/tools/connectors.service.d.ts +303 -0
  514. package/dist/tools/connectors.service.js +1102 -0
  515. package/dist/tools/credentials.d.ts +139 -0
  516. package/dist/tools/credentials.js +351 -0
  517. package/dist/tools/drift.d.ts +141 -0
  518. package/dist/tools/drift.js +539 -0
  519. package/dist/tools/elicitation.d.ts +81 -0
  520. package/dist/tools/elicitation.js +266 -0
  521. package/dist/tools/endpoint.d.ts +18 -0
  522. package/dist/tools/endpoint.js +115 -0
  523. package/dist/tools/info.d.ts +67 -0
  524. package/dist/tools/info.js +113 -0
  525. package/dist/tools/naming.d.ts +27 -0
  526. package/dist/tools/naming.js +47 -0
  527. package/dist/tools/oauth/discovery.d.ts +65 -0
  528. package/dist/tools/oauth/discovery.js +307 -0
  529. package/dist/tools/oauth/flow.d.ts +63 -0
  530. package/dist/tools/oauth/flow.js +237 -0
  531. package/dist/tools/oauth/oauth.controller.d.ts +31 -0
  532. package/dist/tools/oauth/oauth.controller.js +95 -0
  533. package/dist/tools/oauth/tokens.d.ts +111 -0
  534. package/dist/tools/oauth/tokens.js +258 -0
  535. package/dist/tools/outputs.d.ts +61 -0
  536. package/dist/tools/outputs.js +156 -0
  537. package/dist/tools/pipeline.d.ts +322 -0
  538. package/dist/tools/pipeline.js +1236 -0
  539. package/dist/tools/policy.d.ts +60 -0
  540. package/dist/tools/policy.js +236 -0
  541. package/dist/tools/questions.controller.d.ts +24 -0
  542. package/dist/tools/questions.controller.js +58 -0
  543. package/dist/tools/questions.service.d.ts +103 -0
  544. package/dist/tools/questions.service.js +295 -0
  545. package/dist/tools/redact.d.ts +20 -0
  546. package/dist/tools/redact.js +60 -0
  547. package/dist/tools/registry.d.ts +246 -0
  548. package/dist/tools/registry.js +481 -0
  549. package/dist/tools/resources.d.ts +16 -0
  550. package/dist/tools/resources.js +76 -0
  551. package/dist/tools/specs.d.ts +14 -0
  552. package/dist/tools/specs.js +31 -0
  553. package/dist/tools/validate.d.ts +20 -0
  554. package/dist/tools/validate.js +183 -0
  555. package/dist/tools/view.d.ts +43 -0
  556. package/dist/tools/view.js +225 -0
  557. package/dist/ui/embed-token.d.ts +31 -0
  558. package/dist/ui/embed-token.js +132 -0
  559. package/dist/ui/registry.d.ts +58 -0
  560. package/dist/ui/registry.js +90 -0
  561. package/dist/ui/ui-stream.d.ts +37 -0
  562. package/dist/ui/ui-stream.js +162 -0
  563. package/dist/ui/views.controller.d.ts +81 -0
  564. package/dist/ui/views.controller.js +261 -0
  565. package/dist/ui/views.d.ts +155 -0
  566. package/dist/ui/views.js +306 -0
  567. package/dist/version.d.ts +5 -0
  568. package/dist/version.js +6 -0
  569. package/package.json +67 -3
  570. package/src/migrations/0001_init.sql +8 -0
  571. package/src/migrations/0002_secrets.sql +8 -0
  572. package/src/migrations/0003_identity.sql +117 -0
  573. package/src/migrations/0004_plugin_org_config_nullable.sql +3 -0
  574. package/src/migrations/0005_agents.sql +27 -0
  575. package/src/migrations/0006_conversations.sql +37 -0
  576. package/src/migrations/0007_checkpoints.sql +26 -0
  577. package/src/migrations/0008_runs_trigger_seq.sql +3 -0
  578. package/src/migrations/0009_runs_active_unique.sql +4 -0
  579. package/src/migrations/0010_tools.sql +125 -0
  580. package/src/migrations/0011_approvals_spec.sql +10 -0
  581. package/src/migrations/0012_run_waits.sql +24 -0
  582. package/src/migrations/0013_app_tools_source.sql +4 -0
  583. package/src/migrations/0014_tool_specs.sql +8 -0
  584. package/src/migrations/0015_tool_drift.sql +20 -0
  585. package/src/migrations/0016_plugin_permissions.sql +11 -0
  586. package/src/migrations/0017_identity_sources.sql +6 -0
  587. package/src/migrations/0018_channels.sql +74 -0
  588. package/src/migrations/0019_identity_trust.sql +17 -0
  589. package/src/migrations/0020_channel_card_lookup.sql +10 -0
  590. package/src/migrations/0021_org_storage_purge.sql +9 -0
  591. package/src/migrations/0022_attachments.sql +29 -0
  592. package/src/migrations/0023_sandboxes.sql +37 -0
  593. package/src/migrations/0024_skills.sql +46 -0
  594. package/src/migrations/0025_skills_catalog_idx.sql +6 -0
  595. package/src/migrations/0026_skill_changes.sql +34 -0
  596. package/src/migrations/0027_model_prices.sql +18 -0
  597. package/src/migrations/0028_evals.sql +105 -0
  598. package/src/migrations/0029_model_purposes.sql +18 -0
  599. package/src/migrations/0030_plugin_installs.sql +73 -0
  600. package/src/migrations/0031_plugin_snapshot_source.sql +6 -0
  601. package/src/migrations/0032_plugin_deployment_configs.sql +10 -0
  602. package/src/migrations/0033_rename_apps_to_connectors.sql +25 -0
  603. package/src/migrations/0034_directory.sql +49 -0
  604. package/src/migrations/0035_catalogs.sql +40 -0
  605. package/src/migrations/0036_app_import_staging.sql +17 -0
  606. package/src/migrations/0037_directory_installs.sql +92 -0
  607. package/src/migrations/0038_channel_inbound_mode.sql +6 -0
  608. package/src/migrations/0039_channel_card_pending.sql +8 -0
  609. package/src/migrations/0040_usage_report_sweep.sql +10 -0
  610. package/src/migrations/0041_rename_plugins_to_extensions.sql +38 -0
  611. package/src/migrations/0042_rename_directory_to_catalog.sql +80 -0
  612. package/src/migrations/0043_rename_app_installs_to_plugin_installs.sql +20 -0
  613. package/src/migrations/0044_catalog_one_kind.sql +90 -0
  614. package/src/migrations/0045_plugin_dependencies.sql +9 -0
  615. package/src/migrations/0046_git_sources.sql +25 -0
  616. package/src/migrations/0047_marketplace_entry_heads.sql +7 -0
  617. package/src/migrations/0048_marketplace_entry_trees.sql +8 -0
  618. package/src/migrations/0049_plugin_upgrades.sql +37 -0
  619. package/src/migrations/0050_bootstrap.sql +53 -0
  620. package/src/migrations/0051_claude_compat.sql +26 -0
  621. package/src/migrations/0052_conversations_account_agent_idx.sql +5 -0
  622. package/src/migrations/0053_subagents.sql +73 -0
  623. package/src/migrations/0054_subagent_wait_expiry.sql +7 -0
  624. package/src/migrations/0055_subagent_parent_indexes.sql +10 -0
  625. package/src/migrations/0056_approval_reason.sql +3 -0
  626. package/src/migrations/0057_conversation_titles.sql +11 -0
  627. package/src/migrations/0058_conversation_selection.sql +4 -0
  628. package/src/migrations/0059_conversation_queue.sql +22 -0
  629. package/src/migrations/0060_file_previewers.sql +10 -0
  630. package/src/migrations/0061_queue_selection.sql +5 -0
  631. package/src/migrations/0062_queued_skill.sql +8 -0
@@ -0,0 +1,430 @@
1
+ import { type Connector, type ConnectorTemplateSpec, type LocalizedName, type PluginManifest } from "@capybara-hq/plugin-sdk";
2
+ import { type Transaction } from "kysely";
3
+ import type { KernelConfig } from "../config/schema.js";
4
+ import type { KernelDatabase, KernelDb, SourceFormat } from "../db/kernel-schema.js";
5
+ import type { ExtensionAdminOps } from "../extensions/admin-ops.js";
6
+ import type { ExtensionInstalls } from "../extensions/installs.js";
7
+ import type { AdminExtensionView } from "../extensions/permission-view.js";
8
+ import type { StorageService } from "../storage/storage.service.js";
9
+ import type { TranslationReport } from "./claude/report.js";
10
+ import type { PluginImport, PluginReview } from "./plugin-import.js";
11
+ /** Item policy (C22): allow (default for new imports) / needs_approval / disabled (no new installs; existing ones stay). */
12
+ export type CatalogPolicy = "allow" | "needs_approval" | "disabled";
13
+ /** A catalog item (list entry). Every item is a plugin. */
14
+ export interface CatalogItemView {
15
+ id: string;
16
+ name: string;
17
+ publisher: string;
18
+ displayName: LocalizedName | null;
19
+ description: string;
20
+ policy: CatalogPolicy;
21
+ latestVersion: string;
22
+ /** Every version, newest first (semver; equal but for build metadata: the later import first). */
23
+ versions: string[];
24
+ /**
25
+ * Orgs that installed it: orgs with an installed plugin install of the item, plus, when its latest
26
+ * version has an extension, orgs that enabled that extension.
27
+ */
28
+ installs: number;
29
+ /** The latest version's source (file / npm / marketplace). */
30
+ source: string;
31
+ /**
32
+ * The marketplace an item was imported from (`official` or an enterprise marketplace id); null
33
+ * when imported by hand or when that marketplace was deleted.
34
+ */
35
+ marketplaceId: string | null;
36
+ /**
37
+ * The item's highest compatible version in its marketplace (when enabled); null when the item was
38
+ * not imported from a marketplace, the marketplace is disabled or the entry is gone.
39
+ */
40
+ latestMarketplaceVersion: string | null;
41
+ /**
42
+ * `latestMarketplaceVersion` is newer than the newest imported version (the UI shows "newer
43
+ * version"; never imported automatically).
44
+ */
45
+ newerInMarketplace: boolean;
46
+ /**
47
+ * An entry of its marketplace has a version already imported, but its source now differs from
48
+ * what was recorded (another commit or integrity): "content changed at the same version" (spec
49
+ * §5.3). Importing it again records `<version>+git.<sha12>` / `+sha256.<12>`.
50
+ */
51
+ contentChanged: boolean;
52
+ updatedAt: string;
53
+ }
54
+ /**
55
+ * A git source as recorded (spec §5.1: the actual host, repo and commit, and whether it follows a
56
+ * branch, i.e. no commit was pinned). `path` is `.` for the repo root.
57
+ */
58
+ export interface GitSourceDetail {
59
+ host: string;
60
+ repo: string;
61
+ path: string;
62
+ ref?: string;
63
+ commit: string;
64
+ followsBranch: boolean;
65
+ /**
66
+ * The git tree oid of the plugin's directory at `commit` (equal oids, equal files: a monorepo
67
+ * commit that leaves the directory alone keeps it). Absent before phase A1 task 4's fix round.
68
+ */
69
+ tree?: string;
70
+ }
71
+ /** Where a catalog version came from: a git location, an archive URL (origin + path), an npm registry. */
72
+ export type SourceDetail = GitSourceDetail | {
73
+ url: string;
74
+ } | {
75
+ registry: string;
76
+ };
77
+ /** The source kinds of a catalog version. */
78
+ export type CatalogVersionSource = "file" | "npm" | "marketplace" | "git" | "bootstrap";
79
+ /** One version of an item. */
80
+ export interface CatalogItemVersionView {
81
+ version: string;
82
+ source: CatalogVersionSource;
83
+ sourceRef: string;
84
+ integrity: string | null;
85
+ /** The content digest of the imported files (null for a version imported before phase A1). */
86
+ contentDigest: string | null;
87
+ /** Where it came from (null for an upload, or a version imported before phase A1). */
88
+ sourceDetail: SourceDetail | null;
89
+ /** The normalized plugin.json (skills and connector templates listed). */
90
+ manifest: PluginManifest;
91
+ /** Files stored under the version's object prefix (skills, connector templates, icons). */
92
+ files: {
93
+ path: string;
94
+ size: number;
95
+ sha256: string;
96
+ }[];
97
+ size: number;
98
+ /** The extension's package in the package store (null without an extension). */
99
+ extensionSha256: string | null;
100
+ /** `claude-code`: translated from a Claude Code plugin. */
101
+ sourceFormat: SourceFormat;
102
+ /** The translation report of a Claude Code plugin (null for a native plugin). */
103
+ translation: TranslationReport | null;
104
+ /** The root LICENSE text (null without one, or before phase B). */
105
+ licenseText: string | null;
106
+ /** The root LICENSE was longer than 64 KiB (or not UTF-8), so `licenseText` is null. */
107
+ licenseTruncated: boolean;
108
+ importedBy: string | null;
109
+ importedAt: string;
110
+ }
111
+ /** Item detail (deleted items included: `deletedAt` set). */
112
+ export interface CatalogItemDetail {
113
+ /** `packageName` is null for a git plugin without package.json. */
114
+ item: CatalogItemView & {
115
+ packageName: string | null;
116
+ deletedAt: string | null;
117
+ };
118
+ versions: CatalogItemVersionView[];
119
+ }
120
+ export interface CatalogServiceDeps {
121
+ db: KernelDb;
122
+ config: () => KernelConfig;
123
+ installs: Pick<ExtensionInstalls, "fetchMarketplacePackage" | "fetchProvenance">;
124
+ ops: Pick<ExtensionAdminOps, "install">;
125
+ /** Plugin import (a marketplace entry goes through its prepare). */
126
+ pluginImport: Pick<PluginImport, "prepare" | "prepareGit">;
127
+ /** The token of an enterprise marketplace (sent only to its URL's origin). */
128
+ marketplaceToken: (marketplaceId: string) => Promise<string | undefined>;
129
+ /** Downloads a marketplace archive source, verified against its integrity. */
130
+ fetchArchive: (archive: {
131
+ url: string;
132
+ integrity: string;
133
+ }, signal?: AbortSignal) => Promise<{
134
+ bytes: Uint8Array;
135
+ integrity: string;
136
+ }>;
137
+ }
138
+ /** Audits carry the PAT when a personal token made the call. */
139
+ export interface ActorOpts {
140
+ actorTokenId?: string;
141
+ }
142
+ type Trx = Transaction<KernelDatabase>;
143
+ /**
144
+ * The marketplace's permission summary differs from the keys computed from the package (a warning,
145
+ * never a refusal; C26): `missing` = asked by the package, not listed; `extra` = listed, not asked.
146
+ * null when they agree, the marketplace gave no summary or the plugin has no extension.
147
+ */
148
+ export type PermissionsMismatch = {
149
+ missing: string[];
150
+ extra: string[];
151
+ } | null;
152
+ /**
153
+ * The result of {@link CatalogService.importFromMarketplace}: a staging id and the review (HTTP
154
+ * 200), confirmed with `POST /api/v1/admin/catalog/imports/:stagingId/confirm`.
155
+ */
156
+ export interface MarketplaceImportResult {
157
+ stagingId: string;
158
+ review: PluginReview;
159
+ permissionsMismatch: PermissionsMismatch;
160
+ }
161
+ /** An archive URL as recorded (origin + path): a query string or fragment may carry a token. */
162
+ export declare const archiveRef: (url: string) => string;
163
+ /** `<host>/<owner>` of a repo URL (the publisher of a skills-only plugin without a marketplace owner). */
164
+ export declare function repoOwner(url: string): string;
165
+ /**
166
+ * The version of a git plugin that has none (spec §5.3): `0.0.0-git.g<sha12>`. The `g` keeps the
167
+ * prerelease identifier alphanumeric: twelve hex characters that happen to be all digits with a
168
+ * leading zero are not valid semver.
169
+ */
170
+ export declare const gitFallbackVersion: (commit: string) => string;
171
+ /**
172
+ * The object storage prefix of one import (relative to `deployment/`):
173
+ * `directory/<itemId>/<version>/<importId>/`. Each import gets a new `importId`, so the losing one of
174
+ * two concurrent imports of the same version never overwrites the committed version's files; reads
175
+ * always go through the `object_prefix` stored on the version row. Build metadata's `+` is written
176
+ * as `_` (a `+` in a key can turn into a space through URL query encoding).
177
+ */
178
+ export declare const catalogObjectPrefix: (itemId: string, version: string, importId: string) => string;
179
+ /** Default / largest page size of the list. */
180
+ export declare const CATALOG_LIST_DEFAULT_LIMIT = 200;
181
+ export declare const CATALOG_LIST_MAX_LIMIT = 1000;
182
+ /**
183
+ * Enterprise catalog items (D9 / C21 / C22, `/api/v1/admin/catalog/*`, enterprise admins only). One
184
+ * kind: every item is a plugin (spec §4), imported through {@link PluginImport} (prepare -> confirm,
185
+ * one review); this service lists and shows items, changes policy, deletes, installs an item's
186
+ * extension on the deployment, and prepares marketplace imports. Stateless, shared by every replica.
187
+ */
188
+ export declare class CatalogService {
189
+ private readonly d;
190
+ constructor(d: CatalogServiceDeps);
191
+ /**
192
+ * Prepares the import of one marketplace entry (C25 / C26, spec §5.2): `version` defaults to the
193
+ * newest compatible version the marketplace lists for `name`; the entry must be compatible with
194
+ * the host (`marketplace.incompatible`); an npm source is downloaded from the configured registry
195
+ * and an archive source from its URL, both always verified against the marketplace's integrity
196
+ * (`marketplace.integrity_mismatch`, nothing written). A `path` source is read from the git
197
+ * marketplace's repository at its last refreshed commit (an http marketplace has none:
198
+ * `marketplace.path_unsupported`); a `git` source at its pinned `commit`, else at its `ref`'s head
199
+ * now, recorded; both through {@link PluginImport.prepareGit} with source `git` and
200
+ * `source_detail` (host, repo, path, ref, commit, followsBranch). A git / archive host outside
201
+ * `marketplaces.allowedHosts` -> `marketplace.host_not_allowed`. The marketplace token goes only
202
+ * to the marketplace URL's origin. The package must match the entry (name, version, npm package:
203
+ * `marketplace.package_mismatch`), then the same review as any plugin import
204
+ * ({@link PluginImport.prepare}) with source `marketplace` (ref `<marketplaceId>:<npm>@<version>`
205
+ * or `<marketplaceId>:<archive URL>`; git: `<marketplaceId>:<repo>@<commit>[:<path>]`), confirmed with
206
+ * `POST /api/v1/admin/catalog/imports/:stagingId/confirm`. Marketplace missing ->
207
+ * `marketplace.not_found`; disabled, or the entry / version missing -> `marketplace.entry_not_found`.
208
+ */
209
+ importFromMarketplace(actor: string, input: {
210
+ marketplaceId: string;
211
+ name: string;
212
+ version?: string;
213
+ }, opts?: ActorOpts & {
214
+ signal?: AbortSignal;
215
+ }): Promise<MarketplaceImportResult>;
216
+ /**
217
+ * Prepares the import of one plugin straight from git (spec §5.1, a one-off like an upload: no
218
+ * marketplace is created and no updates are tracked): `url` is an https git URL or `owner/repo`
219
+ * (GitHub), `ref` a branch / tag / commit (default the remote HEAD), `path` the plugin's directory
220
+ * (default the root). The commit is resolved and recorded (`source_detail`), then the same review
221
+ * as any plugin import. A skills-only directory without plugin.json is named after the last
222
+ * segment of `path` (else of the repo URL) and published by the repo owner.
223
+ */
224
+ importFromGit(actor: string | null, input: {
225
+ url: string;
226
+ ref?: string;
227
+ path?: string;
228
+ }, opts?: ActorOpts & {
229
+ signal?: AbortSignal;
230
+ }): Promise<{
231
+ stagingId: string;
232
+ review: PluginReview;
233
+ }>;
234
+ /** Resolves the commit and reads the plugin's files; git failures become API errors. */
235
+ private readGit;
236
+ /**
237
+ * Item list (deleted items excluded by default), ordered by name, id. Paging: `limit`
238
+ * defaults to {@link CATALOG_LIST_DEFAULT_LIMIT}, at most {@link CATALOG_LIST_MAX_LIMIT}, `offset`
239
+ * defaults to 0; use the returned array directly when only the first page is needed.
240
+ */
241
+ list(q?: {
242
+ includeDeleted?: boolean;
243
+ limit?: number;
244
+ offset?: number;
245
+ }): Promise<CatalogItemView[]>;
246
+ /** Same as {@link list}, plus the offset of the next page (null when there is none). */
247
+ page(q?: {
248
+ includeDeleted?: boolean;
249
+ limit?: number;
250
+ offset?: number;
251
+ }): Promise<{
252
+ items: CatalogItemView[];
253
+ nextOffset: number | null;
254
+ }>;
255
+ /** Item detail (with every version; deleted items too). Missing -> `catalog.item_not_found`. */
256
+ get(itemId: string): Promise<CatalogItemDetail>;
257
+ /**
258
+ * Changes the policy (audit `catalog.policy_changed`, not written when unchanged). Deleted /
259
+ * missing -> `catalog.item_not_found`.
260
+ */
261
+ setPolicy(actor: string, itemId: string, policy: CatalogPolicy, opts?: ActorOpts): Promise<CatalogItemView>;
262
+ /**
263
+ * Deletes the item (soft delete, audit `catalog.removed`; requests still pending are cancelled in
264
+ * the same transaction): versions and stored files are kept (installed components still refer to
265
+ * them), organizations no longer see it; the same name can later be imported again as a new
266
+ * item. Deleted / missing -> `catalog.item_not_found`.
267
+ */
268
+ remove(actor: string, itemId: string, opts?: ActorOpts): Promise<void>;
269
+ /**
270
+ * Installs the extension of one version of an item on the deployment
271
+ * (`ExtensionAdminOps.install`: a new install is disabled, a version change keeps the desired
272
+ * state; audit `extension.installed`), with the install record linked to the item (F-AA). The
273
+ * returned status may be `pending_approval` when the version's permissions are not approved yet.
274
+ * A version without an extension -> `catalog.no_extension`; item or version missing ->
275
+ * `catalog.item_not_found`.
276
+ */
277
+ installToDeployment(actor: string, itemId: string, version: string, opts?: ActorOpts): Promise<AdminExtensionView>;
278
+ private view;
279
+ }
280
+ /**
281
+ * Checks a connector template against the loaded connector `c` (problem paths start with `at`): the
282
+ * endpoint matches its `endpointSchema` and carries no credential-like headers / query / URL user
283
+ * info (the same rule as connector installs); every `editableEndpoint` path exists in the endpoint
284
+ * schema.
285
+ */
286
+ export declare function templateProblems(c: Connector, t: ConnectorTemplateSpec, at: string): string[];
287
+ /** Writes the files to `deployment/<prefix><path>` ({@link PUT_CONCURRENCY} at a time). */
288
+ export declare function putCatalogFiles(storage: StorageService, prefix: string, files: {
289
+ path: string;
290
+ size: number;
291
+ data: Uint8Array;
292
+ }[]): Promise<void>;
293
+ /** Compares the marketplace's permission summary with the computed keys ({@link PermissionsMismatch}). */
294
+ export declare function permissionsMismatch(declared: string[] | undefined, actual: string[] | undefined): PermissionsMismatch;
295
+ /** The fields the list shows (the item's publisher / description / displayName). */
296
+ export interface CatalogListing {
297
+ publisher: string;
298
+ description: string;
299
+ displayName: LocalizedName | null;
300
+ }
301
+ /** Input of {@link writeCatalogVersion}. */
302
+ export interface CatalogVersionWrite {
303
+ /** null: the CLI (no account). */
304
+ actor: string | null;
305
+ actorTokenId?: string;
306
+ name: string;
307
+ /** null: a git plugin without package.json. */
308
+ packageName: string | null;
309
+ /**
310
+ * The version recorded (from {@link precheckCatalogImport}: the plugin's own, or with build
311
+ * metadata when that release was imported with other content).
312
+ */
313
+ version: string;
314
+ /** The content digest of the plugin's files. */
315
+ contentDigest: string;
316
+ /** The normalized plugin.json. */
317
+ manifest: PluginManifest;
318
+ listing: CatalogListing;
319
+ /** The id of the item to create when there is none yet (the one the storage prefix used). */
320
+ newItemId: string;
321
+ source: {
322
+ source: CatalogVersionSource;
323
+ ref: string;
324
+ integrity?: string;
325
+ detail?: SourceDetail;
326
+ };
327
+ /** Imported from a marketplace: the item records it. */
328
+ marketplaceId?: string;
329
+ objectPrefix: string | null;
330
+ extensionSha256: string | null;
331
+ files: {
332
+ path: string;
333
+ size: number;
334
+ sha256: string;
335
+ }[];
336
+ size: number;
337
+ /** The format the plugin was read from (default `capybara`). */
338
+ sourceFormat?: SourceFormat;
339
+ /** The translation report of a Claude Code plugin. */
340
+ translation?: TranslationReport | null;
341
+ /** The root LICENSE text. */
342
+ licenseText?: string | null;
343
+ /** The root LICENSE was too long (or not UTF-8) to store. */
344
+ licenseTruncated?: boolean;
345
+ /** Merged into the detail of the `catalog.imported` audit. */
346
+ auditDetail?: Record<string, unknown>;
347
+ }
348
+ /** Takes the transaction-level advisory lock of an item name (concurrent imports of it serialize). */
349
+ export declare function lockCatalogName(trx: Trx, name: string): Promise<void>;
350
+ /**
351
+ * The identity of a git source, `<host>/<repo>:<path>` (host lower case, no `.git`), or null when
352
+ * the source is not git. An item without package.json is identified by it instead of a package name.
353
+ */
354
+ export declare function gitIdentity(detail: SourceDetail | undefined): string | null;
355
+ /** What is being imported, as far as the version conflict rules need it. */
356
+ export interface ImportIdentity {
357
+ packageName: string | null;
358
+ /** The plugin's own version (plugin.json, else the fallback of spec §5.3). */
359
+ version: string;
360
+ contentDigest: string;
361
+ integrity?: string;
362
+ detail?: SourceDetail;
363
+ marketplaceId?: string;
364
+ }
365
+ type ExistingVersion = {
366
+ version: string;
367
+ content_digest: string | null;
368
+ integrity: string | null;
369
+ };
370
+ /**
371
+ * The version a new import records (Decision 6, spec §5.3): the plugin's own version, unless that
372
+ * release is already imported. A version of the same release (equal but for build metadata) with
373
+ * the same content (digest; for versions without one, the same integrity) -> `catalog.version_exists`
374
+ * "already imported"; other content -> `<version>+git.<sha12>` (git) or `+sha256.<12>` (any other
375
+ * source, the digest's first 12 hex), never overwriting the imported version. A git commit already
376
+ * recorded with other content (a Claude Code plugin whose marketplace entry changed while its own
377
+ * commit did not, see `claudeContentDigest`) falls back to `+sha256.<12>`.
378
+ */
379
+ export declare function recordedVersion(existing: ExistingVersion[], p: ImportIdentity): string;
380
+ /**
381
+ * Conflict precheck before writing (no lock; {@link writeCatalogVersion}'s re-check inside the
382
+ * transaction is final): an item with the same name from another npm package (or, without one,
383
+ * another git source) -> `catalog.name_conflict`; the release already imported with the same
384
+ * content -> `catalog.version_exists`. Returns the existing item (undefined when there is none) and
385
+ * the version to record ({@link recordedVersion}).
386
+ */
387
+ export declare function precheckCatalogImport(db: KernelDb, name: string, p: ImportIdentity): Promise<{
388
+ existing: {
389
+ id: string;
390
+ } | undefined;
391
+ version: string;
392
+ }>;
393
+ /**
394
+ * Writes a catalog version in the caller's transaction (the caller has re-checked the enterprise
395
+ * admin): takes the name's advisory lock, checks conflicts again (the same source; no version of
396
+ * the release with the same content; `version` not taken meanwhile), creates the item when there is
397
+ * none or adds the version (latest and display fields change only for a newer version, a version
398
+ * equal but for build metadata being newer as the later import), and writes the version row (with
399
+ * its content digest) and the `catalog.imported` audit. Returns the item id.
400
+ */
401
+ export declare function writeCatalogVersion(trx: Trx, w: CatalogVersionWrite): Promise<string>;
402
+ /**
403
+ * An extension name belongs to the npm package that first installed it (`extension_name_owners`,
404
+ * Ruling P3): when another package owns it, the import is refused right away with
405
+ * `extension.name_conflict` (the same code as at install), instead of failing only at deploy time.
406
+ */
407
+ export declare function assertPluginNameOwner(db: KernelDb | Trx, name: string, packageName: string | null): Promise<void>;
408
+ /** What the marketplace says about a marketplace-imported item. */
409
+ export interface MarketplaceStatus {
410
+ /** See {@link CatalogItemView.latestMarketplaceVersion}. */
411
+ latest: string | null;
412
+ /** See {@link CatalogItemView.contentChanged}. */
413
+ contentChanged: boolean;
414
+ }
415
+ export declare function itemView(i: {
416
+ id: string;
417
+ name: string;
418
+ publisher: string;
419
+ display_name: LocalizedName | null;
420
+ description: string;
421
+ policy: CatalogPolicy;
422
+ latest_version: string;
423
+ marketplace_id?: string | null;
424
+ updated_at: Date;
425
+ }, versions: {
426
+ version: string;
427
+ source: string;
428
+ imported_at?: Date;
429
+ }[], installs?: number, marketplace?: MarketplaceStatus): CatalogItemView;
430
+ export {};