@desplega.ai/agent-swarm 2.7.4 → 2.7.5
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 +1 -1
- package/dist/acp-adapter-g3ads55s.js +15 -0
- package/dist/{actions-gfrr9vb7.js → actions-zwfykqqk.js} +18 -18
- package/dist/{amp-adapter-0s58gm46.js → amp-adapter-z3s0ssdt.js} +3 -3
- package/dist/{app-stvq692g.js → app-vmp4fgep.js} +3 -3
- package/dist/{assistant-5s37fr9n.js → assistant-vwde653f.js} +28 -21
- package/dist/{boot-reembed-yzy1841n.js → boot-reembed-375t7tbk.js} +1 -1
- package/dist/{boot-reembed-cv82gz7y.js → boot-reembed-gq9rcpnj.js} +1 -1
- package/dist/{boot-scrub-sweep-8k4q95ap.js → boot-scrub-sweep-nd938kyf.js} +4 -4
- package/dist/{boot-seeds-ftt9htah.js → boot-seeds-aykx51v3.js} +4 -4
- package/dist/{boxd-515v1t8z.js → boxd-k1j26g3h.js} +1 -1
- package/dist/{claude-adapter-t00wrzeh.js → claude-adapter-8j4hm099.js} +7 -7
- package/dist/{claude-managed-adapter-g6vmjccb.js → claude-managed-adapter-dvs2xw5n.js} +2 -2
- package/dist/{claude-managed-setup-afpa82f7.js → claude-managed-setup-0wyynpn1.js} +3 -3
- package/dist/{claude-sdk-session-vj0c2azx.js → claude-sdk-session-q6wj5hmy.js} +9 -9
- package/dist/{cli-wndv9p7g.js → cli-0731hvbw.js} +6 -6
- package/dist/{cli-d2pzqej1.js → cli-0bxqnvq9.js} +719 -7
- package/dist/{cli-jkt52mgt.js → cli-0gey5fzy.js} +2 -2
- package/dist/{cli-1yekbyqm.js → cli-1338796d.js} +205 -48
- package/dist/{cli-1s1dqn1j.js → cli-1ayk1eas.js} +171 -123
- package/dist/{cli-a4btqqft.js → cli-1b7btd38.js} +1 -1
- package/dist/{cli-a2jw6ee5.js → cli-1p89xny0.js} +1 -1
- package/dist/{cli-v726afdm.js → cli-2pnswgh8.js} +1 -1
- package/dist/{cli-kvtc7aez.js → cli-3h4nhjn8.js} +42 -14
- package/dist/{cli-655xm9ms.js → cli-583frbyr.js} +1 -1
- package/dist/{cli-4r12t6w6.js → cli-5c4hjzne.js} +101 -4
- package/dist/{cli-az0bpf8p.js → cli-5pag6rmn.js} +3 -3
- package/dist/{cli-36g23z21.js → cli-6s7vdcta.js} +4 -4
- package/dist/{cli-rtk9g7av.js → cli-73jzwksr.js} +6 -2
- package/dist/{cli-jg0nfda6.js → cli-75gkpjvw.js} +52 -21
- package/dist/{cli-a81qevyg.js → cli-7a42nfy0.js} +20 -36
- package/dist/{cli-0sbkss7h.js → cli-7wcyk2s5.js} +2 -2
- package/dist/{cli-41z8xwj0.js → cli-7wspm5gm.js} +14 -4
- package/dist/{cli-byqfbnjw.js → cli-82ae98pz.js} +9 -9
- package/dist/{cli-bq2pcphn.js → cli-8hs41zy2.js} +1 -1
- package/dist/{cli-vqgnyh76.js → cli-98rw5dt5.js} +15 -3
- package/dist/{cli-9cctx1tn.js → cli-a22h291q.js} +1 -1
- package/dist/{cli-j4kt1mpb.js → cli-a47xy8eq.js} +3 -3
- package/dist/{cli-ycm6180s.js → cli-a7v854rf.js} +5 -3
- package/dist/{cli-98pke4vk.js → cli-ae7mrdf9.js} +2 -2
- package/dist/{cli-ahd90bwt.js → cli-afrrppsw.js} +6 -6
- package/dist/{cli-8yy525ad.js → cli-bhjt02p8.js} +2 -2
- package/dist/{cli-v1yw3wha.js → cli-bnz7a7qf.js} +4 -4
- package/dist/{cli-j4kw3rsx.js → cli-cm5yqn35.js} +18 -0
- package/dist/{cli-h55y2bjc.js → cli-dhar9qay.js} +2 -2
- package/dist/{cli-5gr1g711.js → cli-fqzx7gwa.js} +2 -2
- package/dist/{cli-tzrpv5sc.js → cli-ftyxyspd.js} +1 -1
- package/dist/cli-fw2w0kva.js +47 -0
- package/dist/{cli-2dfbv8qr.js → cli-fy6x31ps.js} +1 -0
- package/dist/{cli-mvckssyq.js → cli-g61qxmge.js} +5 -5
- package/dist/{cli-aq58fk5m.js → cli-g83s9ewh.js} +7 -1
- package/dist/{cli-224epwwf.js → cli-hn9hxmz9.js} +3 -3
- package/dist/{cli-5hjced2v.js → cli-j3jvnpe8.js} +6 -6
- package/dist/{cli-dae4sbgy.js → cli-jm2vfpfd.js} +2 -2
- package/dist/{cli-zn15c46z.js → cli-mjzynrse.js} +1 -1
- package/dist/{cli-a1fhj4n9.js → cli-mmwm7zbf.js} +2 -2
- package/dist/{cli-cq1pf336.js → cli-mry0qzym.js} +5 -5
- package/dist/{cli-bwty35gx.js → cli-mthwvjre.js} +1 -1
- package/dist/{cli-s0exq74r.js → cli-nmbmy64z.js} +3 -3
- package/dist/{cli-wcmnan2g.js → cli-nn4d8dne.js} +5 -5
- package/dist/{cli-jg4p5t36.js → cli-nzxr556s.js} +121 -51
- package/dist/{cli-bcz074zx.js → cli-p599f1qm.js} +1 -1
- package/dist/{cli-k76tgq03.js → cli-pywf3eh5.js} +2 -2
- package/dist/{cli-wk9md5px.js → cli-qxnf8z2z.js} +2 -2
- package/dist/{cli-je8yeyc5.js → cli-rhw40jgb.js} +5 -5
- package/dist/{cli-avgcz4ra.js → cli-rm6hqj3z.js} +406 -35
- package/dist/{cli-0fgr1w9b.js → cli-rpm2sgv0.js} +2 -2
- package/dist/{cli-t282jgab.js → cli-rqkxrmgw.js} +12 -12
- package/dist/{cli-2qpvmmkw.js → cli-s0qnd4wv.js} +1 -1
- package/dist/{cli-pwyevs29.js → cli-spknvxbq.js} +22 -21
- package/dist/{cli-9y354g3j.js → cli-srye3vdt.js} +1 -1
- package/dist/{cli-pe09p6dv.js → cli-tqgg40ek.js} +1 -1
- package/dist/{cli-f255yaqn.js → cli-vbyfwh92.js} +3 -3
- package/dist/{cli-gcbdjt47.js → cli-vfym7wmz.js} +6 -6
- package/dist/{cli-edmm9d9y.js → cli-vqypxzh4.js} +7 -7
- package/dist/{cli-1gm8jcyr.js → cli-wvaawacd.js} +13 -13
- package/dist/{cli-eny54typ.js → cli-wx3rhnm0.js} +1 -1
- package/dist/{cli-b1afgtj3.js → cli-xbkdm710.js} +3 -3
- package/dist/{cli-mc97xy2s.js → cli-xtjhfmpc.js} +16 -4
- package/dist/{cli-eqx6k993.js → cli-y24sc29k.js} +25 -13
- package/dist/{cli-ktmvb20s.js → cli-z6jkx23q.js} +12 -12
- package/dist/{cli-7n5sbw0z.js → cli-z8eh3ex8.js} +5 -5
- package/dist/cli-zh3fp8v2.js +151 -0
- package/dist/{cli-13jvmew3.js → cli-zppwg9p9.js} +7 -7
- package/dist/cli.js +18 -18
- package/dist/{codex-adapter-g0gctw29.js → codex-adapter-q6k3gnyg.js} +5 -5
- package/dist/{codex-hook-vrzz2xhr.js → codex-hook-9efm2x1m.js} +1 -1
- package/dist/{codex-login-0gg46ygn.js → codex-login-y0pmff1c.js} +1 -1
- package/dist/{codex-session-runner-dr2cxe1c.js → codex-session-runner-3mwmk3d9.js} +6 -6
- package/dist/{commands-1p07cvff.js → commands-evrenjn9.js} +2 -2
- package/dist/{controller-z0s7sv6r.js → controller-xjp8vswh.js} +4 -4
- package/dist/{controllers-connect-x9kvvhyk.js → controllers-connect-pp5jnxvc.js} +20 -20
- package/dist/{cursor-adapter-m5b98pvk.js → cursor-adapter-yf47w4t0.js} +2 -2
- package/dist/{db-rsh04kh3.js → db-rgfsh91f.js} +2 -2
- package/dist/{db-capk2raj.js → db-zxpw6aht.js} +3 -3
- package/dist/{devin-adapter-yxm87fe9.js → devin-adapter-r9phbnc9.js} +1 -1
- package/dist/{dispatcher-304q6fwa.js → dispatcher-smasgws7.js} +17 -17
- package/dist/{docker-7rxt0rry.js → docker-rrjhaqt9.js} +2 -2
- package/dist/{dsh-adapter-btewem0y.js → dsh-adapter-ftyy8dnp.js} +2 -2
- package/dist/{e2b-renc0k8q.js → e2b-qcaj675y.js} +2 -2
- package/dist/{e2b-7fc9b9bd.js → e2b-w1p0bnpm.js} +2 -2
- package/dist/{easter-egg-3d-fm1p3n4d.js → easter-egg-3d-yyts7p16.js} +1 -1
- package/dist/{embedding-space-s68v49ct.js → embedding-space-1z0mbg95.js} +6 -6
- package/dist/{embeddings-4ms3604w.js → embeddings-ygeg7tm7.js} +1 -1
- package/dist/{event-bus-dfjx2qdh.js → event-bus-g0ka3pbw.js} +1 -1
- package/dist/{execute-mcdgccjs.js → execute-14qhqp4d.js} +1 -1
- package/dist/{external-channel-9dxwfztn.js → external-channel-ttgrs3sx.js} +2 -2
- package/dist/fx-adapter-gt6pncj2.js +18 -0
- package/dist/{grok-adapter-05ecv4h0.js → grok-adapter-sm4m5k4g.js} +8 -8
- package/dist/handlers-vwmba1m2.js +31 -0
- package/dist/{heartbeat-3n94heh3.js → heartbeat-qahz4p62.js} +20 -20
- package/dist/{hook-zxwje86c.js → hook-4fd5wq5w.js} +4 -4
- package/dist/{hook-aadrn69x.js → hook-kj3d398m.js} +6 -6
- package/dist/{http-xzxk9mst.js → http-1ted0j1k.js} +100 -64
- package/dist/index-5r71rf98.js +32 -0
- package/dist/{index-d34f6r87.js → index-6rq3r5zb.js} +1 -1
- package/dist/{index-9j4zwcht.js → index-7v51awbn.js} +158 -672
- package/dist/index-anmwxs87.js +29 -0
- package/dist/{index-qeb82z37.js → index-q4b917zs.js} +1 -1
- package/dist/index-spp0ra5c.js +36 -0
- package/dist/{keepalive-w4aakbyk.js → keepalive-6cf311t5.js} +4 -4
- package/dist/lead-fjy418cw.js +69 -0
- package/dist/{maintenance-hbptpk6p.js → maintenance-a4bm1bmt.js} +1 -1
- package/dist/{oauth-refresh-sweep-217semrv.js → oauth-refresh-sweep-3h0dfw1k.js} +3 -3
- package/dist/{onboard-vz2s5df3.js → onboard-myn5hraa.js} +3 -3
- package/dist/{opencode-adapter-gtfd7d7v.js → opencode-adapter-p2nkb5am.js} +5 -5
- package/dist/{otel-impl-aefave37.js → otel-impl-a1a0ef6b.js} +2 -2
- package/dist/{pi-mono-adapter-f8h5yseh.js → pi-mono-adapter-rzmpb72a.js} +117 -23
- package/dist/{pricing-refresh-m1yhh9ya.js → pricing-refresh-83drrnxj.js} +3 -3
- package/dist/{rbac-roles-svj72cdf.js → rbac-roles-0fb6e7pj.js} +2 -2
- package/dist/{rbac-roles-rrw8twdz.js → rbac-roles-s8y6ecb5.js} +1 -1
- package/dist/{render-v2-amwbnfxh.js → render-v2-twmbgrz4.js} +3 -3
- package/dist/{resume-9cd6wf6z.js → resume-zfqc36xj.js} +7 -7
- package/dist/{runtime-fp4vrx7m.js → runtime-qwggdpqr.js} +1 -1
- package/dist/{session-access-21t6yjyg.js → session-access-sc9pn9da.js} +4 -4
- package/dist/{session-source-backfill-pxbzcsc6.js → session-source-backfill-qh07xr8g.js} +3 -3
- package/dist/{setup-4592tqz4.js → setup-4fr0m7a1.js} +1 -1
- package/dist/{virtual-modules-gzfnpmnz.js → virtual-modules-fh4ha15b.js} +2 -2
- package/dist/{work-objects-t9tcf174.js → work-objects-0wr8zxct.js} +20 -20
- package/dist/worker-0c5tyzqe.js +69 -0
- package/dist/{worker-follow-up-q32jh4yk.js → worker-follow-up-ktyyazyp.js} +17 -17
- package/dist/{x-b6wxntdt.js → x-vmmye1kb.js} +2 -2
- package/openapi.json +97 -32
- package/package.json +1 -1
- package/src/be/db/session-summaries.ts +8 -2
- package/src/be/db/session-tree.ts +174 -61
- package/src/be/db/session-visibility.ts +5 -4
- package/src/be/db.ts +8 -4
- package/src/be/migrations/259_session_summaries_open_tasks.sql +111 -0
- package/src/be/model-validation.ts +5 -1
- package/src/be/pricing-normalize.ts +7 -2
- package/src/be/scripts/typecheck.ts +1 -0
- package/src/be/seed/schedules-seeder.ts +135 -9
- package/src/be/seed/workflows-seeder.ts +65 -1
- package/src/be/seed-pricing.ts +23 -0
- package/src/be/steering.ts +50 -3
- package/src/be/swarm-config-guard.ts +1 -0
- package/src/commands/provider-credentials.ts +29 -2
- package/src/commands/runner.ts +86 -5
- package/src/extensions/contract-types.generated.ts +1 -1
- package/src/extensions/contract.ts +27 -1
- package/src/extensions/dispatcher.ts +4 -0
- package/src/http/agents.ts +1 -0
- package/src/http/mcp-bridge.ts +4 -0
- package/src/integrations/chat-sdk/inbound.ts +15 -5
- package/src/integrations/chat-sdk/steering.ts +3 -1
- package/src/kv-reserved-namespaces.ts +2 -0
- package/src/prompts/base-prompt.ts +4 -1
- package/src/prompts/session-templates.ts +26 -0
- package/src/providers/acp-adapter.ts +190 -26
- package/src/providers/acp-targets.ts +306 -6
- package/src/providers/amp-adapter.ts +1 -1
- package/src/providers/codex-adapter.ts +9 -44
- package/src/providers/codex-oauth/flow.ts +24 -3
- package/src/providers/codex-oauth/storage.ts +56 -17
- package/src/providers/codex-oauth/subscription.ts +67 -0
- package/src/providers/fx-adapter.ts +211 -0
- package/src/providers/index.ts +5 -1
- package/src/providers/mcp-loopback-proxy.ts +94 -0
- package/src/providers/pi-mono-adapter.ts +98 -13
- package/src/providers/pricing-sources.md +8 -0
- package/src/providers/reasoning-effort.ts +17 -1
- package/src/providers/types.ts +2 -1
- package/src/scheduler/scheduler.ts +36 -3
- package/src/scripts-runtime/sdk-allowlist.ts +1 -0
- package/src/scripts-runtime/types/stdlib.d.ts +5 -0
- package/src/scripts-runtime/types/swarm-extension.d.ts +33 -0
- package/src/scripts-runtime/types/swarm-sdk.d.ts +5 -0
- package/src/server.ts +7 -0
- package/src/slack/assistant.ts +17 -1
- package/src/slack/handlers.ts +18 -5
- package/src/slack/left-threads.ts +65 -0
- package/src/slack/steering.ts +3 -0
- package/src/slack/thread-buffer.ts +40 -16
- package/src/tests/acp-adapter.test.ts +79 -0
- package/src/tests/base-prompt.test.ts +12 -0
- package/src/tests/chat-sdk-inbound.test.ts +30 -0
- package/src/tests/chatgpt-subscription-model-groups.test.ts +62 -0
- package/src/tests/chatgpt-subscription-pi.test.ts +170 -0
- package/src/tests/chatgpt-subscription-session-bench.test.ts +198 -0
- package/src/tests/codex-oauth-credential-info.test.ts +40 -0
- package/src/tests/codex-oauth-refresh-egress.test.ts +194 -0
- package/src/tests/context-window.test.ts +7 -0
- package/src/tests/explicit-model-validation.test.ts +99 -0
- package/src/tests/extensions-run-context.test.ts +11 -0
- package/src/tests/extensions-steering.test.ts +353 -0
- package/src/tests/extensions-validate.test.ts +5 -0
- package/src/tests/fixtures/extensions/steering-policy/hooks.ts +39 -0
- package/src/tests/fixtures/extensions/steering-policy/manifest.json +7 -0
- package/src/tests/fixtures/fake-fx.ts +167 -0
- package/src/tests/fixtures/fx/acp-responses-recorded.json +157 -0
- package/src/tests/fixtures/fx/acp-updates-recorded.jsonl +15 -0
- package/src/tests/fx-adapter.test.ts +771 -0
- package/src/tests/grok-adapter.test.ts +36 -0
- package/src/tests/mcp-loopback-proxy.test.ts +193 -0
- package/src/tests/model-tier-resolution.test.ts +3 -3
- package/src/tests/pricing-refresh.test.ts +5 -5
- package/src/tests/prompt-template-session.test.ts +5 -3
- package/src/tests/provider-registration.test.ts +2 -1
- package/src/tests/query-audit-plans.test.ts +3 -2
- package/src/tests/script-connections.test.ts +2 -0
- package/src/tests/seed-model-profiles.test.ts +2 -2
- package/src/tests/seed-schedules.test.ts +138 -0
- package/src/tests/session-cost-recompute-unit.test.ts +39 -0
- package/src/tests/session-costs-golden.test.ts +26 -0
- package/src/tests/session-summaries-plans.test.ts +120 -0
- package/src/tests/session-summaries.test.ts +72 -12
- package/src/tests/sessions-tree.test.ts +11 -3
- package/src/tests/slack-leave-thread.test.ts +431 -0
- package/src/tests/tool-annotations.test.ts +2 -1
- package/src/tests/workflow-engine-v2.test.ts +42 -0
- package/src/tests/workflow-script-principal.test.ts +207 -7
- package/src/tools/slack-leave-thread.ts +104 -0
- package/src/tools/steer-task.ts +3 -2
- package/src/tools/tool-config.ts +2 -1
- package/src/types.ts +19 -0
- package/src/utils/codex-auth-failure.ts +30 -0
- package/src/utils/context-window.ts +4 -1
- package/src/utils/credentials.ts +7 -0
- package/src/utils/fx-models.ts +43 -0
- package/src/workflows/cooldown.ts +3 -2
- package/src/workflows/engine.ts +24 -9
- package/templates/schedules/dreaming-daily/config.json +1 -1
- package/templates/schedules/dreaming-daily/content.md +6 -14
- package/templates/skills/swarm-docs/content.md +1 -0
- package/templates/workflows/dreaming/content.md +5 -1
- package/dist/acp-adapter-96dc64m2.js +0 -15
- package/dist/handlers-jg7v74ty.js +0 -31
- package/dist/index-8c1zbz59.js +0 -29
- package/dist/index-8k8tmfxd.js +0 -32
- package/dist/index-hq617xdj.js +0 -36
- package/dist/lead-567kw7x3.js +0 -68
- package/dist/worker-fjdqra6q.js +0 -68
|
@@ -9,8 +9,10 @@ import {
|
|
|
9
9
|
getAgentWorkingOnThread2,
|
|
10
10
|
getMostRecentTaskInThread2,
|
|
11
11
|
reactionName,
|
|
12
|
+
SteeringBlockedError,
|
|
13
|
+
init_steering2,
|
|
12
14
|
init_db4
|
|
13
|
-
} from "./cli-
|
|
15
|
+
} from "./cli-1ayk1eas.js";
|
|
14
16
|
import {
|
|
15
17
|
isBlockExternalEnabled2,
|
|
16
18
|
invalidateChannelExternality2,
|
|
@@ -18,7 +20,7 @@ import {
|
|
|
18
20
|
shouldBlockChannel2,
|
|
19
21
|
leaveExternalChannel2,
|
|
20
22
|
init_external_channel
|
|
21
|
-
} from "./cli-
|
|
23
|
+
} from "./cli-mmwm7zbf.js";
|
|
22
24
|
import {
|
|
23
25
|
noteSlackInboundSideEffect,
|
|
24
26
|
ignoreSlackInbound,
|
|
@@ -34,11 +36,11 @@ import {
|
|
|
34
36
|
init_render_v2,
|
|
35
37
|
registerTreeMessage,
|
|
36
38
|
init_watcher
|
|
37
|
-
} from "./cli-
|
|
39
|
+
} from "./cli-wvaawacd.js";
|
|
38
40
|
import {
|
|
39
41
|
workflowEventBus2,
|
|
40
42
|
init_event_bus
|
|
41
|
-
} from "./cli-
|
|
43
|
+
} from "./cli-wx3rhnm0.js";
|
|
42
44
|
import {
|
|
43
45
|
TaskCreationBlockedError,
|
|
44
46
|
init_errors2,
|
|
@@ -53,13 +55,15 @@ import {
|
|
|
53
55
|
routeMessage,
|
|
54
56
|
extractTaskFromMessage,
|
|
55
57
|
init_router,
|
|
58
|
+
shouldSkipLeftSlackThread,
|
|
59
|
+
init_left_threads,
|
|
56
60
|
extractSlackMessageText,
|
|
57
61
|
slackInboundMessageText,
|
|
58
62
|
collectSlackMessageFiles,
|
|
59
63
|
init_message_text,
|
|
60
64
|
dispatchPre2,
|
|
61
65
|
init_dispatcher
|
|
62
|
-
} from "./cli-
|
|
66
|
+
} from "./cli-1338796d.js";
|
|
63
67
|
import {
|
|
64
68
|
wasEventSeen,
|
|
65
69
|
init_event_dedup,
|
|
@@ -70,17 +74,17 @@ import {
|
|
|
70
74
|
getBufferMessageCount,
|
|
71
75
|
instantFlush,
|
|
72
76
|
init_thread_buffer
|
|
73
|
-
} from "./cli-
|
|
77
|
+
} from "./cli-3h4nhjn8.js";
|
|
74
78
|
import {
|
|
75
79
|
enrichSlackUserEmail,
|
|
76
80
|
resolveSlackUserId,
|
|
77
81
|
rewriteSlackMentions,
|
|
78
82
|
init_enrich
|
|
79
|
-
} from "./cli-
|
|
83
|
+
} from "./cli-nmbmy64z.js";
|
|
80
84
|
import {
|
|
81
85
|
resolveTemplate,
|
|
82
86
|
init_resolver
|
|
83
|
-
} from "./cli-
|
|
87
|
+
} from "./cli-cm5yqn35.js";
|
|
84
88
|
import {
|
|
85
89
|
init_zod
|
|
86
90
|
} from "./cli-k5671be5.js";
|
|
@@ -97,7 +101,7 @@ import {
|
|
|
97
101
|
import {
|
|
98
102
|
scrubSecrets,
|
|
99
103
|
init_secret_scrubber
|
|
100
|
-
} from "./cli-
|
|
104
|
+
} from "./cli-1b7btd38.js";
|
|
101
105
|
import {
|
|
102
106
|
__esm,
|
|
103
107
|
__using,
|
|
@@ -294,6 +298,11 @@ function registerMessageHandler2(app) {
|
|
|
294
298
|
console.log(`[Slack] Ignoring message from unauthorized user ${msg.user}`);
|
|
295
299
|
return ignoreSlackInbound("unauthorized_user");
|
|
296
300
|
}
|
|
301
|
+
const botMentioned = !!cachedBotUserId && !!msg.text?.includes(`<@${cachedBotUserId}>`);
|
|
302
|
+
if (await shouldSkipLeftSlackThread(msg.channel, msg.thread_ts, botMentioned)) {
|
|
303
|
+
console.log(`[Slack] Skipping message in left thread ${msg.channel}/${msg.thread_ts}`);
|
|
304
|
+
return ignoreSlackInbound("thread_left");
|
|
305
|
+
}
|
|
297
306
|
const requestedByUserId = await resolveSlackUserId(client, msg.user, {
|
|
298
307
|
sampleEventType: "message",
|
|
299
308
|
sampleContext: msg.text ?? ""
|
|
@@ -314,7 +323,6 @@ function registerMessageHandler2(app) {
|
|
|
314
323
|
return reportSlackInboundFailure("bot_user_unavailable");
|
|
315
324
|
}
|
|
316
325
|
const botUserId = cachedBotUserId;
|
|
317
|
-
const botMentioned = !!msg.text?.includes(`<@${botUserId}>`);
|
|
318
326
|
const isAssistantThread = !!msg.assistant_thread;
|
|
319
327
|
const isImplicitMention = isAssistantThread && !botMentioned && !isAddressedToOtherUser(effectiveText, botUserId);
|
|
320
328
|
const additiveSlack = isEnvFlagEnabled("ADDITIVE_SLACK", false);
|
|
@@ -520,7 +528,8 @@ ${taskDescription}`;
|
|
|
520
528
|
threadTs,
|
|
521
529
|
message: taskDescription,
|
|
522
530
|
messageTimestamps: [msg.ts],
|
|
523
|
-
requestedByUserId
|
|
531
|
+
requestedByUserId,
|
|
532
|
+
slackUserId: msg.user
|
|
524
533
|
}) : null;
|
|
525
534
|
if (steering) {
|
|
526
535
|
await ackSlackMessage(client, msg.channel, msg.ts, reactionName("steered"), "steered");
|
|
@@ -573,12 +582,13 @@ ${taskDescription}`;
|
|
|
573
582
|
results.assigned.push({ agentName: agent.name, taskId: task.id });
|
|
574
583
|
}
|
|
575
584
|
} catch (error) {
|
|
576
|
-
|
|
585
|
+
const blocked = error instanceof TaskCreationBlockedError || error instanceof SteeringBlockedError;
|
|
586
|
+
if (!blocked) {
|
|
577
587
|
reportSlackInboundFailure("task_creation_error");
|
|
578
588
|
}
|
|
579
589
|
results.failed.push({
|
|
580
590
|
agentName: agent.name,
|
|
581
|
-
reason:
|
|
591
|
+
reason: blocked ? error.reason : "error"
|
|
582
592
|
});
|
|
583
593
|
}
|
|
584
594
|
}
|
|
@@ -711,6 +721,7 @@ var SlackRouteModifySchema, allowedEmailDomains, allowedUserIds, envUserFilterCo
|
|
|
711
721
|
var init_handlers = __esm(() => {
|
|
712
722
|
init_zod();
|
|
713
723
|
init_db4();
|
|
724
|
+
init_steering2();
|
|
714
725
|
init_dispatcher();
|
|
715
726
|
init_resolver();
|
|
716
727
|
init_context_key();
|
|
@@ -727,6 +738,7 @@ var init_handlers = __esm(() => {
|
|
|
727
738
|
init_templates();
|
|
728
739
|
init_env_flag();
|
|
729
740
|
init_external_channel();
|
|
741
|
+
init_left_threads();
|
|
730
742
|
init_message_text();
|
|
731
743
|
init_render_v2();
|
|
732
744
|
init_steering();
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
workflowEventBus2,
|
|
3
3
|
init_event_bus
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-wx3rhnm0.js";
|
|
5
5
|
import {
|
|
6
6
|
getDbClient2,
|
|
7
7
|
isRuntimePoolsEnabled,
|
|
@@ -63,14 +63,14 @@ import {
|
|
|
63
63
|
getStaleApprovalRequests2,
|
|
64
64
|
upsertKv2,
|
|
65
65
|
init_db4
|
|
66
|
-
} from "./cli-
|
|
66
|
+
} from "./cli-1ayk1eas.js";
|
|
67
67
|
import {
|
|
68
68
|
listRuntimePools2,
|
|
69
69
|
init_db2
|
|
70
|
-
} from "./cli-
|
|
70
|
+
} from "./cli-mry0qzym.js";
|
|
71
71
|
import {
|
|
72
72
|
remediateStalledRuntime
|
|
73
|
-
} from "./cli-
|
|
73
|
+
} from "./cli-rqkxrmgw.js";
|
|
74
74
|
import {
|
|
75
75
|
repointTrackerSyncBySwarmId,
|
|
76
76
|
init_tracker,
|
|
@@ -100,13 +100,13 @@ import {
|
|
|
100
100
|
init_approval_cancel,
|
|
101
101
|
canClaim,
|
|
102
102
|
init_budget_admission
|
|
103
|
-
} from "./cli-
|
|
103
|
+
} from "./cli-1338796d.js";
|
|
104
104
|
import {
|
|
105
105
|
runScriptWithRunCredential,
|
|
106
106
|
init_run_credential,
|
|
107
107
|
runSavedScriptAsAgent,
|
|
108
108
|
init_run_saved
|
|
109
|
-
} from "./cli-
|
|
109
|
+
} from "./cli-0bxqnvq9.js";
|
|
110
110
|
import {
|
|
111
111
|
runtimeStaleThresholdMinutes,
|
|
112
112
|
countActiveRuntimeInstancesForAgent,
|
|
@@ -115,7 +115,7 @@ import {
|
|
|
115
115
|
init_multi_runtime,
|
|
116
116
|
createApprovalFollowUpTask,
|
|
117
117
|
init_approval_notifications
|
|
118
|
-
} from "./cli-
|
|
118
|
+
} from "./cli-spknvxbq.js";
|
|
119
119
|
import {
|
|
120
120
|
isMultiRuntimeEnabled,
|
|
121
121
|
init_multi_runtime2
|
|
@@ -124,13 +124,13 @@ import {
|
|
|
124
124
|
recordIdentityEvent,
|
|
125
125
|
mintToken,
|
|
126
126
|
init_users
|
|
127
|
-
} from "./cli-
|
|
127
|
+
} from "./cli-bhjt02p8.js";
|
|
128
128
|
import {
|
|
129
129
|
TERMINAL_TASK_STATUSES,
|
|
130
130
|
OPEN_TASK_STATUSES,
|
|
131
131
|
SUPERSEDED_WORKFLOW_TASK_REASON,
|
|
132
132
|
init_types4
|
|
133
|
-
} from "./cli-
|
|
133
|
+
} from "./cli-7wspm5gm.js";
|
|
134
134
|
import {
|
|
135
135
|
DEFAULT_OPENROUTER_BASE_URL,
|
|
136
136
|
getOpenRouterBaseUrl,
|
|
@@ -141,11 +141,11 @@ import {
|
|
|
141
141
|
init_registry3,
|
|
142
142
|
resolveTemplate,
|
|
143
143
|
init_resolver
|
|
144
|
-
} from "./cli-
|
|
144
|
+
} from "./cli-cm5yqn35.js";
|
|
145
145
|
import {
|
|
146
146
|
init_package,
|
|
147
147
|
package_default
|
|
148
|
-
} from "./cli-
|
|
148
|
+
} from "./cli-tqgg40ek.js";
|
|
149
149
|
import {
|
|
150
150
|
isEnvFlagEnabled,
|
|
151
151
|
init_env_flag
|
|
@@ -153,7 +153,7 @@ import {
|
|
|
153
153
|
import {
|
|
154
154
|
scrubSecrets,
|
|
155
155
|
init_secret_scrubber
|
|
156
|
-
} from "./cli-
|
|
156
|
+
} from "./cli-1b7btd38.js";
|
|
157
157
|
|
|
158
158
|
// src/be/runtime-pools/routing.ts
|
|
159
159
|
init_multi_runtime2();
|
|
@@ -11,16 +11,16 @@ import {
|
|
|
11
11
|
init_active_sessions,
|
|
12
12
|
getSteeringMessageById2,
|
|
13
13
|
init_db4
|
|
14
|
-
} from "./cli-
|
|
14
|
+
} from "./cli-1ayk1eas.js";
|
|
15
15
|
import {
|
|
16
16
|
getUserGrant2,
|
|
17
17
|
init_rbac_roles
|
|
18
|
-
} from "./cli-
|
|
18
|
+
} from "./cli-8hs41zy2.js";
|
|
19
19
|
import {
|
|
20
20
|
findUserById,
|
|
21
21
|
findUserByExternalId,
|
|
22
22
|
init_users
|
|
23
|
-
} from "./cli-
|
|
23
|
+
} from "./cli-bhjt02p8.js";
|
|
24
24
|
import {
|
|
25
25
|
isRbacEnabled,
|
|
26
26
|
can,
|
|
@@ -45,7 +45,7 @@ import {
|
|
|
45
45
|
import {
|
|
46
46
|
scrubSecrets,
|
|
47
47
|
init_secret_scrubber
|
|
48
|
-
} from "./cli-
|
|
48
|
+
} from "./cli-1b7btd38.js";
|
|
49
49
|
import {
|
|
50
50
|
__esm
|
|
51
51
|
} from "./cli-242037k3.js";
|
|
@@ -499,7 +499,7 @@ function route(def) {
|
|
|
499
499
|
try {
|
|
500
500
|
const rawBody = def.body ? await parseBody(req, def.maxBodyBytes) : undefined;
|
|
501
501
|
if (def.session && "bodyTaskIds" in def.session) {
|
|
502
|
-
const { bodySessionDenial } = await import("./session-access-
|
|
502
|
+
const { bodySessionDenial } = await import("./session-access-sc9pn9da.js");
|
|
503
503
|
const denial = await bodySessionDenial(req, def.session.bodyTaskIds(rawBody));
|
|
504
504
|
if (denial) {
|
|
505
505
|
jsonError(res, denial, 403);
|
|
@@ -0,0 +1,151 @@
|
|
|
1
|
+
import {
|
|
2
|
+
FX_ROUTE_KEY_VARS,
|
|
3
|
+
requireFxRoute,
|
|
4
|
+
fxSessionExists,
|
|
5
|
+
fxTargetProfile,
|
|
6
|
+
ACPAdapter2
|
|
7
|
+
} from "./cli-rm6hqj3z.js";
|
|
8
|
+
import {
|
|
9
|
+
getKnownContextWindowSize,
|
|
10
|
+
init_context_window
|
|
11
|
+
} from "./cli-73jzwksr.js";
|
|
12
|
+
import {
|
|
13
|
+
getOpenRouterBaseUrl,
|
|
14
|
+
init_openrouter_base_url
|
|
15
|
+
} from "./cli-dfyv0jdy.js";
|
|
16
|
+
import {
|
|
17
|
+
registerVolatileSecret,
|
|
18
|
+
init_secret_scrubber
|
|
19
|
+
} from "./cli-1b7btd38.js";
|
|
20
|
+
|
|
21
|
+
// src/providers/fx-adapter.ts
|
|
22
|
+
init_context_window();
|
|
23
|
+
import { randomUUID } from "node:crypto";
|
|
24
|
+
import { chmod, mkdir, rename, rm } from "node:fs/promises";
|
|
25
|
+
import { dirname, join } from "node:path";
|
|
26
|
+
init_openrouter_base_url();
|
|
27
|
+
init_secret_scrubber();
|
|
28
|
+
var FX_OPENAI_BASE_URL = "https://api.openai.com/v1";
|
|
29
|
+
function checkFxCredentials2(env) {
|
|
30
|
+
return FX_ROUTE_KEY_VARS.some((name) => env[name]?.trim()) ? { ready: true, missing: [], satisfiedBy: "env" } : {
|
|
31
|
+
ready: false,
|
|
32
|
+
missing: [...FX_ROUTE_KEY_VARS],
|
|
33
|
+
hint: "Set OPENROUTER_API_KEY (openrouter/<vendor>/<id>), OPENAI_API_KEY (bare OpenAI ids) or AI_GATEWAY_API_KEY (vercel/<vendor>/<id>) for fx."
|
|
34
|
+
};
|
|
35
|
+
}
|
|
36
|
+
function isJsonObject(value) {
|
|
37
|
+
return !!value && typeof value === "object" && !Array.isArray(value);
|
|
38
|
+
}
|
|
39
|
+
function connection(baseUrl, keyVar) {
|
|
40
|
+
return {
|
|
41
|
+
protocol: "openai-chat-completions",
|
|
42
|
+
base_url: baseUrl,
|
|
43
|
+
auth: { type: "bearer", env: keyVar }
|
|
44
|
+
};
|
|
45
|
+
}
|
|
46
|
+
function mergeFxSettings(current, input) {
|
|
47
|
+
const next = structuredClone(current);
|
|
48
|
+
const providers = isJsonObject(next.providers) ? next.providers : {};
|
|
49
|
+
const owned = {
|
|
50
|
+
openrouter: connection(input.openRouterBaseUrl, "OPENROUTER_API_KEY"),
|
|
51
|
+
openai: connection(FX_OPENAI_BASE_URL, "OPENAI_API_KEY")
|
|
52
|
+
};
|
|
53
|
+
for (const [name, fields] of Object.entries(owned)) {
|
|
54
|
+
const existing = isJsonObject(providers[name]) ? providers[name] : {};
|
|
55
|
+
providers[name] = { ...existing, ...fields };
|
|
56
|
+
}
|
|
57
|
+
const { fxProvider, fxModel } = input.route;
|
|
58
|
+
const target = fxProvider === "gateway" ? undefined : providers[fxProvider];
|
|
59
|
+
if (target && input.contextWindow && input.contextWindow > 0) {
|
|
60
|
+
const metadata = isJsonObject(target.model_metadata) ? target.model_metadata : {};
|
|
61
|
+
if (!isJsonObject(metadata[fxModel])) {
|
|
62
|
+
metadata[fxModel] = { context_window: input.contextWindow };
|
|
63
|
+
}
|
|
64
|
+
target.model_metadata = metadata;
|
|
65
|
+
}
|
|
66
|
+
next.providers = providers;
|
|
67
|
+
next.auto_upgrade = false;
|
|
68
|
+
next.session_titles = false;
|
|
69
|
+
return next;
|
|
70
|
+
}
|
|
71
|
+
async function ensureFxSettings(input) {
|
|
72
|
+
const path = join(input.home, ".fx", "settings.json");
|
|
73
|
+
const file = Bun.file(path);
|
|
74
|
+
let current = {};
|
|
75
|
+
if (await file.exists()) {
|
|
76
|
+
const text = await file.text();
|
|
77
|
+
if (text.trim()) {
|
|
78
|
+
let parsed;
|
|
79
|
+
try {
|
|
80
|
+
parsed = JSON.parse(text);
|
|
81
|
+
} catch {
|
|
82
|
+
throw new Error(`${path} is not valid JSON; fix or remove it before running fx`);
|
|
83
|
+
}
|
|
84
|
+
if (!isJsonObject(parsed)) {
|
|
85
|
+
throw new Error(`${path} is not a JSON object; fix or remove it before running fx`);
|
|
86
|
+
}
|
|
87
|
+
current = parsed;
|
|
88
|
+
}
|
|
89
|
+
}
|
|
90
|
+
const next = mergeFxSettings(current, input);
|
|
91
|
+
if (JSON.stringify(next) === JSON.stringify(current))
|
|
92
|
+
return { path, changed: false };
|
|
93
|
+
await mkdir(dirname(path), { recursive: true, mode: 448 });
|
|
94
|
+
const tmp = `${path}.swarm-${process.pid}-${randomUUID()}.tmp`;
|
|
95
|
+
try {
|
|
96
|
+
await Bun.write(tmp, `${JSON.stringify(next, null, 2)}
|
|
97
|
+
`);
|
|
98
|
+
await chmod(tmp, 384);
|
|
99
|
+
await rename(tmp, path);
|
|
100
|
+
} catch (error) {
|
|
101
|
+
await rm(tmp, { force: true });
|
|
102
|
+
throw error;
|
|
103
|
+
}
|
|
104
|
+
return { path, changed: true };
|
|
105
|
+
}
|
|
106
|
+
|
|
107
|
+
class FxAdapter2 {
|
|
108
|
+
options;
|
|
109
|
+
name = "fx";
|
|
110
|
+
traits = {
|
|
111
|
+
hasMcp: true,
|
|
112
|
+
hasToolSearch: false,
|
|
113
|
+
nativeSkillDiscovery: true,
|
|
114
|
+
hasLocalEnvironment: true,
|
|
115
|
+
steerModes: ["steer"]
|
|
116
|
+
};
|
|
117
|
+
acp = new ACPAdapter2({ providerName: "fx", target: fxTargetProfile });
|
|
118
|
+
constructor(options = {}) {
|
|
119
|
+
this.options = options;
|
|
120
|
+
}
|
|
121
|
+
async createSession(sessionConfig) {
|
|
122
|
+
const route = requireFxRoute(sessionConfig.model);
|
|
123
|
+
const env = { ...process.env, ...sessionConfig.env };
|
|
124
|
+
const apiKey = env[route.keyVar]?.trim();
|
|
125
|
+
if (!apiKey)
|
|
126
|
+
throw new Error(`fx requires ${route.keyVar} for ${route.model}`);
|
|
127
|
+
registerVolatileSecret(apiKey, route.keyVar);
|
|
128
|
+
const home = this.options.home ?? env.HOME;
|
|
129
|
+
if (!home)
|
|
130
|
+
throw new Error("fx requires HOME: it keeps its settings and sessions in ~/.fx");
|
|
131
|
+
await ensureFxSettings({
|
|
132
|
+
home,
|
|
133
|
+
route,
|
|
134
|
+
contextWindow: route.fxProvider === "gateway" ? undefined : getKnownContextWindowSize(route.model),
|
|
135
|
+
openRouterBaseUrl: getOpenRouterBaseUrl(env)
|
|
136
|
+
});
|
|
137
|
+
return this.acp.createSession({
|
|
138
|
+
...sessionConfig,
|
|
139
|
+
model: route.model,
|
|
140
|
+
env: { ...sessionConfig.env, [route.keyVar]: apiKey, HOME: home }
|
|
141
|
+
});
|
|
142
|
+
}
|
|
143
|
+
async canResume(sessionId) {
|
|
144
|
+
return fxSessionExists(sessionId, this.options.home ?? process.env.HOME);
|
|
145
|
+
}
|
|
146
|
+
formatCommand(commandName) {
|
|
147
|
+
return `/${commandName}`;
|
|
148
|
+
}
|
|
149
|
+
}
|
|
150
|
+
|
|
151
|
+
export { checkFxCredentials2, FxAdapter2 };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import {
|
|
2
2
|
contextBoundNoteThreshold,
|
|
3
3
|
createContextBoundNote
|
|
4
|
-
} from "./cli-
|
|
4
|
+
} from "./cli-dhar9qay.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveSlashSkillPrompt
|
|
7
7
|
} from "./cli-jc1g9ndz.js";
|
|
@@ -19,10 +19,10 @@ import {
|
|
|
19
19
|
autoIndexMemoryFile,
|
|
20
20
|
fetchConcurrentContext,
|
|
21
21
|
summarizeTranscript
|
|
22
|
-
} from "./cli-
|
|
22
|
+
} from "./cli-hn9hxmz9.js";
|
|
23
23
|
import {
|
|
24
24
|
applyReasoningEffort
|
|
25
|
-
} from "./cli-
|
|
25
|
+
} from "./cli-98rw5dt5.js";
|
|
26
26
|
import {
|
|
27
27
|
fetchInstalledMcpServers
|
|
28
28
|
} from "./cli-bst1vp7e.js";
|
|
@@ -31,7 +31,7 @@ import {
|
|
|
31
31
|
getContextWindowSize,
|
|
32
32
|
clampContextPercent,
|
|
33
33
|
init_context_window
|
|
34
|
-
} from "./cli-
|
|
34
|
+
} from "./cli-73jzwksr.js";
|
|
35
35
|
import {
|
|
36
36
|
swarmRuntimeInstanceId,
|
|
37
37
|
init_multi_runtime2
|
|
@@ -47,7 +47,7 @@ import {
|
|
|
47
47
|
openAICompatibleKeyLabels,
|
|
48
48
|
validateOpencodeCredentials,
|
|
49
49
|
init_credentials2
|
|
50
|
-
} from "./cli-
|
|
50
|
+
} from "./cli-g83s9ewh.js";
|
|
51
51
|
import {
|
|
52
52
|
isEnvFlagEnabled,
|
|
53
53
|
isSessionSummarySkipped,
|
|
@@ -57,7 +57,7 @@ import {
|
|
|
57
57
|
scrubSecrets,
|
|
58
58
|
registerVolatileSecret,
|
|
59
59
|
init_secret_scrubber
|
|
60
|
-
} from "./cli-
|
|
60
|
+
} from "./cli-1b7btd38.js";
|
|
61
61
|
import {
|
|
62
62
|
openAICompatibleProviders,
|
|
63
63
|
providerKeyVars,
|
|
@@ -68,7 +68,7 @@ import {
|
|
|
68
68
|
openAICompatibleProvider,
|
|
69
69
|
providerForKeyVar,
|
|
70
70
|
init_src2
|
|
71
|
-
} from "./cli-
|
|
71
|
+
} from "./cli-5c4hjzne.js";
|
|
72
72
|
|
|
73
73
|
// src/providers/opencode-adapter.ts
|
|
74
74
|
init_src2();
|
package/dist/cli.js
CHANGED
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
import {
|
|
21
21
|
scrubSecrets,
|
|
22
22
|
init_secret_scrubber
|
|
23
|
-
} from "./cli-
|
|
23
|
+
} from "./cli-1b7btd38.js";
|
|
24
24
|
import {
|
|
25
25
|
__toESM,
|
|
26
26
|
__commonJS
|
|
@@ -50,7 +50,7 @@ var import_react = __toESM(require_react(), 1);
|
|
|
50
50
|
// package.json
|
|
51
51
|
var package_default = {
|
|
52
52
|
name: "@desplega.ai/agent-swarm",
|
|
53
|
-
version: "2.7.
|
|
53
|
+
version: "2.7.5",
|
|
54
54
|
description: "agent-swarm.dev — an open-source operating system for AI work: a lead agent breaks goals into tasks, routes them to specialized workers such as Claude Code or Codex, runs each worker in an isolated container, and preserves shared memory, tools, schedules, and review gates so delegated work compounds across sessions.",
|
|
55
55
|
keywords: [
|
|
56
56
|
"agent-swarm.dev",
|
|
@@ -843,7 +843,7 @@ function McpServer({ port, apiKey, dbPath }) {
|
|
|
843
843
|
if (dbPath) {
|
|
844
844
|
process.env.DATABASE_PATH = dbPath;
|
|
845
845
|
}
|
|
846
|
-
import("./http-
|
|
846
|
+
import("./http-1ted0j1k.js").then(() => {
|
|
847
847
|
setStatus("running");
|
|
848
848
|
}).catch((err) => {
|
|
849
849
|
setStatus("error");
|
|
@@ -930,7 +930,7 @@ function WorkerRunner({
|
|
|
930
930
|
const { exit } = use_app_default();
|
|
931
931
|
import_react.useEffect(() => {
|
|
932
932
|
installConsoleScrub();
|
|
933
|
-
import("./worker-
|
|
933
|
+
import("./worker-0c5tyzqe.js").then(({ runWorker }) => runWorker({
|
|
934
934
|
prompt: prompt || undefined,
|
|
935
935
|
yolo,
|
|
936
936
|
systemPrompt: systemPrompt || undefined,
|
|
@@ -948,7 +948,7 @@ function LeadRunner({ prompt, yolo, systemPrompt, systemPromptFile, additionalAr
|
|
|
948
948
|
const { exit } = use_app_default();
|
|
949
949
|
import_react.useEffect(() => {
|
|
950
950
|
installConsoleScrub();
|
|
951
|
-
import("./lead-
|
|
951
|
+
import("./lead-fjy418cw.js").then(({ runLead }) => runLead({
|
|
952
952
|
prompt: prompt || undefined,
|
|
953
953
|
yolo,
|
|
954
954
|
systemPrompt: systemPrompt || undefined,
|
|
@@ -988,8 +988,8 @@ function LazyComponent({
|
|
|
988
988
|
}
|
|
989
989
|
return import_react.createElement(Component, props);
|
|
990
990
|
}
|
|
991
|
-
var loadOnboard = () => import("./onboard-
|
|
992
|
-
var loadConnect = () => import("./setup-
|
|
991
|
+
var loadOnboard = () => import("./onboard-myn5hraa.js").then(({ Onboard }) => Onboard);
|
|
992
|
+
var loadConnect = () => import("./setup-4fr0m7a1.js").then(({ Setup }) => Setup);
|
|
993
993
|
function UnknownCommand({ command }) {
|
|
994
994
|
const { exit } = use_app_default();
|
|
995
995
|
import_react.useEffect(() => {
|
|
@@ -1121,19 +1121,19 @@ ${binName} docs \u2014 v${package_default.version}
|
|
|
1121
1121
|
}
|
|
1122
1122
|
process.exit(0);
|
|
1123
1123
|
} else if (args.command === "hook") {
|
|
1124
|
-
const { runHook } = await import("./hook-
|
|
1124
|
+
const { runHook } = await import("./hook-4fd5wq5w.js");
|
|
1125
1125
|
await runHook();
|
|
1126
1126
|
} else if (args.command === "codex-hook") {
|
|
1127
|
-
const { handleCodexHook } = await import("./codex-hook-
|
|
1127
|
+
const { handleCodexHook } = await import("./codex-hook-9efm2x1m.js");
|
|
1128
1128
|
await handleCodexHook();
|
|
1129
1129
|
process.exit(process.exitCode ?? 0);
|
|
1130
1130
|
} else if (args.command === "session-summary-stdin") {
|
|
1131
|
-
const { runSessionSummaryFromStdin } = await import("./hook-
|
|
1131
|
+
const { runSessionSummaryFromStdin } = await import("./hook-kj3d398m.js");
|
|
1132
1132
|
await runSessionSummaryFromStdin();
|
|
1133
1133
|
process.exit(process.exitCode ?? 0);
|
|
1134
1134
|
} else if (args.command === "x") {
|
|
1135
1135
|
const xArgs = process.argv.slice(process.argv.indexOf("x") + 1);
|
|
1136
|
-
const { runXCommand } = await import("./x-
|
|
1136
|
+
const { runXCommand } = await import("./x-vmmye1kb.js");
|
|
1137
1137
|
await runXCommand(xArgs);
|
|
1138
1138
|
} else if (args.command === "scripts") {
|
|
1139
1139
|
const scriptsArgs = process.argv.slice(process.argv.indexOf("scripts") + 1);
|
|
@@ -1141,7 +1141,7 @@ ${binName} docs \u2014 v${package_default.version}
|
|
|
1141
1141
|
printHelp("scripts");
|
|
1142
1142
|
process.exit(scriptsArgs[0] === "reembed" || args.showHelp ? 0 : 1);
|
|
1143
1143
|
}
|
|
1144
|
-
const { runScriptsMaintenanceCommand } = await import("./maintenance-
|
|
1144
|
+
const { runScriptsMaintenanceCommand } = await import("./maintenance-a4bm1bmt.js");
|
|
1145
1145
|
await runScriptsMaintenanceCommand(scriptsArgs);
|
|
1146
1146
|
console.log("Scripts re-embedded.");
|
|
1147
1147
|
} else if (args.command === "rbac") {
|
|
@@ -1151,17 +1151,17 @@ ${binName} docs \u2014 v${package_default.version}
|
|
|
1151
1151
|
printHelp("rbac");
|
|
1152
1152
|
process.exit(args.showHelp ? 0 : 1);
|
|
1153
1153
|
}
|
|
1154
|
-
const { runRbacCliCommand } = await import("./rbac-roles-
|
|
1154
|
+
const { runRbacCliCommand } = await import("./rbac-roles-s8y6ecb5.js");
|
|
1155
1155
|
await runRbacCliCommand(rbacArgs);
|
|
1156
1156
|
} else if (args.command === "codex-login") {
|
|
1157
|
-
const { runCodexLogin } = await import("./codex-login-
|
|
1157
|
+
const { runCodexLogin } = await import("./codex-login-y0pmff1c.js");
|
|
1158
1158
|
const codexLoginArgs = process.argv.slice(process.argv.indexOf("codex-login") + 1);
|
|
1159
1159
|
await runCodexLogin(codexLoginArgs);
|
|
1160
1160
|
} else if (args.command === "codex-session-runner") {
|
|
1161
|
-
const { runCodexSessionRunner } = await import("./codex-session-runner-
|
|
1161
|
+
const { runCodexSessionRunner } = await import("./codex-session-runner-3mwmk3d9.js");
|
|
1162
1162
|
await runCodexSessionRunner();
|
|
1163
1163
|
} else if (args.command === "claude-managed-setup") {
|
|
1164
|
-
const { runClaudeManagedSetup } = await import("./claude-managed-setup-
|
|
1164
|
+
const { runClaudeManagedSetup } = await import("./claude-managed-setup-0wyynpn1.js");
|
|
1165
1165
|
const setupArgs = process.argv.slice(process.argv.indexOf("claude-managed-setup") + 1);
|
|
1166
1166
|
await runClaudeManagedSetup(setupArgs);
|
|
1167
1167
|
} else if (args.command === "worker-token") {
|
|
@@ -1169,11 +1169,11 @@ ${binName} docs \u2014 v${package_default.version}
|
|
|
1169
1169
|
const tokenArgs = process.argv.slice(process.argv.indexOf("worker-token") + 1);
|
|
1170
1170
|
process.exit(await runWorkerToken(tokenArgs));
|
|
1171
1171
|
} else if (args.command === "e2b") {
|
|
1172
|
-
const { runE2BCommand } = await import("./e2b-
|
|
1172
|
+
const { runE2BCommand } = await import("./e2b-qcaj675y.js");
|
|
1173
1173
|
const e2bArgs = process.argv.slice(process.argv.indexOf("e2b") + 1);
|
|
1174
1174
|
await runE2BCommand(e2bArgs);
|
|
1175
1175
|
} else if (args.command === "controller") {
|
|
1176
|
-
const { runController } = await import("./controller-
|
|
1176
|
+
const { runController } = await import("./controller-xjp8vswh.js");
|
|
1177
1177
|
await runController(process.argv.slice(process.argv.indexOf("controller") + 1));
|
|
1178
1178
|
} else {
|
|
1179
1179
|
render_default(/* @__PURE__ */ jsx_dev_runtime.jsxDEV(App, {
|
|
@@ -2,17 +2,17 @@ import {
|
|
|
2
2
|
checkCodexCredentials2,
|
|
3
3
|
createInProcessCodexSession2,
|
|
4
4
|
CodexAdapter2
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-7a42nfy0.js";
|
|
6
6
|
import"./cli-4zsenjhy.js";
|
|
7
7
|
import"./cli-kr5tjjtz.js";
|
|
8
8
|
import"./cli-98rwmcyc.js";
|
|
9
9
|
import"./cli-4bd1rck6.js";
|
|
10
10
|
import"./cli-jc1g9ndz.js";
|
|
11
|
-
import"./cli-
|
|
11
|
+
import"./cli-a47xy8eq.js";
|
|
12
12
|
import"./cli-0726awxw.js";
|
|
13
|
-
import"./cli-
|
|
14
|
-
import"./cli-
|
|
15
|
-
import"./cli-
|
|
13
|
+
import"./cli-dhar9qay.js";
|
|
14
|
+
import"./cli-mthwvjre.js";
|
|
15
|
+
import"./cli-98rw5dt5.js";
|
|
16
16
|
export {
|
|
17
17
|
CodexAdapter2 as CodexAdapter,
|
|
18
18
|
checkCodexCredentials2 as checkCodexCredentials,
|
|
@@ -1,20 +1,20 @@
|
|
|
1
|
-
import"./cli-
|
|
2
|
-
import"./cli-
|
|
3
|
-
import"./cli-
|
|
1
|
+
import"./cli-dhar9qay.js";
|
|
2
|
+
import"./cli-mthwvjre.js";
|
|
3
|
+
import"./cli-a47xy8eq.js";
|
|
4
4
|
import {
|
|
5
5
|
createInProcessCodexSession2
|
|
6
|
-
} from "./cli-
|
|
6
|
+
} from "./cli-7a42nfy0.js";
|
|
7
7
|
import"./cli-jc1g9ndz.js";
|
|
8
8
|
import"./cli-0726awxw.js";
|
|
9
9
|
import"./cli-4bd1rck6.js";
|
|
10
10
|
import"./cli-kr5tjjtz.js";
|
|
11
11
|
import"./cli-98rwmcyc.js";
|
|
12
|
-
import"./cli-
|
|
12
|
+
import"./cli-98rw5dt5.js";
|
|
13
13
|
import"./cli-4zsenjhy.js";
|
|
14
14
|
import {
|
|
15
15
|
scrubSecrets,
|
|
16
16
|
init_secret_scrubber
|
|
17
|
-
} from "./cli-
|
|
17
|
+
} from "./cli-1b7btd38.js";
|
|
18
18
|
|
|
19
19
|
// src/commands/codex-session-runner.ts
|
|
20
20
|
init_secret_scrubber();
|
|
@@ -2,12 +2,12 @@ import {
|
|
|
2
2
|
getAllAgents2,
|
|
3
3
|
getAllTasks2,
|
|
4
4
|
init_db4
|
|
5
|
-
} from "./cli-
|
|
5
|
+
} from "./cli-1ayk1eas.js";
|
|
6
6
|
import {
|
|
7
7
|
EXTERNAL_CHANNEL_BLOCKED_REPLY2,
|
|
8
8
|
shouldBlockChannel2,
|
|
9
9
|
init_external_channel
|
|
10
|
-
} from "./cli-
|
|
10
|
+
} from "./cli-mmwm7zbf.js";
|
|
11
11
|
import {
|
|
12
12
|
isEnvFlagEnabled,
|
|
13
13
|
init_env_flag
|