@desplega.ai/agent-swarm 1.164.1 → 1.166.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 (328) hide show
  1. package/README.md +1 -1
  2. package/dist/acp-adapter-yzfxn8vj.js +23 -0
  3. package/dist/{actions-hp2h32dx.js → actions-qz3m692w.js} +24 -28
  4. package/dist/{amp-adapter-zfd7djyx.js → amp-adapter-j1xbmsqz.js} +7 -7
  5. package/dist/{app-w2d26h4f.js → app-43vrdmv8.js} +9 -10
  6. package/dist/{assistant-45pc4en7.js → assistant-ertffmka.js} +25 -29
  7. package/dist/{boot-reembed-k1q2s4fc.js → boot-reembed-998jtpdg.js} +12 -15
  8. package/dist/{boot-reembed-6rhcpsjf.js → boot-reembed-s7k7c6v2.js} +13 -15
  9. package/dist/boot-scrub-sweep-nepsk4t1.js +211 -0
  10. package/dist/{boot-seeds-ex93edx7.js → boot-seeds-vvzs1zhk.js} +12 -12
  11. package/dist/{claude-adapter-hcxd0szm.js → claude-adapter-2zvmekrp.js} +15 -17
  12. package/dist/{claude-managed-adapter-fz7xps2r.js → claude-managed-adapter-s49wbk8t.js} +5 -5
  13. package/dist/{claude-managed-setup-xx6f15h9.js → claude-managed-setup-cvhqq8qn.js} +4 -4
  14. package/dist/{claude-sdk-session-6nb9raem.js → claude-sdk-session-kkbxtw5q.js} +2624 -2606
  15. package/dist/{cli-etbrt8x1.js → cli-0nhdwxd5.js} +4 -4
  16. package/dist/{cli-jeefgppq.js → cli-0qjcsxgz.js} +7 -7
  17. package/dist/{cli-6behs2bt.js → cli-32bca7nr.js} +1 -1
  18. package/dist/{cli-gt8v96qx.js → cli-3ddybbbx.js} +4 -4
  19. package/dist/{acp-adapter-rxvek4ym.js → cli-3qn4r334.js} +317 -35
  20. package/dist/{cli-1d3w4xm3.js → cli-4r1sjfc4.js} +14 -6
  21. package/dist/{cli-691f2rxm.js → cli-66zh26sp.js} +68 -16
  22. package/dist/{cli-et8wdyqh.js → cli-68r1j4sg.js} +9 -9
  23. package/dist/{cli-xb7kyanp.js → cli-8kgvmkak.js} +3 -3
  24. package/dist/{cli-fdpkw8vk.js → cli-8t229cmr.js} +8 -8
  25. package/dist/{cli-gc54qc0p.js → cli-aqcey741.js} +1 -1
  26. package/dist/{cli-4q4cmr4t.js → cli-cpfmqz3n.js} +8 -8
  27. package/dist/{cli-a9bw0xxt.js → cli-df56tqdw.js} +997 -408
  28. package/dist/{cli-n7h1kqpf.js → cli-dmtrxqhg.js} +6 -1
  29. package/dist/{cli-xfb7333f.js → cli-dw2q9f7g.js} +5 -5
  30. package/dist/{cli-4drstbb9.js → cli-ecknp7p1.js} +81 -23
  31. package/dist/{cli-v0pvvhfq.js → cli-efnd2kce.js} +36 -1
  32. package/dist/{cli-1wetf34q.js → cli-f2n17zhp.js} +1 -1
  33. package/dist/{cli-2c8eky5y.js → cli-feh3dkah.js} +1 -1
  34. package/dist/cli-fn697bnt.js +126 -0
  35. package/dist/{cli-v5pr2fgt.js → cli-gt8azyet.js} +3 -3
  36. package/dist/{cli-dbszf3rw.js → cli-h3x613ze.js} +4 -4
  37. package/dist/{cli-nwhb8y2e.js → cli-hf5s9pgf.js} +1 -1
  38. package/dist/cli-j2jbr8af.js +516 -0
  39. package/dist/{cli-agjzafns.js → cli-jhm6hzjn.js} +593 -10
  40. package/dist/{cli-j0tmc908.js → cli-jvj6a0cv.js} +484 -477
  41. package/dist/{cli-xxz89c2n.js → cli-mb75wpxf.js} +1 -1
  42. package/dist/{cli-07s39g1n.js → cli-mv2520nm.js} +1 -1
  43. package/dist/{cli-v90vfwyb.js → cli-mwegs4af.js} +5 -5
  44. package/dist/{cli-bz1gbac9.js → cli-p4ztb80h.js} +2 -2
  45. package/dist/{cli-1wd1n2ya.js → cli-rfphkzh5.js} +1 -1
  46. package/dist/{cli-976r1zqx.js → cli-rggdq8wq.js} +5 -5
  47. package/dist/{cli-3ajw5v5v.js → cli-rsy933yz.js} +6 -6
  48. package/dist/{cli-yj790e19.js → cli-tadfgd0t.js} +8 -1
  49. package/dist/{cli-cn53e7vc.js → cli-ttbsse3f.js} +6 -1
  50. package/dist/{cli-dyqsrqcf.js → cli-v2a8x45d.js} +4 -4
  51. package/dist/{cli-wbvnn6tk.js → cli-v6vv7dy8.js} +91 -9
  52. package/dist/{cli-z2ap2c0c.js → cli-vzc73wet.js} +90 -55
  53. package/dist/cli-wt7ccy4r.js +2654 -0
  54. package/dist/{cli-4cn19jvn.js → cli-x7kpr72a.js} +3 -3
  55. package/dist/{cli-003785v9.js → cli-xvc3q9br.js} +1 -1
  56. package/dist/{cli-v0e7jpr5.js → cli-xvdgasgy.js} +13 -4
  57. package/dist/{cli-asqeg4ve.js → cli-y59h2pk9.js} +2 -2
  58. package/dist/{cli-0wn3ypqv.js → cli-yshaazs1.js} +14121 -3478
  59. package/dist/{cli-wg8yjqtw.js → cli-ysnyhws9.js} +16 -3
  60. package/dist/cli-zp67qg5x.js +92 -0
  61. package/dist/{cli-g3qgrzck.js → cli-zsh093hk.js} +71 -3
  62. package/dist/{cli-ma3zvh39.js → cli-zy7vwsne.js} +6066 -5829
  63. package/dist/cli.js +79 -26
  64. package/dist/{codex-adapter-pcxdn10v.js → codex-adapter-dw1wxqt8.js} +10 -10
  65. package/dist/{codex-hook-b1fb7c2k.js → codex-hook-d2rkvf39.js} +1 -1
  66. package/dist/{codex-login-059nm145.js → codex-login-terbdsqq.js} +2 -2
  67. package/dist/{codex-session-runner-xzwwddp8.js → codex-session-runner-3cgb8y1g.js} +10 -10
  68. package/dist/{commands-98at8mkn.js → commands-mhxam6z2.js} +9 -9
  69. package/dist/{cursor-adapter-dkg6qnkp.js → cursor-adapter-2qda3st7.js} +6 -6
  70. package/dist/{db-01g8wtvw.js → db-sjks418k.js} +11 -9
  71. package/dist/{devin-adapter-qmttt2fz.js → devin-adapter-bffjj5n4.js} +2 -2
  72. package/dist/{dispatcher-nn2k1wxd.js → dispatcher-1es759rn.js} +22 -26
  73. package/dist/{dsh-adapter-w4d4vwdq.js → dsh-adapter-bek4cyw9.js} +6 -6
  74. package/dist/{e2b-9e4g2hvt.js → e2b-nd50eccg.js} +1 -1
  75. package/dist/{event-bus-z7v2t26e.js → event-bus-vnfthafg.js} +2 -2
  76. package/dist/grok-adapter-ar9cw9jg.js +29 -0
  77. package/dist/{handlers-b0kqsbg8.js → handlers-1gkbhktr.js} +25 -29
  78. package/dist/{hook-sap7v1aj.js → hook-ds2zxq9v.js} +16 -18
  79. package/dist/{hook-pz50gqep.js → hook-vxa3tcsy.js} +10 -12
  80. package/dist/{http-ncr8rmd0.js → http-3h21z9md.js} +679 -227
  81. package/dist/{index-c4aqcyz1.js → index-9b65j1m5.js} +11 -11
  82. package/dist/{index-r46s01nq.js → index-bn6cy8ps.js} +22 -26
  83. package/dist/{index-38kqdt3e.js → index-dkfxpkmm.js} +23 -27
  84. package/dist/{index-630kj5vd.js → index-f8xnqrye.js} +55 -43
  85. package/dist/{index-fdk1t4d6.js → index-n0rxa4ca.js} +11962 -9900
  86. package/dist/{index-9nrj7797.js → index-n99fycq7.js} +22 -26
  87. package/dist/{keepalive-31613r2h.js → keepalive-3xspa9jw.js} +14 -11
  88. package/dist/{lead-mx59tr5s.js → lead-6qphc124.js} +43 -43
  89. package/dist/{maintenance-55ff39ca.js → maintenance-0teem1bb.js} +10 -12
  90. package/dist/{node-f0ykebbv.js → node-9sg7ajby.js} +25 -7
  91. package/dist/{oauth-refresh-sweep-anma954w.js → oauth-refresh-sweep-sh9q25xp.js} +13 -10
  92. package/dist/{onboard-b2fy8ftb.js → onboard-54qmnqxe.js} +4 -3
  93. package/dist/{opencode-adapter-p1s92tmy.js → opencode-adapter-wjfa2wvd.js} +6 -6
  94. package/dist/{otel-impl-9brvt7xv.js → otel-impl-ycqzp2a1.js} +2 -2
  95. package/dist/{pi-mono-adapter-kz4rrwvd.js → pi-mono-adapter-e77e9zst.js} +6 -6
  96. package/dist/{pricing-refresh-7w8mbmva.js → pricing-refresh-atnkngqs.js} +10 -10
  97. package/dist/{rbac-roles-ejp7qwvb.js → rbac-roles-9pjphh9q.js} +10 -10
  98. package/dist/{rbac-roles-nhk4r7bc.js → rbac-roles-j78wdksm.js} +10 -10
  99. package/dist/{render-v2-2gzt8skq.js → render-v2-pxjs49fx.js} +9 -10
  100. package/dist/{setup-5et8t412.js → setup-ymej0xtx.js} +2 -2
  101. package/dist/{work-objects-tb0er7qa.js → work-objects-3nh4ymzb.js} +26 -30
  102. package/dist/{worker-62cv075d.js → worker-qa9fkz5s.js} +43 -43
  103. package/dist/{x-vbxb31jr.js → x-ma4gnfgy.js} +2 -2
  104. package/openapi.json +457 -31
  105. package/package.json +14 -6
  106. package/plugin/commands/create-pr.md +7 -1
  107. package/plugin/pi-skills/create-pr/SKILL.md +7 -1
  108. package/src/agentmail/app.ts +5 -4
  109. package/src/be/automation-preflight.ts +11 -9
  110. package/src/be/boot-scrub-sweep.ts +302 -0
  111. package/src/be/connector-codes.ts +81 -0
  112. package/src/be/crypto/key-bootstrap.ts +1 -1
  113. package/src/be/db/approvals.ts +15 -1
  114. package/src/be/db/codex-oauth-device-flows.ts +40 -0
  115. package/src/be/db/config-secrets.ts +31 -0
  116. package/src/be/db/runtime.ts +4 -0
  117. package/src/be/db/script-runs.ts +15 -0
  118. package/src/be/db/tasks/write.ts +1 -1
  119. package/src/be/db-queries/mcp-oauth.ts +5 -0
  120. package/src/be/db-queries/oauth.ts +77 -0
  121. package/src/be/db.ts +162 -59
  122. package/src/be/events.ts +17 -1
  123. package/src/be/memory/index-content.ts +2 -2
  124. package/src/be/memory/providers/sqlite-store.ts +63 -11
  125. package/src/be/memory/types.ts +14 -0
  126. package/src/be/migrations/197_connector_codes.sql +23 -0
  127. package/src/be/migrations/198_permission_audit_guest.sql +33 -0
  128. package/src/be/migrations/200_backfill_auto_memory_expiry.sql +20 -0
  129. package/src/be/migrations/201_workflow_replay_columns.sql +10 -0
  130. package/src/be/migrations/202_codex_oauth_device_flows.sql +24 -0
  131. package/src/be/model-tier-resolution.ts +2 -1
  132. package/src/be/model-validation.ts +1 -1
  133. package/src/be/pricing-normalize.ts +3 -0
  134. package/src/be/rbac-audit.ts +2 -1
  135. package/src/be/scripts/db.ts +28 -4
  136. package/src/be/scripts/source-secrets.ts +37 -0
  137. package/src/be/scripts/typecheck.ts +23 -2
  138. package/src/be/scrub-json.ts +32 -0
  139. package/src/be/sealed-json.ts +59 -0
  140. package/src/be/secret-registry.ts +131 -0
  141. package/src/be/seed-pricing.ts +14 -0
  142. package/src/be/users.ts +7 -1
  143. package/src/be/workflow-replay.ts +77 -0
  144. package/src/cli.tsx +7 -0
  145. package/src/commands/provider-credentials.ts +46 -8
  146. package/src/commands/runner.ts +2 -10
  147. package/src/extensions/contract-types.generated.ts +1 -1
  148. package/src/github/app.ts +4 -4
  149. package/src/heartbeat/heartbeat.ts +20 -8
  150. package/src/hooks/pr-body-guard.ts +1 -1
  151. package/src/http/agents.ts +1 -0
  152. package/src/http/approval-requests.ts +1 -0
  153. package/src/http/apps.ts +3 -0
  154. package/src/http/auth.ts +4 -1
  155. package/src/http/codex-oauth-device.ts +8 -10
  156. package/src/http/codex-oauth-keep-warm.ts +2 -2
  157. package/src/http/config-values.ts +59 -0
  158. package/src/http/config.ts +5 -0
  159. package/src/http/db-query-bounded.ts +3 -0
  160. package/src/http/db-query-shared.ts +107 -15
  161. package/src/http/db-query.ts +10 -2
  162. package/src/http/extensions.ts +1 -0
  163. package/src/http/index.ts +23 -6
  164. package/src/http/integrations.ts +1 -38
  165. package/src/http/ip-rate-limit.ts +82 -0
  166. package/src/http/kv.ts +38 -4
  167. package/src/http/mcp-servers.ts +1 -0
  168. package/src/http/memory.ts +9 -0
  169. package/src/http/models-catalog.ts +2 -0
  170. package/src/http/operator-actor.ts +4 -0
  171. package/src/http/page-proxy.ts +22 -0
  172. package/src/http/pages.ts +4 -2
  173. package/src/http/realtime.ts +1 -1
  174. package/src/http/request-principal.ts +14 -1
  175. package/src/http/script-connections.ts +8 -0
  176. package/src/http/script-runs.ts +12 -4
  177. package/src/http/scripts.ts +15 -0
  178. package/src/http/session-cost-recompute.ts +3 -2
  179. package/src/http/tasks.ts +9 -0
  180. package/src/http/users.ts +226 -0
  181. package/src/http/workflows.ts +3 -2
  182. package/src/http.ts +1 -0
  183. package/src/integrations/kapso/client.ts +3 -1
  184. package/src/jira/app.ts +2 -2
  185. package/src/kv-view.ts +324 -0
  186. package/src/linear/app.ts +2 -2
  187. package/src/oauth/mcp-wrapper.ts +1 -1
  188. package/src/prompts/memories.ts +42 -1
  189. package/src/providers/acp-adapter.ts +85 -24
  190. package/src/providers/acp-target-catalog.ts +54 -1
  191. package/src/providers/acp-targets.ts +358 -4
  192. package/src/providers/amp-adapter.ts +1 -1
  193. package/src/providers/cursor-adapter.ts +1 -1
  194. package/src/providers/grok-adapter.ts +186 -0
  195. package/src/providers/index.ts +5 -1
  196. package/src/providers/pricing-sources.md +6 -0
  197. package/src/providers/reasoning-effort.ts +17 -1
  198. package/src/providers/types.ts +2 -1
  199. package/src/rbac/can.ts +4 -3
  200. package/src/rbac/legacy-policy.ts +3 -3
  201. package/src/rbac/types.ts +6 -0
  202. package/src/script-workflows/supervisor.ts +11 -2
  203. package/src/scripts-runtime/eval-harness.ts +2 -12
  204. package/src/scripts-runtime/executors/quickjs-bundle.ts +152 -0
  205. package/src/scripts-runtime/executors/quickjs-prelude.ts +285 -0
  206. package/src/scripts-runtime/executors/quickjs-runner.ts +580 -0
  207. package/src/scripts-runtime/executors/quickjs-worker.ts +81 -0
  208. package/src/scripts-runtime/executors/quickjs.ts +196 -0
  209. package/src/scripts-runtime/executors/registry.ts +2 -0
  210. package/src/scripts-runtime/executors/sourcemap.ts +79 -0
  211. package/src/scripts-runtime/script-error-hints.ts +14 -0
  212. package/src/scripts-runtime/swarm-sdk.ts +9 -2
  213. package/src/scripts-runtime/types/stdlib.d.ts +27 -8
  214. package/src/scripts-runtime/types/swarm-extension.d.ts +3 -0
  215. package/src/scripts-runtime/types/swarm-sdk.d.ts +27 -8
  216. package/src/server-user.ts +2 -20
  217. package/src/server.ts +3 -1
  218. package/src/slack/app.ts +4 -0
  219. package/src/slack/config.ts +3 -1
  220. package/src/slack/egress-scrub.ts +87 -0
  221. package/src/tests/acp-adapter.test.ts +191 -2
  222. package/src/tests/boot-scrub-sweep.test.ts +390 -0
  223. package/src/tests/budget-user-scope.test.ts +7 -21
  224. package/src/tests/check-pr-body.test.ts +149 -6
  225. package/src/tests/check-text-columns.test.ts +145 -0
  226. package/src/tests/claude-adapter-binary.test.ts +1 -1
  227. package/src/tests/claude-sdk-process.fixture.ts +13 -2
  228. package/src/tests/codex-oauth-device.test.ts +23 -37
  229. package/src/tests/codex-oauth-keep-warm.test.ts +29 -0
  230. package/src/tests/console-scrub.test.ts +141 -0
  231. package/src/tests/credential-check.test.ts +90 -0
  232. package/src/tests/db-query-denylist.test.ts +202 -0
  233. package/src/tests/db-task-read-contract.test.ts +1 -0
  234. package/src/tests/db-task-write-contract.test.ts +1 -0
  235. package/src/tests/docs-index-footprint.test.js +3 -3
  236. package/src/tests/entrypoint-acp-target-binary.test.ts +44 -1
  237. package/src/tests/events-scrub.test.ts +88 -0
  238. package/src/tests/explicit-model-validation.test.ts +81 -0
  239. package/src/tests/extensions-pre-task.test.ts +33 -1
  240. package/src/tests/fixtures/grok/acp-updates-recorded.jsonl +53 -0
  241. package/src/tests/fixtures/grok/prompt-response-meta.json +36 -0
  242. package/src/tests/fixtures/secret-corpus.ts +320 -0
  243. package/src/tests/grok-adapter.test.ts +647 -0
  244. package/src/tests/heartbeat-checklist.test.ts +44 -0
  245. package/src/tests/integration-disable-flags.test.ts +156 -0
  246. package/src/tests/kv-http.test.ts +34 -0
  247. package/src/tests/kv-tool.test.ts +274 -1
  248. package/src/tests/kv-view.test.ts +147 -0
  249. package/src/tests/mcp-user-route.test.ts +257 -15
  250. package/src/tests/memory-injection-outcome.test.ts +143 -0
  251. package/src/tests/model-tier-resolution.test.ts +76 -3
  252. package/src/tests/page-guest-session.test.ts +424 -0
  253. package/src/tests/page-proxy.test.ts +1 -1
  254. package/src/tests/page-viewer-auth.test.ts +22 -1
  255. package/src/tests/pr-body-leaks.test.ts +157 -2
  256. package/src/tests/preload.ts +10 -0
  257. package/src/tests/provider-registration.test.ts +3 -1
  258. package/src/tests/rbac-audit.test.ts +32 -0
  259. package/src/tests/rbac-mcp-admission-e2e.test.ts +4 -62
  260. package/src/tests/script-connections.test.ts +9 -0
  261. package/src/tests/script-executor-conformance.test.ts +3 -0
  262. package/src/tests/script-executor-quickjs.test.ts +442 -0
  263. package/src/tests/script-executor-registry.test.ts +6 -1
  264. package/src/tests/script-runs-http.test.ts +126 -1
  265. package/src/tests/script-runs-scrub.test.ts +275 -0
  266. package/src/tests/scripts-http.test.ts +82 -1
  267. package/src/tests/scripts-mcp-e2e.test.ts +42 -6
  268. package/src/tests/scripts-runtime.test.ts +37 -0
  269. package/src/tests/scrubbed-text-12e.test.ts +289 -0
  270. package/src/tests/sealed-key-guard.test.ts +166 -0
  271. package/src/tests/secret-canary-sweep.test.ts +958 -0
  272. package/src/tests/secret-registry.test.ts +355 -0
  273. package/src/tests/secret-rules.test.ts +230 -0
  274. package/src/tests/secret-scrubber.test.ts +317 -1
  275. package/src/tests/session-costs-golden.test.ts +17 -0
  276. package/src/tests/slack-egress-scrub.test.ts +216 -0
  277. package/src/tests/swarm-tool-result-gate.test.ts +143 -30
  278. package/src/tests/task-tools-ctx.test.ts +3 -0
  279. package/src/tests/user-token-routes.test.ts +342 -3
  280. package/src/tests/workflow-replay.test.ts +518 -0
  281. package/src/tests/workflow-scrub.test.ts +242 -0
  282. package/src/tests/workflow-system-one-decision-providers.test.ts +737 -0
  283. package/src/tools/db-query.ts +1 -1
  284. package/src/tools/inject-learning.ts +1 -1
  285. package/src/tools/kv/kv-get.ts +136 -6
  286. package/src/tools/send-task.ts +61 -17
  287. package/src/tools/utils.ts +186 -43
  288. package/src/tools/workflows/get-workflow-run.ts +3 -2
  289. package/src/types.ts +16 -1
  290. package/src/utils/console-scrub-install.ts +5 -0
  291. package/src/utils/console-scrub.ts +57 -0
  292. package/src/utils/credentials.ts +8 -0
  293. package/src/utils/page-session.ts +6 -2
  294. package/src/utils/pr-body-leaks.ts +149 -10
  295. package/src/utils/request-auth-context.ts +2 -0
  296. package/src/utils/secret-rules.generated.ts +2055 -0
  297. package/src/utils/secret-scrubber.ts +662 -36
  298. package/src/workflows/engine.ts +39 -4
  299. package/src/workflows/executors/notify.ts +6 -1
  300. package/src/workflows/executors/system-one-decision.ts +31 -12
  301. package/src/workflows/executors/system-one-openai-wire.ts +168 -0
  302. package/src/workflows/executors/system-one-providers.ts +112 -11
  303. package/src/workflows/executors/system-one-wire.ts +79 -0
  304. package/src/workflows/recovery.ts +10 -1
  305. package/src/workflows/resume.ts +62 -3
  306. package/src/workflows/retry-poller.ts +3 -0
  307. package/templates/ai-toolbox.manifest.json +2 -2
  308. package/templates/skills/agent-browser/SKILL.md +5 -5
  309. package/templates/skills/agent-browser/config.json +1 -1
  310. package/templates/skills/agent-browser/content.md +4 -4
  311. package/templates/skills/artifacts/content.md +17 -7
  312. package/templates/skills/jira-interaction/config.json +1 -1
  313. package/templates/skills/jira-interaction/content.md +56 -205
  314. package/templates/skills/linear-interaction/config.json +1 -1
  315. package/templates/skills/linear-interaction/content.md +31 -50
  316. package/templates/skills/pages/content.md +8 -4
  317. package/templates/skills/qa/content.md +2 -2
  318. package/templates/skills/workflow-iterate/content.md +4 -4
  319. package/tsconfig.json +3 -3
  320. package/dist/boot-scrub-logs-t8xg7wd7.js +0 -99
  321. package/dist/cli-0a7r5331.js +0 -168
  322. package/dist/cli-93rxw9yd.js +0 -951
  323. package/dist/cli-cvk6yzw5.js +0 -40
  324. package/dist/cli-dgnj0zcc.js +0 -40
  325. package/dist/cli-qt5wzq6v.js +0 -256
  326. package/dist/cli-v7fqehqd.js +0 -9281
  327. package/dist/cli-vbr859rz.js +0 -572
  328. package/src/be/boot-scrub-logs.ts +0 -132
