@desplega.ai/agent-swarm 1.161.0 → 1.163.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 (251) hide show
  1. package/README.md +4 -2
  2. package/dist/{acp-adapter-xx489vvb.js → acp-adapter-kcgjfkpm.js} +1 -1
  3. package/dist/{actions-ykjkn0m9.js → actions-a0b8h6ed.js} +34 -31
  4. package/dist/{anthropic-messages-5qx80j9k.js → anthropic-messages-8xxrzky9.js} +22 -26
  5. package/dist/{app-0hdqa4k1.js → app-vcj9h5py.js} +13 -11
  6. package/dist/{artifact-3v5t9jtg.js → artifact-fey7dvj9.js} +3 -2
  7. package/dist/{assistant-am2g5g8a.js → assistant-rmqjkt9r.js} +37 -34
  8. package/dist/{azure-openai-responses-fszbkp0e.js → azure-openai-responses-f5cqsyj8.js} +15 -10
  9. package/dist/{boot-reembed-gt5gjkt4.js → boot-reembed-35hsdjh7.js} +12 -10
  10. package/dist/{boot-reembed-xy9t7avg.js → boot-reembed-8wbky6be.js} +13 -11
  11. package/dist/{boot-scrub-logs-9x0985y5.js → boot-scrub-logs-mc0cj8cw.js} +9 -7
  12. package/dist/{boot-seeds-trv0d4vg.js → boot-seeds-b4g74mpc.js} +13 -10
  13. package/dist/{claude-adapter-jb6e1e54.js → claude-adapter-gbasvbrn.js} +23 -20
  14. package/dist/{claude-managed-setup-d1q9hv2b.js → claude-managed-setup-pkyrgshb.js} +3 -2
  15. package/dist/{claude-sdk-session-zga700s2.js → claude-sdk-session-zkbb5phc.js} +5565 -5512
  16. package/dist/{cli-9m03pzga.js → cli-0jjdftee.js} +5 -5
  17. package/dist/{cli-qwsnmjdd.js → cli-109n34vn.js} +168 -61
  18. package/dist/{cli-35pj2yva.js → cli-4cwxn7gp.js} +38 -11
  19. package/dist/{cli-ad4qxm6j.js → cli-4dcpaefp.js} +2 -2
  20. package/dist/{cli-82c1pacn.js → cli-4x0csdjq.js} +71 -37
  21. package/dist/{cli-7119ja3w.js → cli-585swr20.js} +2 -2
  22. package/dist/{cli-sqm3r5ps.js → cli-5bcd7sfy.js} +14 -18
  23. package/dist/{cli-we0q7t0e.js → cli-67fh0xdx.js} +137 -64
  24. package/dist/{cli-798vkbks.js → cli-6q18nwg8.js} +2 -2
  25. package/dist/{cli-yrg7c73k.js → cli-7af8yhav.js} +10 -183
  26. package/dist/{cli-r6fsxc76.js → cli-7tre70zp.js} +513 -961
  27. package/dist/{cli-bh7jed3k.js → cli-8ev9xqnx.js} +34 -18
  28. package/dist/{cli-1cz0c18q.js → cli-8hsexrtr.js} +2521 -733
  29. package/dist/{cli-8g6mc14k.js → cli-aezmrnah.js} +16 -5
  30. package/dist/cli-bsky8g7w.js +449 -0
  31. package/dist/{cli-hn04t9db.js → cli-cebmgwsc.js} +14 -10
  32. package/dist/{cli-cfkrztza.js → cli-cvatsam7.js} +2 -2
  33. package/dist/{cli-2658f6at.js → cli-cvk6yzw5.js} +6 -8
  34. package/dist/{cli-hgmnf38m.js → cli-e2e7m2eb.js} +1 -1
  35. package/dist/{cli-ptr8h7kp.js → cli-eg0b3p0k.js} +5 -218
  36. package/dist/{cli-3zc55ctx.js → cli-esa2g8rn.js} +2 -2
  37. package/dist/{cli-0c7ata9h.js → cli-g4j2m281.js} +6 -6
  38. package/dist/{cli-zb6xbk61.js → cli-g739zqzt.js} +4 -4
  39. package/dist/{cli-dv6cdjs2.js → cli-gd4favx9.js} +28 -7
  40. package/dist/{cli-5p3x4zna.js → cli-h45y0yh0.js} +2 -2
  41. package/dist/{cli-5nbmpy8w.js → cli-hb5c2x5y.js} +1 -1
  42. package/dist/{cli-ze1d3wzv.js → cli-hktm1f0q.js} +5 -5
  43. package/dist/{cli-jpf7e1zq.js → cli-hmsw1gpy.js} +3 -3
  44. package/dist/{cli-a8c82p2t.js → cli-j9tvyt49.js} +13 -6
  45. package/dist/{cli-kgd3p0bm.js → cli-jv2n14x1.js} +6 -6
  46. package/dist/{cli-rtx9dygp.js → cli-k25mnm7h.js} +1 -1
  47. package/dist/{cli-ybgv4kw2.js → cli-mbssg1xv.js} +9 -2
  48. package/dist/{cli-jsp14b6c.js → cli-mzfth0bp.js} +38 -1
  49. package/dist/{cli-ee8bc46j.js → cli-nt8hecg9.js} +33 -32
  50. package/dist/{cli-9s68w752.js → cli-p0r8sxj5.js} +1 -1
  51. package/dist/{cli-ecfxwnyb.js → cli-p7y8jxd7.js} +1 -1
  52. package/dist/{cli-58e8yr0d.js → cli-pkd6s2wy.js} +4 -2
  53. package/dist/cli-qjjvzwzd.js +222 -0
  54. package/dist/cli-qrgt5bqf.js +189 -0
  55. package/dist/{cli-et8m9xsv.js → cli-rfjw9jw2.js} +22 -10
  56. package/dist/{cli-121ph74b.js → cli-rnyzn44p.js} +1 -1
  57. package/dist/cli-rtekzxtd.js +33 -0
  58. package/dist/{cli-vnnz5ncg.js → cli-s3hwpt9v.js} +95 -16
  59. package/dist/cli-s81xzy0b.js +638 -0
  60. package/dist/{cli-nsdxtcbg.js → cli-tcen9p5w.js} +8 -5
  61. package/dist/{cli-0383bp7f.js → cli-vbz0wywh.js} +575 -122
  62. package/dist/{cli-17xpf7cm.js → cli-vy32s71t.js} +6 -4
  63. package/dist/cli-wbvnn6tk.js +861 -0
  64. package/dist/{cli-akfj32vj.js → cli-xqpk3rp7.js} +5 -4
  65. package/dist/{cli-d56tgd45.js → cli-ykph25en.js} +13 -5
  66. package/dist/{cli-1er0rhz8.js → cli-z5swnjvr.js} +15 -15
  67. package/dist/cli-zp38xvtm.js +9487 -0
  68. package/dist/{cli-phfg8vy8.js → cli-zv5gxh3p.js} +26 -26
  69. package/dist/cli.js +32 -25
  70. package/dist/{cloudflare-workers-ai-system-one-k6fbxw9d.js → cloudflare-workers-ai-system-one-k8ddqjkq.js} +8 -6
  71. package/dist/{codex-adapter-04v97vep.js → codex-adapter-sfg6afn9.js} +13 -13
  72. package/dist/{codex-hook-20me6byw.js → codex-hook-m73jmqgx.js} +19 -3
  73. package/dist/{codex-session-runner-ax69mqq3.js → codex-session-runner-xsxgyed1.js} +13 -13
  74. package/dist/{commands-18gy08n1.js → commands-5tqv6f77.js} +9 -7
  75. package/dist/{db-d2pvjpyt.js → db-k9rc1c3j.js} +11 -7
  76. package/dist/{dispatcher-8wbwyzjg.js → dispatcher-8q94tcgt.js} +33 -30
  77. package/dist/{dsh-adapter-ysqk9snv.js → dsh-adapter-wpze65d4.js} +3 -3
  78. package/dist/{e2b-esmt1r16.js → e2b-gjgdjp91.js} +10 -9
  79. package/dist/{pi-logo-animation-e9a0t68z.js → easter-egg-3d-3w5c2n4c.js} +122 -68
  80. package/dist/{execute-cmagrbrz.js → execute-f50wg9nh.js} +29 -6
  81. package/dist/{google-generative-ai-k6n5nbpp.js → google-generative-ai-jxxpnegy.js} +2 -2
  82. package/dist/{google-vertex-44xxtcvp.js → google-vertex-x7q1angm.js} +5 -5
  83. package/dist/{handlers-6b69m5kp.js → handlers-3t8mmc9f.js} +36 -33
  84. package/dist/{hook-k3mydf2n.js → hook-kvqw3tsq.js} +20 -17
  85. package/dist/{hook-srnkt0hb.js → hook-mxzfhg2n.js} +28 -15
  86. package/dist/{http-hrf80ca1.js → http-1fd52m3b.js} +1484 -259
  87. package/dist/{index-1asbaj62.js → index-8z4jkxdw.js} +35 -32
  88. package/dist/{index-9rxdvj6w.js → index-bgx3rpeg.js} +34 -31
  89. package/dist/{index-k4nj18qs.js → index-hn2bv5eh.js} +12 -10
  90. package/dist/{index-xmevk2b9.js → index-qg0sdgyf.js} +27 -25
  91. package/dist/{index-45evq4ee.js → index-sj0y70m0.js} +33 -30
  92. package/dist/{keepalive-sfdz6ksp.js → keepalive-v5g82q29.js} +11 -9
  93. package/dist/{lead-ej91e9hw.js → lead-e69ggv5r.js} +45 -41
  94. package/dist/{maintenance-80dnd7ke.js → maintenance-m65cjzcn.js} +13 -11
  95. package/dist/{mistral-conversations-pc3ntnxt.js → mistral-conversations-rw7fbt22.js} +4 -4
  96. package/dist/{node-a5e00qhp.js → node-8zkdq42h.js} +834 -833
  97. package/dist/{oauth-refresh-sweep-m1etk2mx.js → oauth-refresh-sweep-3mjzggag.js} +10 -8
  98. package/dist/{onboard-0q8sdfqc.js → onboard-mwz7xqmq.js} +10 -10
  99. package/dist/{openai-codex-responses-n7n683p2.js → openai-codex-responses-efvrgrq3.js} +4 -4
  100. package/dist/{openai-completions-jpaj5g2b.js → openai-completions-bbbrrz4z.js} +12 -8
  101. package/dist/{openai-responses-9a3nme9j.js → openai-responses-9jjyrcm1.js} +15 -10
  102. package/dist/{opencode-adapter-4wcgmvgf.js → opencode-adapter-kb3g6pkf.js} +2 -2
  103. package/dist/{otel-impl-hnqm9mxq.js → otel-impl-xwck38em.js} +5 -5
  104. package/dist/{pi-mono-adapter-d6sqm9wr.js → pi-mono-adapter-z6s1bme2.js} +100 -19
  105. package/dist/{pricing-refresh-y60z64pm.js → pricing-refresh-7w8yq6s4.js} +11 -9
  106. package/dist/rbac-roles-cggpv8g9.js +45 -0
  107. package/dist/{rbac-roles-8pa0754b.js → rbac-roles-t85acbb7.js} +13 -9
  108. package/dist/{registry-v5wytg0s.js → registry-km6t1jd2.js} +1 -1
  109. package/dist/{render-v2-418s1vj7.js → render-v2-qmmnkr7f.js} +13 -11
  110. package/dist/{runtime-3pknc168.js → runtime-vfjsfsc5.js} +4 -4
  111. package/dist/{setup-yghdkj4x.js → setup-99rktr9c.js} +2 -2
  112. package/dist/{virtual-modules-jcceevt5.js → virtual-modules-9bv7ry91.js} +9 -8
  113. package/dist/{work-objects-j1sz20v9.js → work-objects-kvb7jhes.js} +36 -33
  114. package/dist/{worker-d4gcvkjt.js → worker-e1wgr2e1.js} +45 -41
  115. package/openapi.json +1057 -14
  116. package/package.json +13 -6
  117. package/src/be/api-drain.ts +184 -0
  118. package/src/be/db/tasks/read.ts +31 -6
  119. package/src/be/db/tasks/write.ts +5 -4
  120. package/src/be/db.ts +42 -18
  121. package/src/be/mcp-server-checked-update.ts +34 -0
  122. package/src/be/mcp-server-stdio-gate.ts +34 -0
  123. package/src/be/memory/key-browser.ts +304 -0
  124. package/src/be/memory/link-resolver.ts +29 -3
  125. package/src/be/memory/providers/sqlite-store.ts +16 -3
  126. package/src/be/migrations/192_favorites_agent_fs_path.sql +36 -0
  127. package/src/be/migrations/194_memory_orphan_chunks.sql +15 -0
  128. package/src/be/onboarding.ts +7 -1
  129. package/src/be/repo-checked-update.ts +37 -0
  130. package/src/be/repo-merge-policy.ts +15 -0
  131. package/src/be/seed-prompt-templates.ts +1 -0
  132. package/src/be/swarm-config-guard.ts +35 -16
  133. package/src/be/task-citations.ts +11 -5
  134. package/src/be/users.ts +3 -0
  135. package/src/cli.tsx +3 -2
  136. package/src/comb/agent-fs.ts +39 -0
  137. package/src/comb/config.ts +37 -0
  138. package/src/comb/markers.ts +37 -0
  139. package/src/comb/review-batch.ts +486 -0
  140. package/src/comb/templates.ts +88 -0
  141. package/src/commands/context-preamble.ts +4 -1
  142. package/src/commands/hook.ts +2 -1
  143. package/src/commands/runner.ts +262 -68
  144. package/src/commands/templates.ts +10 -0
  145. package/src/extensions/contract-types.generated.ts +1 -1
  146. package/src/fs/agent-fs-provider.ts +106 -2
  147. package/src/heartbeat/heartbeat.ts +4 -0
  148. package/src/hooks/codex-hook.ts +25 -1
  149. package/src/hooks/hook.ts +13 -0
  150. package/src/hooks/pr-body-guard.ts +983 -0
  151. package/src/http/all-routes.ts +1 -0
  152. package/src/http/assets.ts +5 -17
  153. package/src/http/comb.ts +131 -0
  154. package/src/http/core.ts +2 -1
  155. package/src/http/fs.ts +9 -17
  156. package/src/http/index.ts +24 -10
  157. package/src/http/mcp-servers.ts +74 -50
  158. package/src/http/memory.ts +275 -6
  159. package/src/http/onboarding.ts +21 -2
  160. package/src/http/poll.ts +30 -3
  161. package/src/http/realtime.ts +62 -0
  162. package/src/http/repos.ts +58 -18
  163. package/src/http/request-principal.ts +41 -0
  164. package/src/http/status.ts +34 -2
  165. package/src/http/tasks.ts +9 -1
  166. package/src/kv-reserved-namespaces.ts +10 -5
  167. package/src/providers/dsh-adapter.ts +1 -1
  168. package/src/providers/pi-mono-adapter.ts +123 -0
  169. package/src/rbac/legacy-policy.ts +23 -8
  170. package/src/rbac/permissions.ts +26 -1
  171. package/src/realtime/auth.ts +63 -1
  172. package/src/realtime/tickets.ts +52 -0
  173. package/src/realtime/transport.ts +51 -22
  174. package/src/scripts-runtime/types/swarm-extension.d.ts +3 -1
  175. package/src/telemetry-context.ts +175 -0
  176. package/src/telemetry-contract/EVENTS.md +81 -0
  177. package/src/telemetry-contract/SOURCE.json +9 -0
  178. package/src/telemetry-contract/catalog.json +1335 -0
  179. package/src/telemetry-contract/index.ts +60 -0
  180. package/src/telemetry-contract/types.gen.ts +1971 -0
  181. package/src/telemetry-identity.ts +129 -0
  182. package/src/telemetry-snapshot.ts +211 -0
  183. package/src/telemetry-trigger.ts +125 -0
  184. package/src/telemetry-types.typetest.ts +40 -0
  185. package/src/telemetry.ts +271 -67
  186. package/src/tests/api-drain-e2e.test.ts +249 -0
  187. package/src/tests/api-drain-worker-e2e.test.ts +227 -0
  188. package/src/tests/api-drain.test.ts +351 -0
  189. package/src/tests/claude-adapter-binary.test.ts +24 -0
  190. package/src/tests/claude-adapter.test.ts +8 -0
  191. package/src/tests/comb-config-guard.test.ts +38 -0
  192. package/src/tests/comb-links.test.ts +162 -0
  193. package/src/tests/comb-markers.test.ts +68 -0
  194. package/src/tests/comb-review-batch.test.ts +770 -0
  195. package/src/tests/comb-status.test.ts +152 -0
  196. package/src/tests/db-task-read-contract.test.ts +2 -0
  197. package/src/tests/db-task-write-contract.test.ts +1 -0
  198. package/src/tests/docs-index-footprint.test.js +3 -3
  199. package/src/tests/dsh-adapter.test.ts +1 -1
  200. package/src/tests/favorites-agent-fs-path.test.ts +226 -0
  201. package/src/tests/mcp-input-ergonomics.test.ts +15 -10
  202. package/src/tests/mcp-server-stdio-gate.test.ts +438 -0
  203. package/src/tests/memory-http-access.test.ts +221 -0
  204. package/src/tests/memory-keys-endpoint.test.ts +406 -0
  205. package/src/tests/memory-link-resolver.test.ts +34 -0
  206. package/src/tests/memory-store.test.ts +166 -0
  207. package/src/tests/onboarding.test.ts +108 -0
  208. package/src/tests/pi-mono-adapter.test.ts +265 -2
  209. package/src/tests/pr-body-leaks.test.ts +789 -0
  210. package/src/tests/preload.ts +8 -0
  211. package/src/tests/rbac-charact-misc-tools.test.ts +18 -3
  212. package/src/tests/rbac-engine.test.ts +33 -10
  213. package/src/tests/rbac-wire-e2e.test.ts +4 -9
  214. package/src/tests/realtime-room-auth.test.ts +104 -1
  215. package/src/tests/realtime-tickets.test.ts +74 -0
  216. package/src/tests/realtime-transport.test.ts +131 -4
  217. package/src/tests/repo-allow-merge-gate.test.ts +382 -0
  218. package/src/tests/runner-api-drain.test.ts +301 -0
  219. package/src/tests/runner-fallback-output.test.ts +61 -0
  220. package/src/tests/runner-fenced-json-output.test.ts +178 -0
  221. package/src/tests/script-connections.test.ts +4 -0
  222. package/src/tests/send-task-requested-by.test.ts +133 -15
  223. package/src/tests/send-task-requester-gate.test.ts +260 -0
  224. package/src/tests/task-lifecycle-telemetry.test.ts +8 -3
  225. package/src/tests/telemetry-context.test.ts +314 -0
  226. package/src/tests/telemetry-init.test.ts +51 -19
  227. package/src/tests/telemetry-snapshot.test.ts +229 -0
  228. package/src/tests/telemetry-trigger.test.ts +200 -0
  229. package/src/tests/template-registry-helpers.ts +1 -0
  230. package/src/tests/workflow-agent-task-retry.test.ts +363 -0
  231. package/src/tests/workflow-definition-telemetry.test.ts +4 -4
  232. package/src/tests/write-gate.ts +68 -0
  233. package/src/tools/mcp-servers/mcp-server-create.ts +23 -1
  234. package/src/tools/mcp-servers/mcp-server-update.ts +46 -28
  235. package/src/tools/memory-delete.ts +3 -3
  236. package/src/tools/poll-task.ts +20 -1
  237. package/src/tools/repos/update-repo.ts +26 -5
  238. package/src/tools/send-task.ts +33 -2
  239. package/src/tools/task-action.ts +11 -0
  240. package/src/types.ts +2 -1
  241. package/src/utils/api-drain.ts +24 -0
  242. package/src/utils/constants.ts +57 -16
  243. package/src/utils/pr-body-leaks.ts +172 -0
  244. package/src/utils/task-attachment-links.ts +14 -8
  245. package/src/workflows/recovery.ts +26 -1
  246. package/src/workflows/resume.ts +31 -4
  247. package/src/workflows/task-step-routing.ts +75 -2
  248. package/tsconfig.json +3 -0
  249. package/dist/cli-tjf4cn8z.js +0 -9119
  250. package/dist/cli-tsk3nz8a.js +0 -582
  251. package/dist/{cli-t6v2ah3r.js → cli-twrh04ap.js} +3 -3
