@desplega.ai/agent-swarm 2.7.5 → 2.7.6

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 (206) hide show
  1. package/dist/{acp-adapter-g3ads55s.js → acp-adapter-bp91d37f.js} +4 -4
  2. package/dist/{actions-zwfykqqk.js → actions-yj0eeaqh.js} +18 -17
  3. package/dist/{amp-adapter-z3s0ssdt.js → amp-adapter-4pg9h34q.js} +1 -1
  4. package/dist/{app-vmp4fgep.js → app-909e97cr.js} +3 -3
  5. package/dist/{assistant-vwde653f.js → assistant-qdyb5fyy.js} +24 -22
  6. package/dist/{boot-reembed-375t7tbk.js → boot-reembed-fk0s9z18.js} +1 -1
  7. package/dist/{boot-reembed-gq9rcpnj.js → boot-reembed-gs1rzrnh.js} +1 -1
  8. package/dist/{boot-scrub-sweep-nd938kyf.js → boot-scrub-sweep-4qfd4kfx.js} +2 -2
  9. package/dist/{boot-seeds-aykx51v3.js → boot-seeds-yr00k13d.js} +4 -4
  10. package/dist/{boxd-k1j26g3h.js → boxd-vdmfssd9.js} +4 -4
  11. package/dist/{claude-adapter-8j4hm099.js → claude-adapter-qta1f1xn.js} +3 -3
  12. package/dist/{claude-managed-setup-0wyynpn1.js → claude-managed-setup-sc6j4dm0.js} +1 -1
  13. package/dist/{claude-sdk-session-q6wj5hmy.js → claude-sdk-session-zgrz6yvc.js} +9169 -9070
  14. package/dist/{cli-gjr2y2xk.js → cli-0agcv1v5.js} +4 -1
  15. package/dist/{cli-vqypxzh4.js → cli-0at8w34w.js} +7 -7
  16. package/dist/{cli-7a42nfy0.js → cli-0qatpy8q.js} +3 -3
  17. package/dist/{cli-p599f1qm.js → cli-0yv5z2pg.js} +1 -1
  18. package/dist/{cli-0gey5fzy.js → cli-386tyxxg.js} +2 -2
  19. package/dist/{cli-5pag6rmn.js → cli-3ypk9vk1.js} +1 -1
  20. package/dist/{cli-qxnf8z2z.js → cli-436532ck.js} +2 -2
  21. package/dist/{cli-z8eh3ex8.js → cli-4necwtsv.js} +4 -4
  22. package/dist/{cli-zh3fp8v2.js → cli-54t00gt8.js} +1 -1
  23. package/dist/{cli-hf6zt5m6.js → cli-69szn7w7.js} +17 -1
  24. package/dist/{cli-nn4d8dne.js → cli-89knwags.js} +2 -2
  25. package/dist/{cli-spknvxbq.js → cli-8bc1w0tw.js} +10 -10
  26. package/dist/{cli-rqkxrmgw.js → cli-8snvgs5r.js} +38 -13
  27. package/dist/{cli-rhw40jgb.js → cli-bjb3z51z.js} +2 -2
  28. package/dist/{cli-xtjhfmpc.js → cli-c60vetmm.js} +1 -1
  29. package/dist/{cli-0731hvbw.js → cli-decfb6v8.js} +2 -2
  30. package/dist/{cli-bhjt02p8.js → cli-drr5v6av.js} +1 -1
  31. package/dist/{cli-fqzx7gwa.js → cli-dxae2yg7.js} +2 -2
  32. package/dist/{cli-tqgg40ek.js → cli-e3r2neck.js} +8 -7
  33. package/dist/{cli-zppwg9p9.js → cli-ekwks2vs.js} +1 -1
  34. package/dist/{cli-nzxr556s.js → cli-es6va8jk.js} +26 -26
  35. package/dist/{cli-a47xy8eq.js → cli-faxe6thg.js} +1 -1
  36. package/dist/cli-gdhpcbhf.js +55 -0
  37. package/dist/{cli-82jg7fp9.js → cli-he5nxaa8.js} +1 -1
  38. package/dist/{cli-8veytvbh.js → cli-he9wchme.js} +1 -1
  39. package/dist/{cli-pywf3eh5.js → cli-hgaazk69.js} +1 -1
  40. package/dist/{cli-0bxqnvq9.js → cli-hr2e2fft.js} +28 -6
  41. package/dist/{cli-1ayk1eas.js → cli-k2gzwsj2.js} +135 -26
  42. package/dist/{cli-xbkdm710.js → cli-kqdg1bsb.js} +3 -3
  43. package/dist/cli-m2z8jagn.js +12078 -0
  44. package/dist/{cli-g61qxmge.js → cli-m48g6p95.js} +3 -3
  45. package/dist/{cli-7wspm5gm.js → cli-nhrvpaj7.js} +20 -4
  46. package/dist/{cli-afrrppsw.js → cli-nwj0ee2w.js} +2 -2
  47. package/dist/{cli-3h4nhjn8.js → cli-p5gp8pcx.js} +9 -7
  48. package/dist/{cli-rm6hqj3z.js → cli-pd7vagab.js} +33 -139
  49. package/dist/{cli-mjzynrse.js → cli-q0k1w5zd.js} +1 -1
  50. package/dist/{cli-8hs41zy2.js → cli-rmmmrjkd.js} +1 -1
  51. package/dist/{cli-kg8hchyg.js → cli-sa02jsqt.js} +1 -1
  52. package/dist/{cli-1338796d.js → cli-shpbx5ee.js} +142 -98
  53. package/dist/{cli-82ae98pz.js → cli-svj5090z.js} +2 -2
  54. package/dist/{cli-bnz7a7qf.js → cli-vvpx3gsx.js} +1 -1
  55. package/dist/{cli-mmwm7zbf.js → cli-w6dt9ged.js} +1 -1
  56. package/dist/{cli-wvaawacd.js → cli-waqbxg08.js} +5230 -66
  57. package/dist/{cli-j3jvnpe8.js → cli-wp9sp1qb.js} +1 -1
  58. package/dist/{cli-nmbmy64z.js → cli-xbbndvjy.js} +3 -3
  59. package/dist/{cli-vbyfwh92.js → cli-xds5f77d.js} +2 -2
  60. package/dist/{cli-7wcyk2s5.js → cli-xnqgpshy.js} +1 -1
  61. package/dist/{cli-rpm2sgv0.js → cli-xnrwazav.js} +19 -2
  62. package/dist/{cli-gf5hbmdr.js → cli-yjdgea32.js} +3 -3
  63. package/dist/{cli-mry0qzym.js → cli-yn4kxs06.js} +123 -10
  64. package/dist/{cli-hn9hxmz9.js → cli-yx4kfngt.js} +1 -1
  65. package/dist/{cli-y24sc29k.js → cli-yy3rhsdw.js} +30 -8
  66. package/dist/{cli-6s7vdcta.js → cli-zbbwez0r.js} +4 -4
  67. package/dist/{cli-z6jkx23q.js → cli-zm72anhg.js} +9 -9
  68. package/dist/cli.js +22 -21
  69. package/dist/{codex-adapter-q6k3gnyg.js → codex-adapter-ayd1fb6h.js} +2 -2
  70. package/dist/{codex-session-runner-3mwmk3d9.js → codex-session-runner-jesa32xc.js} +2 -2
  71. package/dist/{commands-evrenjn9.js → commands-hanewgf2.js} +9 -3
  72. package/dist/{controller-xjp8vswh.js → controller-dt1n3c1q.js} +8 -3
  73. package/dist/{controllers-connect-pp5jnxvc.js → controllers-connect-xx8x64n5.js} +20 -19
  74. package/dist/{cursor-adapter-yf47w4t0.js → cursor-adapter-9s4dwwdw.js} +1 -1
  75. package/dist/{db-zxpw6aht.js → db-3vttcbv4.js} +3 -3
  76. package/dist/{db-rgfsh91f.js → db-9dv0g1ab.js} +11 -3
  77. package/dist/{devtools-82fzqra8.js → devtools-qxfgbsqz.js} +1 -1
  78. package/dist/{dispatcher-smasgws7.js → dispatcher-tx9hd1sv.js} +17 -16
  79. package/dist/{docker-rrjhaqt9.js → docker-c1a3gqmf.js} +89 -22
  80. package/dist/{dsh-adapter-ftyy8dnp.js → dsh-adapter-007y4ejs.js} +1 -1
  81. package/dist/{e2b-qcaj675y.js → e2b-a19d28rz.js} +2 -2
  82. package/dist/{e2b-w1p0bnpm.js → e2b-we6hs6q5.js} +4 -4
  83. package/dist/{easter-egg-3d-yyts7p16.js → easter-egg-3d-rgbrqb8s.js} +1 -1
  84. package/dist/{embedding-space-1z0mbg95.js → embedding-space-ny1e2940.js} +6 -6
  85. package/dist/{embeddings-ygeg7tm7.js → embeddings-2t386t13.js} +1 -1
  86. package/dist/{execute-14qhqp4d.js → execute-pksh0ceh.js} +1 -1
  87. package/dist/{external-channel-ttgrs3sx.js → external-channel-phgmhmd7.js} +2 -2
  88. package/dist/{fx-adapter-gt6pncj2.js → fx-adapter-fy8rr921.js} +5 -5
  89. package/dist/{google-generative-ai-yvmdxyxa.js → google-generative-ai-8y3m3k4b.js} +1 -1
  90. package/dist/{google-vertex-jrtdh9gs.js → google-vertex-w3v98n7b.js} +1 -1
  91. package/dist/{grok-adapter-sm4m5k4g.js → grok-adapter-q0abvpaj.js} +5 -5
  92. package/dist/handlers-by3sfxyx.js +32 -0
  93. package/dist/{heartbeat-qahz4p62.js → heartbeat-kadyek8p.js} +20 -19
  94. package/dist/{hook-kj3d398m.js → hook-5zs3msf6.js} +2 -2
  95. package/dist/{hook-4fd5wq5w.js → hook-9k551xnj.js} +2 -2
  96. package/dist/{http-1ted0j1k.js → http-mhz9vw1f.js} +213 -80
  97. package/dist/index-4f2pvxae.js +37 -0
  98. package/dist/index-98gz7tmp.js +30 -0
  99. package/dist/{index-5rk6rfzr.js → index-fvzke5kx.js} +1 -1
  100. package/dist/index-k08z2cak.js +33 -0
  101. package/dist/{index-yqhz88yy.js → index-pxn30mse.js} +8 -8
  102. package/dist/{index-6rq3r5zb.js → index-q361cg2f.js} +1 -1
  103. package/dist/{index-7v51awbn.js → index-rvr00sg7.js} +20 -13
  104. package/dist/{index-q4b917zs.js → index-vdygbq10.js} +1 -1
  105. package/dist/{keepalive-6cf311t5.js → keepalive-w56f32cg.js} +3 -3
  106. package/dist/{lead-fjy418cw.js → lead-enq35nqp.js} +31 -30
  107. package/dist/{maintenance-a4bm1bmt.js → maintenance-7mdgxcea.js} +1 -1
  108. package/dist/{oauth-refresh-sweep-3h0dfw1k.js → oauth-refresh-sweep-29txy9vk.js} +2 -2
  109. package/dist/{onboard-myn5hraa.js → onboard-kpsrkarj.js} +4 -4
  110. package/dist/{opencode-adapter-p2nkb5am.js → opencode-adapter-j25vm3rr.js} +3 -3
  111. package/dist/{otel-impl-a1a0ef6b.js → otel-impl-6kkct7a8.js} +1 -1
  112. package/dist/{pi-mono-adapter-rzmpb72a.js → pi-mono-adapter-exhkzhn2.js} +4 -4
  113. package/dist/{pricing-refresh-83drrnxj.js → pricing-refresh-n2x7jh6k.js} +3 -3
  114. package/dist/{rbac-roles-s8y6ecb5.js → rbac-roles-81ypx6es.js} +1 -1
  115. package/dist/{rbac-roles-0fb6e7pj.js → rbac-roles-b5htkjby.js} +2 -2
  116. package/dist/{render-v2-twmbgrz4.js → render-v2-qn6jmpk4.js} +3 -3
  117. package/dist/{resume-zfqc36xj.js → resume-wd30wx23.js} +6 -6
  118. package/dist/{runtime-qwggdpqr.js → runtime-4hsg7h60.js} +1 -1
  119. package/dist/{session-access-sc9pn9da.js → session-access-5qvfevhk.js} +4 -4
  120. package/dist/{session-source-backfill-qh07xr8g.js → session-source-backfill-n1czavbr.js} +2 -2
  121. package/dist/{setup-4fr0m7a1.js → setup-dnb56qy5.js} +3 -3
  122. package/dist/{virtual-modules-fh4ha15b.js → virtual-modules-76xxv9fs.js} +2 -2
  123. package/dist/{work-objects-0wr8zxct.js → work-objects-4n21tfkm.js} +20 -19
  124. package/dist/{worker-follow-up-ktyyazyp.js → worker-follow-up-77hvzxww.js} +17 -16
  125. package/dist/{worker-0c5tyzqe.js → worker-gg1576j3.js} +31 -30
  126. package/openapi.json +93 -1
  127. package/package.json +8 -7
  128. package/src/be/db/script-runs.ts +23 -0
  129. package/src/be/db/tasks/read.ts +122 -3
  130. package/src/be/db-client.ts +8 -5
  131. package/src/be/db.ts +15 -4
  132. package/src/be/memory/providers/sqlite-store.ts +49 -12
  133. package/src/be/migrations/260_runtime_pool_cache.sql +20 -0
  134. package/src/be/migrations/262_session_visibility_indexes.sql +18 -0
  135. package/src/be/migrations/263_task_list_filter_index.sql +11 -0
  136. package/src/be/migrations/264_slack_thread_cover_index.sql +9 -0
  137. package/src/be/migrations/266_script_runs_source_task.sql +11 -0
  138. package/src/be/runtime-pools/cache-cleanup.ts +109 -0
  139. package/src/be/runtime-pools/db.ts +65 -6
  140. package/src/be/runtime-pools/remote-controller.ts +5 -0
  141. package/src/be/runtime-pools/supervisor.ts +33 -2
  142. package/src/be/scripts/typecheck.ts +22 -0
  143. package/src/be/seed-scripts/catalog/task-failure-audit.ts +5 -1
  144. package/src/commands/controller.ts +4 -0
  145. package/src/commands/entrypoint-api-readiness.ts +74 -0
  146. package/src/http/index.ts +1 -1
  147. package/src/http/list-total-cache.ts +14 -7
  148. package/src/http/memory.ts +38 -9
  149. package/src/http/script-runs.ts +174 -5
  150. package/src/http/status.ts +10 -2
  151. package/src/http/tasks.ts +4 -2
  152. package/src/providers/amp-adapter.ts +1 -1
  153. package/src/providers/fx-adapter.ts +1 -1
  154. package/src/runtime-providers/controller-protocol.ts +14 -1
  155. package/src/runtime-providers/controller.ts +5 -0
  156. package/src/runtime-providers/docker.ts +108 -23
  157. package/src/runtime-providers/types.ts +16 -0
  158. package/src/script-workflows/workflow-ctx.ts +8 -0
  159. package/src/scripts-runtime/types/stdlib.d.ts +22 -0
  160. package/src/scripts-runtime/types/swarm-sdk.d.ts +22 -0
  161. package/src/server-user.ts +1 -0
  162. package/src/slack/commands.ts +5 -1
  163. package/src/slack/handlers.ts +37 -2
  164. package/src/slack/left-threads.ts +27 -4
  165. package/src/tasks/follow-up-redelegation-guard.ts +155 -0
  166. package/src/tests/claude-artifacts-read-script.test.ts +209 -0
  167. package/src/tests/db-client.test.ts +21 -0
  168. package/src/tests/db-task-read-contract.test.ts +8 -2
  169. package/src/tests/db-task-write-contract.test.ts +5 -1
  170. package/src/tests/entrypoint-api-readiness.test.ts +416 -210
  171. package/src/tests/explicit-model-validation.test.ts +14 -8
  172. package/src/tests/follow-up-redelivery-guard.test.ts +432 -202
  173. package/src/tests/list-total-cache.test.ts +27 -2
  174. package/src/tests/memory-fts-populate.test.ts +11 -9
  175. package/src/tests/memory-retrieval-purge.test.ts +80 -0
  176. package/src/tests/migration-260-runtime-pool-cache.test.ts +118 -0
  177. package/src/tests/query-audit-plans.test.ts +27 -0
  178. package/src/tests/runtime-cache-cleanup.test.ts +367 -0
  179. package/src/tests/runtime-e2b-pools.test.ts +41 -0
  180. package/src/tests/runtime-pools-db.test.ts +98 -0
  181. package/src/tests/runtime-pools-http.test.ts +29 -0
  182. package/src/tests/runtime-providers-docker.test.ts +253 -0
  183. package/src/tests/runtime-remote-controller.test.ts +66 -2
  184. package/src/tests/runtime-supervisor.test.ts +66 -2
  185. package/src/tests/script-connections.test.ts +11 -0
  186. package/src/tests/script-runs-http.test.ts +684 -2
  187. package/src/tests/seed-scripts.test.ts +26 -0
  188. package/src/tests/slack-leave-thread.test.ts +145 -5
  189. package/src/tests/slack-render-v2-query-plans.test.ts +24 -2
  190. package/src/tests/status.test.ts +11 -0
  191. package/src/tests/tasks-readable-row.test.ts +155 -0
  192. package/src/tools/send-task.ts +35 -47
  193. package/src/tools/slack-leave-thread.ts +1 -1
  194. package/src/tools/task-dedup.ts +45 -21
  195. package/src/types.ts +38 -0
  196. package/templates/skills/composio-google-docs/content.md +10 -0
  197. package/templates/skills/script-workflows/content.md +19 -1
  198. package/templates/skills/swarm-docs/content.md +1 -0
  199. package/templates/skills/swarm-scripts/SKILL.md +2 -0
  200. package/templates/skills/swarm-scripts/content.md +2 -0
  201. package/dist/cli-dznrgaep.js +0 -30
  202. package/dist/cli-w3hcrxht.js +0 -6985
  203. package/dist/handlers-vwmba1m2.js +0 -31
  204. package/dist/index-5r71rf98.js +0 -32
  205. package/dist/index-anmwxs87.js +0 -29
  206. package/dist/index-spp0ra5c.js +0 -36
