@desplega.ai/agent-swarm 1.172.0 → 1.173.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 (214) hide show
  1. package/dist/{acp-adapter-fpecx1g1.js → acp-adapter-ccm9xrep.js} +8 -8
  2. package/dist/{actions-pw87a1a8.js → actions-sgeyv08k.js} +44 -19
  3. package/dist/{amp-adapter-8jem2bc0.js → amp-adapter-gpxp3kc9.js} +1 -1
  4. package/dist/{anthropic-messages-8ee2f22q.js → anthropic-messages-r6czkjv1.js} +7 -7
  5. package/dist/{app-wmf0m843.js → app-km9qnv2f.js} +6 -4
  6. package/dist/{assistant-emp1e108.js → assistant-5r8tcvvd.js} +44 -22
  7. package/dist/{boot-reembed-4ymn9atn.js → boot-reembed-16rv9843.js} +4 -3
  8. package/dist/{boot-reembed-1de4f4aj.js → boot-reembed-swwzdgd7.js} +4 -3
  9. package/dist/{boot-scrub-sweep-adhk1s8c.js → boot-scrub-sweep-zkr6vkqb.js} +5 -4
  10. package/dist/{boot-seeds-8q637aew.js → boot-seeds-d8sp49t2.js} +7 -6
  11. package/dist/{claude-adapter-t26cv8a4.js → claude-adapter-yzzzh8jp.js} +9 -9
  12. package/dist/{claude-sdk-session-gsfsh662.js → claude-sdk-session-4whxere4.js} +9458 -9164
  13. package/dist/{cli-g4f5pj26.js → cli-0a7mm3zp.js} +92 -10
  14. package/dist/{cli-pj6x9qce.js → cli-0kxf81jj.js} +1 -1
  15. package/dist/{cli-kb4ehzx5.js → cli-1w0vj3gw.js} +4 -4
  16. package/dist/{cli-e0a9sk00.js → cli-3nxdmjrc.js} +1 -1
  17. package/dist/{cli-6jb2rf77.js → cli-42qhyvwx.js} +3 -3
  18. package/dist/{cli-esnpehf5.js → cli-5er5gjbm.js} +4 -4
  19. package/dist/{cli-04emfe2q.js → cli-5wpw4rab.js} +1 -1
  20. package/dist/{cli-aspcaef3.js → cli-6r2f7edk.js} +4 -4
  21. package/dist/{cli-xczpdp9e.js → cli-6thk4jz3.js} +1 -1
  22. package/dist/{cli-j6kpj9az.js → cli-7a93cv8c.js} +1458 -48
  23. package/dist/{cli-k46r9hmk.js → cli-94b48jhk.js} +2 -2
  24. package/dist/{cli-gp1rtyvk.js → cli-9xf7fdtp.js} +2 -2
  25. package/dist/{cli-qsztpfry.js → cli-anzdk0z4.js} +1 -1
  26. package/dist/{cli-cceskcvt.js → cli-b07hr3bt.js} +8 -8
  27. package/dist/{cli-c2pq2rjb.js → cli-bv2etw2y.js} +2 -2
  28. package/dist/{cli-hwwvy36w.js → cli-c3rk1v0x.js} +3 -3
  29. package/dist/{cli-tgpfnm6r.js → cli-fmhj1ehj.js} +53 -13
  30. package/dist/{cli-r8smj8b8.js → cli-jpc4r224.js} +1 -1
  31. package/dist/{cli-4nz8p1p5.js → cli-m89t9jdf.js} +5 -5
  32. package/dist/{cli-bf7485pm.js → cli-na2pxe4f.js} +1 -1
  33. package/dist/{cli-prrt9fa0.js → cli-ne7smj1b.js} +4 -4
  34. package/dist/{cli-cf69s3ew.js → cli-nwrdx840.js} +2 -2
  35. package/dist/cli-p0sg24zp.js +16 -0
  36. package/dist/{cli-gj81e47t.js → cli-phcqp1b9.js} +1 -1
  37. package/dist/{cli-5rv1j9ga.js → cli-qm1448f9.js} +51 -5
  38. package/dist/{cli-8hzfb6xz.js → cli-r0byd61h.js} +7 -7
  39. package/dist/{cli-nyhb1r6x.js → cli-r4fqfpwf.js} +3 -3
  40. package/dist/{cli-1hgat6pa.js → cli-rfs4vddv.js} +5 -5
  41. package/dist/{cli-ztrv9y21.js → cli-rfz2ve55.js} +861 -246
  42. package/dist/{cli-pstq9888.js → cli-s8z6x4b4.js} +22 -21
  43. package/dist/{cli-j1pmc07z.js → cli-saqyage0.js} +92 -16
  44. package/dist/{cli-zxm9p3x4.js → cli-srqq3gc5.js} +1 -1
  45. package/dist/{cli-9xsmdpdt.js → cli-tcc4wd5d.js} +136 -42
  46. package/dist/cli-v3zhnxsb.js +263 -0
  47. package/dist/{cli-388egyf6.js → cli-w1apjecb.js} +1 -1
  48. package/dist/{cli-g6t9texm.js → cli-wrh08zjd.js} +4 -4
  49. package/dist/{cli-8vs9trd4.js → cli-x119kdba.js} +1 -1
  50. package/dist/{cli-nv4zd0b9.js → cli-xc7p7s3g.js} +1 -1
  51. package/dist/cli.js +16 -16
  52. package/dist/{codex-adapter-m4tgdysy.js → codex-adapter-r3dn4fp5.js} +6 -6
  53. package/dist/{codex-session-runner-ymwzm6ea.js → codex-session-runner-fwt793h4.js} +6 -6
  54. package/dist/{commands-n0hshcvs.js → commands-z8fq9qna.js} +14 -4
  55. package/dist/{controllers-connect-y07cqcvy.js → controllers-connect-3mf2btyj.js} +21 -19
  56. package/dist/{db-4w7tmt1g.js → db-qfpq4bt7.js} +4 -3
  57. package/dist/{db-hkqvrdcb.js → db-yyhqqrbf.js} +5 -4
  58. package/dist/{dispatcher-5sd69y14.js → dispatcher-x0x7qfcq.js} +20 -18
  59. package/dist/{dsh-adapter-2h8m4cab.js → dsh-adapter-34etvb5m.js} +1 -1
  60. package/dist/external-channel-h1fjecwe.js +51 -0
  61. package/dist/{grok-adapter-8m9yqzbq.js → grok-adapter-e7mr287e.js} +9 -9
  62. package/dist/{handlers-s20xr10r.js → handlers-znb9n7d4.js} +23 -21
  63. package/dist/{heartbeat-3k31q4g2.js → heartbeat-bm4qkn8d.js} +22 -20
  64. package/dist/{hook-gdn6a2fn.js → hook-254r4mza.js} +7 -7
  65. package/dist/{hook-ygwerrdh.js → hook-xaa3q80s.js} +8 -8
  66. package/dist/{http-jdteeg81.js → http-3dgrgp8y.js} +135 -64
  67. package/dist/{index-6ksewd5y.js → index-2ybk7khy.js} +618 -120
  68. package/dist/{index-tsszt7g9.js → index-bdsqa799.js} +22 -20
  69. package/dist/{index-e0snym4t.js → index-fx3jqq1e.js} +20 -18
  70. package/dist/{index-vm3bm9t7.js → index-g2byveez.js} +20 -18
  71. package/dist/{index-ffqzqgwb.js → index-jd7sejm2.js} +4 -3
  72. package/dist/{keepalive-jekc896t.js → keepalive-6ywhpja1.js} +6 -5
  73. package/dist/{lead-4k9s9szx.js → lead-cw45n21s.js} +32 -30
  74. package/dist/{maintenance-shazch4n.js → maintenance-ss1a1ge9.js} +4 -3
  75. package/dist/node-c9we95xf.js +1 -1
  76. package/dist/{oauth-refresh-sweep-5gb36kn8.js → oauth-refresh-sweep-3c6f8vyy.js} +5 -4
  77. package/dist/{onboard-ydrbnvww.js → onboard-8hzdhc1k.js} +2 -2
  78. package/dist/{opencode-adapter-5zh0he20.js → opencode-adapter-qbchbcfz.js} +6 -6
  79. package/dist/{otel-impl-6pf5cv86.js → otel-impl-e6mnvc4v.js} +7 -2
  80. package/dist/{pi-mono-adapter-ef9wwx9m.js → pi-mono-adapter-3c9g9snh.js} +6 -6
  81. package/dist/{pricing-refresh-s52nsa5q.js → pricing-refresh-gedkjdw0.js} +6 -5
  82. package/dist/{rbac-roles-aq3msh4e.js → rbac-roles-dt4vh1yy.js} +4 -3
  83. package/dist/{rbac-roles-q5gb5e8v.js → rbac-roles-eszdg6pm.js} +5 -4
  84. package/dist/{render-v2-pd1rg54q.js → render-v2-907cy6sa.js} +6 -4
  85. package/dist/{resume-gw4a2c6v.js → resume-42stcaz0.js} +11 -9
  86. package/dist/{setup-jda1ksdh.js → setup-adbc1c10.js} +2 -2
  87. package/dist/{virtual-modules-b3ga2m65.js → virtual-modules-rtmt494q.js} +3 -3
  88. package/dist/{work-objects-tb7ycye8.js → work-objects-wpj8ck95.js} +28 -21
  89. package/dist/{worker-njjccz5d.js → worker-bzdra9rf.js} +32 -30
  90. package/openapi.json +423 -7
  91. package/package.json +4 -4
  92. package/src/apps/catalog.generated.json +1309 -53
  93. package/src/apps/page-validator.ts +93 -31
  94. package/src/azure-devops/api.ts +94 -18
  95. package/src/azure-devops/auth.ts +32 -0
  96. package/src/azure-devops/boards-sync.ts +708 -0
  97. package/src/azure-devops/handlers.ts +52 -8
  98. package/src/azure-devops/html.ts +26 -0
  99. package/src/azure-devops/index.ts +15 -0
  100. package/src/azure-devops/templates.ts +86 -0
  101. package/src/azure-devops/types.ts +65 -1
  102. package/src/be/db.ts +22 -6
  103. package/src/be/migrations/213_script_connections_sql.sql +79 -0
  104. package/src/be/script-connections.ts +47 -8
  105. package/src/be/seed-skills/bundled-files.generated.json +10 -0
  106. package/src/be/seed-skills/index.ts +3 -0
  107. package/src/be/sql-connections.ts +118 -0
  108. package/src/be/swarm-config-guard.ts +1 -0
  109. package/src/commands/profile-sync.ts +5 -3
  110. package/src/commands/runner.ts +6 -2
  111. package/src/http/mcp-oauth.ts +6 -13
  112. package/src/http/pages-public.ts +3 -2
  113. package/src/http/pages.ts +2 -1
  114. package/src/http/route-def.ts +7 -6
  115. package/src/http/script-connection-proxy.ts +51 -4
  116. package/src/http/script-connections.ts +5 -2
  117. package/src/http/session-cost-recompute.ts +12 -2
  118. package/src/http/session-data.ts +4 -0
  119. package/src/http/webhooks.ts +24 -1
  120. package/src/jira/adf.ts +3 -1
  121. package/src/kv-reserved-namespaces.ts +2 -0
  122. package/src/oauth/mcp-wrapper.ts +10 -6
  123. package/src/otel-impl.ts +2 -1
  124. package/src/prompts/base-prompt.ts +3 -3
  125. package/src/providers/acp-targets.ts +1 -1
  126. package/src/providers/amp-adapter.ts +1 -1
  127. package/src/providers/claude-adapter.ts +27 -2
  128. package/src/providers/claude-flag-settings.ts +121 -0
  129. package/src/providers/claude-sdk-session.ts +7 -0
  130. package/src/providers/dsh-adapter.ts +1 -1
  131. package/src/providers/opencode-adapter.ts +26 -12
  132. package/src/providers/opencode-billing.ts +86 -0
  133. package/src/providers/opencode-swarm-plugin.ts +20 -0
  134. package/src/providers/pricing-sources.md +4 -1
  135. package/src/providers/types.ts +5 -0
  136. package/src/scripts-runtime/api-client.ts +15 -1
  137. package/src/scripts-runtime/api-types.ts +9 -1
  138. package/src/scripts-runtime/ctx.ts +1 -1
  139. package/src/scripts-runtime/mcp-client.ts +30 -19
  140. package/src/slack/actions.ts +29 -1
  141. package/src/slack/app.ts +14 -2
  142. package/src/slack/assistant.ts +36 -2
  143. package/src/slack/channel-join.ts +3 -16
  144. package/src/slack/commands.ts +9 -1
  145. package/src/slack/external-channel-egress.ts +113 -0
  146. package/src/slack/external-channel.ts +309 -0
  147. package/src/slack/handlers.ts +61 -0
  148. package/src/slack/render-v2.ts +40 -47
  149. package/src/slack/work-objects.ts +5 -0
  150. package/src/tasks/context-key.ts +34 -1
  151. package/src/telemetry.ts +2 -1
  152. package/src/tests/apps-catalog-feedback.test.ts +310 -0
  153. package/src/tests/apps-catalog-inputs.test.ts +70 -0
  154. package/src/tests/apps-catalog-table.test.ts +113 -0
  155. package/src/tests/azure-devops-boards-sync.test.ts +584 -0
  156. package/src/tests/azure-devops-html.test.ts +13 -0
  157. package/src/tests/azure-devops-webhook-malformed.test.ts +4 -0
  158. package/src/tests/claude-adapter-binary.test.ts +139 -0
  159. package/src/tests/claude-flag-settings.test.ts +106 -0
  160. package/src/tests/claude-sdk-lifecycle.test.ts +142 -1
  161. package/src/tests/claude-sdk-process.fixture.ts +7 -0
  162. package/src/tests/context-key.test.ts +32 -0
  163. package/src/tests/deferred-task-wake.test.ts +52 -4
  164. package/src/tests/docs-index-footprint.test.js +3 -3
  165. package/src/tests/dsh-adapter.test.ts +1 -1
  166. package/src/tests/fixtures/azure-boards/workitem.commented.json +89 -0
  167. package/src/tests/fixtures/azure-boards/workitem.created.json +81 -0
  168. package/src/tests/fixtures/azure-boards/workitem.deleted.json +70 -0
  169. package/src/tests/fixtures/azure-boards/workitem.restored.json +82 -0
  170. package/src/tests/fixtures/azure-boards/workitem.updated.json +130 -0
  171. package/src/tests/fixtures/catalog-feedback-definition.json.txt +860 -0
  172. package/src/tests/fixtures/catalog-inputs-definition.json.txt +910 -0
  173. package/src/tests/fixtures/catalog-table-definition.json.txt +468 -0
  174. package/src/tests/fixtures/runner-identity-refresh.ts +3 -0
  175. package/src/tests/node-env-runtime.test.ts +98 -0
  176. package/src/tests/opencode-adapter.test.ts +132 -1
  177. package/src/tests/opencode-billing.test.ts +28 -0
  178. package/src/tests/runner-identity-refresh.test.ts +3 -0
  179. package/src/tests/script-connections-sql.test.ts +675 -0
  180. package/src/tests/script-connections.test.ts +5 -1
  181. package/src/tests/session-cost-recompute-unit.test.ts +48 -0
  182. package/src/tests/slack-channel-join.test.ts +4 -1
  183. package/src/tests/slack-external-channel-config.test.ts +65 -0
  184. package/src/tests/slack-external-channel-egress.test.ts +237 -0
  185. package/src/tests/slack-external-channel-guard.test.ts +280 -0
  186. package/src/tests/slack-external-channel-tools.test.ts +173 -0
  187. package/src/tests/slack-external-channel.test.ts +370 -0
  188. package/src/tests/slack-render-v2.test.ts +86 -10
  189. package/src/tests/spec-base-url.test.ts +16 -1
  190. package/src/tests/vendored-openapi.test.ts +16 -1
  191. package/src/tools/defer-task.ts +17 -0
  192. package/src/tools/slack-post.ts +6 -0
  193. package/src/tools/slack-read.ts +8 -0
  194. package/src/tools/slack-reply.ts +6 -0
  195. package/src/tools/slack-start-thread.ts +6 -0
  196. package/src/tools/slack-update.ts +6 -0
  197. package/src/tools/slack-upload-file.ts +6 -0
  198. package/src/utils/node-env.ts +24 -0
  199. package/templates/skills/apps/SKILL.md +742 -0
  200. package/templates/skills/apps/content.md +52 -21
  201. package/templates/skills/qa-loom/config.json +14 -0
  202. package/templates/skills/qa-loom/content.md +187 -0
  203. package/templates/skills/qa-loom/files/build-loom.mjs +221 -0
  204. package/templates/skills/qa-loom/files/run-qa.sh +57 -0
  205. package/templates/skills/slack-interaction/content.md +4 -0
  206. package/dist/{azure-openai-responses-ap1gwxgr.js → azure-openai-responses-ygfreq4t.js} +5 -5
  207. package/dist/{cli-4fnb6884.js → cli-h7k0xtry.js} +3 -3
  208. package/dist/{cli-5rqrj7q0.js → cli-pw7ebjdt.js} +0 -0
  209. package/dist/{google-generative-ai-7pavrbv7.js → google-generative-ai-szdxbpqg.js} +1 -1
  210. package/dist/{google-vertex-3f1jk41f.js → google-vertex-qzw3p36d.js} +1 -1
  211. package/dist/{openai-codex-responses-33qhkkdy.js → openai-codex-responses-3bk0grnr.js} +4 -4
  212. package/dist/{openai-completions-s88xm3ns.js → openai-completions-5d4jpakc.js} +9 -9
  213. package/dist/{openai-responses-7xd2f2e2.js → openai-responses-krb51f59.js} +5 -5
  214. package/dist/{pi-messages-xszk613n.js → pi-messages-x9gzynm1.js} +3 -3