package/README.md CHANGED
@@ -1,11 +1,12 @@
1
1
  <p align="center"><a href="https://github.com/desplega-ai/agent-swarm/stargazers"><img src="https://img.shields.io/github/stars/desplega-ai/agent-swarm?style=flat-square&color=yellow" alt="GitHub Stars"></a> <a href="https://github.com/desplega-ai/agent-swarm/blob/main/LICENSE"><img src="https://img.shields.io/github/license/desplega-ai/agent-swarm?style=flat-square" alt="MIT License"></a> <a href="https://github.com/desplega-ai/agent-swarm/pulls"><img src="https://img.shields.io/badge/PRs-welcome-brightgreen?style=flat-square" alt="PRs Welcome"></a></p>
2
- <p align="center"><b>An engine to make your company AI Native</b><br/><sub>Built by <a href="https://desplega.sh">desplega.sh</a>.</sub></p>
2
+ <p align="center"><b><a href="https://swar.am">Agent Swarm</a> is the open-source, self-hosted AI company operating system built by <a href="https://desplega.sh">Desplega Labs</a>.</b></p>
3
+ <!-- It is not OpenAI Swarm, OpenAI's experimental educational library, replaced by the OpenAI Agents SDK. -->
3
4
 
4
5
  > [!TIP]