@@ -7,7 +7,7 @@ var package_default;
7
7
  var init_package = __esm(() => {
8
8
  package_default = {
9
9
  name: "@desplega.ai/agent-swarm",
10
- version: "1.164.1",
10
+ version: "1.166.0",
11
11
  description: "agent-swarm.dev — an open-source operating system for AI work: a lead agent breaks goals into tasks, routes them to specialized workers such as Claude Code or Codex, runs each worker in an isolated container, and preserves shared memory, tools, schedules, and review gates so delegated work compounds across sessions.",
12
12
  keywords: [
13
13
  "agent-swarm.dev",
@@ -102,6 +102,8 @@ var init_package = __esm(() => {
102
102
  "check:extension-schema": "bun scripts/build-extension-manifest-schema.ts --check",
103
103
  "build:extension-catalog": "bun scripts/build-extension-catalog.ts",
104
104
  "check:extension-catalog": "bun scripts/build-extension-catalog.ts --check",
105
+ "build:secret-rules": "bun scripts/gen-secret-rules.ts",
106
+ "check:secret-rules": "bun scripts/gen-secret-rules.ts --check",
105
107
  "build:cli": "bun run scripts/build-cli.ts",
106
108
  "mono:build": "turbo run build",
107
109
  "mono:test": "turbo run test",
@@ -115,7 +117,9 @@ var init_package = __esm(() => {
115
117
  "e2e:codex-oauth-blob": "bun scripts/e2e/codex-oauth-blob.ts",
116
118
  "e2e:tsc": "bun tsc --noEmit -p scripts/e2e/tsconfig.json",
117
119
  prepack: "bun run build:cli",
118
- "tsc:check": "bun tsc --noEmit",
120
+ check: "bash scripts/check.sh",
121
+ "tsc:check": "tsgo --noEmit",
122
+ "tsc:check:tsc": "bun tsc --noEmit",
119
123
  "check:db-boundary": "bash scripts/check-db-boundary.sh",
120
124
  "check:test-spawn-sync": "bash scripts/check-test-spawn-sync.sh",
121
125
  "check:dep-graph": "depcruise src plugin/opencode-plugins packages/model-routing --config .dependency-cruiser.cjs",
@@ -158,6 +162,7 @@ var init_package = __esm(() => {
158
162
  "docker:build:api": "docker build -f Dockerfile -t agent-swarm-api:latest .",
159
163
  "docker:build:worker": "docker build -f Dockerfile.worker -t agent-swarm-worker:latest .",
160
164
  "docker:build:worker:slim": "docker build -f Dockerfile.worker --target worker-slim -t agent-swarm-worker:slim .",
165
+ "docker:build:ui": "docker build -f Dockerfile.ui -t agent-swarm-ui:latest .",
161
166
  "docker:run:worker": "docker run --rm -it --env-file .env.docker -p 3202:3000 -v ./logs:/logs -v ./work/shared:/workspace/shared -v ./work/worker-1:/workspace/personal agent-swarm-worker:latest",
162
167
  "docker:run:lead": "docker run --rm -it --env-file .env.docker-lead -e AGENT_ROLE=lead -p 3201:3000 -v ./logs:/logs -v ./work/shared:/workspace/shared -v ./work/lead:/workspace/personal agent-swarm-worker:latest",
163
168
  "deploy:install": "bun deploy/install.ts",
@@ -188,6 +193,7 @@ var init_package = __esm(() => {
188
193
  "@faker-js/faker": "^10.4.0",
189
194
  "@opencode-ai/plugin": "1.18.35",
190
195
  "@types/bun": "latest",
196
+ "@typescript/native-preview": "7.0.0-dev.20260707.2",
191
197
  "dependency-cruiser": "^18.0.0",
192
198
  konsistent: "1.0.0-beta.1",
193
199
  "openapi-typescript": "^7",
@@ -203,20 +209,21 @@ var init_package = __esm(() => {
203
209
  dependencies: {
204
210
  "@agentclientprotocol/sdk": "1.7.0",
205
211
  "@ai-sdk/openai": "^3.0.41",
206
- "@anthropic-ai/claude-agent-sdk": "0.3.292",
207
- "@anthropic-ai/sdk": "^0.131.0",
212
+ "@anthropic-ai/claude-agent-sdk": "0.3.293",
213
+ "@anthropic-ai/sdk": "^0.132.0",
208
214
  "@asteasolutions/zod-to-openapi": "^8.0.0",
209
215
  "@aws-sdk/client-bedrock": "3.1048.0",
210
- "@cursor/sdk": "1.0.36",
216
+ "@cursor/sdk": "1.0.37",
211
217
  "@desplega.ai/business-use": "^0.4.2",
212
218
  "@desplega.ai/localtunnel": "^2.2.0",
213
219
  "@earendil-works/pi-agent-core": "^1.0.4",
214
220
  "@earendil-works/pi-ai": "^1.0.4",
215
221
  "@earendil-works/pi-coding-agent": "^1.0.4",
216
222
  "@inkjs/ui": "^2.0.0",
223
+ "@jitl/quickjs-singlefile-mjs-release-sync": "0.32.0",
217
224
  "@linear/sdk": "^77.0.0",
218
225
  "@modelcontextprotocol/sdk": "1.29.0",
219
- "@openai/codex": "0.160.1",
226
+ "@openai/codex": "0.161.0",
220
227
  "@opencode-ai/sdk": "^1.18.35",
221
228
  "@openfort/openfort-node": "^0.9.1",
222
229
  "@opentelemetry/api": "^1.9.1",
@@ -240,6 +247,7 @@ var init_package = __esm(() => {
240
247
  ink: "^6.5.1",
241
248
  oauth4webapi: "^3.8.5",
242
249
  openai: "^6.22.0",
250
+ "quickjs-emscripten-core": "0.32.0",
243
251
  react: "19.2.3",
244
252
  "react-devtools-core": "^7.0.1",
245
253
  "sqlite-vec": "^0.1.9",
@@ -13,17 +13,18 @@ import {
13
13
  getNextResumeGeneration,
14
14
  getPinCandidateAgent,
15
15
  getResumeGeneration,
16
+ mintToken,
16
17
  poolTaskRunsOnHarness,
17
18
  recoverIncompleteRuns,
18
19
  repointTrackerSyncBySwarmId,
19
20
  resolveLeadOnlyRecoveryAssignment
20
- } from "./cli-a9bw0xxt.js";
21
+ } from "./cli-df56tqdw.js";
21
22
  import {
22
23
  isMultiRuntimeEnabled
23
24
  } from "./cli-re8z5p8p.js";
24
25
  import {
25
26
  createApprovalFollowUpTask
26
- } from "./cli-j0tmc908.js";
27
+ } from "./cli-jvj6a0cv.js";
27
28
  import {
28
29
  MAX_EMPTY_POLLS,
29
30
  assignUnassignedTaskPending,
@@ -60,7 +61,7 @@ import {
60
61
  getUnassignedPoolTasks,
61
62
  hasNonTerminalResumeChild,
62
63
  hasPendingSteering,
63
- init_db,
64
+ init_db1 as init_db,
64
65
  init_steering,
65
66
  isAgentEligibleForTask,
66
67
  isPoolAffinityEnforcementEnabled,
@@ -74,7 +75,11 @@ import {
74
75
  settleSupersededTaskDependents,
75
76
  supersedeTask,
76
77
  updateAgentStatus
77
- } from "./cli-0wn3ypqv.js";
78
+ } from "./cli-yshaazs1.js";
79
+ import {
80
+ TERMINAL_TASK_STATUSES,
81
+ init_types
82
+ } from "./cli-xvdgasgy.js";
78
83
  import {
79
84
  init_registry,
80
85
  init_resolver,
@@ -88,7 +93,7 @@ import {
88
93
  import {
89
94
  init_secret_scrubber,
90
95
  scrubSecrets
91
- } from "./cli-qt5wzq6v.js";
96
+ } from "./cli-wt7ccy4r.js";
92
97
 
93
98
  // src/be/approval-sweeps.ts
94
99
  init_db();
@@ -157,10 +162,48 @@ async function timeoutExpiredApprovalRequests(now = new Date) {
157
162
  return { timedOut };
158
163
  }
159
164
 
165
+ // src/be/connector-codes.ts
166
+ init_db();
167
+ import { createHash, randomBytes } from "node:crypto";
168
+ var CONNECTOR_CODE_TTL_MS = 10 * 60 * 1000;
169
+ var CONNECTOR_CODE_RETENTION_MS = 60 * 60 * 1000;
170
+ var DEFAULT_CONNECTOR_CODE_LABEL = "ChatGPT connector";
171
+ function sha256Hex(input) {
172
+ return createHash("sha256").update(input).digest("hex");
173
+ }
174
+ async function createConnectorCode(userId, label, actor, now = new Date) {
175
+ const code = randomBytes(32).toString("base64url");
176
+ const expiresAt = new Date(now.getTime() + CONNECTOR_CODE_TTL_MS).toISOString();
177
+ await getDbClient().run(`INSERT INTO connector_codes
178
+ (code_hash, user_id, label, actor_kind, actor_id, created_at, expires_at)
179
+ VALUES (?, ?, ?, ?, ?, ?, ?)`, [sha256Hex(code), userId, label, actor.kind, actor.id, now.toISOString(), expiresAt]);
180
+ return { code, expiresAt };
181
+ }
182
+ async function exchangeConnectorCode(code, now = new Date) {
183
+ const nowIso = now.toISOString();
184
+ return getDbClient().transaction(async (tx) => {
185
+ const row = await tx.get(`UPDATE connector_codes SET used_at = ?
186
+ WHERE code_hash = ? AND used_at IS NULL AND expires_at > ?
187
+ RETURNING user_id, label, actor_kind, actor_id`, [nowIso, sha256Hex(code), nowIso]);
188
+ if (!row)
189
+ return null;
190
+ const { plaintext } = await mintToken(row.user_id, row.label, { kind: row.actor_kind, id: row.actor_id }, { source: "connector_exchange" });
191
+ return { token: plaintext, userId: row.user_id };
192
+ });
193
+ }
194
+ async function deleteExpiredConnectorCodes(now = new Date) {
195
+ const cutoff = new Date(now.getTime() - CONNECTOR_CODE_RETENTION_MS).toISOString();
196
+ const result = await getDbClient().run("DELETE FROM connector_codes WHERE expires_at < ?", [
197
+ cutoff
198
+ ]);
199
+ return result.changes;
200
+ }
201
+
160
202
  // src/heartbeat/heartbeat.ts
161
203
  init_db();
162
204
  init_steering();
163
205
  init_resolver();
206
+ init_types();
164
207
  init_env_flag();
165
208
  init_secret_scrubber();
166
209
 
@@ -359,7 +402,8 @@ async function codeLevelTriage() {
359
402
  staleOfferedTasks: 0,
360
403
  abandonedDraftTasks: 0,
361
404
  approvalAutoCancelled: 0,
362
- approvalTimedOut: 0
405
+ approvalTimedOut: 0,
406
+ connectorCodes: 0
363
407
  }
364
408
  };
365
409
  findings.staleCleanup.staleRuntimes = (await expireStaleRuntimeInstances()).expired;
@@ -664,8 +708,8 @@ async function runRebootSweep() {
664
708
  }
665
709
  const existingRetry = await getDbClient().get(`SELECT id FROM agent_tasks
666
710
  WHERE parentTaskId = ?
667
- AND status NOT IN ('completed', 'failed', 'cancelled')
668
- LIMIT 1`, [task.id]);
711
+ AND status NOT IN (${TERMINAL_TASK_STATUSES.map(() => "?").join(", ")})
712
+ LIMIT 1`, [task.id, ...TERMINAL_TASK_STATUSES]);
669
713
  if (!existingRetry) {
670
714
  try {
671
715
  let preferredAgentId;
@@ -961,6 +1005,12 @@ async function cleanupStaleResources(findings) {
961
1005
  console.error("[heartbeat] approval auto-cancel sweep failed:", err);
962
1006
  findings.staleCleanup.approvalAutoCancelled = 0;
963
1007
  }
1008
+ try {
1009
+ findings.staleCleanup.connectorCodes = await deleteExpiredConnectorCodes();
1010
+ } catch (err) {
1011
+ console.error("[heartbeat] connector code cleanup failed:", err);
1012
+ findings.staleCleanup.connectorCodes = 0;
1013
+ }
964
1014
  }
965
1015
  function isEffectivelyEmpty(content) {
966
1016
  const lines = content.split(`
@@ -1122,8 +1172,8 @@ async function checkHeartbeatChecklist() {
1122
1172
  const existing = await getDbClient().get(`SELECT id FROM agent_tasks
1123
1173
  WHERE agentId = ?
1124
1174
  AND taskType = 'heartbeat-checklist'
1125
- AND status NOT IN ('completed', 'failed', 'cancelled')
1126
- LIMIT 1`, [lead.id]);
1175
+ AND status NOT IN (${TERMINAL_TASK_STATUSES.map(() => "?").join(", ")})
1176
+ LIMIT 1`, [lead.id, ...TERMINAL_TASK_STATUSES]);
1127
1177
  if (existing)
1128
1178
  return;
1129
1179
  const systemStatus = await gatherSystemStatus();
@@ -1170,7 +1220,8 @@ async function runHeartbeatSweep() {
1170
1220
  staleOfferedTasks: 0,
1171
1221
  abandonedDraftTasks: 0,
1172
1222
  approvalAutoCancelled: 0,
1173
- approvalTimedOut: 0
1223
+ approvalTimedOut: 0,
1224
+ connectorCodes: 0
1174
1225
  }
1175
1226
  };
1176
1227
  cleanupOnlyFindings.staleCleanup.staleRuntimes = (await expireStaleRuntimeInstances()).expired;
@@ -1220,9 +1271,10 @@ function logFindings(findings) {
1220
1271
  staleOfferedTasks,
1221
1272
  abandonedDraftTasks,
1222
1273
  approvalAutoCancelled,
1223
- approvalTimedOut
1274
+ approvalTimedOut,
1275
+ connectorCodes
1224
1276
  } = findings.staleCleanup;
1225
- const totalCleanup = sessions + reviewingTasks + mentionProcessing + inboxProcessing + workflowRuns + approvalAutoCancelled + approvalTimedOut;
1277
+ const totalCleanup = sessions + reviewingTasks + mentionProcessing + inboxProcessing + workflowRuns + approvalAutoCancelled + approvalTimedOut + connectorCodes;
1226
1278
  if (totalCleanup > 0) {
1227
1279
  parts.push(`stale_cleanup=${totalCleanup}`);
1228
1280
  }
@@ -1267,8 +1319,8 @@ async function createBootTriageTask() {
1267
1319
  const existing = await getDbClient().get(`SELECT id FROM agent_tasks
1268
1320
  WHERE agentId = ?
1269
1321
  AND taskType = 'boot-triage'
1270
- AND status NOT IN ('completed', 'failed', 'cancelled')
1271
- LIMIT 1`, [lead.id]);
1322
+ AND status NOT IN (${TERMINAL_TASK_STATUSES.map(() => "?").join(", ")})
1323
+ LIMIT 1`, [lead.id, ...TERMINAL_TASK_STATUSES]);
1272
1324
  if (existing)
1273
1325
  return;
1274
1326
  const systemStatus = await gatherSystemStatus({ isBootTriage: true });
@@ -1318,4 +1370,4 @@ function stopHeartbeatChecklist() {
1318
1370
  console.log("[Heartbeat] Checklist stopped");
1319
1371
  }
1320
1372
  }
1321
- export { getBootEpochMs, runRebootSweep, getRebootAffectedTasks, checkHeartbeatChecklist, runHeartbeatSweep, startHeartbeat, stopHeartbeat };
1373
+ export { DEFAULT_CONNECTOR_CODE_LABEL, createConnectorCode, exchangeConnectorCode, getBootEpochMs, runRebootSweep, getRebootAffectedTasks, checkHeartbeatChecklist, runHeartbeatSweep, startHeartbeat, stopHeartbeat };
@@ -4,17 +4,17 @@ import {
4
4
  import {
5
5
  clampContextPercent,
6
6
  getContextWindowSize
7
- } from "./cli-6behs2bt.js";
7
+ } from "./cli-32bca7nr.js";
8
8
  import {
9
9
  applyReasoningEffort
10
- } from "./cli-cn53e7vc.js";
10
+ } from "./cli-ttbsse3f.js";
11
11
  import {
12
12
  swarmRuntimeInstanceId
13
13
  } from "./cli-re8z5p8p.js";
14
14
  import {
15
15
  DEFAULT_MODEL_TIER_MAP,
16
16
  init_types
17
- } from "./cli-v0e7jpr5.js";
17
+ } from "./cli-xvdgasgy.js";
18
18
  import {
19
19
  init_session_templates
20
20
  } from "./cli-g5erf0zt.js";
@@ -30,12 +30,12 @@ import {
30
30
  import {
31
31
  cursorCatalogRef,
32
32
  init_src
33
- } from "./cli-g3qgrzck.js";
33
+ } from "./cli-zsh093hk.js";
34
34
  import {
35
35
  init_secret_scrubber,
36
36
  registerVolatileSecret,
37
37
  scrubSecrets
38
- } from "./cli-qt5wzq6v.js";
38
+ } from "./cli-wt7ccy4r.js";
39
39
  import {
40
40
  __require
41
41
  } from "./cli-bc05qbss.js";
@@ -50,7 +50,7 @@ import { tmpdir } from "node:os";
50
50
  import { join } from "node:path";
51
51
  init_env_flag();
52
52
  init_secret_scrubber();
53
- var CURSOR_SDK_VERSION = "1.0.36";
53
+ var CURSOR_SDK_VERSION = "1.0.37";
54
54
  var CURSOR_MCP_SERVER_NAME = "agent-swarm";
55
55
  var NATIVE_SYSTEM_PROMPT_ENV = "CURSOR_NATIVE_SYSTEM_PROMPT";
56
56
  var FIRST_MESSAGE_TEMPLATE = "system.agent.cursor.first_message";
@@ -58,7 +58,7 @@ function checkCursorCredentials(env) {
58
58
  return env.CURSOR_API_KEY?.trim() ? { ready: true, missing: [], satisfiedBy: "env" } : { ready: false, missing: ["CURSOR_API_KEY"], hint: "Set CURSOR_API_KEY for cursor." };
59
59
  }
60
60
  async function liveTestCursorKey(apiKey) {
61
- const { Cursor } = await import("./index-fdk1t4d6.js");
61
+ const { Cursor } = await import("./index-n0rxa4ca.js");
62
62
  try {
63
63
  await Cursor.me({ apiKey });
64
64
  return { ok: true };
@@ -78,7 +78,7 @@ async function listCursorModels(apiKey) {
78
78
  if (modelListCache?.key === apiKey && Date.now() - modelListCache.at < MODEL_LIST_TTL_MS) {
79
79
  return modelListCache.models;
80
80
  }
81
- const { Cursor } = await import("./index-fdk1t4d6.js");
81
+ const { Cursor } = await import("./index-n0rxa4ca.js");
82
82
  const models = await Cursor.models.list({ apiKey });
83
83
  modelListCache = { key: apiKey, at: Date.now(), models };
84
84
  return models;
@@ -452,7 +452,7 @@ class CursorAdapter {
452
452
  if (!apiKey)
453
453
  throw new Error("cursor requires CURSOR_API_KEY");
454
454
  registerVolatileSecret(apiKey, "CURSOR_API_KEY");
455
- const { Agent, JsonlLocalAgentStore } = await import("./index-fdk1t4d6.js");
455
+ const { Agent, JsonlLocalAgentStore } = await import("./index-n0rxa4ca.js");
456
456
  const modelId = config.model || DEFAULT_MODEL_TIER_MAP.cursor.regular;
457
457
  const effort = applyReasoningEffort("cursor", modelId, config.reasoningEffort);
458
458
  const requested = effort.kind === "cursor-effort" ? effort.reasoningEffort : undefined;
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  PermissionVerbSchema,
3
3
  init_rbac
4
- } from "./cli-1wd1n2ya.js";
4
+ } from "./cli-rfphkzh5.js";
5
5
  import {
6
6
  getDb,
7
7
  getDbClient,
8
- init_db
9
- } from "./cli-0wn3ypqv.js";
8
+ init_db1 as init_db
9
+ } from "./cli-yshaazs1.js";
10
10
  import {
11
11
  init_env_flag,
12
12
  isEnvFlagEnabled
@@ -17,10 +17,10 @@ import {
17
17
  CONTEXT_FORMULA,
18
18
  clampContextPercent,
19
19
  computeContextUsedUnified
20
- } from "./cli-6behs2bt.js";
20
+ } from "./cli-32bca7nr.js";
21
21
  import {
22
22
  summarizeSession
23
- } from "./cli-bz1gbac9.js";
23
+ } from "./cli-p4ztb80h.js";
24
24
  import {
25
25
  hasCodexOAuthPoolSlots
26
26
  } from "./cli-bqjfjex4.js";
@@ -29,7 +29,7 @@ import {
29
29
  } from "./cli-2pdaysab.js";
30
30
  import {
31
31
  applyReasoningEffort
32
- } from "./cli-cn53e7vc.js";
32
+ } from "./cli-ttbsse3f.js";
33
33
  import {
34
34
  buildRatingsFromLlm,
35
35
  fetchRetrievalsForTask,
@@ -51,24 +51,24 @@ import {
51
51
  CodexOAuthRefreshError,
52
52
  credentialsToAuthJson,
53
53
  getValidCodexOAuth
54
- } from "./cli-2c8eky5y.js";
54
+ } from "./cli-feh3dkah.js";
55
55
  import {
56
56
  DEFAULT_MODEL_TIER_MAP,
57
57
  init_types
58
- } from "./cli-v0e7jpr5.js";
58
+ } from "./cli-xvdgasgy.js";
59
59
  import {
60
60
  init_runtime_model_catalog,
61
61
  init_src,
62
62
  runtimeCatalogModel
63
- } from "./cli-g3qgrzck.js";
63
+ } from "./cli-zsh093hk.js";
64
64
  import {
65
65
  init_package,
66
66
  package_default
67
- } from "./cli-1d3w4xm3.js";
67
+ } from "./cli-4r1sjfc4.js";
68
68
  import {
69
69
  init_secret_scrubber,
70
70
  scrubSecrets
71
- } from "./cli-qt5wzq6v.js";
71
+ } from "./cli-wt7ccy4r.js";
72
72
  import {
73
73
  __require
74
74
  } from "./cli-bc05qbss.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  init_package,
3
3
  package_default
4
- } from "./cli-1d3w4xm3.js";
4
+ } from "./cli-4r1sjfc4.js";
5
5
 
6
6
  // src/commands/shared/client-config.ts
7
7
  init_package();
@@ -5,12 +5,12 @@ import {
5
5
  instantFlush,
6
6
  requestSlackThreadSteering,
7
7
  wasEventSeen
8
- } from "./cli-xfb7333f.js";
8
+ } from "./cli-dw2q9f7g.js";
9
9
  import {
10
10
  enrichSlackUserEmail,
11
11
  resolveSlackUserId,
12
12
  rewriteSlackMentions
13
- } from "./cli-4cn19jvn.js";
13
+ } from "./cli-x7kpr72a.js";
14
14
  import {
15
15
  TaskCreationBlockedError,
16
16
  broadcastMatches,
@@ -23,14 +23,14 @@ import {
23
23
  hasOtherUserMention,
24
24
  notifySlackFileFailures,
25
25
  routeMessage
26
- } from "./cli-a9bw0xxt.js";
26
+ } from "./cli-df56tqdw.js";
27
27
  import {
28
28
  ackSlackMessage,
29
29
  buildTreeBlocks,
30
30
  ensureSlackThreadTree,
31
31
  isSlackRenderV2Enabled,
32
32
  registerTreeMessage
33
- } from "./cli-4drstbb9.js";
33
+ } from "./cli-ecknp7p1.js";
34
34
  import {
35
35
  getAgentById,
36
36
  getAgentWorkingOnThread,
@@ -39,11 +39,11 @@ import {
39
39
  getMostRecentTaskInThread,
40
40
  getTasksByAgentId,
41
41
  init_context_key,
42
- init_db,
42
+ init_db1 as init_db,
43
43
  isExtensionAgent,
44
44
  reactionName,
45
45
  slackContextKey
46
- } from "./cli-0wn3ypqv.js";
46
+ } from "./cli-yshaazs1.js";
47
47
  import {
48
48
  init_resolver,
49
49
  resolveTemplate
@@ -61,11 +61,11 @@ import {
61
61
  import {
62
62
  init_event_bus,
63
63
  workflowEventBus
64
- } from "./cli-xxz89c2n.js";
64
+ } from "./cli-mb75wpxf.js";
65
65
  import {
66
66
  init_secret_scrubber,
67
67
  scrubSecrets
68
- } from "./cli-qt5wzq6v.js";
68
+ } from "./cli-wt7ccy4r.js";
69
69
  import {
70
70
  __callDispose,
71
71
  __using