@@ -3,13 +3,13 @@ import {
3
3
  applyConfiguredOptions,
4
4
  sanitizeAcpConfigOptions,
5
5
  toAcpMcpServers
6
- } from "./cli-c2pq2rjb.js";
7
- import"./cli-j1pmc07z.js";
8
- import"./cli-bf7485pm.js";
6
+ } from "./cli-bv2etw2y.js";
7
+ import"./cli-saqyage0.js";
8
+ import"./cli-na2pxe4f.js";
9
9
  import"./cli-7a0sde2x.js";
10
10
  import"./cli-tng3131n.js";
11
11
  import"./cli-zm7njwzd.js";
12
- import"./cli-cf69s3ew.js";
12
+ import"./cli-nwrdx840.js";
13
13
  import"./cli-hp1n6zq3.js";
14
14
  import"./cli-ptcz1cqy.js";
15
15
  import"./cli-7avy4v8w.js";
@@ -18,17 +18,17 @@ import"./cli-dpvkp2et.js";
18
18
  import"./cli-104zsxba.js";
19
19
  import"./cli-re8z5p8p.js";
20
20
  import"./cli-zt3w1cn1.js";
21
- import"./cli-xczpdp9e.js";
21
+ import"./cli-6thk4jz3.js";
22
22
  import"./cli-7jykv7ef.js";