@@ -0,0 +1,37 @@
1
+ import {
2
+ getExecutorRegistry2,
3
+ initWorkflows2,
4
+ init_workflows
5
+ } from "./cli-shpbx5ee.js";
6
+ import"./cli-zbbwez0r.js";
7
+ import"./cli-89knwags.js";
8
+ import"./cli-c60vetmm.js";
9
+ import"./cli-hr2e2fft.js";
10
+ import"./cli-xnqgpshy.js";
11
+ import"./cli-3xj33nrx.js";
12
+ import"./cli-4necwtsv.js";
13
+ import {
14
+ retryFailedRun2,
15
+ cancelWorkflowRun2
16
+ } from "./cli-m48g6p95.js";
17
+ import {
18
+ startWorkflowExecution2
19
+ } from "./cli-8bc1w0tw.js";
20
+ import"./cli-waqbxg08.js";
21
+ import"./cli-gdhpcbhf.js";
22
+ import"./cli-w6dt9ged.js";
23
+ import"./cli-hgaazk69.js";
24
+ import"./cli-yn4kxs06.js";
25
+ import"./cli-drr5v6av.js";
26
+ import"./cli-rmmmrjkd.js";
27
+ import"./cli-k2gzwsj2.js";
28
+ import"./cli-wx3rhnm0.js";
29
+ init_workflows();
30
+
31
+ export {
32
+ cancelWorkflowRun2 as cancelWorkflowRun,
33
+ getExecutorRegistry2 as getExecutorRegistry,
34
+ initWorkflows2 as initWorkflows,
35
+ retryFailedRun2 as retryFailedRun,
36
+ startWorkflowExecution2 as startWorkflowExecution
37
+ };
@@ -0,0 +1,30 @@
1
+ import"./cli-ns59dc6r.js";
2
+ import {
3
+ startHeartbeat2,
4
+ stopHeartbeat2
5
+ } from "./cli-zm72anhg.js";
6
+ import"./cli-8snvgs5r.js";
7
+ import"./cli-xnrwazav.js";
8
+ import"./cli-shpbx5ee.js";
9
+ import"./cli-zbbwez0r.js";
10
+ import"./cli-89knwags.js";
11
+ import"./cli-c60vetmm.js";
12
+ import"./cli-hr2e2fft.js";
13
+ import"./cli-xnqgpshy.js";
14
+ import"./cli-3xj33nrx.js";
15
+ import"./cli-4necwtsv.js";
16
+ import"./cli-m48g6p95.js";
17
+ import"./cli-8bc1w0tw.js";
18
+ import"./cli-waqbxg08.js";
19
+ import"./cli-gdhpcbhf.js";
20
+ import"./cli-w6dt9ged.js";
21
+ import"./cli-hgaazk69.js";
22
+ import"./cli-yn4kxs06.js";
23
+ import"./cli-drr5v6av.js";
24
+ import"./cli-rmmmrjkd.js";
25
+ import"./cli-k2gzwsj2.js";
26
+ import"./cli-wx3rhnm0.js";
27
+ export {
28
+ startHeartbeat2 as startHeartbeat,
29
+ stopHeartbeat2 as stopHeartbeat
30
+ };
@@ -45,7 +45,7 @@ import {
45
45
  require_lib,
46
46
  require_vary,
47
47
  require_express
48
- } from "./cli-gf5hbmdr.js";
48
+ } from "./cli-yjdgea32.js";
49
49
  import {
50
50
  require_form_data,
51
51
  require_follow_redirects
@@ -0,0 +1,33 @@
1
+ import {
2
+ calculateNextRun2,
3
+ startScheduler2,
4
+ stopScheduler2,
5
+ runScheduleNow2,
6
+ init_scheduler2
7
+ } from "./cli-shpbx5ee.js";
8
+ import"./cli-zbbwez0r.js";
9
+ import"./cli-89knwags.js";
10
+ import"./cli-c60vetmm.js";
11
+ import"./cli-hr2e2fft.js";
12
+ import"./cli-xnqgpshy.js";
13
+ import"./cli-3xj33nrx.js";
14
+ import"./cli-4necwtsv.js";
15
+ import"./cli-m48g6p95.js";
16
+ import"./cli-8bc1w0tw.js";
17
+ import"./cli-waqbxg08.js";
18
+ import"./cli-gdhpcbhf.js";
19
+ import"./cli-w6dt9ged.js";
20
+ import"./cli-hgaazk69.js";
21
+ import"./cli-yn4kxs06.js";
22
+ import"./cli-drr5v6av.js";
23
+ import"./cli-rmmmrjkd.js";
24
+ import"./cli-k2gzwsj2.js";
25
+ import"./cli-wx3rhnm0.js";
26
+ init_scheduler2();
27
+
28
+ export {
29
+ calculateNextRun2 as calculateNextRun,
30
+ runScheduleNow2 as runScheduleNow,
31
+ startScheduler2 as startScheduler,
32
+ stopScheduler2 as stopScheduler
33
+ };
@@ -49,14 +49,14 @@ import {
49
49
  init_dist
50
50
  } from "./cli-q26b9wre.js";
51
51
  import {
52
- require_dist6,
52
+ require_dist7,
53
53
  require_is_electron,
54
54
  require_is_stream,
55
- require_dist7,
56
- require_eventemitter3,
57
55
  require_dist8,
56
+ require_eventemitter3,
57
+ require_dist9,
58
58
  require_src
59
- } from "./cli-w3hcrxht.js";
59
+ } from "./cli-m2z8jagn.js";
60
60
  import {
61
61
  require_form_data,
62
62
  require_follow_redirects
@@ -593,8 +593,8 @@ var require_logger = __commonJS(function(exports) {
593
593
  Object.defineProperty(exports, "__esModule", { value: true });
594
594
  exports.LogLevel = undefined;
595
595
  exports.getLogger = getLogger;
596
- var logger_1 = require_dist6();
597
- var logger_2 = require_dist6();
596
+ var logger_1 = require_dist7();
597
+ var logger_2 = require_dist7();
598
598
  Object.defineProperty(exports, "LogLevel", { enumerable: true, get: function() {
599
599
  return logger_2.LogLevel;
600
600
  } });
@@ -7073,7 +7073,7 @@ var require_methods = __commonJS(function(exports) {
7073
7073
  }
7074
7074
  }
7075
7075
  exports.Methods = Methods;
7076
- __exportStar(require_dist8(), exports);
7076
+ __exportStar(require_dist9(), exports);
7077
7077
  });
7078
7078
 
7079
7079
  // node_modules/@chat-adapter/slack/node_modules/@slack/web-api/dist/WebClient.js
@@ -7215,7 +7215,7 @@ var require_WebClient = __commonJS(function(exports) {
7215
7215
  var form_data_1 = __importDefault(require_form_data());
7216
7216
  var is_electron_1 = __importDefault(require_is_electron());
7217
7217
  var is_stream_1 = __importDefault(require_is_stream());
7218
- var p_queue_1 = __importDefault(require_dist7());
7218
+ var p_queue_1 = __importDefault(require_dist8());
7219
7219
  var p_retry_1 = __importStar(require_p_retry());
7220
7220
  var chat_stream_1 = require_chat_stream();
7221
7221
  var errors_1 = require_errors();
@@ -21,7 +21,7 @@ import {
21
21
  require_scala,
22
22
  require_swift,
23
23
  require_typescript
24
- } from "./cli-vqypxzh4.js";
24
+ } from "./cli-0at8w34w.js";
25
25
  import {
26
26
  __commonJS
27
27
  } from "./cli-242037k3.js";
@@ -17,13 +17,13 @@ import {
17
17
  deleteSkill2,
18
18
  getSkillByName2,
19
19
  init_db4
20
- } from "./cli-1ayk1eas.js";
21
- import"./cli-8hs41zy2.js";
20
+ } from "./cli-k2gzwsj2.js";
21
+ import"./cli-rmmmrjkd.js";
22
22
  import {
23
23
  agentFsProvisionSeeder
24
- } from "./cli-vbyfwh92.js";
25
- import"./cli-mmwm7zbf.js";
26
- import"./cli-wvaawacd.js";
24
+ } from "./cli-xds5f77d.js";
25
+ import"./cli-w6dt9ged.js";
26
+ import"./cli-waqbxg08.js";
27
27
  import {
28
28
  buildSkillContent
29
29
  } from "./cli-691vz9mk.js";