5
6
  > **This repo evolves every single day.** [Watch now →](https://github.com/desplega-ai/agent-swarm/subscription)
6
7
  <p align="center"><video src="https://github.com/user-attachments/assets/8d221239-2340-49a2-aed3-5a474c2229a8" controls muted playsinline width="720"></video></p>
7
8
  <p align="center"><sub>▸ <a href="./assets/agent-swarm-every-team.mp4">every team, one swarm</a> · <a href="./assets/agent-swarm.mp4">daily evolution</a> · <a href="./assets/agent-swarm-slack-to-pr.mp4">slack → pr</a> · <a href="./assets/video-source">Making of</a></sub></p>
8
- <p align="center"><a href="https://agent-swarm.dev"><img src="https://img.shields.io/badge/Website-agent--swarm.dev-000?style=for-the-badge" alt="Website"></a> <a href="https://docs.agent-swarm.dev"><img src="https://img.shields.io/badge/Docs-docs.agent--swarm.dev-amber?style=for-the-badge" alt="Docs"></a> <a href="https://app.agent-swarm.dev"><img src="https://img.shields.io/badge/Dashboard-app.agent--swarm.dev-blue?style=for-the-badge" alt="Dashboard"></a> <a href="https://discord.gg/KZgfyyDVZa"><img src="https://img.shields.io/badge/Discord-Join%20Community-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Join Discord"></a> <a href="https://x.com/desplegalabs"><img src="https://img.shields.io/badge/𝕏-@desplegalabs-000?style=for-the-badge&logo=x&logoColor=white" alt="Follow on X"></a> <a href="https://www.linkedin.com/company/desplega-labs/"><img src="https://img.shields.io/badge/LinkedIn-Desplega%20Labs-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white" alt="Desplega Labs on LinkedIn"></a> <a href="https://www.youtube.com/@desplega-labs/videos"><img src="https://img.shields.io/badge/YouTube-Desplega%20Labs-FF0000?style=for-the-badge&logo=youtube&logoColor=white" alt="Desplega Labs on YouTube"></a></p>
9
+ <p align="center"><a href="https://agent-swarm.dev"><img src="https://img.shields.io/badge/Website-agent--swarm.dev-000?style=for-the-badge" alt="Website"></a> <a href="https://docs.agent-swarm.dev"><img src="https://img.shields.io/badge/Docs-docs.agent--swarm.dev-amber?style=for-the-badge" alt="Docs"></a> <a href="https://app.agent-swarm.dev"><img src="https://img.shields.io/badge/Dashboard-app.agent--swarm.dev-blue?style=for-the-badge" alt="Dashboard"></a> <a href="https://discord.gg/KZgfyyDVZa"><img src="https://img.shields.io/badge/Discord-Join%20Community-5865F2?style=for-the-badge&logo=discord&logoColor=white" alt="Join Discord"></a> <a href="https://x.com/agent__swarm"><img src="https://img.shields.io/badge/𝕏-@agent____swarm-000?style=for-the-badge&logo=x&logoColor=white" alt="Follow on X"></a> <a href="https://www.linkedin.com/company/desplega-labs/"><img src="https://img.shields.io/badge/LinkedIn-Desplega%20Labs-0A66C2?style=for-the-badge&logo=linkedin&logoColor=white" alt="Desplega Labs on LinkedIn"></a> <a href="https://www.youtube.com/@desplega-labs/videos"><img src="https://img.shields.io/badge/YouTube-Desplega%20Labs-FF0000?style=for-the-badge&logo=youtube&logoColor=white" alt="Desplega Labs on YouTube"></a></p>
9
10
 
10
11
  agent-swarm.dev is an open-source operating system for AI work. A lead agent delegates goals to workers such as Claude Code or Codex. Isolated containers, shared memory, tools, schedules, and review gates preserve work across sessions.
11
12
 
@@ -106,6 +107,7 @@ AgentMail archives verified inbound deliveries before acknowledging them and ret
106
107
  ## Learn more
107
108
 
108
109
  - [Getting started](https://docs.agent-swarm.dev/docs/getting-started) · [Architecture](https://docs.agent-swarm.dev/docs/architecture/overview) · [Playbooks](https://docs.agent-swarm.dev/docs/playbooks) · [CLI](https://docs.agent-swarm.dev/docs/reference/cli) · [API reference](https://docs.agent-swarm.dev/docs/api-reference)
110
+ - [Orchestration patterns](./docs/orchestration-patterns.md) — Five patterns for delegating, fanning out, gating on humans, retrying, and persisting multi-step agent work
109
111
  - [Agent templates](https://templates.agent-swarm.dev)
110
112
  - Help: [contact@desplega.sh](mailto:contact@desplega.sh) · [Discord](https://discord.gg/KZgfyyDVZa)
111
113
 
@@ -30,7 +30,7 @@ import {
30
30
  import {
31
31
  init_package,
32
32
  package_default
33
- } from "./cli-a8c82p2t.js";
33
+ } from "./cli-j9tvyt49.js";
34
34
  import {
35
35
  init_secret_scrubber,
36
36
  scrubSecrets
@@ -1,32 +1,31 @@
1
1
  import {
2
2
  resolveSlackUserId
3
- } from "./cli-5p3x4zna.js";
3
+ } from "./cli-h45y0yh0.js";
4
4
  import {
5
5
  createTaskWithSiblingAwareness
6
- } from "./cli-0383bp7f.js";
6
+ } from "./cli-vbz0wywh.js";
7
7
  import"./cli-cat6h73s.js";
8
8
  import"./cli-w0bwte75.js";
9
9
  import"./cli-re8z5p8p.js";
10
- import"./cli-3zc55ctx.js";
11
- import"./cli-1er0rhz8.js";
10
+ import"./cli-rtekzxtd.js";
11
+ import"./cli-esa2g8rn.js";
12
+ import"./cli-p7y8jxd7.js";
13
+ import"./cli-z5swnjvr.js";
12
14
  import"./cli-epan13p1.js";
13
- import"./cli-y89t4nca.js";
14
15
  import"./cli-f14fvzag.js";
15
- import"./cli-sqm3r5ps.js";
16
+ import"./cli-y89t4nca.js";
17
+ import"./cli-5bcd7sfy.js";
16
18
  import"./cli-yy6dew39.js";
17
19
  import"./cli-3dpj7atn.js";
18
20
  import"./cli-2x0e561b.js";
19
- import"./cli-ee8bc46j.js";
21
+ import"./cli-nt8hecg9.js";
20
22
  import"./cli-rb9m6rpe.js";
21
- import"./cli-jsp14b6c.js";
22
- import"./cli-7119ja3w.js";
23
- import"./cli-hgmnf38m.js";
24
- import"./cli-we0q7t0e.js";
25
- import"./cli-tsk3nz8a.js";
26
- import"./cli-ecfxwnyb.js";
23
+ import"./cli-mzfth0bp.js";
24
+ import"./cli-585swr20.js";
25
+ import"./cli-ykph25en.js";
26
+ import"./cli-cebmgwsc.js";
27
+ import"./cli-e2e7m2eb.js";
27
28
  import"./cli-fad8m16k.js";
28
- import"./cli-d56tgd45.js";
29
- import"./cli-hn04t9db.js";
30
29
  import"./cli-bsakbbkm.js";
31
30
  import"./cli-trc24wk2.js";
32
31
  import"./cli-51tf7ac3.js";
@@ -37,11 +36,20 @@ import {
37
36
  getAgentEmoji,
38
37
  getTaskLink,
39
38
  isSlackRenderV2Enabled
40
- } from "./cli-phfg8vy8.js";
39
+ } from "./cli-zv5gxh3p.js";
41
40
  import"./cli-q51yprfq.js";
42
41
  import"./cli-3er6gcsn.js";
43
- import"./cli-2658f6at.js";
42
+ import"./cli-cvk6yzw5.js";
44
43
  import"./cli-yatxqynm.js";
44
+ import"./cli-13hw4z91.js";
45
+ import"./cli-ykk5jaax.js";
46
+ import"./cli-btbzvq95.js";
47
+ import"./cli-1m2e086m.js";
48
+ import"./cli-bzr0ftht.js";
49
+ import"./cli-bd957dgb.js";
50
+ import"./cli-pzxba7gw.js";
51
+ import"./cli-67fh0xdx.js";
52
+ import"./cli-s81xzy0b.js";
45
53
  import {
46
54
  cancelTask,
47
55
  getAgentById,
@@ -50,30 +58,25 @@ import {
50
58
  init_context_key,
51
59
  init_db,
52
60
  slackContextKey
53
- } from "./cli-1cz0c18q.js";
61
+ } from "./cli-8hsexrtr.js";
62
+ import"./cli-xqpk3rp7.js";
54
63
  import"./cli-3qhyh31j.js";
55
- import"./cli-akfj32vj.js";
56
- import"./cli-yrg7c73k.js";
57
- import"./cli-ptr8h7kp.js";
58
- import"./cli-xk79303e.js";
64
+ import"./cli-7af8yhav.js";
59
65
  import"./cli-n7h1kqpf.js";
66
+ import"./cli-eg0b3p0k.js";
67
+ import"./cli-xk79303e.js";
60
68
  import"./cli-ywybs5as.js";
61
- import"./cli-dv6cdjs2.js";
69
+ import"./cli-gd4favx9.js";
70
+ import"./cli-qrgt5bqf.js";
71
+ import"./cli-qjjvzwzd.js";
62
72
  import"./cli-1a2j50m0.js";
63
73
  import"./cli-f9w1semm.js";
64
74
  import"./cli-ej6gbxfb.js";
65
75
  import"./cli-jyy6pm2f.js";
66
76
  import"./cli-sd0mxa3c.js";
67
77
  import"./cli-w5e1d1vv.js";
68
- import"./cli-a8c82p2t.js";
78
+ import"./cli-j9tvyt49.js";
69
79
  import"./cli-nexqx4ve.js";
70
- import"./cli-13hw4z91.js";
71
- import"./cli-btbzvq95.js";
72
- import"./cli-1m2e086m.js";
73
- import"./cli-ykk5jaax.js";
74
- import"./cli-bzr0ftht.js";
75
- import"./cli-bd957dgb.js";
76
- import"./cli-pzxba7gw.js";
77
80
  import"./cli-f7kvq46p.js";
78
81
  import"./cli-zf8jjwex.js";
79
82
  import"./cli-bc05qbss.js";
@@ -4,7 +4,7 @@ import {
4
4
  } from "./cli-67bad0ze.js";
5
5
  import {
6
6
  Anthropic
7
- } from "./cli-tjf4cn8z.js";
7
+ } from "./cli-zp38xvtm.js";
8
8
  import {
9
9
  getPiUserAgent
10
10
  } from "./cli-et1bbwqf.js";
@@ -26,30 +26,28 @@ import {
26
26
  getJsonSchemaToolParameters,
27
27
  resolveJsonSchemaStrictSampling,
28
28
  transformMessages
29
- } from "./cli-ybgv4kw2.js";
29
+ } from "./cli-mbssg1xv.js";
30
30
  import {
31
31
  sanitizeSurrogates
32
32
  } from "./cli-y2apkfe2.js";