23
- import"./cli-cceskcvt.js";
23
+ import"./cli-b07hr3bt.js";
24
24
  import"./cli-h6vtvt5c.js";
25
25
  import"./cli-2x0e561b.js";
26
26
  import"./cli-bsakbbkm.js";
27
27
  import"./cli-zxg80zs9.js";
28
28
  import"./cli-ydt3zkwv.js";
29
29
  import"./cli-61625k3x.js";
30
- import"./cli-btbzvq95.js";
31
30
  import"./cli-1m2e086m.js";
31
+ import"./cli-btbzvq95.js";
32
32
  import"./cli-p7z6q2m6.js";
33
33
  import"./cli-wnb9b2g3.js";
34
34
  import"./cli-tadfgd0t.js";
@@ -40,7 +40,7 @@ import"./cli-a35hzdve.js";
40
40
  import"./cli-014vns2y.js";
41
41
  import"./cli-sd0mxa3c.js";
42
42
  import"./cli-w5e1d1vv.js";
43
- import"./cli-esnpehf5.js";
43
+ import"./cli-5er5gjbm.js";
44
44
  import"./cli-ej6gbxfb.js";
45
45
  import"./cli-d161g69q.js";
46
46
  import"./cli-bc05qbss.js";
@@ -1,31 +1,32 @@
1
1
  import {
2
2
  resolveSlackUserId
3
- } from "./cli-hwwvy36w.js";
3
+ } from "./cli-c3rk1v0x.js";
4
4
  import {
5
5
  createTaskWithSiblingAwareness
6
- } from "./cli-ztrv9y21.js";
6
+ } from "./cli-rfz2ve55.js";
7
7
  import"./cli-451ks6aw.js";