@@ -48,11 +48,11 @@ import {
48
48
  init_typecheck,
49
49
  parseSkillContent,
50
50
  init_skill_parser
51
- } from "./cli-0bxqnvq9.js";
52
- import"./cli-7wcyk2s5.js";
53
- import"./cli-spknvxbq.js";
54
- import"./cli-pywf3eh5.js";
55
- import"./cli-bhjt02p8.js";
51
+ } from "./cli-hr2e2fft.js";
52
+ import"./cli-xnqgpshy.js";
53
+ import"./cli-8bc1w0tw.js";
54
+ import"./cli-hgaazk69.js";
55
+ import"./cli-drr5v6av.js";
56
56
  import {
57
57
  __toESM
58
58
  } from "./cli-242037k3.js";
@@ -13066,7 +13066,11 @@ const REASON_PATTERNS: any[] = [
13066
13066
  { key: "context-window", re: /context (window|limit|saturat)|peakcontext|compact/i },
13067
13067
  { key: "reboot-sweep", re: /reboot sweep/i },
13068
13068
  { key: "not-found", re: /not found|404|missing|no such/i },
13069
- { key: "auth/credentials", re: /unauthorized|401|403|credential|token|forbidden/i },
13069
+ {
13070
+ key: "output-limit",
13071
+ re: /\\bmax_(?:output_)?tokens\\b|\\b(?:maximum|max) output (?:length|tokens)\\b|\\boutput (?:token|length) limit\\b/i,
13072
+ },
13073
+ { key: "auth/credentials", re: /unauthorized|401|403|credential|\\btoken\\b|forbidden/i },
13070
13074
  { key: "ci/checks-failed", re: /\\bci\\b|check.?s? fail|lint|tsc|test.?s? fail/i },
13071
13075
  { key: "network", re: /network|econn|fetch failed|socket|dns|502|503|504/i },
13072
13076
  { key: "cancelled", re: /cancel|aborted/i },
@@ -14605,7 +14609,7 @@ var config_default14 = `{
14605
14609
  `;
14606
14610
 
14607
14611
  // templates/skills/composio-google-docs/content.md
14608
- var content_default14 = '# Composio · Google Docs\n\nToolkit slug: **`googledocs`**. Read the [[composio]] hub first for the call model.\nA document is identified by its `document_id` (the id in the Docs URL).\n\n```bash\nagent-swarm x composio POST /tools/execute/<SLUG> \\\n --body \'{"user_id":"<connected-account-email>","connected_account_id":"<active-connected-account-id>","arguments":{ … }}\'\n```\n\nFollow the hub\'s **Resolve the user and connected account** procedure, then\nselect the resolved user\'s `googledocs` account whose status is `ACTIVE`.\n\n## Headline tools\n\n| Slug | What | Key args |\n|---|---|---|\n| `GOOGLEDOCS_SEARCH_DOCUMENTS` | Find docs (Drive search) | `query`, `max_results` (def 10), `order_by` (def `modifiedTime desc`), `modified_after`, `created_after`, `starred_only`, `shared_with_me`, `response_detail` (def `minimal`) |\n| `GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT` | Read doc as text | **`document_id`**, `include_tables` (def true), `include_headers`, `include_footers`, `include_footnotes`, `include_tabs_content` |\n| `GOOGLEDOCS_GET_DOCUMENT_BY_ID` | Full structured doc JSON | `document_id` |\n| `GOOGLEDOCS_CREATE_DOCUMENT` | Create blank/with text | `title`, `text` |\n| `GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN` | Create from markdown | **`title`**, `markdown_text`, `image_assets` |\n| `GOOGLEDOCS_UPDATE_DOCUMENT_MARKDOWN` | Replace body with markdown | `document_id`, `markdown_text` |\n| `GOOGLEDOCS_INSERT_TEXT_ACTION` | Insert text at index | `document_id`, `text`, `index` |\n| `GOOGLEDOCS_REPLACE_ALL_TEXT` | Find & replace | `document_id`, `find`, `replace` |\n| `GOOGLEDOCS_COPY_DOCUMENT` | Duplicate a doc | `document_id`, `title` |\n| `GOOGLEDOCS_EXPORT_DOCUMENT_AS_PDF` | Export to PDF | `document_id` |\n\nFull set: 35 tools — `agent-swarm x composio GET "/tools?toolkit_slug=googledocs&limit=100" | jq -r \'.items[]|"\\(.slug)\\t\\(.name)"\'`.\nPrefer the `*_MARKDOWN` create/update tools for authoring; the granular\n`INSERT_*`/`DELETE_*`/table tools are for surgical structural edits.\n\n## Search recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_SEARCH_DOCUMENTS \\\n --body \'{"connected_account_id":"ca_…","arguments":{"query":"workshop","max_results":5}}\'\n# → results under .data.files[] (id, name, modifiedTime …)\n```\n- Results are Drive file entries at **`.data.files[]`** — grab `.id` to read.\n- `order_by` defaults to `modifiedTime desc` (most recent first).\n- Use `modified_after` / `shared_with_me` to narrow.\n\n## Read recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT \\\n --body \'{"connected_account_id":"ca_…","arguments":{"document_id":"<id>","include_tables":true}}\'\n```\nUse `GET_DOCUMENT_PLAINTEXT` for reading content; only reach for\n`GET_DOCUMENT_BY_ID` when you need the structured JSON (styles, indices) for an\nedit.\n\n## Create-from-markdown recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN \\\n --body \'{"connected_account_id":"ca_…","arguments":{\n "title":"Weekly updates","markdown_text":"# Heading\\n\\n- point one\\n- point two"\n }}\'\n```\n\n## Google Doc to agent-fs\n\n1. Read the source with `GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT` and retain its\n returned title and display URL as provenance.\n2. Write the converted content to your own agent-fs namespace with a short\n provenance header naming the source document and import method.\n3. Resolve the destination org and drive from the environment or\n `agent-fs stat <path> --json`; the `agent-fs` skill documents the canonical\n storage and share-link workflow. Never copy org or drive IDs from an example.\n4. Read the stored file back and assert several markers: the title, a middle\n phrase, and the final sentence. A successful byte-count response alone does\n not prove fidelity.\n\nPlaintext is intentionally lossy. Inline images may become bare `[IMAGE]`\nmarkers, and headings may be flattened into adjacent paragraphs. If those\nfeatures matter, use `GOOGLEDOCS_GET_DOCUMENT_BY_ID` for structured JSON or a\nGoogle Drive export, then preserve or reconstruct the structure explicitly.\nThere is no `GET_DOCUMENT_MARKDOWN` tool; markdown exists on create/update, not\non read.\n\n## Gotchas\n\n- Search returns Drive metadata, not document content — do a second\n `GET_DOCUMENT_PLAINTEXT` call with the `.id` to read.\n- Doc bodies can be long/token-heavy and may contain secrets — read only what you\n need (`include_headers/footers/footnotes` default off for a reason).\n- Create/update/replace are **write actions** — only on explicit request.\n';
14612
+ var content_default14 = '# Composio · Google Docs\n\nToolkit slug: **`googledocs`**. Read the [[composio]] hub first for the call model.\nA document is identified by its `document_id` (the id in the Docs URL).\n\n```bash\nagent-swarm x composio POST /tools/execute/<SLUG> \\\n --body \'{"user_id":"<connected-account-email>","connected_account_id":"<active-connected-account-id>","arguments":{ … }}\'\n```\n\nFollow the hub\'s **Resolve the user and connected account** procedure, then\nselect the resolved user\'s `googledocs` account whose status is `ACTIVE`.\n\n## Headline tools\n\n| Slug | What | Key args |\n|---|---|---|\n| `GOOGLEDOCS_SEARCH_DOCUMENTS` | Find docs (Drive search) | `query`, `max_results` (def 10), `order_by` (def `modifiedTime desc`), `modified_after`, `created_after`, `starred_only`, `shared_with_me`, `response_detail` (def `minimal`) |\n| `GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT` | Read doc as text | **`document_id`**, `include_tables` (def true), `include_headers`, `include_footers`, `include_footnotes`, `include_tabs_content` |\n| `GOOGLEDOCS_GET_DOCUMENT_BY_ID` | Full structured doc JSON | `document_id` |\n| `GOOGLEDOCS_CREATE_DOCUMENT` | Create blank/with text | `title`, `text` |\n| `GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN` | Create from markdown | **`title`**, `markdown_text`, `image_assets` |\n| `GOOGLEDOCS_UPDATE_DOCUMENT_MARKDOWN` | Replace body with markdown | `document_id`, `markdown_text` |\n| `GOOGLEDOCS_INSERT_TEXT_ACTION` | Insert text at index | `document_id`, `text`, `index` |\n| `GOOGLEDOCS_REPLACE_ALL_TEXT` | Find & replace | `document_id`, `find`, `replace` |\n| `GOOGLEDOCS_COPY_DOCUMENT` | Duplicate a doc | `document_id`, `title` |\n| `GOOGLEDOCS_EXPORT_DOCUMENT_AS_PDF` | Export to PDF | `document_id` |\n\nFull set: 35 tools — `agent-swarm x composio GET "/tools?toolkit_slug=googledocs&limit=100" | jq -r \'.items[]|"\\(.slug)\\t\\(.name)"\'`.\nPrefer the `*_MARKDOWN` create/update tools for authoring; the granular\n`INSERT_*`/`DELETE_*`/table tools are for surgical structural edits.\n\n## Search recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_SEARCH_DOCUMENTS \\\n --body \'{"connected_account_id":"ca_…","arguments":{"query":"workshop","max_results":5}}\'\n# → results under .data.files[] (id, name, modifiedTime …)\n```\n- Results are Drive file entries at **`.data.files[]`** — grab `.id` to read.\n- `order_by` defaults to `modifiedTime desc` (most recent first).\n- Use `modified_after` / `shared_with_me` to narrow.\n\n## Read recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT \\\n --body \'{"connected_account_id":"ca_…","arguments":{"document_id":"<id>","include_tables":true}}\'\n```\nUse `GET_DOCUMENT_PLAINTEXT` for reading content; only reach for\n`GET_DOCUMENT_BY_ID` when you need the structured JSON (styles, indices) for an\nedit.\n\n## Create-from-markdown recipe\n\n```bash\nagent-swarm x composio POST /tools/execute/GOOGLEDOCS_CREATE_DOCUMENT_MARKDOWN \\\n --body \'{"connected_account_id":"ca_…","arguments":{\n "title":"Weekly updates","markdown_text":"# Heading\\n\\n- point one\\n- point two"\n }}\'\n```\n\n## Google Doc to agent-fs\n\n1. Read the source with `GOOGLEDOCS_GET_DOCUMENT_PLAINTEXT` and retain its\n returned title and display URL as provenance.\n2. Write the converted content to your own agent-fs namespace with a short\n provenance header naming the source document and import method.\n3. Resolve the destination org and drive from the environment or\n `agent-fs stat <path> --json`; the `agent-fs` skill documents the canonical\n storage and share-link workflow. Never copy org or drive IDs from an example.\n4. Read the stored file back and assert several markers: the title, a middle\n phrase, and the final sentence. A successful byte-count response alone does\n not prove fidelity.\n\nPlaintext is intentionally lossy. Inline images may become bare `[IMAGE]`\nmarkers, and headings may be flattened into adjacent paragraphs. If those\nfeatures matter, use `GOOGLEDOCS_GET_DOCUMENT_BY_ID` for structured JSON or a\nGoogle Drive export, then preserve or reconstruct the structure explicitly.\nThere is no `GET_DOCUMENT_MARKDOWN` tool; markdown exists on create/update, not\non read.\n\n## Comments\n\nDoc comments are a Drive feature, not a Docs one: there is no `GOOGLEDOCS_*`\ncomment slug. List them with `GOOGLEDRIVE_LIST_COMMENTS` (replies:\n`GOOGLEDRIVE_LIST_REPLIES`) from the `googledrive` toolkit, so resolve the\nuser\'s `googledrive` connected account instead of their `googledocs` one.\nListing only works when the Drive read scopes are authorized on that account.\n`GOOGLEDRIVE_CREATE_COMMENT` and the update/delete tools are write actions,\nonly on explicit request.\n\n## Gotchas\n\n- Search returns Drive metadata, not document content — do a second\n `GET_DOCUMENT_PLAINTEXT` call with the `.id` to read.\n- Doc bodies can be long/token-heavy and may contain secrets — read only what you\n need (`include_headers/footers/footnotes` default off for a reason).\n- Create/update/replace are **write actions** — only on explicit request.\n';
14609
14613
 
14610
14614
  // templates/skills/db-query-guidance/config.json
14611
14615
  var config_default15 = `{
@@ -18703,7 +18707,7 @@ var config_default41 = `{
18703
18707
  `;
18704
18708
 
18705
18709
  // templates/skills/script-workflows/content.md
18706
- var content_default41 = "Use this skill when a user asks to launch, monitor, inspect, or debug a durable script workflow run. This is for the Script Workflows v1 runtime: one-off TypeScript workflow source with journaled `swarm-script`, `raw-llm`, and `agent-task` steps.\n\n## Tool Flow\n\nLoad the script workflow tools with ToolSearch when they are not already visible:\n\n```text\nlaunch-script-run\nget-script-run\nlist-script-runs\n```\n\nUse `launch-script-run` to start a one-off run. It calls the same `/api/script-runs` API as the dashboard, preserves the invoking agent identity, and starts the run in the background.\n\nUse `get-script-run` to read terminal status and journal entries. Poll it when needed, but keep polling bounded and report progress for long runs.\n\nUse `list-script-runs` to find recent runs or filter by `status` / `agentId`.\n\nDo not hand-roll raw HTTP for this flow unless the tool itself is broken and you are explicitly debugging the API. The tool handles auth and `X-Agent-ID` like the existing inline `script-run` tool family.\n\n## Source Shape\n\nAuthor TypeScript workflow source as a default export. The runtime provides `args` and `ctx`.\n\n```ts\nexport default async function main(args, ctx) {\n const lookup = await ctx.step.swarmScript(\"lookup-data\", {\n scriptName: \"fetch-readable\",\n args: { url: args.url },\n });\n\n const summary = await ctx.step.rawLlm(\"summarize\", {\n prompt: `Summarize this for an operator:\\n${JSON.stringify(lookup)}`,\n });\n\n const task = await ctx.step.agentTask(\"operator-review\", {\n task: `Review this summary and flag risks:\\n${JSON.stringify(summary)}`,\n tags: [\"script-run\"],\n priority: 50,\n });\n\n return { lookup, summary, task };\n}\n```\n\n`ctx.step.agentTask` blocks until the dispatched task reaches a terminal status (default `waitForCompletion: true`, default `timeoutMs` 2h) and journals its real output — a sequential `plan → implement → review` chain will not fan out. Pass `waitForCompletion: false` for the legacy fire-and-poll-yourself shape, or `failOnTaskFailure: false` to receive `{taskId, status: \"failed\", error}` instead of a throw when the task fails/is cancelled.\n\n## Label Rules\n\nStep labels are durability keys. They must be stable and unique for each logical step. Do not reuse the same literal label inside a loop; launch will fail with `label_lint_violation`.\n\nFor looped work, include an item identifier in the label:\n\n```ts\nfor (const item of args.items) {\n await ctx.step.agentTask(`review-${item.id}`, { task: item.prompt });\n}\n```\n\n## Statuses\n\nTerminal statuses to surface clearly:\n\n- `completed` — run finished and `output` may be present.\n- `failed` — run ended with `error`.\n- `cancelled` — run was cancelled before completion.\n- `aborted_limit` — runtime guardrail stopped the run, usually step count, agent-task count, or wall-clock cap.\n- `label_lint_violation` — launch-time rejection, not a persisted run status.\n\nWhen a run is not terminal, report the current status, journal count, and latest heartbeat if present.\n";
18710
+ var content_default41 = "Use this skill when a user asks to launch, monitor, inspect, or debug a durable script workflow run. This is for the Script Workflows v1 runtime: one-off TypeScript workflow source with journaled `swarm-script`, `raw-llm`, and `agent-task` steps.\n\n## Tool Flow\n\nLoad the script workflow tools with ToolSearch when they are not already visible:\n\n```text\nlaunch-script-run\nget-script-run\nlist-script-runs\n```\n\nUse `launch-script-run` to start a one-off run. It calls the same `/api/script-runs` API as the dashboard, preserves the invoking agent identity, and starts the run in the background.\n\nUse `get-script-run` to read terminal status and journal entries. Poll it when needed, but keep polling bounded and report progress for long runs.\n\nUse `list-script-runs` to find recent runs or filter by `status` / `agentId`.\n\nDo not hand-roll raw HTTP for this flow unless the tool itself is broken and you are explicitly debugging the API. The tool handles auth and `X-Agent-ID` like the existing inline `script-run` tool family.\n\n## Source Shape\n\nAuthor TypeScript workflow source as a default export. The runtime provides `args` and `ctx`.\n\n```ts\nexport default async function main(args, ctx) {\n const lookup = await ctx.step.swarmScript(\"lookup-data\", {\n scriptName: \"fetch-readable\",\n args: { url: args.url },\n });\n\n const summary = await ctx.step.rawLlm(\"summarize\", {\n prompt: `Summarize this for an operator:\\n${JSON.stringify(lookup)}`,\n });\n\n const task = await ctx.step.agentTask(\"operator-review\", {\n task: `Review this summary and flag risks:\\n${JSON.stringify(summary)}`,\n tags: [\"script-run\"],\n priority: 50,\n });\n\n return { lookup, summary, task };\n}\n```\n\n`ctx.step.agentTask` blocks until the dispatched task reaches a terminal status (default `waitForCompletion: true`, default `timeoutMs` 2h) and journals its real output — a sequential `plan → implement → review` chain will not fan out. Pass `failOnTaskFailure: false` to receive `{taskId, status: \"failed\", error}` instead of a throw when the task fails/is cancelled.\n\nA run launched from a `follow-up` task in a Slack thread passes the same re-delegation guard as `send-task`, decided once for the whole run at its first new step: a step that repeats completed thread work, or a run past the thread's dispatch cap (a run counts once), throws with the rule's message, and every later new step of that run throws too. Pass `allowRedelegation: true` on a step only for a deliberate re-run. Do not wrap a single dispatch in a durable run; use `send-task`.\n\n`waitForCompletion: false` does not return right after dispatch. The first call still waits up to ~30s while the server polls the task, then returns one of three shapes:\n\n- The task finished in that window: its output string or `null`, as on success.\n- The task failed or was cancelled in that window: a throw, or `{taskId, status: \"failed\", error}` with `failOnTaskFailure: false`.\n- The task is still running: `{taskId, status}`.\n\nOn success, `ctx.step.agentTask` resolves to the worker's output string (JSON text under `outputSchema`, so parse it yourself; `null` when the task stored none), not a task record. On a string, `step.taskId` and `step.status` are undefined, so a guard such as `step.status !== \"completed\"` or `step?.taskId ?? \"unknown\"` silently misfires. On `null`, `step.taskId` throws a TypeError. Only `failOnTaskFailure: false` with a failed or cancelled task returns `{taskId, status: \"failed\", error}`, and only `waitForCompletion: false` on a task still running returns `{taskId, status}`. To get a step's task id, query by its context key (the label is the step label you passed):\n\n```sql\nSELECT id, status, output FROM agent_tasks\nWHERE contextKey = 'script-run:<runId>:<label>' AND taskType = 'script-run-step'\nORDER BY createdAt DESC, rowid DESC LIMIT 1\n```\n\nInside the run, `<runId>` is `ctx.run.id`.\n\n## Label Rules\n\nStep labels are durability keys. They must be stable and unique for each logical step. Do not reuse the same literal label inside a loop; launch will fail with `label_lint_violation`.\n\nFor looped work, include an item identifier in the label:\n\n```ts\nfor (const item of args.items) {\n await ctx.step.agentTask(`review-${item.id}`, { task: item.prompt });\n}\n```\n\n## Statuses\n\nTerminal statuses to surface clearly:\n\n- `completed` — run finished and `output` may be present.\n- `failed` — run ended with `error`.\n- `cancelled` — run was cancelled before completion.\n- `aborted_limit` — runtime guardrail stopped the run, usually step count, agent-task count, or wall-clock cap.\n- `label_lint_violation` — launch-time rejection, not a persisted run status.\n\nWhen a run is not terminal, report the current status, journal count, and latest heartbeat if present.\n";
18707
18711
 
18708
18712
  // templates/skills/slack-interaction/config.json
18709
18713
  var config_default42 = '{\n "kind": "skill",\n "name": "slack-interaction",\n "displayName": "Slack Interaction",\n "slug": "slack-interaction",\n "title": "Slack Interaction",\n "description": "Slack: reply, post, read, upload, and the thread rules. What the engine already posts, the one-message rule, `slack-reply`, `slack-post`, `slack-start-thread`, `slack-read`, `slack-upload-file`, `slack-download-file`, `slack-list-channels`, `slack-update`, `slack-delete`, unknown-user registration with `manage-user`, and Slack standing orders. Use before any Slack message.",\n "version": "1.0.0",\n "category": "skills",\n "placeholders": [],\n "runAllSeedersCandidate": true,\n "systemDefault": true,\n "tags": ["slack", "communication"]\n}\n';
@@ -18846,6 +18850,7 @@ Fetch the page as markdown: \`curl -fsSL https://docs.agent-swarm.dev/llms.mdx/d
18846
18850
  - [One-off Script Workflow Runs](https://docs.agent-swarm.dev/docs/guides/script-workflow-runs). Reference.
18847
18851
  - [Dreaming](https://docs.agent-swarm.dev/docs/guides/dreaming). When: Someone asks what the nightly dreaming run changed, how to configure or turn it off, or how to undo one of its changes.
18848
18852
  - [Claude Bridge](https://docs.agent-swarm.dev/docs/guides/claude-bridge-experimental). Reference.
18853
+ - [Reading claude.ai Artifacts headless](https://docs.agent-swarm.dev/docs/guides/claude-artifacts-read). When: Someone wants an agent to read a claude.ai Artifact link, such as a design and its canvas.json, from a headless session.
18849
18854
  - [Worker Credential Recovery](https://docs.agent-swarm.dev/docs/guides/worker-credential-recovery). Reference.
18850
18855
  - [Model Gateways](https://docs.agent-swarm.dev/docs/guides/provider-auth/model-gateways). Reference.
18851
18856
  - [Codex OAuth](https://docs.agent-swarm.dev/docs/guides/provider-auth/codex-oauth). Reference.
@@ -19125,6 +19130,8 @@ Named script only when the logic will run two or more times, by you, another age
19125
19130
 
19126
19131
  Reference point: a workflow triage that took about 26 tool calls returns as one result of about 4k tokens in about 13 seconds.
19127
19132
 
19133
+ Pick the run mode before you author. A short inline \`script-run\` is for small lookups only. A job that scans a whole population or may run past the inline cap of about 30 s starts as a durable \`launch-script-run\` from the start. A single \`ctx.step.swarmScript\` step has the same cap, so collect in bounded steps: each step takes a cursor, collects one slice in well under 30 s, and returns its rows plus the next cursor. Label each step with its slice (\`collect-\${page}\`) so the journal checkpoints it, then compute from the collected slices in a final step. Restarting a long inline run throws away the work it already did.
19134
+
19128
19135
  ## Loading the tools
19129
19136
 
19130
19137
  The script tools are deferred. Load them with your harness tool search before the first call: \`script-search\`, \`script-run\`, \`script-upsert\`, \`script-query-types\`, \`script-delete\`, and for durable runs \`launch-script-run\`, \`get-script-run\`, \`list-script-runs\`.
@@ -3,7 +3,7 @@ import {
3
3
  resetEmbeddingProvider2,
4
4
  getMemoryStore2,
5
5
  init_memory
6
- } from "./cli-1ayk1eas.js";
6
+ } from "./cli-k2gzwsj2.js";
7
7
  init_memory();
8
8
 
9
9
  export {
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  listKeepAliveAuthorizations,
3
3
  init_oauth
4
- } from "./cli-1ayk1eas.js";
4
+ } from "./cli-k2gzwsj2.js";
5
5
  import {
6
6
  ensureAuthorizationTokenOrThrow,
7
7
  init_ensure_token
8
- } from "./cli-7wcyk2s5.js";
8
+ } from "./cli-xnqgpshy.js";
9
9
  import {
10
10
  scrubSecrets,
11
11
  init_secret_scrubber
@@ -59,7 +59,7 @@ async function notifySlack(text) {
59
59
  return;
60
60
  }
61
61
  try {
62
- const { getSlackApp } = await import("./app-vmp4fgep.js");
62
+ const { getSlackApp } = await import("./app-909e97cr.js");
63
63
  const app = getSlackApp();
64
64
  if (!app) {
65
65
  console.warn("[OAuth Keepalive] Slack not available, cannot send notification");
@@ -1,57 +1,58 @@
1
- import"./cli-1ayk1eas.js";
2
- import"./cli-8hs41zy2.js";
3
- import"./cli-6s7vdcta.js";
4
- import"./cli-nn4d8dne.js";
1
+ import"./cli-k2gzwsj2.js";
2
+ import"./cli-rmmmrjkd.js";
3
+ import"./cli-zbbwez0r.js";
4
+ import"./cli-89knwags.js";
5
5
  import"./cli-wx3rhnm0.js";
6
- import"./cli-mmwm7zbf.js";
7
- import"./cli-wvaawacd.js";
8
- import"./cli-g61qxmge.js";
6
+ import"./cli-w6dt9ged.js";
7
+ import"./cli-waqbxg08.js";
8
+ import"./cli-m48g6p95.js";
9
9
  import {
10
10
  getEnabledCapabilities,
11
11
  init_server
12
- } from "./cli-1338796d.js";
12
+ } from "./cli-shpbx5ee.js";
13
13
  import"./cli-3xj33nrx.js";
14
- import"./cli-mry0qzym.js";
15
- import"./cli-z8eh3ex8.js";
16
- import"./cli-rhw40jgb.js";
14
+ import"./cli-yn4kxs06.js";
15
+ import"./cli-4necwtsv.js";
16
+ import"./cli-bjb3z51z.js";
17
17
  import"./cli-ftyxyspd.js";
18
18
  import {
19
19
  runAgent
20
- } from "./cli-nzxr556s.js";
20
+ } from "./cli-es6va8jk.js";
21
21
  import"./cli-98rw5dt5.js";
22
22
  import"./cli-77cd6gy8.js";
23
23
  import"./cli-mthwvjre.js";
24
24
  import"./cli-a22h291q.js";
25
25
  import"./cli-dhar9qay.js";
26
26
  import"./cli-jc1g9ndz.js";
27
- import"./cli-afrrppsw.js";
27
+ import"./cli-nwj0ee2w.js";
28
28
  import"./cli-jm2vfpfd.js";
29
- import"./cli-a47xy8eq.js";
29
+ import"./cli-faxe6thg.js";
30
30
  import"./cli-d82btycs.js";
31
31
  import"./cli-0726awxw.js";
32
- import"./cli-0731hvbw.js";
33
- import"./cli-82ae98pz.js";
32
+ import"./cli-decfb6v8.js";
33
+ import"./cli-svj5090z.js";
34
34
  import"./cli-4bd1rck6.js";
35
35
  import"./cli-98rwmcyc.js";
36
36
  import"./cli-318r69gq.js";
37
37
  import"./cli-vfym7wmz.js";
38
38
  import"./cli-kr5tjjtz.js";
39
- import"./cli-7a42nfy0.js";
40
- import"./cli-j3jvnpe8.js";
39
+ import"./cli-0qatpy8q.js";
40
+ import"./cli-wp9sp1qb.js";
41
41
  import"./cli-srye3vdt.js";
42
- import"./cli-bnz7a7qf.js";
43
- import"./cli-rm6hqj3z.js";
44
- import"./cli-hn9hxmz9.js";
45
- import"./cli-zppwg9p9.js";
46
- import"./cli-zh3fp8v2.js";
47
- import"./cli-5pag6rmn.js";
42
+ import"./cli-vvpx3gsx.js";
43
+ import"./cli-pd7vagab.js";
44
+ import"./cli-yx4kfngt.js";
45
+ import"./cli-ekwks2vs.js";
46
+ import"./cli-54t00gt8.js";
47
+ import"./cli-3ypk9vk1.js";
48
48
  import"./cli-4zsenjhy.js";
49
- import"./cli-xtjhfmpc.js";
50
- import"./cli-0bxqnvq9.js";
51
- import"./cli-7wcyk2s5.js";
52
- import"./cli-spknvxbq.js";
53
- import"./cli-pywf3eh5.js";
54
- import"./cli-bhjt02p8.js";
49
+ import"./cli-c60vetmm.js";
50
+ import"./cli-hr2e2fft.js";
51
+ import"./cli-xnqgpshy.js";
52
+ import"./cli-8bc1w0tw.js";
53
+ import"./cli-gdhpcbhf.js";
54
+ import"./cli-hgaazk69.js";
55
+ import"./cli-drr5v6av.js";
55
56
 
56
57
  // src/commands/lead.ts
57
58
  init_server();
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  reembedAllScripts2,
3
3
  init_embeddings
4
- } from "./cli-1ayk1eas.js";
4
+ } from "./cli-k2gzwsj2.js";
5
5
 
6
6
  // src/be/scripts/maintenance.ts
7
7
  init_embeddings();
@@ -2,11 +2,11 @@ import {
2
2
  getAuthorizationById,
3
3
  listAuthorizationSweepRows,
4
4
  init_oauth
5
- } from "./cli-1ayk1eas.js";
5
+ } from "./cli-k2gzwsj2.js";
6
6
  import {
7
7
  forceRefreshAuthorizationOrThrow,
8
8
  init_ensure_token
9
- } from "./cli-7wcyk2s5.js";
9
+ } from "./cli-xnqgpshy.js";
10
10
  import {
11
11
  isEnvFlagEnabled,
12
12
  init_env_flag
@@ -7,16 +7,16 @@ import {
7
7
  Select,
8
8
  Spinner,
9
9
  TextInput
10
- } from "./cli-82jg7fp9.js";
10
+ } from "./cli-he5nxaa8.js";
11
11
  import {
12
12
  require_jsx_dev_runtime
13
- } from "./cli-kg8hchyg.js";
13
+ } from "./cli-sa02jsqt.js";
14
14
  import {
15
15
  SERVER_NAME,
16
16
  createDefaultSettingsLocal,
17
17
  createDefaultMcpJson,
18
18
  createHooksConfig
19
- } from "./cli-p599f1qm.js";
19
+ } from "./cli-0yv5z2pg.js";
20
20
  import {
21
21
  getSlackConfiguration,
22
22
  isSlackConfigured,
@@ -25,7 +25,7 @@ import {
25
25
  import {
26
26
  init_package,
27
27
  package_default
28
- } from "./cli-tqgg40ek.js";
28
+ } from "./cli-e3r2neck.js";
29
29
  import {
30
30
  getApiKey,
31
31
  init_api_key
@@ -3,11 +3,11 @@ import {
3
3
  applyOpenRouterBaseUrlOverride2,
4
4
  buildOpenAICompatibleProviderBlock2,
5
5
  OpencodeAdapter2
6
- } from "./cli-zppwg9p9.js";
7
- import"./cli-hn9hxmz9.js";
6
+ } from "./cli-ekwks2vs.js";
7
+ import"./cli-yx4kfngt.js";
8
8
  import"./cli-4bd1rck6.js";
9
9
  import"./cli-jc1g9ndz.js";
10
- import"./cli-a47xy8eq.js";
10
+ import"./cli-faxe6thg.js";
11
11
  import"./cli-0726awxw.js";
12
12
  import"./cli-dhar9qay.js";
13
13
  import"./cli-98rw5dt5.js";
@@ -17,7 +17,7 @@ import {
17
17
  import {
18
18
  init_package,
19
19
  package_default
20
- } from "./cli-tqgg40ek.js";
20
+ } from "./cli-e3r2neck.js";
21
21
  import {
22
22
  scrubSecrets,
23
23
  init_secret_scrubber
@@ -11,7 +11,7 @@ import {
11
11
  createCodemodeExtension,
12
12
  createMcpExtension,
13
13
  createToolSearchExtension
14
- } from "./cli-vqypxzh4.js";
14
+ } from "./cli-0at8w34w.js";
15
15
  import {
16
16
  contextBoundNoteThreshold,
17
17
  createContextBoundNote
@@ -22,8 +22,8 @@ import {
22
22
  import"./cli-0726awxw.js";
23
23
  import {
24
24
  createSwarmHooksExtension
25
- } from "./cli-hn9hxmz9.js";
26
- import"./cli-a47xy8eq.js";
25
+ } from "./cli-yx4kfngt.js";
26
+ import"./cli-faxe6thg.js";
27
27
  import {
28
28
  applyReasoningEffort
29
29
  } from "./cli-98rw5dt5.js";
@@ -47,7 +47,7 @@ import {
47
47
  getBuiltinModel,
48
48
  getBuiltinModels,
49
49
  init_all
50
- } from "./cli-qxnf8z2z.js";
50
+ } from "./cli-436532ck.js";
51
51
  import {
52
52
  buildPoolRevalidationFailureReason,
53
53
  getValidCodexOAuth,
@@ -2,9 +2,9 @@ import {
2
2
  requestModelCatalogRefresh2,
3
3
  startPricingRefreshLoop2,
4
4
  init_pricing_refresh
5
- } from "./cli-nn4d8dne.js";
6
- import"./cli-xtjhfmpc.js";
7
- import"./cli-1ayk1eas.js";
5
+ } from "./cli-89knwags.js";
6
+ import"./cli-c60vetmm.js";
7
+ import"./cli-k2gzwsj2.js";
8
8
  init_pricing_refresh();
9
9
 
10
10
  export {
@@ -3,7 +3,7 @@ import {
3
3
  getDbClient2,
4
4
  init_telemetry_identity,
5
5
  init_db4
6
- } from "./cli-1ayk1eas.js";
6
+ } from "./cli-k2gzwsj2.js";
7
7
  import {
8
8
  PermissionVerbSchema,
9
9
  init_rbac
@@ -9,8 +9,8 @@ import {
9
9
  setUserRoles2,
10
10
  ensureRbacSeedsSynced2,
11
11
  init_rbac_roles
12
- } from "./cli-8hs41zy2.js";
13
- import"./cli-1ayk1eas.js";
12
+ } from "./cli-rmmmrjkd.js";
13
+ import"./cli-k2gzwsj2.js";
14
14
  init_rbac_roles();
15
15
 
16
16
  export {
@@ -5,9 +5,9 @@ import {
5
5
  slackErrorCode2,
6
6
  processSlackRenderV22,
7
7
  init_render_v2
8
- } from "./cli-wvaawacd.js";
9
- import"./cli-mmwm7zbf.js";
10
- import"./cli-1ayk1eas.js";
8
+ } from "./cli-waqbxg08.js";
9
+ import"./cli-w6dt9ged.js";
10
+ import"./cli-k2gzwsj2.js";
11
11
  init_render_v2();
12
12
 
13
13
  export {
@@ -11,12 +11,12 @@ import {
11
11
  initWaitBusSubscriptions2,
12
12
  subscribeWaitToBus2,
13
13
  init_resume
14
- } from "./cli-g61qxmge.js";
15
- import"./cli-spknvxbq.js";
16
- import"./cli-wvaawacd.js";
17
- import"./cli-mmwm7zbf.js";
18
- import"./cli-bhjt02p8.js";
19
- import"./cli-1ayk1eas.js";
14
+ } from "./cli-m48g6p95.js";
15
+ import"./cli-8bc1w0tw.js";
16
+ import"./cli-waqbxg08.js";
17
+ import"./cli-w6dt9ged.js";
18
+ import"./cli-drr5v6av.js";
19
+ import"./cli-k2gzwsj2.js";
20
20
  import"./cli-wx3rhnm0.js";
21
21
  init_resume();
22
22
 
@@ -5,7 +5,7 @@ import {
5
5
  McpServerLog2,
6
6
  createDefaultTransport2,
7
7
  McpServerConnection2
8
- } from "./cli-fqzx7gwa.js";
8
+ } from "./cli-dxae2yg7.js";
9
9
  export {
10
10
  McpOAuthCredentialStore2 as McpOAuthCredentialStore,
11
11
  McpServerConnection2 as McpServerConnection,
@@ -13,10 +13,10 @@ import {
13
13
  bodySessionDenial2,
14
14
  userAgentIdentityDenial2,
15
15
  init_session_access
16
- } from "./cli-z8eh3ex8.js";
17
- import"./cli-bhjt02p8.js";
18
- import"./cli-8hs41zy2.js";
19
- import"./cli-1ayk1eas.js";
16
+ } from "./cli-4necwtsv.js";
17
+ import"./cli-drr5v6av.js";
18
+ import"./cli-rmmmrjkd.js";
19
+ import"./cli-k2gzwsj2.js";
20
20
  init_session_access();
21
21
 
22
22
  export {
@@ -7,12 +7,12 @@ import {
7
7
  moveTaskChainKeyInTx2,
8
8
  init_session_moves,
9
9
  init_db4
10
- } from "./cli-1ayk1eas.js";
10
+ } from "./cli-k2gzwsj2.js";
11
11
  import {
12
12
  normalizeAssetKey,
13
13
  defaultAssetKey,
14
14
  init_key
15
- } from "./cli-7wspm5gm.js";
15
+ } from "./cli-nhrvpaj7.js";
16
16
  import {
17
17
  scrubSecrets,
18
18
  init_secret_scrubber