33
33
  import {
34
34
  headersToRecord
35
35
  } from "./cli-7kyk9jr3.js";
36
- import {
37
- getProviderEnvValue
38
- } from "./cli-btbzvq95.js";
39
- import {
40
- parseJsonWithRepair,
41
- parseStreamingJson
42
- } from "./cli-1m2e086m.js";
43
36
  import {
44
37
  calculateCost,
45
38
  getCurrentTools,
46
- getDeclaredTools,
47
39
  getInitialSystemMessage,
48
40
  getSystemMessageText,
49
- hasToolRedefinitions,
50
41
  renderSystemMessageUpdate,
51
42
  resolveTranscript
52
43
  } from "./cli-ykk5jaax.js";
44
+ import {
45
+ getProviderEnvValue
46
+ } from "./cli-btbzvq95.js";
47
+ import {
48
+ parseJsonWithRepair,
49
+ parseStreamingJson
50
+ } from "./cli-1m2e086m.js";
53
51
  import {
54
52
  AssistantMessageEventStream,
55
53
  appendAssistantMessageDiagnostic
@@ -144,7 +142,7 @@ var INTERLEAVED_THINKING_BETA = "interleaved-thinking-2025-05-14";
144
142
  var SERVER_SIDE_FALLBACK_BETA = "server-side-fallback-2026-07-01";
145
143
  var MID_CONVERSATION_OUTPUT_CONFIG_BETA = "mid-conversation-output-config-2026-07-01";
146
144
  var THINKING_BINDING_CONTROLS_BETA = "thinking-binding-controls-2026-08-01";
147
- var MID_CONVERSATION_TOOL_CHANGES_BETA = "mid-conversation-tool-changes-2026-07-01";
145
+ var INLINE_TOOLS_BETA = "inline-tools-2026-09-15";
148
146
  var DEFERRED_TOOL_PLACEHOLDER = {
149
147
  name: "__pi_deferred_placeholder__",
150
148
  description: "Reserved placeholder. Never available. Never call this.",
@@ -804,7 +802,7 @@ function getBetaFeatures(model, context, isOAuthToken2, nativeToolChanges, optio
804
802
  features.push(MID_CONVERSATION_OUTPUT_CONFIG_BETA, THINKING_BINDING_CONTROLS_BETA);
805
803
  }
806
804
  if (nativeToolChanges)
807
- features.push(MID_CONVERSATION_TOOL_CHANGES_BETA);
805
+ features.push(INLINE_TOOLS_BETA);
808
806
  return [...new Set(features)];
809
807
  }
810
808
  function buildParams(model, context, isOAuthToken2, options) {
@@ -815,8 +813,8 @@ function buildParams(model, context, isOAuthToken2, options) {
815
813
  const transformedMessages = transformMessages(context.messages, model, normalizeToolCallId);
816
814
  const conversationMessages = initialSystemMessage ? transformedMessages.slice(1) : transformedMessages;
817
815
  const initialTools = initialSystemMessage?.toolsAdded ?? [];
818
- const nativeToolChanges = compat.supportsMidConvoSystemMessages && compat.supportsMidConvoToolChanges && initialTools.length > 0 && !hasToolRedefinitions(context.messages);
819
- const converted = convertMessages(conversationMessages, isOAuthToken2, cacheControl, compat.allowEmptySignature, model.compat?.supportsMidConvoEffort === true ? model.provider : undefined, nativeToolChanges);
816
+ const nativeToolChanges = compat.supportsMidConvoSystemMessages && compat.supportsMidConvoToolChanges && initialTools.length > 0;
817
+ const converted = convertMessages(conversationMessages, isOAuthToken2, cacheControl, compat.allowEmptySignature, model.compat?.supportsMidConvoEffort === true ? model.provider : undefined, nativeToolChanges ? (tools) => convertTools(tools, isOAuthToken2, compat.supportsEagerToolInputStreaming, compat.supportsStrictTools) : undefined);
820
818
  const activeEffort = options?.effort ?? "high";
821
819
  const betaFeatures = getBetaFeatures(model, context, isOAuthToken2, nativeToolChanges, options);
822
820
  const params = {
@@ -855,12 +853,9 @@ function buildParams(model, context, isOAuthToken2, options) {
855
853
  }
856
854
  const toolCacheControl = compat.supportsCacheControlOnTools ? cacheControl : undefined;
857
855
  if (nativeToolChanges) {
858
- const initialNames = new Set(initialTools.map((tool) => tool.name));
859
- const laterTools = getDeclaredTools(context.messages).filter((tool) => !initialNames.has(tool.name));
860
856
  params.tools = [
861
857
  ...convertTools(initialTools, isOAuthToken2, compat.supportsEagerToolInputStreaming, compat.supportsStrictTools, toolCacheControl),
862
- DEFERRED_TOOL_PLACEHOLDER,
863
- ...convertTools(laterTools, isOAuthToken2, compat.supportsEagerToolInputStreaming, compat.supportsStrictTools).map((tool) => ({ ...tool, defer_loading: true }))
858
+ DEFERRED_TOOL_PLACEHOLDER
864
859
  ];
865
860
  } else {
866
861
  const tools = getCurrentTools(context.messages);
@@ -924,7 +919,7 @@ function convertToolResult(msg) {
924
919
  is_error: msg.isError
925
920
  };
926
921
  }
927
- function convertMessages(transformedMessages, isOAuthToken2, cacheControl, allowEmptySignature = false, managedProvider, nativeToolChanges = false) {
922
+ function convertMessages(transformedMessages, isOAuthToken2, cacheControl, allowEmptySignature = false, managedProvider, convertToolDefinitions) {
928
923
  const params = [];
929
924
  const assistantLevels = new Map;
930
925
  const pendingSystemMessages = [];
@@ -939,18 +934,19 @@ function convertMessages(transformedMessages, isOAuthToken2, cacheControl, allow
939
934
  const blocks = [];
940
935
  if (text.length > 0)
941
936
  blocks.push({ type: "text", text: sanitizeSurrogates(text) });
942
- if (nativeToolChanges) {
937
+ if (convertToolDefinitions) {
938
+ const added = msg.toolsAdded ?? [];
939
+ const redefined = new Set(added.map((tool) => tool.name));
943
940
  for (const tool of msg.toolsRemoved ?? []) {
941
+ if (redefined.has(tool.name))
942
+ continue;
944
943
  blocks.push({
945
944
  type: "tool_removal",
946
945
  tool: { type: "tool_reference", name: isOAuthToken2 ? toClaudeCodeName(tool.name) : tool.name }
947
946
  });
948
947
  }
949
- for (const tool of msg.toolsAdded ?? []) {
950
- blocks.push({
951
- type: "tool_addition",
952
- tool: { type: "tool_reference", name: isOAuthToken2 ? toClaudeCodeName(tool.name) : tool.name }
953
- });
948
+ for (const definition of convertToolDefinitions(added)) {
949
+ blocks.push({ type: "tool_addition", tool: { type: "tool_definition", definition } });
954
950
  }
955
951
  }
956
952
  if (blocks.length > 0)
@@ -3,30 +3,32 @@ import {
3
3
  initSlackApp,
4
4
  startSlackApp,
5
5
  stopSlackApp
6
- } from "./cli-phfg8vy8.js";
6
+ } from "./cli-zv5gxh3p.js";
7
7
  import"./cli-q51yprfq.js";
8
8
  import"./cli-3er6gcsn.js";
9
- import"./cli-2658f6at.js";
9
+ import"./cli-cvk6yzw5.js";
10
10
  import"./cli-yatxqynm.js";
11
- import"./cli-1cz0c18q.js";
11
+ import"./cli-bd957dgb.js";
12
+ import"./cli-pzxba7gw.js";
13
+ import"./cli-8hsexrtr.js";
14
+ import"./cli-xqpk3rp7.js";
12
15
  import"./cli-3qhyh31j.js";
13
- import"./cli-akfj32vj.js";
14
- import"./cli-yrg7c73k.js";
15
- import"./cli-ptr8h7kp.js";
16
- import"./cli-xk79303e.js";
16
+ import"./cli-7af8yhav.js";
17
17
  import"./cli-n7h1kqpf.js";
18
+ import"./cli-eg0b3p0k.js";
19
+ import"./cli-xk79303e.js";
18
20
  import"./cli-ywybs5as.js";
19
- import"./cli-dv6cdjs2.js";
21
+ import"./cli-gd4favx9.js";
22
+ import"./cli-qrgt5bqf.js";
23
+ import"./cli-qjjvzwzd.js";
20
24
  import"./cli-1a2j50m0.js";
21
25
  import"./cli-f9w1semm.js";
22
26
  import"./cli-ej6gbxfb.js";
23
27
  import"./cli-jyy6pm2f.js";
24
28
  import"./cli-sd0mxa3c.js";
25
29
  import"./cli-w5e1d1vv.js";
26
- import"./cli-a8c82p2t.js";
30
+ import"./cli-j9tvyt49.js";
27
31
  import"./cli-nexqx4ve.js";
28
- import"./cli-bd957dgb.js";
29
- import"./cli-pzxba7gw.js";
30
32
  import"./cli-zf8jjwex.js";
31
33
  import"./cli-bc05qbss.js";
32
34
  export {
@@ -8,11 +8,12 @@ import {
8
8
  require_follow_redirects,
9
9
  require_src
10
10
  } from "./cli-q51yprfq.js";
11
+ import"./cli-bd957dgb.js";
11
12
  import {
12
13
  getMcpBaseUrl,
13
14
  init_constants
14
- } from "./cli-dv6cdjs2.js";
15
- import"./cli-bd957dgb.js";
15
+ } from "./cli-gd4favx9.js";
16
+ import"./cli-ej6gbxfb.js";
16
17
  import {
17
18
  __commonJS,
18
19
  __require,
@@ -2,41 +2,40 @@ import {
2
2
  bufferThreadMessage,
3
3
  getBufferMessageCount,
4
4
  wasEventSeen
5
- } from "./cli-9m03pzga.js";
5
+ } from "./cli-0jjdftee.js";
6
6
  import {
7
7
  resolveSlackUserId,
8
8
  rewriteSlackMentions
9
- } from "./cli-5p3x4zna.js";
9
+ } from "./cli-h45y0yh0.js";
10
10
  import {
11
11
  buildEffectiveText,
12
12
  createSlackTaskWithFiles,
13
13
  fetchSlackFiles,
14
14
  hasOtherUserMention,
15
15
  notifySlackFileFailures
16
- } from "./cli-0383bp7f.js";
16
+ } from "./cli-vbz0wywh.js";
17
17
  import"./cli-cat6h73s.js";
18
18
  import"./cli-w0bwte75.js";
19
19
  import"./cli-re8z5p8p.js";
20
- import"./cli-3zc55ctx.js";
21
- import"./cli-1er0rhz8.js";
20
+ import"./cli-rtekzxtd.js";
21
+ import"./cli-esa2g8rn.js";
22
+ import"./cli-p7y8jxd7.js";
23
+ import"./cli-z5swnjvr.js";
22
24
  import"./cli-epan13p1.js";
23
- import"./cli-y89t4nca.js";
24
25
  import"./cli-f14fvzag.js";
25
- import"./cli-sqm3r5ps.js";
26
+ import"./cli-y89t4nca.js";
27
+ import"./cli-5bcd7sfy.js";
26
28
  import"./cli-yy6dew39.js";
27
29
  import"./cli-3dpj7atn.js";
28
30
  import"./cli-2x0e561b.js";
29
- import"./cli-ee8bc46j.js";
31
+ import"./cli-nt8hecg9.js";
30
32
  import"./cli-rb9m6rpe.js";
31
- import"./cli-jsp14b6c.js";
32
- import"./cli-7119ja3w.js";
33
- import"./cli-hgmnf38m.js";
34
- import"./cli-we0q7t0e.js";
35
- import"./cli-tsk3nz8a.js";
36
- import"./cli-ecfxwnyb.js";
33
+ import"./cli-mzfth0bp.js";
34
+ import"./cli-585swr20.js";
35
+ import"./cli-ykph25en.js";
36
+ import"./cli-cebmgwsc.js";
37
+ import"./cli-e2e7m2eb.js";
37
38
  import"./cli-fad8m16k.js";
38
- import"./cli-d56tgd45.js";
39
- import"./cli-hn04t9db.js";
40
39
  import"./cli-bsakbbkm.js";
41
40
  import"./cli-trc24wk2.js";
42
41
  import"./cli-51tf7ac3.js";
@@ -46,11 +45,20 @@ import {
46
45
  isSlackRenderV2Enabled,
47
46
  markSlackSessionProcessing,
48
47
  require_dist
49
- } from "./cli-phfg8vy8.js";
48
+ } from "./cli-zv5gxh3p.js";
50
49
  import"./cli-q51yprfq.js";
51
50
  import"./cli-3er6gcsn.js";
52
- import"./cli-2658f6at.js";
51
+ import"./cli-cvk6yzw5.js";
53
52
  import"./cli-yatxqynm.js";
53
+ import"./cli-13hw4z91.js";
54
+ import"./cli-ykk5jaax.js";
55
+ import"./cli-btbzvq95.js";
56
+ import"./cli-1m2e086m.js";
57
+ import"./cli-bzr0ftht.js";
58
+ import"./cli-bd957dgb.js";
59
+ import"./cli-pzxba7gw.js";
60
+ import"./cli-67fh0xdx.js";
61
+ import"./cli-s81xzy0b.js";
54
62
  import {
55
63
  getAgentWorkingOnThread,
56
64
  getLeadAgent,
@@ -59,18 +67,20 @@ import {
59
67
  init_db,
60
68
  reactionName,
61
69
  slackContextKey
62
- } from "./cli-1cz0c18q.js";
70
+ } from "./cli-8hsexrtr.js";
71
+ import"./cli-xqpk3rp7.js";
63
72
  import"./cli-3qhyh31j.js";
64
- import"./cli-akfj32vj.js";
65
- import"./cli-yrg7c73k.js";
73
+ import"./cli-7af8yhav.js";
74
+ import"./cli-n7h1kqpf.js";
75
+ import"./cli-eg0b3p0k.js";
76
+ import"./cli-xk79303e.js";
77
+ import"./cli-ywybs5as.js";
78
+ import"./cli-gd4favx9.js";
79
+ import"./cli-qrgt5bqf.js";
66
80
  import {
67
81
  init_resolver,
68
82
  resolveTemplate
69
- } from "./cli-ptr8h7kp.js";
70
- import"./cli-xk79303e.js";
71
- import"./cli-n7h1kqpf.js";
72
- import"./cli-ywybs5as.js";
73
- import"./cli-dv6cdjs2.js";
83
+ } from "./cli-qjjvzwzd.js";
74
84
  import"./cli-1a2j50m0.js";
75
85
  import"./cli-f9w1semm.js";
76
86
  import {
@@ -80,15 +90,8 @@ import {
80
90
  import"./cli-jyy6pm2f.js";
81
91
  import"./cli-sd0mxa3c.js";
82
92
  import"./cli-w5e1d1vv.js";
83
- import"./cli-a8c82p2t.js";
93
+ import"./cli-j9tvyt49.js";
84
94
  import"./cli-nexqx4ve.js";
85
- import"./cli-13hw4z91.js";
86
- import"./cli-btbzvq95.js";
87
- import"./cli-1m2e086m.js";
88
- import"./cli-ykk5jaax.js";
89
- import"./cli-bzr0ftht.js";
90
- import"./cli-bd957dgb.js";
91
- import"./cli-pzxba7gw.js";
92
95
  import"./cli-f7kvq46p.js";
93
96
  import"./cli-zf8jjwex.js";
94
97
  import {
@@ -2,7 +2,7 @@ import {
2
2
  convertResponsesMessages,
3
3
  convertResponsesTools,
4
4
  processResponsesStream
5
- } from "./cli-zb6xbk61.js";
5
+ } from "./cli-g739zqzt.js";
6
6
  import {
7
7
  clampOpenAIPromptCacheKey
8
8
  } from "./cli-mrptpp86.js";
@@ -22,22 +22,23 @@ import {
22
22
  } from "./cli-6map995v.js";
23
23
  import {
24
24
  buildBaseOptions,
25
- createGrammarToolInputProperties
26
- } from "./cli-ybgv4kw2.js";
25
+ createGrammarToolInputProperties,
26
+ resolveSamplingParams
27
+ } from "./cli-mbssg1xv.js";
27
28
  import"./cli-y2apkfe2.js";
28
29
  import {
29
30
  headersToRecord
30
31
  } from "./cli-7kyk9jr3.js";
31
- import {
32
- getProviderEnvValue
33
- } from "./cli-btbzvq95.js";
34
- import"./cli-1m2e086m.js";
35
32
  import {
36
33
  clampThinkingLevel,
37
34
  getDeclaredTools,
38
35
  resolveTranscript,
39
36
  resolveTranscriptTools
40
37
  } from "./cli-ykk5jaax.js";
38
+ import {
39
+ getProviderEnvValue
40
+ } from "./cli-btbzvq95.js";
41
+ import"./cli-1m2e086m.js";
41
42
  import {
42
43
  AssistantMessageEventStream
43
44
  } from "./cli-bzr0ftht.js";
@@ -252,9 +253,10 @@ function buildParams(model, context, options, deploymentName, grammarToolInputPr
252
253
  if (options?.toolChoice !== undefined) {
253
254
  params.tool_choice = options.toolChoice;
254
255
  }
256
+ const reasoningEffort = options?.reasoningEffort ?? (options?.reasoningSummary ? "medium" : undefined);
255
257
  if (model.reasoning) {
256
- if (options?.reasoningEffort || options?.reasoningSummary) {
257
- const effort = options?.reasoningEffort ? model.thinkingLevelMap?.[options.reasoningEffort] ?? options.reasoningEffort : "medium";
258
+ if (reasoningEffort) {
259
+ const effort = options?.reasoningEffort ? model.thinkingLevelMap?.[options.reasoningEffort] ?? options.reasoningEffort : reasoningEffort;
258
260
  params.reasoning = {
259
261
  effort,
260
262
  summary: options?.reasoningSummary || "auto"
@@ -266,7 +268,10 @@ function buildParams(model, context, options, deploymentName, grammarToolInputPr
266
268
  };
267
269
  }
268
270
  }
269
- Object.assign(params, model.samplingParams, options?.samplingParams);
271
+ const samplingParams = resolveSamplingParams(model, reasoningEffort ?? "off", options?.samplingParams);
272
+ if (samplingParams) {
273
+ Object.assign(params, samplingParams);
274
+ }
270
275
  return params;
271
276
  }
272
277
  export {
@@ -3,28 +3,30 @@ import {
3
3
  getEmbeddingProvider,
4
4
  getMemoryStore,
5
5
  init_constants
6
- } from "./cli-d56tgd45.js";
7
- import"./cli-hn04t9db.js";
8
- import"./cli-2658f6at.js";
6
+ } from "./cli-ykph25en.js";
7
+ import"./cli-cebmgwsc.js";
8
+ import"./cli-cvk6yzw5.js";
9
9
  import {
10
10
  getDbClient,
11
11
  init_db
12
- } from "./cli-1cz0c18q.js";
12
+ } from "./cli-8hsexrtr.js";
13
+ import"./cli-xqpk3rp7.js";
13
14
  import"./cli-3qhyh31j.js";
14
- import"./cli-akfj32vj.js";
15
- import"./cli-yrg7c73k.js";
16
- import"./cli-ptr8h7kp.js";
17
- import"./cli-xk79303e.js";
15
+ import"./cli-7af8yhav.js";
18
16
  import"./cli-n7h1kqpf.js";
17
+ import"./cli-eg0b3p0k.js";
18
+ import"./cli-xk79303e.js";
19
19
  import"./cli-ywybs5as.js";
20
- import"./cli-dv6cdjs2.js";
20
+ import"./cli-gd4favx9.js";
21
+ import"./cli-qrgt5bqf.js";
22
+ import"./cli-qjjvzwzd.js";
21
23
  import"./cli-1a2j50m0.js";
22
24
  import"./cli-f9w1semm.js";
23
25
  import"./cli-ej6gbxfb.js";
24
26
  import"./cli-jyy6pm2f.js";
25
27
  import"./cli-sd0mxa3c.js";
26
28
  import"./cli-w5e1d1vv.js";
27
- import"./cli-a8c82p2t.js";
29
+ import"./cli-j9tvyt49.js";
28
30
  import"./cli-nexqx4ve.js";
29
31
  import"./cli-zf8jjwex.js";
30
32
  import"./cli-bc05qbss.js";
@@ -1,29 +1,31 @@
1
1
  import {
2
2
  embedScript,
3
3
  embeddingProvider
4
- } from "./cli-7119ja3w.js";
5
- import"./cli-d56tgd45.js";
6
- import"./cli-hn04t9db.js";
7
- import"./cli-2658f6at.js";
4
+ } from "./cli-585swr20.js";
5
+ import"./cli-ykph25en.js";
6
+ import"./cli-cebmgwsc.js";
7
+ import"./cli-cvk6yzw5.js";
8
8
  import {
9
9
  getDbClient,
10
10
  init_db
11
- } from "./cli-1cz0c18q.js";
11
+ } from "./cli-8hsexrtr.js";
12
+ import"./cli-xqpk3rp7.js";
12
13
  import"./cli-3qhyh31j.js";
13
- import"./cli-akfj32vj.js";
14
- import"./cli-yrg7c73k.js";
15
- import"./cli-ptr8h7kp.js";
16
- import"./cli-xk79303e.js";
14
+ import"./cli-7af8yhav.js";
17
15
  import"./cli-n7h1kqpf.js";
16
+ import"./cli-eg0b3p0k.js";
17
+ import"./cli-xk79303e.js";
18
18
  import"./cli-ywybs5as.js";
19
- import"./cli-dv6cdjs2.js";
19
+ import"./cli-gd4favx9.js";
20
+ import"./cli-qrgt5bqf.js";
21
+ import"./cli-qjjvzwzd.js";
20
22
  import"./cli-1a2j50m0.js";
21
23
  import"./cli-f9w1semm.js";
22
24
  import"./cli-ej6gbxfb.js";
23
25
  import"./cli-jyy6pm2f.js";
24
26
  import"./cli-sd0mxa3c.js";
25
27
  import"./cli-w5e1d1vv.js";
26
- import"./cli-a8c82p2t.js";
28
+ import"./cli-j9tvyt49.js";
27
29
  import"./cli-nexqx4ve.js";
28
30
  import"./cli-zf8jjwex.js";
29
31
  import"./cli-bc05qbss.js";
@@ -1,22 +1,24 @@
1
1
  import {
2
2
  getDbClient,
3
3
  init_db
4
- } from "./cli-1cz0c18q.js";
4
+ } from "./cli-8hsexrtr.js";
5
+ import"./cli-xqpk3rp7.js";
5
6
  import"./cli-3qhyh31j.js";
6
- import"./cli-akfj32vj.js";
7
- import"./cli-yrg7c73k.js";
8
- import"./cli-ptr8h7kp.js";
9
- import"./cli-xk79303e.js";
7
+ import"./cli-7af8yhav.js";
10
8
  import"./cli-n7h1kqpf.js";
9
+ import"./cli-eg0b3p0k.js";
10
+ import"./cli-xk79303e.js";
11
11
  import"./cli-ywybs5as.js";
12
- import"./cli-dv6cdjs2.js";
12
+ import"./cli-gd4favx9.js";
13
+ import"./cli-qrgt5bqf.js";
14
+ import"./cli-qjjvzwzd.js";
13
15
  import"./cli-1a2j50m0.js";
14
16
  import"./cli-f9w1semm.js";
15
17
  import"./cli-ej6gbxfb.js";
16
18
  import"./cli-jyy6pm2f.js";
17
19
  import"./cli-sd0mxa3c.js";
18
20
  import"./cli-w5e1d1vv.js";
19
- import"./cli-a8c82p2t.js";
21
+ import"./cli-j9tvyt49.js";
20
22
  import {
21
23
  init_secret_scrubber,
22
24
  scrubSecrets