8
8
  import"./cli-2bw3w47j.js";
9
9
  import"./cli-104zsxba.js";
10
10
  import"./cli-re8z5p8p.js";
11
- import"./cli-6jb2rf77.js";
12
- import"./cli-gp1rtyvk.js";
13
- import"./cli-r8smj8b8.js";
14
- import"./cli-j6kpj9az.js";
11
+ import"./cli-42qhyvwx.js";
12
+ import"./cli-9xf7fdtp.js";
13
+ import"./cli-jpc4r224.js";
14
+ import"./cli-7a93cv8c.js";
15
15
  import"./cli-epan13p1.js";
16
16
  import"./cli-zt3w1cn1.js";
17
- import"./cli-388egyf6.js";
17
+ import"./cli-w1apjecb.js";
18
18
  import"./cli-mzfth0bp.js";
19
- import"./cli-kb4ehzx5.js";
20
- import"./cli-aspcaef3.js";
21
- import"./cli-xczpdp9e.js";
19
+ import"./cli-1w0vj3gw.js";
20
+ import"./cli-6r2f7edk.js";
21
+ import"./cli-6thk4jz3.js";
22
22
  import"./cli-7jykv7ef.js";
23
- import"./cli-cceskcvt.js";
23
+ import"./cli-b07hr3bt.js";
24
24
  import"./cli-h6vtvt5c.js";
25
25
  import"./cli-2x0e561b.js";
26
26
  import"./cli-fad8m16k.js";
27
27
  import"./cli-bsakbbkm.js";
28
28
  import"./cli-zxg80zs9.js";
29
+ import"./cli-51tf7ac3.js";
29
30
  import"./cli-ydt3zkwv.js";
30
31
  import {
31
32
  buildCancelledBlocks,
@@ -36,21 +37,24 @@ import {
36
37
  ignoreSlackInbound,
37
38
  isSlackRenderV2Enabled,
38
39
  noteSlackInboundSideEffect
39
- } from "./cli-9xsmdpdt.js";
40
+ } from "./cli-tcc4wd5d.js";
40
41
  import"./cli-q51yprfq.js";
41
42
  import"./cli-3er6gcsn.js";
42
43
  import"./cli-yatxqynm.js";
43
- import"./cli-51tf7ac3.js";
44
- import"./cli-e0a9sk00.js";
44
+ import {
45
+ EXTERNAL_CHANNEL_BLOCKED_REPLY,
46
+ shouldBlockChannel
47
+ } from "./cli-v3zhnxsb.js";
48
+ import"./cli-3nxdmjrc.js";
45
49
  import"./cli-cd0hv9nh.js";
