@desplega.ai/agent-swarm 2.4.4 → 2.5.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.
- package/README.md +4 -2
- package/dist/{acp-adapter-thq04adh.js → acp-adapter-11gp67nr.js} +8 -6
- package/dist/{actions-j6ywh6x5.js → actions-8p2kze8j.js} +24 -22
- package/dist/{amp-adapter-k8b5xmj8.js → amp-adapter-z4qvhacj.js} +2 -2
- package/dist/{anthropic-messages-g6pqmqk4.js → anthropic-messages-txs190dd.js} +17 -20
- package/dist/{app-rb7vc02s.js → app-0qp0a2gk.js} +3 -3
- package/dist/{assistant-ftta1zjf.js → assistant-jedd3ktm.js} +27 -25
- package/dist/{azure-openai-responses-9dbmj346.js → azure-openai-responses-9kfwhmn7.js} +18 -13
- package/dist/{boot-reembed-xns7h5h9.js → boot-reembed-4xwq5tg0.js} +1 -1
- package/dist/{boot-reembed-srp6v6af.js → boot-reembed-n4wq5dd2.js} +1 -1
- package/dist/{boot-scrub-sweep-3qqrh2mz.js → boot-scrub-sweep-69h90xcq.js} +4 -4
- package/dist/{boot-seeds-9ks8hce7.js → boot-seeds-3vn0m9sg.js} +4 -4
- package/dist/{claude-adapter-k5ksyres.js → claude-adapter-221mvad5.js} +8 -6
- package/dist/{claude-managed-adapter-h2y889ge.js → claude-managed-adapter-gt6pa35d.js} +2 -2
- package/dist/{claude-managed-setup-n5a5eqks.js → claude-managed-setup-c3hp36ph.js} +4 -4
- package/dist/{claude-sdk-session-2j3j4kwn.js → claude-sdk-session-8thjsk5e.js} +9729 -9628
- package/dist/{cli-b9fcxxev.js → cli-007cnhm1.js} +50 -4
- package/dist/{cli-j4rqdf2n.js → cli-03vpq45j.js} +2 -2
- package/dist/{cli-amyhm3gj.js → cli-0y6f0ckq.js} +1 -1
- package/dist/{cli-4dg55wsk.js → cli-0z3vjrpm.js} +1 -1
- package/dist/{cli-pccfmtb5.js → cli-179xcyky.js} +11 -11
- package/dist/{cli-3r8samv3.js → cli-1f0gp9vz.js} +3 -2
- package/dist/{cli-hj3debgw.js → cli-1pr672hz.js} +3 -3
- package/dist/{cli-0bqteszy.js → cli-2nf3b08t.js} +328 -25
- package/dist/{cli-t7cyef5g.js → cli-36j4jnk3.js} +4 -4
- package/dist/{cli-er83cjbn.js → cli-3qv8naq8.js} +527 -231
- package/dist/cli-3zwye9sn.js +1193 -0
- package/dist/{cli-60cgh1rv.js → cli-459fk97x.js} +7 -7
- package/dist/{cli-xj0re5tm.js → cli-4w24f7z3.js} +1 -1
- package/dist/{cli-v3yr2gbg.js → cli-5kzk3472.js} +2198 -968
- package/dist/{cli-h7gc0b4r.js → cli-5m84zd2k.js} +55 -18
- package/dist/{cli-w6nadkh4.js → cli-5rvg1ddk.js} +5 -5
- package/dist/{cli-dvkmp9bt.js → cli-6ctwrf1z.js} +20 -10
- package/dist/{cli-9qtjfd60.js → cli-6rg2jn2y.js} +3 -2
- package/dist/{cli-2v045xyf.js → cli-7bwtc6yx.js} +3 -3
- package/dist/{cli-3cgngyd8.js → cli-7g40g8hq.js} +35 -17
- package/dist/{cli-q6r7t299.js → cli-92mqenkc.js} +2379 -154
- package/dist/{cli-cynvc9fj.js → cli-9ce2xw98.js} +8 -8
- package/dist/{cli-gqvh8d8a.js → cli-bgdtv62r.js} +36 -22
- package/dist/{cli-wxbn3yfx.js → cli-cz5nmdxt.js} +2 -2
- package/dist/{cli-wt645v7q.js → cli-dabehxhp.js} +1 -1
- package/dist/{cli-vfha21c9.js → cli-e5bxnjps.js} +2 -2
- package/dist/{cli-p20r8w42.js → cli-fcc5qe3f.js} +763 -268
- package/dist/{cli-1ephgwnq.js → cli-fes51ya2.js} +3 -3
- package/dist/{cli-1d70crsy.js → cli-ftmq4nvk.js} +2 -2
- package/dist/{cli-qkhc5aqy.js → cli-fy1jyyym.js} +13 -13
- package/dist/{cli-s95dknxh.js → cli-g1cw7xtt.js} +1 -1
- package/dist/{cli-qje9k2nh.js → cli-g9ypd5en.js} +12 -2
- package/dist/{cli-74c1wpm0.js → cli-gpv60278.js} +1 -1
- package/dist/{cli-pemywhfq.js → cli-ha9rmwgq.js} +2 -1
- package/dist/{cli-bnz0r3kc.js → cli-j1eghqfm.js} +5 -5
- package/dist/{cli-2zqpkvtt.js → cli-jpxsrxcb.js} +1 -1
- package/dist/{cli-ejs3m1sx.js → cli-kxpfx2xr.js} +1 -1
- package/dist/{cli-37yb7307.js → cli-mbfj11fq.js} +1 -1
- package/dist/{cli-pnp2j5zg.js → cli-mmhj8vd7.js} +2 -2
- package/dist/{cli-xf234ws8.js → cli-n4c8e3s5.js} +2 -0
- package/dist/{cli-a0kcty51.js → cli-n6kmqngw.js} +2 -2
- package/dist/{cli-te6b5wvg.js → cli-nnvjb17s.js} +3 -3
- package/dist/{cli-1dmcq2eh.js → cli-nzfnt2gs.js} +1 -1
- package/dist/{cli-625tb7aq.js → cli-p859hcc8.js} +2 -2
- package/dist/{cli-smvcw9z5.js → cli-pasyvjmm.js} +1 -1
- package/dist/cli-pkaqk57w.js +128 -0
- package/dist/{cli-8nyhf7za.js → cli-qqzmjxkf.js} +129 -105
- package/dist/{cli-zrwpctp4.js → cli-r25qpaxt.js} +161 -63
- package/dist/{cli-nc35pxb7.js → cli-rh5smt8t.js} +19 -4
- package/dist/{cli-qwkcwjdn.js → cli-rycdaj0a.js} +1 -1
- package/dist/{cli-esxerzg7.js → cli-s4sntwt4.js} +2 -2
- package/dist/{cli-b8k7epj1.js → cli-segs7hx9.js} +8 -8
- package/dist/{cli-36ckw0wx.js → cli-stxdrqs2.js} +2 -2
- package/dist/{cli-vdm20wej.js → cli-sy8f9705.js} +4 -4
- package/dist/{cli-1m17dc9d.js → cli-ta8bd7th.js} +2 -2
- package/dist/{cli-2y91wnbh.js → cli-we0ra057.js} +222 -10
- package/dist/{cli-55qmbp6z.js → cli-x21dqn18.js} +5 -5
- package/dist/{cli-dqb4n629.js → cli-x6vf4sad.js} +11 -11
- package/dist/{cli-d2mb5s8a.js → cli-x77gen2p.js} +680 -440
- package/dist/{cli-vq97g1jq.js → cli-xawhpgc9.js} +95 -195
- package/dist/{cli-82d3nkc3.js → cli-xd4eqtr2.js} +2 -2
- package/dist/{cli-9fhkkpj5.js → cli-xt768r5m.js} +2 -2
- package/dist/{cli-zrk6jxv8.js → cli-y4x8ww6s.js} +2 -2
- package/dist/{cli-xc27fwzg.js → cli-y9jvxfhk.js} +3 -3
- package/dist/{cli-44159k28.js → cli-z63a269p.js} +2 -2
- package/dist/{cli-sm8rses9.js → cli-zfdp01hn.js} +8 -5
- package/dist/cli.js +31 -29
- package/dist/{cloudflare-workers-ai-system-one-ch2wxfcp.js → cloudflare-workers-ai-system-one-43v9qkjk.js} +7 -2
- package/dist/{codex-adapter-968xwfy7.js → codex-adapter-tcg1q3jk.js} +6 -4
- package/dist/{codex-login-m819c41r.js → codex-login-rn7c5gxt.js} +1 -1
- package/dist/{codex-session-runner-ht4z99fa.js → codex-session-runner-xfx4wd9x.js} +7 -5
- package/dist/{commands-pcymaeg9.js → commands-ew83nj70.js} +2 -2
- package/dist/{controller-fpjyk46r.js → controller-gnq1k1mf.js} +4 -4
- package/dist/{controllers-connect-mwzx1fh6.js → controllers-connect-tw1dan9r.js} +26 -24
- package/dist/{cursor-adapter-cp4s2e2f.js → cursor-adapter-yq5xgfcg.js} +1 -1
- package/dist/{db-xsjg9jqq.js → db-7gbc53fd.js} +14 -2
- package/dist/{db-sgd12bt9.js → db-t86xrnes.js} +3 -3
- package/dist/{devin-adapter-zgqadvnm.js → devin-adapter-4ycy4vrf.js} +1 -1
- package/dist/{dispatcher-x0jfw2c9.js → dispatcher-64bdyhps.js} +23 -21
- package/dist/{docker-fkgtr75t.js → docker-nfy2gc8t.js} +2 -2
- package/dist/{dsh-adapter-jrq7ma7h.js → dsh-adapter-tvhc4k2d.js} +1 -1
- package/dist/{e2b-16d6ch39.js → e2b-9gkdhm3c.js} +2 -2
- package/dist/{e2b-zn0b4w5w.js → e2b-cjtf8k1z.js} +2 -2
- package/dist/{easter-egg-3d-5cgynaja.js → easter-egg-3d-e4qv8dxj.js} +1 -1
- package/dist/{event-bus-9vpk8gmq.js → event-bus-3z78ep5n.js} +1 -1
- package/dist/{execute-t4e6m3rw.js → execute-0xpz8950.js} +85 -23
- package/dist/{external-channel-8njj4h3b.js → external-channel-e9nw24zv.js} +2 -2
- package/dist/{google-generative-ai-bmq8gkf3.js → google-generative-ai-mk9vcpe1.js} +15 -15
- package/dist/{google-vertex-b1rvp52s.js → google-vertex-q580kz8k.js} +20 -20
- package/dist/{grok-adapter-kkr97v2f.js → grok-adapter-v82srhrx.js} +9 -7
- package/dist/handlers-c9ajzhbn.js +41 -0
- package/dist/{heartbeat-wd03zhn0.js → heartbeat-2vqs1319.js} +26 -24
- package/dist/{hook-xzj2ts2p.js → hook-01nk13wx.js} +7 -5
- package/dist/{hook-f0vghj42.js → hook-jzpheegg.js} +9 -7
- package/dist/{http-4hwxv62p.js → http-fc1k6ec8.js} +859 -252
- package/dist/index-07ef7nkm.js +42 -0
- package/dist/{index-g6tbb6ve.js → index-31ceyf42.js} +1 -1
- package/dist/index-7yts8n9s.js +43 -0
- package/dist/{index-c4ykd0f1.js → index-dr94zbnh.js} +13348 -11611
- package/dist/index-q3t40ryv.js +46 -0
- package/dist/{index-ww2vznkp.js → index-sepja052.js} +1 -1
- package/dist/{index-97q4xn03.js → index-zdycv3ja.js} +135 -79
- package/dist/{index-g216q6jr.js → index-zsyx51ap.js} +1 -4
- package/dist/{keepalive-hrh7xnr9.js → keepalive-5nh2rhmr.js} +4 -4
- package/dist/lead-aayq64jn.js +79 -0
- package/dist/{llama-cpp-classify-vv43gswy.js → llama-cpp-classify-ee7vmd7q.js} +4 -1
- package/dist/{maintenance-e8wnwnqx.js → maintenance-hjhzdt3k.js} +1 -1
- package/dist/{mistral-conversations-1medfwv7.js → mistral-conversations-sd0xf1tn.js} +13 -13
- package/dist/{node-3v3f08f7.js → node-jzjj7r9x.js} +10 -9
- package/dist/{oauth-refresh-sweep-zm0yj4sj.js → oauth-refresh-sweep-y3n1knmd.js} +3 -3
- package/dist/{onboard-dtwcq603.js → onboard-1zq3m7db.js} +2 -2
- package/dist/{openai-codex-responses-de9pvs4d.js → openai-codex-responses-79s8xnbh.js} +29 -23
- package/dist/{openai-completions-mtqge3nf.js → openai-completions-tdbyts0x.js} +21 -20
- package/dist/{openai-decisions-ygk4kkxd.js → openai-decisions-bqhnjyfz.js} +2 -1
- package/dist/{openai-responses-dkyng71g.js → openai-responses-dm3t5vqp.js} +26 -17
- package/dist/{opencode-adapter-x4tqzhkh.js → opencode-adapter-e56086m1.js} +7 -5
- package/dist/{openrouter-images-wvv7camj.js → openrouter-images-ssttr1y4.js} +6 -3
- package/dist/{otel-impl-w3fbhpn0.js → otel-impl-h9yyza47.js} +2 -2
- package/dist/{pi-messages-nhh1pkz2.js → pi-messages-3nf8bq1a.js} +6 -4
- package/dist/{pi-mono-adapter-mcfkn9vf.js → pi-mono-adapter-tzps8f38.js} +9 -37
- package/dist/{pricing-refresh-j38dehfs.js → pricing-refresh-nevhat8h.js} +3 -3
- package/dist/{rbac-roles-ae8yttq4.js → rbac-roles-4y6ngvzq.js} +1 -1
- package/dist/{rbac-roles-ejxx9b35.js → rbac-roles-exbg8xb6.js} +2 -2
- package/dist/{registry-rxw10xzg.js → registry-ajhexe44.js} +1 -1
- package/dist/{render-v2-n16n0phe.js → render-v2-cfsh13z3.js} +3 -3
- package/dist/{resume-z0fgjc38.js → resume-5s2t0dbs.js} +10 -8
- package/dist/{runtime-xe3aqy4x.js → runtime-bt5pkpm1.js} +1 -1
- package/dist/{session-access-cv3mq6mc.js → session-access-dnbyp3cn.js} +6 -4
- package/dist/{setup-mafhj3yt.js → setup-1wj1y77j.js} +1 -1
- package/dist/{typesafe-system-one-2hgpayzy.js → typesafe-system-one-bre38hvs.js} +4 -2
- package/dist/{virtual-modules-4r3zkc20.js → virtual-modules-mnfbh5mr.js} +8 -2
- package/dist/{work-objects-8b86mgjp.js → work-objects-7mg6216g.js} +26 -24
- package/dist/worker-nwb789mg.js +79 -0
- package/dist/{x-y45mthwn.js → x-pbpezr0s.js} +2 -2
- package/openapi.json +793 -6
- package/package.json +11 -11
- package/src/apps/catalog.generated.json +206 -4
- package/src/apps/page-validator.ts +13 -1
- package/src/assets/key.ts +17 -0
- package/src/azure-devops/handlers.ts +1 -1
- package/src/be/chunking.ts +42 -9
- package/src/be/db/approvals.ts +18 -0
- package/src/be/db/session-moves.ts +164 -0
- package/src/be/db/session-tree.ts +384 -0
- package/src/be/db/tasks/draft-text.ts +15 -0
- package/src/be/db/tasks/read.ts +54 -5
- package/src/be/db/workflow-runs.ts +96 -0
- package/src/be/db.ts +85 -237
- package/src/be/memory/index-content.ts +36 -17
- package/src/be/memory/providers/openai-embedding.ts +115 -61
- package/src/be/memory/providers/sqlite-store.ts +69 -23
- package/src/be/memory/reranker.ts +31 -1
- package/src/be/memory/search-candidates.ts +47 -0
- package/src/be/memory/types.ts +14 -0
- package/src/be/onboarding.ts +3 -0
- package/src/be/scripts/typecheck.ts +2 -0
- package/src/be/seed-scripts/catalog/heartbeat-jev-gate.ts +106 -54
- package/src/be/seed-scripts/index.ts +2 -2
- package/src/be/skill-sync.ts +43 -2
- package/src/be/swarm-config-guard.ts +25 -1
- package/src/be/task-attachment-store.ts +30 -0
- package/src/bitbucket/api.ts +81 -0
- package/src/bitbucket/auth.ts +64 -0
- package/src/bitbucket/handlers.ts +434 -0
- package/src/bitbucket/index.ts +28 -0
- package/src/bitbucket/templates.ts +134 -0
- package/src/bitbucket/types.ts +65 -0
- package/src/commands/runner.ts +55 -3
- package/src/e2b/env.ts +1 -0
- package/src/extensions/catalog.generated.json +4 -4
- package/src/extensions/contract-types.generated.ts +1 -1
- package/src/extensions/contract.ts +9 -2
- package/src/extensions/post-bridge.ts +1 -0
- package/src/fs/provider.ts +13 -1
- package/src/github/handlers.ts +6 -6
- package/src/gitlab/handlers.ts +5 -5
- package/src/heartbeat/heartbeat.ts +31 -11
- package/src/http/assets.ts +14 -2
- package/src/http/core.ts +12 -0
- package/src/http/fs.ts +54 -34
- package/src/http/index.ts +4 -0
- package/src/http/mcp-body.ts +37 -0
- package/src/http/mcp-user.ts +3 -5
- package/src/http/mcp.ts +6 -7
- package/src/http/memory.ts +26 -15
- package/src/http/onboarding.ts +1 -0
- package/src/http/page-proxy.ts +61 -5
- package/src/http/pages-public.ts +27 -44
- package/src/http/pages.ts +4 -4
- package/src/http/script-runs.ts +2 -0
- package/src/http/sessions.ts +366 -12
- package/src/http/skills.ts +48 -1
- package/src/http/tasks.ts +1 -1
- package/src/http/users.ts +13 -1
- package/src/http/webhooks.ts +141 -0
- package/src/integrations/chat-sdk/adapters.ts +24 -4
- package/src/integrations/chat-sdk/attachments.ts +90 -12
- package/src/integrations/chat-sdk/facts.ts +138 -0
- package/src/integrations/chat-sdk/inbound.ts +156 -8
- package/src/integrations/chat-sdk/limits.ts +24 -0
- package/src/integrations/chat-sdk/outbound-files.ts +186 -0
- package/src/integrations/chat-sdk/outbound.ts +272 -5
- package/src/integrations/chat-sdk/relay.ts +4 -1
- package/src/integrations/chat-sdk/router.ts +28 -2
- package/src/integrations/chat-sdk/steering.ts +9 -0
- package/src/integrations/chat-sdk/templates.ts +14 -0
- package/src/integrations/chat-sdk/thread-buffer.ts +4 -0
- package/src/mcp-limits.ts +20 -0
- package/src/pages/browser-sdk.ts +8 -3
- package/src/pages/feedback-overlay.ts +1 -1
- package/src/providers/acp-targets.ts +1 -1
- package/src/providers/amp-adapter.ts +1 -1
- package/src/providers/codex-adapter.ts +106 -119
- package/src/providers/codex-agents-md.ts +35 -229
- package/src/providers/cursor-adapter.ts +1 -1
- package/src/providers/pi-mono-adapter.ts +5 -53
- package/src/realtime/transport.ts +1 -2
- package/src/script-workflows/workflow-ctx.ts +1 -0
- package/src/scripts-runtime/types/stdlib.d.ts +2 -0
- package/src/scripts-runtime/types/swarm-extension.d.ts +14 -4
- package/src/scripts-runtime/types/swarm-sdk.d.ts +2 -0
- package/src/server-user.ts +2 -0
- package/src/server.ts +2 -0
- package/src/slack/assistant.ts +2 -2
- package/src/slack/files.ts +2 -0
- package/src/slack/handlers.test.ts +158 -0
- package/src/slack/handlers.ts +23 -32
- package/src/slack/inbound-files.ts +39 -6
- package/src/slack/thread-buffer.ts +2 -1
- package/src/tasks/context-key.ts +61 -1
- package/src/tasks/task-terminal-effects.ts +21 -17
- package/src/tests/apps-card-grid.test.ts +197 -0
- package/src/tests/apps-catalog-additions.test.ts +120 -0
- package/src/tests/apps-tree.test.ts +129 -0
- package/src/tests/bitbucket-auth.test.ts +156 -0
- package/src/tests/bitbucket-handlers.test.ts +425 -0
- package/src/tests/bitbucket-webhook.test.ts +220 -0
- package/src/tests/chat-sdk-attachments-reply.test.ts +52 -0
- package/src/tests/chat-sdk-config.test.ts +11 -0
- package/src/tests/chat-sdk-facts.test.ts +23 -0
- package/src/tests/chat-sdk-inbound.test.ts +597 -4
- package/src/tests/chat-sdk-outbound-files.test.ts +652 -0
- package/src/tests/chat-sdk-telegram-markdown.test.ts +92 -0
- package/src/tests/codex-adapter.test.ts +167 -242
- package/src/tests/config-api-only-keys.test.ts +9 -0
- package/src/tests/context-key.test.ts +50 -0
- package/src/tests/core-auth.test.ts +5 -0
- package/src/tests/cors-allowlist.test.ts +1 -1
- package/src/tests/db-task-read-contract.test.ts +7 -0
- package/src/tests/db-task-write-contract.test.ts +6 -0
- package/src/tests/docs-index-footprint.test.js +3 -3
- package/src/tests/extensions-example-slack-reply-gate.test.ts +262 -91
- package/src/tests/fixtures/bitbucket/pullrequest-comment-created-inline.json +174 -0
- package/src/tests/fixtures/bitbucket/pullrequest-comment-created.json +170 -0
- package/src/tests/fixtures/bitbucket/pullrequest-created-mention.json +132 -0
- package/src/tests/fixtures/bitbucket/pullrequest-created-reviewer.json +140 -0
- package/src/tests/fixtures/bitbucket/pullrequest-fulfilled.json +134 -0
- package/src/tests/fixtures/bitbucket/pullrequest-rejected.json +133 -0
- package/src/tests/generate-mcp-docs.test.ts +101 -0
- package/src/tests/gitlab-handlers.test.ts +3 -3
- package/src/tests/gitlab-vcs-db.test.ts +4 -4
- package/src/tests/heartbeat-checklist.test.ts +33 -0
- package/src/tests/heartbeat-jev-gate-credentials.test.ts +44 -0
- package/src/tests/heartbeat-jev-gate.test.ts +242 -1
- package/src/tests/integration-disable-flags.test.ts +36 -0
- package/src/tests/kv-page-proxy.test.ts +91 -5
- package/src/tests/launch-password-rejection.test.ts +2 -2
- package/src/tests/mcp-input-caps.test.ts +294 -0
- package/src/tests/mcp-tools.test.ts +1 -1
- package/src/tests/memory-chunked-search-starvation.test.ts +200 -0
- package/src/tests/memory-embedding-input-cap.test.ts +114 -0
- package/src/tests/memory.test.ts +14 -0
- package/src/tests/onboarding.test.ts +12 -0
- package/src/tests/page-guest-session.test.ts +19 -8
- package/src/tests/page-proxy-authed.test.ts +1 -1
- package/src/tests/page-proxy.test.ts +17 -10
- package/src/tests/page-session.test.ts +102 -1
- package/src/tests/pages-authed-mode.test.ts +82 -12
- package/src/tests/pages-password-mode.test.ts +5 -5
- package/src/tests/pi-codemode.test.ts +8 -2
- package/src/tests/preload-env.test.ts +57 -0
- package/src/tests/preload.ts +21 -0
- package/src/tests/prompt-template-remaining.test.ts +38 -0
- package/src/tests/realtime-transport.test.ts +13 -7
- package/src/tests/run-root-coverage.test.ts +39 -0
- package/src/tests/runner-bitbucket-vcs.test.ts +191 -0
- package/src/tests/runner-skills-refresh.test.ts +58 -0
- package/src/tests/script-runs-http.test.ts +84 -0
- package/src/tests/scripts-http.test.ts +10 -1
- package/src/tests/secret-scrubber.test.ts +15 -0
- package/src/tests/sessions-move.test.ts +576 -0
- package/src/tests/sessions-tree.test.ts +493 -0
- package/src/tests/skill-files-http.test.ts +50 -0
- package/src/tests/skills-bundle.test.ts +99 -0
- package/src/tests/swarm-config-export-to-env.test.ts +23 -3
- package/src/tests/task-audio-transcription.test.ts +299 -0
- package/src/tests/task-completion-memory-chunking.test.ts +434 -0
- package/src/tests/task-terminal-secret-scrub.test.ts +6 -1
- package/src/tests/transcription.test.ts +299 -0
- package/src/tests/vcs-bitbucket.test.ts +91 -0
- package/src/tests/vcs-provider-isolation.test.ts +123 -0
- package/src/tests/vcs-provider.test.ts +16 -1
- package/src/tests/vcs-tracking.test.ts +3 -3
- package/src/tests/workflow-foreach-bodies.test.ts +637 -0
- package/src/tests/workflow-foreach-concurrency.test.ts +342 -0
- package/src/tests/workflow-foreach-retry.test.ts +537 -0
- package/src/tests/workflow-foreach.test.ts +44 -23
- package/src/tests/workflow-step-claims.test.ts +6 -6
- package/src/tests/workflow-system-one-decision-providers.test.ts +98 -1
- package/src/tests/workflow-system-one-decision.test.ts +2 -1
- package/src/tests/workflow-tla-races.test.ts +2 -2
- package/src/tools/chat-access.ts +10 -0
- package/src/tools/chat-post.ts +31 -11
- package/src/tools/chat-reply.ts +32 -10
- package/src/tools/memory-search.ts +3 -1
- package/src/tools/script-delete.ts +1 -1
- package/src/tools/system-one-decide.ts +17 -4
- package/src/tools/workflows/create-workflow.ts +5 -3
- package/src/types.ts +9 -2
- package/src/utils/config-env-export.ts +4 -1
- package/src/utils/page-session.ts +133 -20
- package/src/utils/secret-scrubber.ts +4 -0
- package/src/utils/skills-refresh.ts +83 -43
- package/src/utils/transcription.ts +246 -0
- package/src/vcs/bitbucket.ts +58 -0
- package/src/vcs/index.ts +2 -0
- package/src/vcs/types.ts +2 -2
- package/src/workflows/approval-resolution.ts +4 -1
- package/src/workflows/checkpoint.ts +9 -1
- package/src/workflows/constants.ts +3 -0
- package/src/workflows/definition.ts +48 -17
- package/src/workflows/engine.ts +25 -15
- package/src/workflows/executors/foreach.ts +45 -99
- package/src/workflows/executors/system-one-decision.ts +28 -7
- package/src/workflows/executors/system-one-providers.ts +39 -4
- package/src/workflows/foreach-body.ts +146 -0
- package/src/workflows/foreach-driver.ts +552 -0
- package/src/workflows/foreach-join.ts +206 -7
- package/src/workflows/node-timeout.ts +21 -0
- package/src/workflows/recovery.ts +68 -3
- package/src/workflows/resume.ts +221 -43
- package/src/workflows/retry-poller.ts +39 -24
- package/src/workflows/step-input.ts +59 -0
- package/src/workflows/task-step-routing.ts +114 -56
- package/templates/extensions/slack-reply-gate/README.md +24 -22
- package/templates/extensions/slack-reply-gate/hooks.ts +146 -95
- package/templates/extensions/slack-reply-gate/manifest.json +2 -2
- package/templates/skills/apps/SKILL.md +28 -6
- package/templates/skills/apps/content.md +28 -6
- package/templates/skills/chat-sdk/content.md +6 -2
- package/templates/skills/code-quality/content.md +2 -1
- package/templates/skills/heartbeat-runbook/content.md +5 -5
- package/templates/skills/pages/content.md +6 -4
- package/templates/skills/slack-interaction/content.md +5 -0
- package/templates/skills/swarm-scripts/SKILL.md +2 -2
- package/templates/skills/swarm-scripts/content.md +2 -2
- package/templates/skills/work-on-task/SKILL.md +1 -1
- package/templates/skills/work-on-task/content.md +1 -1
- package/dist/cli-51y09c6p.js +0 -2657
- package/dist/cli-yw91rnmw.js +0 -13
- package/dist/handlers-0pvee9nw.js +0 -39
- package/dist/index-gdh8jrdm.js +0 -43
- package/dist/index-hg0x2cdv.js +0 -40
- package/dist/index-thm0y6a8.js +0 -41
- package/dist/lead-ee8vazz2.js +0 -77
- package/dist/worker-16s75hm5.js +0 -77
package/openapi.json
CHANGED
|
@@ -2,7 +2,7 @@
|
|
|
2
2
|
"openapi": "3.1.0",
|
|
3
3
|
"info": {
|
|
4
4
|
"title": "Agent Swarm API",
|
|
5
|
-
"version": "2.
|
|
5
|
+
"version": "2.5.0",
|
|
6
6
|
"description": "Multi-agent orchestration API for Claude Code, Codex, and Gemini CLI. Enables task distribution, agent communication, and service discovery.\n\nMCP tools are documented separately in [MCP.md](./MCP.md)."
|
|
7
7
|
},
|
|
8
8
|
"servers": [
|
|
@@ -166,6 +166,7 @@
|
|
|
166
166
|
"github",
|
|
167
167
|
"gitlab",
|
|
168
168
|
"azure-devops",
|
|
169
|
+
"bitbucket",
|
|
169
170
|
"agentmail",
|
|
170
171
|
"system",
|
|
171
172
|
"schedule",
|
|
@@ -292,7 +293,8 @@
|
|
|
292
293
|
"enum": [
|
|
293
294
|
"github",
|
|
294
295
|
"gitlab",
|
|
295
|
-
"azure-devops"
|
|
296
|
+
"azure-devops",
|
|
297
|
+
"bitbucket"
|
|
296
298
|
]
|
|
297
299
|
},
|
|
298
300
|
"vcsRepo": {
|
|
@@ -20922,7 +20924,7 @@
|
|
|
20922
20924
|
},
|
|
20923
20925
|
"post": {
|
|
20924
20926
|
"summary": "Upload a binary task file attachment",
|
|
20925
|
-
"description": "Accepts a raw binary request body. Pass the display/path name as the `name` query parameter.",
|
|
20927
|
+
"description": "Accepts a raw binary request body. Pass the display/path name as the `name` query parameter. An `audio/*` file uploaded to a `draft` task gets a `[File: …]` line and its transcript (or why there is none) appended to the task text before the response; a failed transcription never fails the upload.",
|
|
20926
20928
|
"tags": [
|
|
20927
20929
|
"FS"
|
|
20928
20930
|
],
|
|
@@ -29806,6 +29808,7 @@
|
|
|
29806
29808
|
"slack",
|
|
29807
29809
|
"github",
|
|
29808
29810
|
"gitlab",
|
|
29811
|
+
"bitbucket",
|
|
29809
29812
|
"linear_oauth",
|
|
29810
29813
|
"jira_oauth",
|
|
29811
29814
|
null
|
|
@@ -29994,6 +29997,9 @@
|
|
|
29994
29997
|
"gitlab": {
|
|
29995
29998
|
"type": "boolean"
|
|
29996
29999
|
},
|
|
30000
|
+
"bitbucket": {
|
|
30001
|
+
"type": "boolean"
|
|
30002
|
+
},
|
|
29997
30003
|
"linear": {
|
|
29998
30004
|
"type": "boolean"
|
|
29999
30005
|
},
|
|
@@ -30005,6 +30011,7 @@
|
|
|
30005
30011
|
"slack",
|
|
30006
30012
|
"github",
|
|
30007
30013
|
"gitlab",
|
|
30014
|
+
"bitbucket",
|
|
30008
30015
|
"linear",
|
|
30009
30016
|
"jira"
|
|
30010
30017
|
]
|
|
@@ -30255,6 +30262,7 @@
|
|
|
30255
30262
|
"slack",
|
|
30256
30263
|
"github",
|
|
30257
30264
|
"gitlab",
|
|
30265
|
+
"bitbucket",
|
|
30258
30266
|
"linear_oauth",
|
|
30259
30267
|
"jira_oauth"
|
|
30260
30268
|
]
|
|
@@ -30800,6 +30808,7 @@
|
|
|
30800
30808
|
"slack",
|
|
30801
30809
|
"github",
|
|
30802
30810
|
"gitlab",
|
|
30811
|
+
"bitbucket",
|
|
30803
30812
|
"linear_oauth",
|
|
30804
30813
|
"jira_oauth",
|
|
30805
30814
|
null
|
|
@@ -30988,6 +30997,9 @@
|
|
|
30988
30997
|
"gitlab": {
|
|
30989
30998
|
"type": "boolean"
|
|
30990
30999
|
},
|
|
31000
|
+
"bitbucket": {
|
|
31001
|
+
"type": "boolean"
|
|
31002
|
+
},
|
|
30991
31003
|
"linear": {
|
|
30992
31004
|
"type": "boolean"
|
|
30993
31005
|
},
|
|
@@ -30999,6 +31011,7 @@
|
|
|
30999
31011
|
"slack",
|
|
31000
31012
|
"github",
|
|
31001
31013
|
"gitlab",
|
|
31014
|
+
"bitbucket",
|
|
31002
31015
|
"linear",
|
|
31003
31016
|
"jira"
|
|
31004
31017
|
]
|
|
@@ -31560,6 +31573,7 @@
|
|
|
31560
31573
|
"github",
|
|
31561
31574
|
"gitlab",
|
|
31562
31575
|
"azure-devops",
|
|
31576
|
+
"bitbucket",
|
|
31563
31577
|
"agentmail",
|
|
31564
31578
|
"system",
|
|
31565
31579
|
"schedule",
|
|
@@ -31886,6 +31900,7 @@
|
|
|
31886
31900
|
"github",
|
|
31887
31901
|
"gitlab",
|
|
31888
31902
|
"azure-devops",
|
|
31903
|
+
"bitbucket",
|
|
31889
31904
|
"agentmail",
|
|
31890
31905
|
"system",
|
|
31891
31906
|
"schedule",
|
|
@@ -33127,6 +33142,7 @@
|
|
|
33127
33142
|
"github",
|
|
33128
33143
|
"gitlab",
|
|
33129
33144
|
"azure-devops",
|
|
33145
|
+
"bitbucket",
|
|
33130
33146
|
"agentmail",
|
|
33131
33147
|
"system",
|
|
33132
33148
|
"schedule",
|
|
@@ -33998,7 +34014,8 @@
|
|
|
33998
34014
|
"enum": [
|
|
33999
34015
|
"github",
|
|
34000
34016
|
"gitlab",
|
|
34001
|
-
"azure-devops"
|
|
34017
|
+
"azure-devops",
|
|
34018
|
+
"bitbucket"
|
|
34002
34019
|
]
|
|
34003
34020
|
},
|
|
34004
34021
|
"vcsRepo": {
|
|
@@ -46586,6 +46603,13 @@
|
|
|
46586
46603
|
"minimum": 0,
|
|
46587
46604
|
"maximum": 100
|
|
46588
46605
|
},
|
|
46606
|
+
"dependsOn": {
|
|
46607
|
+
"type": "array",
|
|
46608
|
+
"items": {
|
|
46609
|
+
"type": "string",
|
|
46610
|
+
"format": "uuid"
|
|
46611
|
+
}
|
|
46612
|
+
},
|
|
46589
46613
|
"offerMode": {
|
|
46590
46614
|
"type": "boolean"
|
|
46591
46615
|
},
|
|
@@ -48399,6 +48423,70 @@
|
|
|
48399
48423
|
"name": "contextKeyPrefix",
|
|
48400
48424
|
"in": "query"
|
|
48401
48425
|
},
|
|
48426
|
+
{
|
|
48427
|
+
"schema": {
|
|
48428
|
+
"type": "string"
|
|
48429
|
+
},
|
|
48430
|
+
"required": false,
|
|
48431
|
+
"name": "keyPrefix",
|
|
48432
|
+
"in": "query"
|
|
48433
|
+
},
|
|
48434
|
+
{
|
|
48435
|
+
"schema": {
|
|
48436
|
+
"type": "string"
|
|
48437
|
+
},
|
|
48438
|
+
"required": false,
|
|
48439
|
+
"name": "groupKey",
|
|
48440
|
+
"in": "query"
|
|
48441
|
+
},
|
|
48442
|
+
{
|
|
48443
|
+
"schema": {
|
|
48444
|
+
"type": "string",
|
|
48445
|
+
"enum": [
|
|
48446
|
+
"true",
|
|
48447
|
+
"false"
|
|
48448
|
+
]
|
|
48449
|
+
},
|
|
48450
|
+
"required": false,
|
|
48451
|
+
"name": "noGroup",
|
|
48452
|
+
"in": "query"
|
|
48453
|
+
},
|
|
48454
|
+
{
|
|
48455
|
+
"schema": {
|
|
48456
|
+
"type": "string",
|
|
48457
|
+
"enum": [
|
|
48458
|
+
"inbox",
|
|
48459
|
+
"later",
|
|
48460
|
+
"done",
|
|
48461
|
+
"unread"
|
|
48462
|
+
]
|
|
48463
|
+
},
|
|
48464
|
+
"required": false,
|
|
48465
|
+
"name": "triage",
|
|
48466
|
+
"in": "query"
|
|
48467
|
+
},
|
|
48468
|
+
{
|
|
48469
|
+
"schema": {
|
|
48470
|
+
"type": "string",
|
|
48471
|
+
"enum": [
|
|
48472
|
+
"running",
|
|
48473
|
+
"failed",
|
|
48474
|
+
"needs"
|
|
48475
|
+
]
|
|
48476
|
+
},
|
|
48477
|
+
"required": false,
|
|
48478
|
+
"name": "status",
|
|
48479
|
+
"in": "query"
|
|
48480
|
+
},
|
|
48481
|
+
{
|
|
48482
|
+
"schema": {
|
|
48483
|
+
"type": "string",
|
|
48484
|
+
"minLength": 1
|
|
48485
|
+
},
|
|
48486
|
+
"required": false,
|
|
48487
|
+
"name": "withUserId",
|
|
48488
|
+
"in": "query"
|
|
48489
|
+
},
|
|
48402
48490
|
{
|
|
48403
48491
|
"schema": {
|
|
48404
48492
|
"type": "string",
|
|
@@ -48416,10 +48504,13 @@
|
|
|
48416
48504
|
"type": "string",
|
|
48417
48505
|
"enum": [
|
|
48418
48506
|
"mine",
|
|
48419
|
-
"shared"
|
|
48420
|
-
|
|
48507
|
+
"shared",
|
|
48508
|
+
"tree"
|
|
48509
|
+
],
|
|
48510
|
+
"description": "mine: owned sessions. shared: sessions shared with me. tree: Sessions that GET /api/session-tree counts: mine plus shared with me, no ownerless roots. A bypass actor sees every root with tree scope."
|
|
48421
48511
|
},
|
|
48422
48512
|
"required": false,
|
|
48513
|
+
"description": "mine: owned sessions. shared: sessions shared with me. tree: Sessions that GET /api/session-tree counts: mine plus shared with me, no ownerless roots. A bypass actor sees every root with tree scope.",
|
|
48423
48514
|
"name": "scope",
|
|
48424
48515
|
"in": "query"
|
|
48425
48516
|
}
|
|
@@ -48498,6 +48589,7 @@
|
|
|
48498
48589
|
"github",
|
|
48499
48590
|
"gitlab",
|
|
48500
48591
|
"azure-devops",
|
|
48592
|
+
"bitbucket",
|
|
48501
48593
|
"agentmail",
|
|
48502
48594
|
"system",
|
|
48503
48595
|
"schedule",
|
|
@@ -48647,6 +48739,89 @@
|
|
|
48647
48739
|
"cancelled",
|
|
48648
48740
|
"superseded"
|
|
48649
48741
|
]
|
|
48742
|
+
},
|
|
48743
|
+
"readState": {
|
|
48744
|
+
"type": "string",
|
|
48745
|
+
"enum": [
|
|
48746
|
+
"unread",
|
|
48747
|
+
"read",
|
|
48748
|
+
"later",
|
|
48749
|
+
"done"
|
|
48750
|
+
]
|
|
48751
|
+
},
|
|
48752
|
+
"snoozeUntil": {
|
|
48753
|
+
"type": [
|
|
48754
|
+
"string",
|
|
48755
|
+
"null"
|
|
48756
|
+
]
|
|
48757
|
+
},
|
|
48758
|
+
"needsYou": {
|
|
48759
|
+
"type": "boolean"
|
|
48760
|
+
},
|
|
48761
|
+
"groupKey": {
|
|
48762
|
+
"type": "string"
|
|
48763
|
+
},
|
|
48764
|
+
"shared": {
|
|
48765
|
+
"type": "boolean"
|
|
48766
|
+
},
|
|
48767
|
+
"people": {
|
|
48768
|
+
"type": "array",
|
|
48769
|
+
"items": {
|
|
48770
|
+
"type": "object",
|
|
48771
|
+
"properties": {
|
|
48772
|
+
"id": {
|
|
48773
|
+
"type": "string"
|
|
48774
|
+
},
|
|
48775
|
+
"name": {
|
|
48776
|
+
"type": "string"
|
|
48777
|
+
}
|
|
48778
|
+
},
|
|
48779
|
+
"required": [
|
|
48780
|
+
"id",
|
|
48781
|
+
"name"
|
|
48782
|
+
]
|
|
48783
|
+
}
|
|
48784
|
+
},
|
|
48785
|
+
"peopleCount": {
|
|
48786
|
+
"type": "integer"
|
|
48787
|
+
},
|
|
48788
|
+
"preview": {
|
|
48789
|
+
"type": [
|
|
48790
|
+
"string",
|
|
48791
|
+
"null"
|
|
48792
|
+
]
|
|
48793
|
+
},
|
|
48794
|
+
"shares": {
|
|
48795
|
+
"type": "array",
|
|
48796
|
+
"items": {
|
|
48797
|
+
"type": "object",
|
|
48798
|
+
"properties": {
|
|
48799
|
+
"userId": {
|
|
48800
|
+
"type": [
|
|
48801
|
+
"string",
|
|
48802
|
+
"null"
|
|
48803
|
+
]
|
|
48804
|
+
},
|
|
48805
|
+
"name": {
|
|
48806
|
+
"type": [
|
|
48807
|
+
"string",
|
|
48808
|
+
"null"
|
|
48809
|
+
]
|
|
48810
|
+
},
|
|
48811
|
+
"access": {
|
|
48812
|
+
"type": "string",
|
|
48813
|
+
"enum": [
|
|
48814
|
+
"read",
|
|
48815
|
+
"write"
|
|
48816
|
+
]
|
|
48817
|
+
}
|
|
48818
|
+
},
|
|
48819
|
+
"required": [
|
|
48820
|
+
"userId",
|
|
48821
|
+
"name",
|
|
48822
|
+
"access"
|
|
48823
|
+
]
|
|
48824
|
+
}
|
|
48650
48825
|
}
|
|
48651
48826
|
},
|
|
48652
48827
|
"required": [
|
|
@@ -48690,6 +48865,414 @@
|
|
|
48690
48865
|
}
|
|
48691
48866
|
}
|
|
48692
48867
|
},
|
|
48868
|
+
"/api/session-tree": {
|
|
48869
|
+
"get": {
|
|
48870
|
+
"summary": "Get session groups and triage counts",
|
|
48871
|
+
"tags": [
|
|
48872
|
+
"Sessions"
|
|
48873
|
+
],
|
|
48874
|
+
"security": [
|
|
48875
|
+
{
|
|
48876
|
+
"bearerAuth": []
|
|
48877
|
+
}
|
|
48878
|
+
],
|
|
48879
|
+
"responses": {
|
|
48880
|
+
"200": {
|
|
48881
|
+
"description": "Visible groups and section counts",
|
|
48882
|
+
"content": {
|
|
48883
|
+
"application/json": {
|
|
48884
|
+
"schema": {
|
|
48885
|
+
"type": "object",
|
|
48886
|
+
"properties": {
|
|
48887
|
+
"groups": {
|
|
48888
|
+
"type": "array",
|
|
48889
|
+
"items": {
|
|
48890
|
+
"type": "object",
|
|
48891
|
+
"properties": {
|
|
48892
|
+
"total": {
|
|
48893
|
+
"type": "integer"
|
|
48894
|
+
},
|
|
48895
|
+
"unread": {
|
|
48896
|
+
"type": "integer"
|
|
48897
|
+
},
|
|
48898
|
+
"running": {
|
|
48899
|
+
"type": "integer"
|
|
48900
|
+
},
|
|
48901
|
+
"needsYou": {
|
|
48902
|
+
"type": "integer"
|
|
48903
|
+
},
|
|
48904
|
+
"key": {
|
|
48905
|
+
"type": "string"
|
|
48906
|
+
},
|
|
48907
|
+
"lastActivityAt": {
|
|
48908
|
+
"type": "string"
|
|
48909
|
+
}
|
|
48910
|
+
},
|
|
48911
|
+
"required": [
|
|
48912
|
+
"total",
|
|
48913
|
+
"unread",
|
|
48914
|
+
"running",
|
|
48915
|
+
"needsYou",
|
|
48916
|
+
"key",
|
|
48917
|
+
"lastActivityAt"
|
|
48918
|
+
]
|
|
48919
|
+
}
|
|
48920
|
+
},
|
|
48921
|
+
"inbox": {
|
|
48922
|
+
"type": "object",
|
|
48923
|
+
"properties": {
|
|
48924
|
+
"total": {
|
|
48925
|
+
"type": "integer"
|
|
48926
|
+
},
|
|
48927
|
+
"unread": {
|
|
48928
|
+
"type": "integer"
|
|
48929
|
+
},
|
|
48930
|
+
"running": {
|
|
48931
|
+
"type": "integer"
|
|
48932
|
+
},
|
|
48933
|
+
"needsYou": {
|
|
48934
|
+
"type": "integer"
|
|
48935
|
+
}
|
|
48936
|
+
},
|
|
48937
|
+
"required": [
|
|
48938
|
+
"total",
|
|
48939
|
+
"unread",
|
|
48940
|
+
"running",
|
|
48941
|
+
"needsYou"
|
|
48942
|
+
]
|
|
48943
|
+
},
|
|
48944
|
+
"later": {
|
|
48945
|
+
"type": "object",
|
|
48946
|
+
"properties": {
|
|
48947
|
+
"total": {
|
|
48948
|
+
"type": "integer"
|
|
48949
|
+
},
|
|
48950
|
+
"unread": {
|
|
48951
|
+
"type": "integer"
|
|
48952
|
+
},
|
|
48953
|
+
"running": {
|
|
48954
|
+
"type": "integer"
|
|
48955
|
+
},
|
|
48956
|
+
"needsYou": {
|
|
48957
|
+
"type": "integer"
|
|
48958
|
+
}
|
|
48959
|
+
},
|
|
48960
|
+
"required": [
|
|
48961
|
+
"total",
|
|
48962
|
+
"unread",
|
|
48963
|
+
"running",
|
|
48964
|
+
"needsYou"
|
|
48965
|
+
]
|
|
48966
|
+
},
|
|
48967
|
+
"done": {
|
|
48968
|
+
"type": "object",
|
|
48969
|
+
"properties": {
|
|
48970
|
+
"total": {
|
|
48971
|
+
"type": "integer"
|
|
48972
|
+
},
|
|
48973
|
+
"unread": {
|
|
48974
|
+
"type": "integer"
|
|
48975
|
+
},
|
|
48976
|
+
"running": {
|
|
48977
|
+
"type": "integer"
|
|
48978
|
+
},
|
|
48979
|
+
"needsYou": {
|
|
48980
|
+
"type": "integer"
|
|
48981
|
+
}
|
|
48982
|
+
},
|
|
48983
|
+
"required": [
|
|
48984
|
+
"total",
|
|
48985
|
+
"unread",
|
|
48986
|
+
"running",
|
|
48987
|
+
"needsYou"
|
|
48988
|
+
]
|
|
48989
|
+
},
|
|
48990
|
+
"noGroup": {
|
|
48991
|
+
"type": "object",
|
|
48992
|
+
"properties": {
|
|
48993
|
+
"total": {
|
|
48994
|
+
"type": "integer"
|
|
48995
|
+
},
|
|
48996
|
+
"unread": {
|
|
48997
|
+
"type": "integer"
|
|
48998
|
+
},
|
|
48999
|
+
"running": {
|
|
49000
|
+
"type": "integer"
|
|
49001
|
+
},
|
|
49002
|
+
"needsYou": {
|
|
49003
|
+
"type": "integer"
|
|
49004
|
+
}
|
|
49005
|
+
},
|
|
49006
|
+
"required": [
|
|
49007
|
+
"total",
|
|
49008
|
+
"unread",
|
|
49009
|
+
"running",
|
|
49010
|
+
"needsYou"
|
|
49011
|
+
]
|
|
49012
|
+
}
|
|
49013
|
+
},
|
|
49014
|
+
"required": [
|
|
49015
|
+
"groups",
|
|
49016
|
+
"inbox",
|
|
49017
|
+
"later",
|
|
49018
|
+
"done",
|
|
49019
|
+
"noGroup"
|
|
49020
|
+
]
|
|
49021
|
+
}
|
|
49022
|
+
}
|
|
49023
|
+
}
|
|
49024
|
+
},
|
|
49025
|
+
"401": {
|
|
49026
|
+
"description": "Unauthorized",
|
|
49027
|
+
"content": {
|
|
49028
|
+
"application/json": {
|
|
49029
|
+
"schema": {
|
|
49030
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49031
|
+
}
|
|
49032
|
+
}
|
|
49033
|
+
}
|
|
49034
|
+
}
|
|
49035
|
+
}
|
|
49036
|
+
}
|
|
49037
|
+
},
|
|
49038
|
+
"/api/session-moves": {
|
|
49039
|
+
"post": {
|
|
49040
|
+
"summary": "Move sessions into a group or reset their keys",
|
|
49041
|
+
"tags": [
|
|
49042
|
+
"Sessions"
|
|
49043
|
+
],
|
|
49044
|
+
"security": [
|
|
49045
|
+
{
|
|
49046
|
+
"bearerAuth": []
|
|
49047
|
+
}
|
|
49048
|
+
],
|
|
49049
|
+
"requestBody": {
|
|
49050
|
+
"content": {
|
|
49051
|
+
"application/json": {
|
|
49052
|
+
"schema": {
|
|
49053
|
+
"type": "object",
|
|
49054
|
+
"properties": {
|
|
49055
|
+
"rootTaskIds": {
|
|
49056
|
+
"type": "array",
|
|
49057
|
+
"items": {
|
|
49058
|
+
"type": "string",
|
|
49059
|
+
"minLength": 1
|
|
49060
|
+
},
|
|
49061
|
+
"minItems": 1,
|
|
49062
|
+
"maxItems": 200
|
|
49063
|
+
},
|
|
49064
|
+
"groupKey": {
|
|
49065
|
+
"type": [
|
|
49066
|
+
"string",
|
|
49067
|
+
"null"
|
|
49068
|
+
],
|
|
49069
|
+
"minLength": 1,
|
|
49070
|
+
"maxLength": 255,
|
|
49071
|
+
"description": "Non-unique asset directory namespace (for example shared/ or personal/<user-id>/drafts/). Runtime write boundaries normalize and validate the canonical form."
|
|
49072
|
+
}
|
|
49073
|
+
},
|
|
49074
|
+
"required": [
|
|
49075
|
+
"rootTaskIds",
|
|
49076
|
+
"groupKey"
|
|
49077
|
+
]
|
|
49078
|
+
}
|
|
49079
|
+
}
|
|
49080
|
+
}
|
|
49081
|
+
},
|
|
49082
|
+
"responses": {
|
|
49083
|
+
"200": {
|
|
49084
|
+
"description": "Moved and skipped sessions",
|
|
49085
|
+
"content": {
|
|
49086
|
+
"application/json": {
|
|
49087
|
+
"schema": {
|
|
49088
|
+
"type": "object",
|
|
49089
|
+
"properties": {
|
|
49090
|
+
"moved": {
|
|
49091
|
+
"type": "array",
|
|
49092
|
+
"items": {
|
|
49093
|
+
"type": "string"
|
|
49094
|
+
}
|
|
49095
|
+
},
|
|
49096
|
+
"skipped": {
|
|
49097
|
+
"type": "array",
|
|
49098
|
+
"items": {
|
|
49099
|
+
"type": "object",
|
|
49100
|
+
"properties": {
|
|
49101
|
+
"rootTaskId": {
|
|
49102
|
+
"type": "string"
|
|
49103
|
+
},
|
|
49104
|
+
"reason": {
|
|
49105
|
+
"type": "string"
|
|
49106
|
+
}
|
|
49107
|
+
},
|
|
49108
|
+
"required": [
|
|
49109
|
+
"rootTaskId",
|
|
49110
|
+
"reason"
|
|
49111
|
+
]
|
|
49112
|
+
}
|
|
49113
|
+
}
|
|
49114
|
+
},
|
|
49115
|
+
"required": [
|
|
49116
|
+
"moved",
|
|
49117
|
+
"skipped"
|
|
49118
|
+
]
|
|
49119
|
+
}
|
|
49120
|
+
}
|
|
49121
|
+
}
|
|
49122
|
+
},
|
|
49123
|
+
"400": {
|
|
49124
|
+
"description": "Invalid namespace or request",
|
|
49125
|
+
"content": {
|
|
49126
|
+
"application/json": {
|
|
49127
|
+
"schema": {
|
|
49128
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49129
|
+
}
|
|
49130
|
+
}
|
|
49131
|
+
}
|
|
49132
|
+
},
|
|
49133
|
+
"403": {
|
|
49134
|
+
"description": "Personal destination not authorized",
|
|
49135
|
+
"content": {
|
|
49136
|
+
"application/json": {
|
|
49137
|
+
"schema": {
|
|
49138
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49139
|
+
}
|
|
49140
|
+
}
|
|
49141
|
+
}
|
|
49142
|
+
},
|
|
49143
|
+
"409": {
|
|
49144
|
+
"description": "Moves blocked until audit warnings are repaired",
|
|
49145
|
+
"content": {
|
|
49146
|
+
"application/json": {
|
|
49147
|
+
"schema": {
|
|
49148
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49149
|
+
}
|
|
49150
|
+
}
|
|
49151
|
+
}
|
|
49152
|
+
}
|
|
49153
|
+
}
|
|
49154
|
+
}
|
|
49155
|
+
},
|
|
49156
|
+
"/api/session-moves/prefix": {
|
|
49157
|
+
"post": {
|
|
49158
|
+
"summary": "Rename or delete a session group",
|
|
49159
|
+
"tags": [
|
|
49160
|
+
"Sessions"
|
|
49161
|
+
],
|
|
49162
|
+
"security": [
|
|
49163
|
+
{
|
|
49164
|
+
"bearerAuth": []
|
|
49165
|
+
}
|
|
49166
|
+
],
|
|
49167
|
+
"requestBody": {
|
|
49168
|
+
"content": {
|
|
49169
|
+
"application/json": {
|
|
49170
|
+
"schema": {
|
|
49171
|
+
"type": "object",
|
|
49172
|
+
"properties": {
|
|
49173
|
+
"from": {
|
|
49174
|
+
"type": "string",
|
|
49175
|
+
"minLength": 1,
|
|
49176
|
+
"maxLength": 255,
|
|
49177
|
+
"description": "Non-unique asset directory namespace (for example shared/ or personal/<user-id>/drafts/). Runtime write boundaries normalize and validate the canonical form."
|
|
49178
|
+
},
|
|
49179
|
+
"to": {
|
|
49180
|
+
"type": [
|
|
49181
|
+
"string",
|
|
49182
|
+
"null"
|
|
49183
|
+
],
|
|
49184
|
+
"minLength": 1,
|
|
49185
|
+
"maxLength": 255,
|
|
49186
|
+
"description": "Non-unique asset directory namespace (for example shared/ or personal/<user-id>/drafts/). Runtime write boundaries normalize and validate the canonical form."
|
|
49187
|
+
}
|
|
49188
|
+
},
|
|
49189
|
+
"required": [
|
|
49190
|
+
"from",
|
|
49191
|
+
"to"
|
|
49192
|
+
]
|
|
49193
|
+
}
|
|
49194
|
+
}
|
|
49195
|
+
}
|
|
49196
|
+
},
|
|
49197
|
+
"responses": {
|
|
49198
|
+
"200": {
|
|
49199
|
+
"description": "Moved and skipped sessions and remaining movable roots",
|
|
49200
|
+
"content": {
|
|
49201
|
+
"application/json": {
|
|
49202
|
+
"schema": {
|
|
49203
|
+
"type": "object",
|
|
49204
|
+
"properties": {
|
|
49205
|
+
"moved": {
|
|
49206
|
+
"type": "array",
|
|
49207
|
+
"items": {
|
|
49208
|
+
"type": "string"
|
|
49209
|
+
}
|
|
49210
|
+
},
|
|
49211
|
+
"skipped": {
|
|
49212
|
+
"type": "array",
|
|
49213
|
+
"items": {
|
|
49214
|
+
"type": "object",
|
|
49215
|
+
"properties": {
|
|
49216
|
+
"rootTaskId": {
|
|
49217
|
+
"type": "string"
|
|
49218
|
+
},
|
|
49219
|
+
"reason": {
|
|
49220
|
+
"type": "string"
|
|
49221
|
+
}
|
|
49222
|
+
},
|
|
49223
|
+
"required": [
|
|
49224
|
+
"rootTaskId",
|
|
49225
|
+
"reason"
|
|
49226
|
+
]
|
|
49227
|
+
}
|
|
49228
|
+
},
|
|
49229
|
+
"remaining": {
|
|
49230
|
+
"type": "integer",
|
|
49231
|
+
"minimum": 0
|
|
49232
|
+
}
|
|
49233
|
+
},
|
|
49234
|
+
"required": [
|
|
49235
|
+
"moved",
|
|
49236
|
+
"skipped",
|
|
49237
|
+
"remaining"
|
|
49238
|
+
]
|
|
49239
|
+
}
|
|
49240
|
+
}
|
|
49241
|
+
}
|
|
49242
|
+
},
|
|
49243
|
+
"400": {
|
|
49244
|
+
"description": "Invalid namespace or request",
|
|
49245
|
+
"content": {
|
|
49246
|
+
"application/json": {
|
|
49247
|
+
"schema": {
|
|
49248
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49249
|
+
}
|
|
49250
|
+
}
|
|
49251
|
+
}
|
|
49252
|
+
},
|
|
49253
|
+
"403": {
|
|
49254
|
+
"description": "Personal destination not authorized",
|
|
49255
|
+
"content": {
|
|
49256
|
+
"application/json": {
|
|
49257
|
+
"schema": {
|
|
49258
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49259
|
+
}
|
|
49260
|
+
}
|
|
49261
|
+
}
|
|
49262
|
+
},
|
|
49263
|
+
"409": {
|
|
49264
|
+
"description": "Moves blocked until audit warnings are repaired",
|
|
49265
|
+
"content": {
|
|
49266
|
+
"application/json": {
|
|
49267
|
+
"schema": {
|
|
49268
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
49269
|
+
}
|
|
49270
|
+
}
|
|
49271
|
+
}
|
|
49272
|
+
}
|
|
49273
|
+
}
|
|
49274
|
+
}
|
|
49275
|
+
},
|
|
48693
49276
|
"/api/sessions/{rootTaskId}": {
|
|
48694
49277
|
"get": {
|
|
48695
49278
|
"summary": "Get a session — root task + the entire descendant chain",
|
|
@@ -48922,6 +49505,47 @@
|
|
|
48922
49505
|
},
|
|
48923
49506
|
"owner": {
|
|
48924
49507
|
"$ref": "#/components/schemas/SessionOwner"
|
|
49508
|
+
},
|
|
49509
|
+
"approvals": {
|
|
49510
|
+
"type": "array",
|
|
49511
|
+
"items": {
|
|
49512
|
+
"type": "object",
|
|
49513
|
+
"properties": {
|
|
49514
|
+
"id": {
|
|
49515
|
+
"type": "string"
|
|
49516
|
+
},
|
|
49517
|
+
"status": {
|
|
49518
|
+
"type": "string",
|
|
49519
|
+
"enum": [
|
|
49520
|
+
"pending"
|
|
49521
|
+
]
|
|
49522
|
+
},
|
|
49523
|
+
"sourceTaskId": {
|
|
49524
|
+
"type": "string"
|
|
49525
|
+
},
|
|
49526
|
+
"title": {
|
|
49527
|
+
"type": "string"
|
|
49528
|
+
}
|
|
49529
|
+
},
|
|
49530
|
+
"required": [
|
|
49531
|
+
"id",
|
|
49532
|
+
"status",
|
|
49533
|
+
"sourceTaskId",
|
|
49534
|
+
"title"
|
|
49535
|
+
]
|
|
49536
|
+
}
|
|
49537
|
+
},
|
|
49538
|
+
"readState": {
|
|
49539
|
+
"type": "string",
|
|
49540
|
+
"enum": [
|
|
49541
|
+
"unread",
|
|
49542
|
+
"read",
|
|
49543
|
+
"later",
|
|
49544
|
+
"done"
|
|
49545
|
+
]
|
|
49546
|
+
},
|
|
49547
|
+
"lastActivityAt": {
|
|
49548
|
+
"type": "string"
|
|
48925
49549
|
}
|
|
48926
49550
|
},
|
|
48927
49551
|
"required": [
|
|
@@ -51014,6 +51638,87 @@
|
|
|
51014
51638
|
}
|
|
51015
51639
|
}
|
|
51016
51640
|
},
|
|
51641
|
+
"/api/agents/{id}/skills/bundle": {
|
|
51642
|
+
"get": {
|
|
51643
|
+
"summary": "Get an agent's installed skills together with their bundled files",
|
|
51644
|
+
"description": "Single-request boot payload: every installed-and-enabled skill with the full content of its bundled files, plus the same signature the cheap probe returns. Lets a worker sync its local skill tree without an N+1 file fan-out.",
|
|
51645
|
+
"tags": [
|
|
51646
|
+
"Skills"
|
|
51647
|
+
],
|
|
51648
|
+
"security": [
|
|
51649
|
+
{
|
|
51650
|
+
"bearerAuth": []
|
|
51651
|
+
}
|
|
51652
|
+
],
|
|
51653
|
+
"parameters": [
|
|
51654
|
+
{
|
|
51655
|
+
"schema": {
|
|
51656
|
+
"type": "string"
|
|
51657
|
+
},
|
|
51658
|
+
"required": true,
|
|
51659
|
+
"name": "id",
|
|
51660
|
+
"in": "path"
|
|
51661
|
+
}
|
|
51662
|
+
],
|
|
51663
|
+
"responses": {
|
|
51664
|
+
"200": {
|
|
51665
|
+
"description": "Agent skills bundle",
|
|
51666
|
+
"content": {
|
|
51667
|
+
"application/json": {
|
|
51668
|
+
"schema": {
|
|
51669
|
+
"type": "object",
|
|
51670
|
+
"properties": {
|
|
51671
|
+
"skills": {
|
|
51672
|
+
"type": "array",
|
|
51673
|
+
"items": {
|
|
51674
|
+
"allOf": [
|
|
51675
|
+
{
|
|
51676
|
+
"$ref": "#/components/schemas/Skill"
|
|
51677
|
+
},
|
|
51678
|
+
{
|
|
51679
|
+
"type": "object",
|
|
51680
|
+
"properties": {
|
|
51681
|
+
"isActive": {
|
|
51682
|
+
"type": "boolean"
|
|
51683
|
+
},
|
|
51684
|
+
"installedAt": {
|
|
51685
|
+
"type": "string"
|
|
51686
|
+
},
|
|
51687
|
+
"files": {
|
|
51688
|
+
"type": "array",
|
|
51689
|
+
"items": {
|
|
51690
|
+
"$ref": "#/components/schemas/SkillFile"
|
|
51691
|
+
}
|
|
51692
|
+
}
|
|
51693
|
+
},
|
|
51694
|
+
"required": [
|
|
51695
|
+
"isActive",
|
|
51696
|
+
"installedAt",
|
|
51697
|
+
"files"
|
|
51698
|
+
]
|
|
51699
|
+
}
|
|
51700
|
+
]
|
|
51701
|
+
}
|
|
51702
|
+
},
|
|
51703
|
+
"total": {
|
|
51704
|
+
"type": "number"
|
|
51705
|
+
},
|
|
51706
|
+
"signature": {
|
|
51707
|
+
"type": "string"
|
|
51708
|
+
}
|
|
51709
|
+
},
|
|
51710
|
+
"required": [
|
|
51711
|
+
"skills",
|
|
51712
|
+
"total",
|
|
51713
|
+
"signature"
|
|
51714
|
+
]
|
|
51715
|
+
}
|
|
51716
|
+
}
|
|
51717
|
+
}
|
|
51718
|
+
}
|
|
51719
|
+
}
|
|
51720
|
+
}
|
|
51721
|
+
},
|
|
51017
51722
|
"/api/slack/inbound/diagnostics": {
|
|
51018
51723
|
"get": {
|
|
51019
51724
|
"summary": "Operator-only. Slack inbound delivery diagnostics: transport mode, durable receipt counts by state, uncertain receipts awaiting review, and per-transport outcome counters. Never includes payloads or credentials.",
|
|
@@ -58916,6 +59621,88 @@
|
|
|
58916
59621
|
}
|
|
58917
59622
|
}
|
|
58918
59623
|
},
|
|
59624
|
+
"/api/bitbucket/webhook": {
|
|
59625
|
+
"post": {
|
|
59626
|
+
"summary": "Handle Bitbucket Cloud webhook events",
|
|
59627
|
+
"tags": [
|
|
59628
|
+
"Webhooks"
|
|
59629
|
+
],
|
|
59630
|
+
"responses": {
|
|
59631
|
+
"200": {
|
|
59632
|
+
"description": "Event processed",
|
|
59633
|
+
"content": {
|
|
59634
|
+
"application/json": {
|
|
59635
|
+
"schema": {
|
|
59636
|
+
"type": "object",
|
|
59637
|
+
"properties": {
|
|
59638
|
+
"created": {
|
|
59639
|
+
"type": "boolean"
|
|
59640
|
+
},
|
|
59641
|
+
"taskId": {
|
|
59642
|
+
"type": "string"
|
|
59643
|
+
},
|
|
59644
|
+
"skipped": {
|
|
59645
|
+
"type": "boolean"
|
|
59646
|
+
},
|
|
59647
|
+
"reason": {
|
|
59648
|
+
"type": "string"
|
|
59649
|
+
},
|
|
59650
|
+
"extension": {
|
|
59651
|
+
"type": "object",
|
|
59652
|
+
"properties": {
|
|
59653
|
+
"id": {
|
|
59654
|
+
"type": "string"
|
|
59655
|
+
},
|
|
59656
|
+
"name": {
|
|
59657
|
+
"type": "string"
|
|
59658
|
+
}
|
|
59659
|
+
},
|
|
59660
|
+
"required": [
|
|
59661
|
+
"id",
|
|
59662
|
+
"name"
|
|
59663
|
+
]
|
|
59664
|
+
}
|
|
59665
|
+
},
|
|
59666
|
+
"required": [
|
|
59667
|
+
"created"
|
|
59668
|
+
]
|
|
59669
|
+
}
|
|
59670
|
+
}
|
|
59671
|
+
}
|
|
59672
|
+
},
|
|
59673
|
+
"401": {
|
|
59674
|
+
"description": "Invalid signature",
|
|
59675
|
+
"content": {
|
|
59676
|
+
"application/json": {
|
|
59677
|
+
"schema": {
|
|
59678
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
59679
|
+
}
|
|
59680
|
+
}
|
|
59681
|
+
}
|
|
59682
|
+
},
|
|
59683
|
+
"413": {
|
|
59684
|
+
"description": "Body exceeds 1 MiB",
|
|
59685
|
+
"content": {
|
|
59686
|
+
"application/json": {
|
|
59687
|
+
"schema": {
|
|
59688
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
59689
|
+
}
|
|
59690
|
+
}
|
|
59691
|
+
}
|
|
59692
|
+
},
|
|
59693
|
+
"503": {
|
|
59694
|
+
"description": "Bitbucket integration not configured",
|
|
59695
|
+
"content": {
|
|
59696
|
+
"application/json": {
|
|
59697
|
+
"schema": {
|
|
59698
|
+
"$ref": "#/components/schemas/ErrorResponse"
|
|
59699
|
+
}
|
|
59700
|
+
}
|
|
59701
|
+
}
|
|
59702
|
+
}
|
|
59703
|
+
}
|
|
59704
|
+
}
|
|
59705
|
+
},
|
|
58919
59706
|
"/api/agentmail/webhook": {
|
|
58920
59707
|
"post": {
|
|
58921
59708
|
"summary": "Handle AgentMail webhook events",
|