46
50
  import"./cli-61625k3x.js";
47
- import"./cli-btbzvq95.js";
48
51
  import"./cli-1m2e086m.js";
52
+ import"./cli-btbzvq95.js";
49
53
  import"./cli-p7z6q2m6.js";
50
54
  import"./cli-wnb9b2g3.js";
51
55
  import"./cli-bd957dgb.js";
52
56
  import"./cli-pzxba7gw.js";
53
- import"./cli-qsztpfry.js";
57
+ import"./cli-anzdk0z4.js";
54
58
  import"./cli-7pz3b7x5.js";
55
59
  import {
56
60
  cancelTask,
@@ -60,10 +64,10 @@ import {
60
64
  init_context_key,
61
65
  init_db1 as init_db,
62
66
  slackContextKey
63
- } from "./cli-tgpfnm6r.js";
67
+ } from "./cli-fmhj1ehj.js";
64
68
  import"./cli-ywm1azg9.js";
65
69
  import"./cli-hsem16hb.js";
66
- import"./cli-nyhb1r6x.js";
70
+ import"./cli-r4fqfpwf.js";
67
71
  import"./cli-7mm2r1kp.js";
68
72
  import"./cli-dmtrxqhg.js";
69
73
  import"./cli-mvzyxwg3.js";
@@ -76,7 +80,8 @@ import"./cli-a35hzdve.js";
76
80
  import"./cli-014vns2y.js";
77
81
  import"./cli-sd0mxa3c.js";
78
82
  import"./cli-w5e1d1vv.js";
79
- import"./cli-esnpehf5.js";
83
+ import"./cli-p0sg24zp.js";
84
+ import"./cli-5er5gjbm.js";
80
85
  import"./cli-81r1wjyv.js";
81
86
  import"./cli-zf8jjwex.js";
82
87
  import"./cli-gd4favx9.js";
@@ -88,6 +93,17 @@ import"./cli-bc05qbss.js";
88
93
  // src/slack/actions.ts
89
94
  init_db();
90
95
  init_context_key();
96
+ async function postExternalChannelNotice(client, channelId, userId) {
97
+ try {
98
+ await client.chat.postEphemeral({
99
+ channel: channelId,
100
+ user: userId,
101
+ text: EXTERNAL_CHANNEL_BLOCKED_REPLY
102
+ });
103
+ } catch (error) {
104
+ console.error("[Slack] Failed to post external channel notice:", error);
105
+ }
106
+ }
91
107
  function registerActionHandlers(app) {
92
108
  app.action("view_task_logs", async ({ ack }) => {
93
109
  await ack();
@@ -102,6 +118,11 @@ function registerActionHandlers(app) {
102
118
  const triggerId = "trigger_id" in body ? body.trigger_id : undefined;
103
119
  if (!triggerId)
104
120
  return;
121
+ const channelId = "channel" in body ? body.channel?.id : undefined;
122
+ if (channelId && await shouldBlockChannel(client, channelId)) {
123
+ await postExternalChannelNotice(client, channelId, body.user.id);
124
+ return ignoreSlackInbound("external_channel");
125
+ }
105
126
  try {
106
127
  await client.views.open({
107
128
  trigger_id: triggerId,
@@ -144,6 +165,10 @@ function registerActionHandlers(app) {
144
165
  if (!originalTask || !originalTask.slackChannelId) {
145
166
  return ignoreSlackInbound("follow_up_target_missing");
146
167
  }
168
+ if (await shouldBlockChannel(client, originalTask.slackChannelId)) {
169
+ await postExternalChannelNotice(client, originalTask.slackChannelId, body.user.id);
170
+ return ignoreSlackInbound("external_channel");
171
+ }
147
172
  const lead = await getLeadAgent();
148
173
  const requestedByUserId = await resolveSlackUserId(client, body.user.id, {
149
174
  sampleEventType: "view_submission",
@@ -7,7 +7,7 @@ import {
7
7
  parseAmpThreadCost,
8
8
  parseAmpThreadUsage,
9
9
  resolveAmpBinary
10
- } from "./cli-04emfe2q.js";
10
+ } from "./cli-5wpw4rab.js";
11
11
  import"./cli-ptcz1cqy.js";
12
12
  import"./cli-7avy4v8w.js";
13
13
  import"./cli-tmhsxhb8.js";
@@ -3,14 +3,14 @@ import {
3
3
  hasCopilotVisionInput
4
4
  } from "./cli-67bad0ze.js";
5
5
  import {
6
- retryProviderRequest
7
- } from "./cli-zy39d433.js";
6
+ Anthropic
7
+ } from "./cli-pw7ebjdt.js";
8
8
  import {
9
9
  getPiUserAgent
10
10
  } from "./cli-et1bbwqf.js";
11
11
  import {
12
- Anthropic
13
- } from "./cli-5rqrj7q0.js";
12
+ retryProviderRequest
13
+ } from "./cli-zy39d433.js";
14
14
  import {
15
15
  ANTHROPIC_FEDERATION_RULE_ID_ENV,
16
16
  ANTHROPIC_IDENTITY_TOKEN_FILE_ENV,
@@ -33,13 +33,13 @@ import {
33
33
  import {
34
34
  headersToRecord
35
35
  } from "./cli-7kyk9jr3.js";
36
- import {
37
- getProviderEnvValue
38
- } from "./cli-btbzvq95.js";
39
36
  import {
40
37
  parseJsonWithRepair,
41
38
  parseStreamingJson
42
39
  } from "./cli-1m2e086m.js";
40
+ import {
41
+ getProviderEnvValue
42
+ } from "./cli-btbzvq95.js";
43
43
  import {
44
44
  calculateCost,
45
45
  getCurrentTools,
@@ -3,16 +3,17 @@ import {
3
3
  initSlackApp,
4
4
  startSlackApp,
5
5
  stopSlackApp
6
- } from "./cli-9xsmdpdt.js";
6
+ } from "./cli-tcc4wd5d.js";
7
7
  import"./cli-q51yprfq.js";
8
8
  import"./cli-3er6gcsn.js";
9
9
  import"./cli-yatxqynm.js";
10
+ import"./cli-v3zhnxsb.js";
10
11
  import"./cli-bd957dgb.js";
11
12
  import"./cli-pzxba7gw.js";
12
- import"./cli-tgpfnm6r.js";
13
+ import"./cli-fmhj1ehj.js";
13
14
  import"./cli-ywm1azg9.js";
14
15
  import"./cli-hsem16hb.js";
15
- import"./cli-nyhb1r6x.js";
16
+ import"./cli-r4fqfpwf.js";
16
17
  import"./cli-7mm2r1kp.js";
17
18
  import"./cli-dmtrxqhg.js";
18
19
  import"./cli-mvzyxwg3.js";
@@ -25,7 +26,8 @@ import"./cli-a35hzdve.js";
25
26
  import"./cli-014vns2y.js";
26
27
  import"./cli-sd0mxa3c.js";
27
28
  import"./cli-w5e1d1vv.js";
28
- import"./cli-esnpehf5.js";
29
+ import"./cli-p0sg24zp.js";
30
+ import"./cli-5er5gjbm.js";
29
31
  import"./cli-zf8jjwex.js";
30
32
  import"./cli-gd4favx9.js";
31
33
  import"./cli-ej6gbxfb.js";
@@ -2,40 +2,41 @@ import {
2
2
  bufferThreadMessage,
3
3
  getBufferMessageCount,
4
4
  wasEventSeen
5
- } from "./cli-1hgat6pa.js";
5
+ } from "./cli-rfs4vddv.js";
6
6
  import {
7
7
  resolveSlackUserId,
8
8
  rewriteSlackMentions
9
- } from "./cli-hwwvy36w.js";
9
+ } from "./cli-c3rk1v0x.js";
10
10
  import {
11
11
  buildEffectiveText,
12
12
  createSlackTaskWithFiles,
13
13
  fetchSlackFiles,
14
14
  hasOtherUserMention,
15
15
  notifySlackFileFailures
16
- } from "./cli-ztrv9y21.js";
16
+ } from "./cli-rfz2ve55.js";
17
17
  import"./cli-451ks6aw.js";
18
18
  import"./cli-2bw3w47j.js";
19
19
  import"./cli-104zsxba.js";
20
20
  import"./cli-re8z5p8p.js";
21
- import"./cli-6jb2rf77.js";
22
- import"./cli-gp1rtyvk.js";
23
- import"./cli-r8smj8b8.js";
24
- import"./cli-j6kpj9az.js";
21
+ import"./cli-42qhyvwx.js";
22
+ import"./cli-9xf7fdtp.js";
23
+ import"./cli-jpc4r224.js";
24
+ import"./cli-7a93cv8c.js";
25
25
  import"./cli-epan13p1.js";
26
26
  import"./cli-zt3w1cn1.js";
27
- import"./cli-388egyf6.js";
27
+ import"./cli-w1apjecb.js";
28
28
  import"./cli-mzfth0bp.js";
29
- import"./cli-kb4ehzx5.js";
30
- import"./cli-aspcaef3.js";
31
- import"./cli-xczpdp9e.js";
29
+ import"./cli-1w0vj3gw.js";
30
+ import"./cli-6r2f7edk.js";
31
+ import"./cli-6thk4jz3.js";
32
32
  import"./cli-7jykv7ef.js";
33
- import"./cli-cceskcvt.js";
33
+ import"./cli-b07hr3bt.js";
34
34
  import"./cli-h6vtvt5c.js";
35
35
  import"./cli-2x0e561b.js";
36
36
  import"./cli-fad8m16k.js";
37
37
  import"./cli-bsakbbkm.js";
38
38
  import"./cli-zxg80zs9.js";
39
+ import"./cli-51tf7ac3.js";
39
40
  import"./cli-ydt3zkwv.js";
40
41
  import {
41
42
  ackSlackMessage,
@@ -47,21 +48,23 @@ import {
47
48
  noteSlackInboundSideEffect,
48
49
  reportSlackInboundFailure,
49
50
  require_dist
50
- } from "./cli-9xsmdpdt.js";
51
+ } from "./cli-tcc4wd5d.js";
51
52
  import"./cli-q51yprfq.js";
52
53
  import"./cli-3er6gcsn.js";
53
54
  import"./cli-yatxqynm.js";
54
- import"./cli-51tf7ac3.js";
55
- import"./cli-e0a9sk00.js";
55
+ import {
56
+ shouldBlockChannel
57
+ } from "./cli-v3zhnxsb.js";
58
+ import"./cli-3nxdmjrc.js";
56
59
  import"./cli-cd0hv9nh.js";
57
60
  import"./cli-61625k3x.js";
58
- import"./cli-btbzvq95.js";
59
61
  import"./cli-1m2e086m.js";
62
+ import"./cli-btbzvq95.js";
60
63
  import"./cli-p7z6q2m6.js";
61
64
  import"./cli-wnb9b2g3.js";
62
65
  import"./cli-bd957dgb.js";
63
66
  import"./cli-pzxba7gw.js";
64
- import"./cli-qsztpfry.js";
67
+ import"./cli-anzdk0z4.js";
65
68
  import"./cli-7pz3b7x5.js";
66
69
  import {
67
70
  getAgentWorkingOnThread,
@@ -71,10 +74,10 @@ import {
71
74
  init_db1 as init_db,
72
75
  reactionName,
73
76
  slackContextKey
74
- } from "./cli-tgpfnm6r.js";
77
+ } from "./cli-fmhj1ehj.js";
75
78
  import"./cli-ywm1azg9.js";
76
79
  import"./cli-hsem16hb.js";
77
- import"./cli-nyhb1r6x.js";
80
+ import"./cli-r4fqfpwf.js";
78
81
  import"./cli-7mm2r1kp.js";
79
82
  import"./cli-dmtrxqhg.js";
80
83
  import"./cli-mvzyxwg3.js";
@@ -90,7 +93,8 @@ import"./cli-a35hzdve.js";
90
93
  import"./cli-014vns2y.js";
91
94
  import"./cli-sd0mxa3c.js";
92
95
  import"./cli-w5e1d1vv.js";
93
- import"./cli-esnpehf5.js";
96
+ import"./cli-p0sg24zp.js";
97
+ import"./cli-5er5gjbm.js";
94
98
  import"./cli-81r1wjyv.js";
95
99
  import"./cli-zf8jjwex.js";
96
100
  import"./cli-gd4favx9.js";
@@ -114,9 +118,19 @@ var import_bolt = __toESM(require_dist(), 1);
114
118
  init_env_flag();
115
119
  var isAdditiveSlack = () => isEnvFlagEnabled("ADDITIVE_SLACK", false);
116
120
  var cachedBotUserId = null;
121
+ async function isExternalAssistantThread(client, channelId, body) {
122
+ const envelope = body.is_ext_shared_channel;
123
+ if (!await shouldBlockChannel(client, channelId, envelope))
124
+ return false;
125
+ console.log(`[Slack] Ignoring assistant thread event in external channel ${channelId}`);
126
+ return true;
127
+ }
117
128
  function createAssistant() {
118
129
  return new import_bolt.Assistant({
119
- threadStarted: async ({ say, setSuggestedPrompts, saveThreadContext }) => {
130
+ threadStarted: async ({ event, body, client, say, setSuggestedPrompts, saveThreadContext }) => {
131
+ if (await isExternalAssistantThread(client, event.assistant_thread.channel_id, body)) {
132
+ return ignoreSlackInbound("external_channel");
133
+ }
120
134
  try {
121
135
  await saveThreadContext();
122
136
  if (!isSlackRenderV2Enabled()) {
@@ -136,7 +150,10 @@ function createAssistant() {
136
150
  reportSlackInboundFailure("assistant_thread_started_error");
137
151
  }
138
152
  },
139
- threadContextChanged: async ({ saveThreadContext }) => {
153
+ threadContextChanged: async ({ event, body, client, saveThreadContext }) => {
154
+ if (await isExternalAssistantThread(client, event.assistant_thread.channel_id, body)) {
155
+ return ignoreSlackInbound("external_channel");
156
+ }
140
157
  await saveThreadContext();
141
158
  },
142
159
  userMessage: async ({ message, body, say, setStatus, setTitle, getThreadContext, client }) => {
@@ -145,6 +162,11 @@ function createAssistant() {
145
162
  console.log(`[Slack] dropping Slack retry: event_id=${eventId}`);
146
163
  return ignoreSlackInbound("duplicate_event");
147
164
  }
165
+ const externalCheckChannel = message.channel;
166
+ if (externalCheckChannel && await shouldBlockChannel(client, externalCheckChannel, body.is_ext_shared_channel)) {
167
+ console.log(`[Slack] Ignoring message in external channel ${externalCheckChannel}`);
168
+ return ignoreSlackInbound("external_channel");
169
+ }
148
170
  let statusThread;
149
171
  const safeSetStatus = async (status) => {
150
172
  if (statusThread && isSlackRenderV2Enabled() && await markSlackSessionProcessing({ ...statusThread, client })) {
@@ -4,10 +4,10 @@ import {
4
4
  getDbClient,
5
5
  init_db1 as init_db,
6
6
  init_embeddings
7
- } from "./cli-tgpfnm6r.js";
7
+ } from "./cli-fmhj1ehj.js";
8
8
  import"./cli-ywm1azg9.js";
9
9
  import"./cli-hsem16hb.js";
10
- import"./cli-nyhb1r6x.js";
10
+ import"./cli-r4fqfpwf.js";
11
11
  import"./cli-7mm2r1kp.js";
12
12
  import"./cli-dmtrxqhg.js";
13
13
  import"./cli-mvzyxwg3.js";
@@ -20,7 +20,8 @@ import"./cli-a35hzdve.js";
20
20
  import"./cli-014vns2y.js";
21
21
  import"./cli-sd0mxa3c.js";
22
22
  import"./cli-w5e1d1vv.js";
23
- import"./cli-esnpehf5.js";
23
+ import"./cli-p0sg24zp.js";
24
+ import"./cli-5er5gjbm.js";
24
25
  import"./cli-zf8jjwex.js";
25
26
  import"./cli-gd4favx9.js";
26
27
  import"./cli-ej6gbxfb.js";
@@ -6,10 +6,10 @@ import {
6
6
  init_constants,
7
7
  init_db1 as init_db,
8
8
  init_memory
9
- } from "./cli-tgpfnm6r.js";
9
+ } from "./cli-fmhj1ehj.js";
10
10
  import"./cli-ywm1azg9.js";
11
11
  import"./cli-hsem16hb.js";
12
- import"./cli-nyhb1r6x.js";
12
+ import"./cli-r4fqfpwf.js";
13
13
  import"./cli-7mm2r1kp.js";
14
14
  import"./cli-dmtrxqhg.js";
15
15
  import"./cli-mvzyxwg3.js";
@@ -22,7 +22,8 @@ import"./cli-a35hzdve.js";
22
22
  import"./cli-014vns2y.js";
23
23
  import"./cli-sd0mxa3c.js";
24
24
  import"./cli-w5e1d1vv.js";
25
- import"./cli-esnpehf5.js";
25
+ import"./cli-p0sg24zp.js";
26
+ import"./cli-5er5gjbm.js";
26
27
  import"./cli-zf8jjwex.js";
27
28
  import"./cli-gd4favx9.js";
28
29
  import"./cli-ej6gbxfb.js";
@@ -7,13 +7,13 @@ import {
7
7
  init_scrub_json,
8
8
  init_sealed_json,
9
9
  sealJson
10
- } from "./cli-tgpfnm6r.js";
10
+ } from "./cli-fmhj1ehj.js";
11
11
  import"./cli-ywm1azg9.js";
12
12
  import"./cli-hsem16hb.js";
13
13
  import {
14
14
  contentSha256,
15
15
  init_profile_sync
16
- } from "./cli-nyhb1r6x.js";
16
+ } from "./cli-r4fqfpwf.js";
17
17
  import"./cli-7mm2r1kp.js";
18
18
  import"./cli-dmtrxqhg.js";
19
19
  import"./cli-mvzyxwg3.js";
@@ -26,7 +26,8 @@ import"./cli-a35hzdve.js";
26
26
  import"./cli-014vns2y.js";
27
27
  import"./cli-sd0mxa3c.js";
28
28
  import"./cli-w5e1d1vv.js";
29
- import"./cli-esnpehf5.js";
29
+ import"./cli-p0sg24zp.js";
30
+ import"./cli-5er5gjbm.js";
30
31
  import"./cli-zf8jjwex.js";
31
32
  import"./cli-gd4favx9.js";
32
33
  import"./cli-ej6gbxfb.js";
@@ -100,7 +101,7 @@ async function runBootScrubSweep(opts = {}) {
100
101
  console.log(`[${tag}] complete`);
101
102
  const memoryChanged = stats.find((s) => s.table === "agent_memory")?.changed ?? 0;
102
103
  if (memoryChanged > 0 && opts.reembed !== false) {
103
- const { runBootReembed } = await import("./boot-reembed-1de4f4aj.js");
104
+ const { runBootReembed } = await import("./boot-reembed-swwzdgd7.js");
104
105
  await runBootReembed();
105
106
  }
106
107
  return stats;
@@ -1,14 +1,14 @@
1
1
  import {
2
2
  ensurePricingSeeded,
3
3
  ensureRbacSeeded
4
- } from "./cli-6jb2rf77.js";
5
- import"./cli-r8smj8b8.js";
6
- import"./cli-qsztpfry.js";
4
+ } from "./cli-42qhyvwx.js";
5
+ import"./cli-jpc4r224.js";
6
+ import"./cli-anzdk0z4.js";
7
7
  import"./cli-7pz3b7x5.js";
8
- import"./cli-tgpfnm6r.js";
8
+ import"./cli-fmhj1ehj.js";
9
9
  import"./cli-ywm1azg9.js";
10
10
  import"./cli-hsem16hb.js";
11
- import"./cli-nyhb1r6x.js";
11
+ import"./cli-r4fqfpwf.js";
12
12
  import"./cli-7mm2r1kp.js";
13
13
  import"./cli-dmtrxqhg.js";
14
14
  import"./cli-mvzyxwg3.js";
@@ -21,7 +21,8 @@ import"./cli-a35hzdve.js";
21
21
  import"./cli-014vns2y.js";
22
22
  import"./cli-sd0mxa3c.js";
23
23
  import"./cli-w5e1d1vv.js";
24
- import"./cli-esnpehf5.js";
24
+ import"./cli-p0sg24zp.js";
25
+ import"./cli-5er5gjbm.js";
25
26
  import"./cli-zf8jjwex.js";
26
27
  import"./cli-gd4favx9.js";
27
28
  import"./cli-ej6gbxfb.js";
@@ -21,14 +21,14 @@ import {
21
21
  resolveClaudeTrustDirs,
22
22
  runClaudeSessionSummary,
23
23
  withClaudeRouteEnv
24
- } from "./cli-g4f5pj26.js";
25
- import"./cli-g6t9texm.js";
26
- import"./cli-pj6x9qce.js";
24
+ } from "./cli-0a7mm3zp.js";
25
+ import"./cli-wrh08zjd.js";
26
+ import"./cli-0kxf81jj.js";
27
27
  import"./cli-v6vv7dy8.js";
28
28
  import"./cli-q2j38vre.js";
29
29
  import"./cli-tng3131n.js";
30
30
  import"./cli-zm7njwzd.js";
31
- import"./cli-cf69s3ew.js";
31
+ import"./cli-nwrdx840.js";
32
32
  import"./cli-hp1n6zq3.js";
33
33
  import"./cli-ptcz1cqy.js";
34
34
  import"./cli-7avy4v8w.js";
@@ -39,20 +39,20 @@ import"./cli-knd276ed.js";
39
39
  import"./cli-104zsxba.js";
40
40
  import"./cli-re8z5p8p.js";
41
41
  import"./cli-zt3w1cn1.js";
42
- import"./cli-xczpdp9e.js";
42
+ import"./cli-6thk4jz3.js";
43
43
  import"./cli-7jykv7ef.js";
44
- import"./cli-cceskcvt.js";
44
+ import"./cli-b07hr3bt.js";
45
45
  import"./cli-h6vtvt5c.js";
46
46
  import"./cli-2x0e561b.js";
47
47
  import"./cli-bsakbbkm.js";
48
48
  import"./cli-zxg80zs9.js";
49
49
  import"./cli-ydt3zkwv.js";
50
50
  import"./cli-61625k3x.js";
51
- import"./cli-btbzvq95.js";
52
51
  import"./cli-1m2e086m.js";
52
+ import"./cli-btbzvq95.js";
53
53
  import"./cli-p7z6q2m6.js";
54
54
  import"./cli-wnb9b2g3.js";
55
- import"./cli-nyhb1r6x.js";
55
+ import"./cli-r4fqfpwf.js";
56
56
  import"./cli-7mm2r1kp.js";
57
57
  import"./cli-dmtrxqhg.js";
58
58
  import"./cli-mvzyxwg3.js";
@@ -65,7 +65,7 @@ import"./cli-a35hzdve.js";
65
65
  import"./cli-014vns2y.js";
66
66
  import"./cli-sd0mxa3c.js";
67
67
  import"./cli-w5e1d1vv.js";
68
- import"./cli-esnpehf5.js";
68
+ import"./cli-5er5gjbm.js";
69
69
  import"./cli-gd4favx9.js";
70
70
  import"./cli-ej6gbxfb.js";
71
71
  import"./cli-a1b9b32n.js";