@desplega.ai/agent-swarm 2.4.2 → 2.4.4

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 (183) hide show
  1. package/dist/{acp-adapter-dv7hmx4r.js → acp-adapter-thq04adh.js} +4 -5
  2. package/dist/{actions-51nc1gny.js → actions-j6ywh6x5.js} +18 -18
  3. package/dist/{amp-adapter-abp5tdx8.js → amp-adapter-k8b5xmj8.js} +3 -3
  4. package/dist/{app-9h14qvr6.js → app-rb7vc02s.js} +3 -3
  5. package/dist/{assistant-wv1gz3mt.js → assistant-ftta1zjf.js} +20 -20
  6. package/dist/{boot-reembed-6yn53ms9.js → boot-reembed-srp6v6af.js} +1 -1
  7. package/dist/{boot-reembed-7fcka4z5.js → boot-reembed-xns7h5h9.js} +1 -1
  8. package/dist/{boot-scrub-sweep-pm1580ax.js → boot-scrub-sweep-3qqrh2mz.js} +3 -3
  9. package/dist/{boot-seeds-g5hfc1x8.js → boot-seeds-9ks8hce7.js} +4 -4
  10. package/dist/{claude-adapter-gf3kxhf0.js → claude-adapter-k5ksyres.js} +4 -4
  11. package/dist/{claude-managed-setup-h00hsgtz.js → claude-managed-setup-n5a5eqks.js} +1 -1
  12. package/dist/{claude-sdk-session-s2k1qd8y.js → claude-sdk-session-2j3j4kwn.js} +9822 -9749
  13. package/dist/{cli-pkht5hap.js → cli-1d70crsy.js} +2 -2
  14. package/dist/{cli-r99kc9yq.js → cli-1ephgwnq.js} +3 -3
  15. package/dist/{cli-7225gwj7.js → cli-1m17dc9d.js} +1 -1
  16. package/dist/{cli-bcj753sq.js → cli-2v045xyf.js} +3 -3
  17. package/dist/{cli-h38rjv87.js → cli-2y91wnbh.js} +12 -7
  18. package/dist/{cli-sv5gb0yb.js → cli-2zqpkvtt.js} +1 -1
  19. package/dist/{cli-xbzvet96.js → cli-36ckw0wx.js} +5 -4
  20. package/dist/{cli-8sxqsbbq.js → cli-37yb7307.js} +1 -1
  21. package/dist/{cli-hyfw2j1e.js → cli-3cgngyd8.js} +11 -11
  22. package/dist/{cli-a4gvwttf.js → cli-44159k28.js} +2 -2
  23. package/dist/{cli-7awf1fp8.js → cli-4dg55wsk.js} +3 -3
  24. package/dist/{cli-mhywgrrz.js → cli-4sydckyj.js} +1 -1
  25. package/dist/{cli-y2x52gs2.js → cli-51y09c6p.js} +20 -17
  26. package/dist/{cli-ahtpy9kf.js → cli-55qmbp6z.js} +10 -5
  27. package/dist/{cli-pw7v69vp.js → cli-625tb7aq.js} +1 -1
  28. package/dist/{cli-x5mq1fyq.js → cli-74c1wpm0.js} +3 -3
  29. package/dist/{cli-b1dfr1m4.js → cli-7a6p4e65.js} +1 -1
  30. package/dist/{cli-hqhzg1qq.js → cli-82d3nkc3.js} +1 -1
  31. package/dist/{cli-nmqdc2t3.js → cli-9fhkkpj5.js} +78 -12
  32. package/dist/{cli-h93c9vb3.js → cli-amyhm3gj.js} +1 -1
  33. package/dist/{cli-0qvtffe9.js → cli-b8k7epj1.js} +6 -6
  34. package/dist/{cli-1pa3rz69.js → cli-ba8ne1es.js} +6 -1
  35. package/dist/{cli-g0hgtz4p.js → cli-bnz0r3kc.js} +3 -3
  36. package/dist/{cli-0hyhdkdk.js → cli-cebvbc9t.js} +4 -1
  37. package/dist/{cli-efaqv1c7.js → cli-cynvc9fj.js} +35 -7
  38. package/dist/{cli-8zwe9mpk.js → cli-dqb4n629.js} +10 -10
  39. package/dist/{cli-7a91w22y.js → cli-e8xyjvfc.js} +1 -1
  40. package/dist/{cli-s6vr7r2d.js → cli-esxerzg7.js} +1 -1
  41. package/dist/{cli-w9g4sz81.js → cli-gf2850q7.js} +1 -1
  42. package/dist/{cli-10hhg0km.js → cli-gqvh8d8a.js} +7 -7
  43. package/dist/{cli-t30yj95q.js → cli-hj3debgw.js} +1 -1
  44. package/dist/{cli-fpmsqq59.js → cli-nc35pxb7.js} +3 -3
  45. package/dist/{cli-d3qqdy4c.js → cli-p20r8w42.js} +16 -14
  46. package/dist/{cli-shvfedvm.js → cli-pccfmtb5.js} +5 -5
  47. package/dist/{cli-02qm7src.js → cli-q6r7t299.js} +1037 -299
  48. package/dist/{cli-2wag8973.js → cli-qeaq3j6t.js} +1 -1
  49. package/dist/{cli-nn47d7e8.js → cli-qkhc5aqy.js} +15 -15
  50. package/dist/{cli-faypxz7q.js → cli-t7cyef5g.js} +4 -4
  51. package/dist/{cli-z4wd2ftv.js → cli-te6b5wvg.js} +149 -184
  52. package/dist/{cli-5rk36sjf.js → cli-v3yr2gbg.js} +119 -44
  53. package/dist/{cli-239yjk27.js → cli-vdm20wej.js} +5 -5
  54. package/dist/{cli-zfg9enh9.js → cli-vfha21c9.js} +6 -1
  55. package/dist/{cli-rdyw3mct.js → cli-vq97g1jq.js} +6 -5
  56. package/dist/{cli-n85dqg6d.js → cli-w6nadkh4.js} +4 -4
  57. package/dist/{cli-99jez72r.js → cli-w9etnnxk.js} +6 -1
  58. package/dist/{cli-saw9a6f6.js → cli-xc27fwzg.js} +2 -2
  59. package/dist/{cli-ftyypbg5.js → cli-xj0re5tm.js} +1 -1
  60. package/dist/{cli-fyzjmseb.js → cli-zrk6jxv8.js} +1 -1
  61. package/dist/{cli-y8n5k515.js → cli-zrwpctp4.js} +28 -28
  62. package/dist/cli.js +44 -19
  63. package/dist/{codex-adapter-ttygw382.js → codex-adapter-968xwfy7.js} +2 -2
  64. package/dist/{codex-hook-x7nejyrr.js → codex-hook-e2he7aca.js} +2 -2
  65. package/dist/{codex-session-runner-60b58vv3.js → codex-session-runner-ht4z99fa.js} +2 -2
  66. package/dist/{commands-edmdwa4x.js → commands-pcymaeg9.js} +3 -3
  67. package/dist/{controller-m263fg43.js → controller-fpjyk46r.js} +3 -3
  68. package/dist/{controllers-connect-5fym8sw1.js → controllers-connect-mwzx1fh6.js} +19 -19
  69. package/dist/{cursor-adapter-cz6nm6mj.js → cursor-adapter-cp4s2e2f.js} +2 -2
  70. package/dist/{db-2y0mgstc.js → db-sgd12bt9.js} +3 -3
  71. package/dist/{db-nn0hcmx5.js → db-xsjg9jqq.js} +2 -2
  72. package/dist/{dispatcher-0a9wwjcx.js → dispatcher-x0jfw2c9.js} +17 -17
  73. package/dist/{dsh-adapter-3n3net33.js → dsh-adapter-jrq7ma7h.js} +2 -2
  74. package/dist/{e2b-thdcxtjd.js → e2b-16d6ch39.js} +1 -1
  75. package/dist/{e2b-7am6tmq6.js → e2b-zn0b4w5w.js} +1 -1
  76. package/dist/{external-channel-zhvt95n3.js → external-channel-8njj4h3b.js} +2 -2
  77. package/dist/{grok-adapter-qnr1hp2y.js → grok-adapter-kkr97v2f.js} +5 -6
  78. package/dist/handlers-0pvee9nw.js +39 -0
  79. package/dist/{heartbeat-gz97r7ac.js → heartbeat-wd03zhn0.js} +20 -20
  80. package/dist/{hook-1mmdgjqs.js → hook-f0vghj42.js} +10 -5
  81. package/dist/{hook-x8rthca4.js → hook-xzj2ts2p.js} +2 -2
  82. package/dist/{http-r8f85xr9.js → http-4hwxv62p.js} +261 -123
  83. package/dist/{index-va3y63es.js → index-6srwvd5b.js} +1 -2
  84. package/dist/{index-y7rbcrc1.js → index-97q4xn03.js} +20 -11
  85. package/dist/{index-s98037v0.js → index-cbxkmfc5.js} +1 -2
  86. package/dist/{index-vzvfqzfj.js → index-gdh8jrdm.js} +17 -17
  87. package/dist/{index-aex0eba9.js → index-hg0x2cdv.js} +17 -17
  88. package/dist/index-thm0y6a8.js +41 -0
  89. package/dist/{index-smxyk04s.js → index-ww2vznkp.js} +1 -1
  90. package/dist/{keepalive-64c0f34c.js → keepalive-hrh7xnr9.js} +3 -3
  91. package/dist/{lead-b1da0f97.js → lead-ee8vazz2.js} +30 -31
  92. package/dist/{maintenance-mnxpar12.js → maintenance-e8wnwnqx.js} +1 -1
  93. package/dist/{oauth-refresh-sweep-36hs2v4h.js → oauth-refresh-sweep-zm0yj4sj.js} +2 -2
  94. package/dist/{onboard-xes8de61.js → onboard-dtwcq603.js} +3 -3
  95. package/dist/{opencode-adapter-3s7ax02e.js → opencode-adapter-x4tqzhkh.js} +3 -3
  96. package/dist/{otel-impl-fzc57kcq.js → otel-impl-w3fbhpn0.js} +1 -1
  97. package/dist/{pi-mono-adapter-ytp7gz8b.js → pi-mono-adapter-mcfkn9vf.js} +3 -3
  98. package/dist/{pricing-refresh-1nek2w7b.js → pricing-refresh-j38dehfs.js} +3 -3
  99. package/dist/{rbac-roles-ttyfaep2.js → rbac-roles-ae8yttq4.js} +3 -3
  100. package/dist/{rbac-roles-sqefb5hw.js → rbac-roles-ejxx9b35.js} +2 -2
  101. package/dist/{render-v2-vb527jwn.js → render-v2-n16n0phe.js} +3 -3
  102. package/dist/{resume-jcdzg1bn.js → resume-z0fgjc38.js} +5 -5
  103. package/dist/{session-access-zsp4wsp0.js → session-access-cv3mq6mc.js} +6 -4
  104. package/dist/{setup-1nb2zqd3.js → setup-mafhj3yt.js} +1 -1
  105. package/dist/{work-objects-61w08fwr.js → work-objects-8b86mgjp.js} +21 -21
  106. package/dist/{worker-c1e68hpa.js → worker-16s75hm5.js} +30 -31
  107. package/dist/worker-token-xf11yyds.js +136 -0
  108. package/openapi.json +295 -12
  109. package/package.json +5 -5
  110. package/src/apps/action-runner.ts +4 -0
  111. package/src/apps/catalog.generated.json +3 -0
  112. package/src/apps/page-validator.ts +8 -2
  113. package/src/be/db.ts +7 -4
  114. package/src/be/migrations/231_slack_tasks_last_updated_index.sql +5 -0
  115. package/src/be/migrations/232_agent_session_tokens.sql +41 -0
  116. package/src/be/seed-scripts/catalog/heartbeat-jev-gate.ts +10 -1
  117. package/src/be/swarm-config-guard.ts +16 -0
  118. package/src/be/users.ts +169 -12
  119. package/src/cli.tsx +24 -0
  120. package/src/commands/worker-token.ts +164 -0
  121. package/src/github/handlers.ts +6 -5
  122. package/src/hooks/hook.ts +2 -1
  123. package/src/http/apps.ts +43 -5
  124. package/src/http/codex-oauth-keep-warm.ts +27 -9
  125. package/src/http/config.ts +5 -3
  126. package/src/http/core.ts +2 -0
  127. package/src/http/session-access.ts +51 -2
  128. package/src/http/sessions.ts +249 -10
  129. package/src/http/tasks.ts +4 -32
  130. package/src/providers/acp-adapter.ts +33 -13
  131. package/src/providers/acp-swarm-events.ts +1 -1
  132. package/src/providers/amp-adapter.ts +1 -1
  133. package/src/providers/codex-adapter.ts +4 -4
  134. package/src/providers/codex-oauth/storage.ts +1 -1
  135. package/src/providers/opencode-adapter.ts +2 -2
  136. package/src/providers/pi-mono-extension.ts +2 -1
  137. package/src/rbac/legacy-policy.ts +3 -1
  138. package/src/rbac/permissions.ts +4 -0
  139. package/src/tests/acp-adapter.test.ts +10 -23
  140. package/src/tests/acp-fake-agent.ts +36 -0
  141. package/src/tests/acp-swarm-events.test.ts +1 -1
  142. package/src/tests/agent-session-tokens.test.ts +452 -0
  143. package/src/tests/apps-action-parent-task.test.ts +295 -0
  144. package/src/tests/claude-stop-hook.test.ts +47 -0
  145. package/src/tests/codex-adapter.test.ts +42 -0
  146. package/src/tests/codex-oauth-keep-warm.test.ts +85 -1
  147. package/src/tests/config-session-auth.test.ts +14 -0
  148. package/src/tests/docs-index-footprint.test.js +2 -2
  149. package/src/tests/env-flag.test.ts +15 -1
  150. package/src/tests/github-handlers-cancel-config.test.ts +29 -8
  151. package/src/tests/github-handlers-inline-comments.test.ts +9 -2
  152. package/src/tests/grok-adapter.test.ts +3 -3
  153. package/src/tests/heartbeat-jev-gate.test.ts +23 -0
  154. package/src/tests/migration-232-agent-session-tokens.test.ts +67 -0
  155. package/src/tests/rbac-engine.test.ts +1 -0
  156. package/src/tests/runtime-child-token-cleanup.test.ts +3 -3
  157. package/src/tests/script-connections.test.ts +4 -0
  158. package/src/tests/session-route-posture.test.ts +2 -0
  159. package/src/tests/skill-script-refs.test.ts +63 -0
  160. package/src/tests/slack-render-v2-query-plans.test.ts +147 -0
  161. package/src/tests/worker-token-cli.test.ts +76 -0
  162. package/src/tests/workflow-executors.test.ts +4 -2
  163. package/src/tests/workflow-system-one-extraction.test.ts +805 -0
  164. package/src/types.ts +2 -1
  165. package/src/utils/env-flag.ts +9 -0
  166. package/src/utils/request-auth-context.ts +2 -1
  167. package/src/workflows/definition.ts +7 -1
  168. package/src/workflows/engine.ts +18 -12
  169. package/src/workflows/executors/index.ts +1 -0
  170. package/src/workflows/executors/registry.ts +2 -0
  171. package/src/workflows/executors/system-one-decision.ts +56 -255
  172. package/src/workflows/executors/system-one-extract-wire.ts +57 -0
  173. package/src/workflows/executors/system-one-extraction.ts +830 -0
  174. package/src/workflows/executors/system-one-providers.ts +277 -110
  175. package/src/workflows/executors/system-one-transport.ts +264 -0
  176. package/templates/official/lead/HEARTBEAT.md +1 -1
  177. package/templates/skills/apps/SKILL.md +4 -1
  178. package/templates/skills/apps/content.md +4 -1
  179. package/templates/skills/code-quality/content.md +9 -14
  180. package/templates/skills/heartbeat-runbook/content.md +3 -3
  181. package/dist/cli-v1sjhn52.js +0 -7
  182. package/dist/handlers-dkcarkd0.js +0 -39
  183. package/dist/index-5jecgp3n.js +0 -41
@@ -332,19 +332,19 @@ import {
332
332
  recordInlineScriptRun2,
333
333
  exports_db,
334
334
  init_db3
335
- } from "./cli-d3qqdy4c.js";
335
+ } from "./cli-p20r8w42.js";
336
336
  import {
337
337
  getUserGrant2,
338
338
  init_rbac_roles
339
- } from "./cli-7awf1fp8.js";
339
+ } from "./cli-4dg55wsk.js";
340
340
  import {
341
341
  ensurePricingSeeded2,
342
342
  ensureRbacSeeded2,
343
343
  ensureModelProfilesSeeded2
344
- } from "./cli-faypxz7q.js";
344
+ } from "./cli-t7cyef5g.js";
345
345
  import {
346
346
  loadModelsDevCache
347
- } from "./cli-h93c9vb3.js";
347
+ } from "./cli-amyhm3gj.js";
348
348
  import {
349
349
  buildCatalogEntries,
350
350
  listModelCatalog,
@@ -354,12 +354,12 @@ import {
354
354
  loadModelsCatalog,
355
355
  requestModelCatalogRefresh2,
356
356
  startPricingRefreshLoop2
357
- } from "./cli-saw9a6f6.js";
357
+ } from "./cli-xc27fwzg.js";
358
358
  import {
359
359
  ampPinProviderError,
360
360
  ampPinCatalogError,
361
361
  ampModelError
362
- } from "./cli-sv5gb0yb.js";
362
+ } from "./cli-2zqpkvtt.js";
363
363
  import {
364
364
  notifyAutomationPreflightFailure,
365
365
  isNeedsSetupFailure,
@@ -411,7 +411,7 @@ import {
411
411
  buildNodeInterpolationCtx,
412
412
  interpolateNodeConfig,
413
413
  scriptBodyInterpolationError
414
- } from "./cli-y2x52gs2.js";
414
+ } from "./cli-51y09c6p.js";
415
415
  import {
416
416
  require_dist2,
417
417
  publicEndpointSsrfOptions,
@@ -471,14 +471,14 @@ import {
471
471
  deleteApp,
472
472
  typecheckScript,
473
473
  parseSkillContent
474
- } from "./cli-h38rjv87.js";
474
+ } from "./cli-2y91wnbh.js";
475
475
  import {
476
476
  buildAuthorizationUrl,
477
477
  onAuthorizationRefreshed,
478
478
  ensureAuthorizationTokenOrThrow,
479
479
  ensureToken,
480
480
  ensureTokenOrThrow
481
- } from "./cli-s6vr7r2d.js";
481
+ } from "./cli-esxerzg7.js";
482
482
  import {
483
483
  detachedProcessGroup,
484
484
  registerProcessGroup,
@@ -508,14 +508,14 @@ import {
508
508
  getSlackApp2,
509
509
  startSlackApp2,
510
510
  stopSlackApp2
511
- } from "./cli-nn47d7e8.js";
511
+ } from "./cli-qkhc5aqy.js";
512
512
  import {
513
513
  slackCode,
514
514
  slackMissingScopeMessage,
515
515
  withAutoJoin,
516
516
  externalChannelToolError2,
517
517
  getChannelBlockReason2
518
- } from "./cli-pkht5hap.js";
518
+ } from "./cli-1d70crsy.js";
519
519
  import {
520
520
  BaseExecutor,
521
521
  postApprovalCancellationUpdates,
@@ -523,6 +523,7 @@ import {
523
523
  HumanInTheLoopExecutor,
524
524
  resolveWorkflowLlmConfig,
525
525
  SYSTEM_ONE_PROVIDER_IDS,
526
+ SystemOneExtractionExecutor,
526
527
  SYSTEM_ONE_DECISION_NODE_TYPE,
527
528
  SystemOneDecisionConfigSchema,
528
529
  SystemOneDecisionExecutor,
@@ -532,7 +533,7 @@ import {
532
533
  definitionNodeIds,
533
534
  validateDefinition,
534
535
  applyDefinitionPatch
535
- } from "./cli-02qm7src.js";
536
+ } from "./cli-q6r7t299.js";
536
537
  import {
537
538
  workflowEventBus2,
538
539
  init_event_bus
@@ -554,17 +555,19 @@ import {
554
555
  SESSION_READ_DENIED2,
555
556
  canReadSession2,
556
557
  readableByFor2,
558
+ denyParentAttach2,
557
559
  pathSessionDenial2,
558
560
  userAgentIdentityDenial2,
559
561
  runtimeInstanceHeader,
562
+ bodyTask,
560
563
  routeRegistry,
561
564
  isPublicRoute,
562
565
  findRoute,
563
566
  route
564
- } from "./cli-efaqv1c7.js";
567
+ } from "./cli-cynvc9fj.js";
565
568
  import {
566
569
  isMultiRuntimeEnabled
567
- } from "./cli-7a91w22y.js";
570
+ } from "./cli-e8xyjvfc.js";
568
571
  import {
569
572
  providerPath,
570
573
  AgentFsProvider,
@@ -573,7 +576,7 @@ import {
573
576
  import {
574
577
  getRuntimePool2,
575
578
  init_db
576
- } from "./cli-n85dqg6d.js";
579
+ } from "./cli-w6nadkh4.js";
577
580
  import {
578
581
  getMemoryRaterNames,
579
582
  REFERENCES_SOURCE_MAX_LENGTH,
@@ -598,7 +601,7 @@ import {
598
601
  import {
599
602
  canProvisionKind,
600
603
  init_runtime_providers
601
- } from "./cli-pw7v69vp.js";
604
+ } from "./cli-625tb7aq.js";
602
605
  import {
603
606
  findUserById,
604
607
  findUserByExternalId,
@@ -614,7 +617,7 @@ import {
614
617
  resolveSessionToken,
615
618
  fingerprintApiKey,
616
619
  init_users
617
- } from "./cli-nmqdc2t3.js";
620
+ } from "./cli-9fhkkpj5.js";
618
621
  import {
619
622
  isRbacEnabled,
620
623
  decideAdmission,
@@ -623,7 +626,7 @@ import {
623
626
  init_elevated_agents,
624
627
  can,
625
628
  init_rbac
626
- } from "./cli-1pa3rz69.js";
629
+ } from "./cli-ba8ne1es.js";
627
630
  import {
628
631
  normalizeAssetKey,
629
632
  parseAssetKey,
@@ -683,7 +686,7 @@ import {
683
686
  KvNamespaceSchema,
684
687
  KvKeySchema,
685
688
  init_types
686
- } from "./cli-fpmsqq59.js";
689
+ } from "./cli-nc35pxb7.js";
687
690
  import {
688
691
  generateDefaultClaudeMd2,
689
692
  generateDefaultSoulMd2,
@@ -692,15 +695,15 @@ import {
692
695
  taskAttachmentFetchCommand,
693
696
  taskAttachmentDisplayUrl,
694
697
  init_task_attachment_links
695
- } from "./cli-x5mq1fyq.js";
698
+ } from "./cli-74c1wpm0.js";
696
699
  import {
697
700
  getSlackConfiguration,
698
701
  init_config
699
- } from "./cli-2wag8973.js";
702
+ } from "./cli-qeaq3j6t.js";
700
703
  import {
701
704
  isSteeringEnabled2,
702
705
  init_steering_enabled
703
- } from "./cli-mhywgrrz.js";
706
+ } from "./cli-4sydckyj.js";
704
707
  import {
705
708
  findInterpolationTokens,
706
709
  interpolate,
@@ -754,7 +757,7 @@ import {
754
757
  import {
755
758
  init_package,
756
759
  package_default
757
- } from "./cli-shvfedvm.js";
760
+ } from "./cli-pccfmtb5.js";
758
761
  import {
759
762
  realtimeBus,
760
763
  init_bus
@@ -770,12 +773,12 @@ import {
770
773
  getAgentFsDefaultDriveId,
771
774
  isCombEnabled,
772
775
  init_constants2
773
- } from "./cli-w9g4sz81.js";
776
+ } from "./cli-gf2850q7.js";
774
777
  import {
775
778
  parseEnvFlag,
776
779
  isEnvFlagEnabled,
777
780
  init_env_flag
778
- } from "./cli-0hyhdkdk.js";
781
+ } from "./cli-cebvbc9t.js";
779
782
  import {
780
783
  getApiKey,
781
784
  init_api_key
@@ -21146,7 +21149,7 @@ class NotifyExecutor extends BaseExecutor {
21146
21149
  }
21147
21150
  }
21148
21151
  case "slack": {
21149
- const { getSlackApp } = await import("./app-9h14qvr6.js");
21152
+ const { getSlackApp } = await import("./app-rb7vc02s.js");
21150
21153
  const app = getSlackApp();
21151
21154
  if (!app) {
21152
21155
  return {
@@ -21272,7 +21275,7 @@ var RawLlmOutputSchema = object2({
21272
21275
  async function executeRawLlm(config) {
21273
21276
  let modelName = config.model ?? "google/gemini-3-flash-preview";
21274
21277
  try {
21275
- const { createOpenAI } = await import("./index-va3y63es.js");
21278
+ const { createOpenAI } = await import("./index-6srwvd5b.js");
21276
21279
  const llmConfig = await resolveWorkflowLlmConfig(config.model);
21277
21280
  modelName = llmConfig.model;
21278
21281
  const provider = createOpenAI({
@@ -21282,7 +21285,7 @@ async function executeRawLlm(config) {
21282
21285
  });
21283
21286
  const model = provider(llmConfig.model);
21284
21287
  if (config.schema) {
21285
- const { generateObject, jsonSchema } = await import("./index-s98037v0.js");
21288
+ const { generateObject, jsonSchema } = await import("./index-cbxkmfc5.js");
21286
21289
  const { object } = await generateObject({
21287
21290
  model,
21288
21291
  schema: jsonSchema(config.schema),
@@ -21296,7 +21299,7 @@ async function executeRawLlm(config) {
21296
21299
  output: { result: object, model: modelName }
21297
21300
  };
21298
21301
  }
21299
- const { generateText } = await import("./index-s98037v0.js");
21302
+ const { generateText } = await import("./index-cbxkmfc5.js");
21300
21303
  const { text } = await generateText({
21301
21304
  model,
21302
21305
  prompt: config.prompt
@@ -21736,8 +21739,8 @@ class ValidateExecutor extends BaseExecutor {
21736
21739
  const interpolatedPrompt = this.deps.interpolate(prompt, context);
21737
21740
  const outputStr = typeof targetOutput === "string" ? targetOutput : JSON.stringify(targetOutput);
21738
21741
  try {
21739
- const { createOpenAI } = await import("./index-va3y63es.js");
21740
- const { generateObject, jsonSchema } = await import("./index-s98037v0.js");
21742
+ const { createOpenAI } = await import("./index-6srwvd5b.js");
21743
+ const { generateObject, jsonSchema } = await import("./index-cbxkmfc5.js");
21741
21744
  const llmConfig = await resolveWorkflowLlmConfig();
21742
21745
  const provider = createOpenAI({
21743
21746
  baseURL: llmConfig.baseURL,
@@ -21909,6 +21912,7 @@ function createExecutorRegistry(deps) {
21909
21912
  registry.register(new NotifyExecutor(deps));
21910
21913
  registry.register(new RawLlmExecutor(deps));
21911
21914
  registry.register(new SystemOneDecisionExecutor(deps));
21915
+ registry.register(new SystemOneExtractionExecutor(deps));
21912
21916
  registry.register(new ScriptExecutor(deps));
21913
21917
  registry.register(new SwarmScriptExecutor(deps));
21914
21918
  registry.register(new VcsExecutor(deps));
@@ -24508,7 +24512,7 @@ function setPreloadedTools(server, names) {
24508
24512
  async function applyPreToolCall(name, args, requestInfo, inputSchema) {
24509
24513
  if (requestInfo.callOrigin !== "mcp")
24510
24514
  return { args };
24511
- const dispatcher = await import("./dispatcher-0a9wwjcx.js");
24515
+ const dispatcher = await import("./dispatcher-x0jfw2c9.js");
24512
24516
  const result = await dispatcher.dispatchPre("pre.tool.call", { tool: name, args, requestInfo }, inputSchema ? {
24513
24517
  validateModify: async (data) => {
24514
24518
  const schema = normalizeObjectSchema(inputSchema) ?? inputSchema;
@@ -29128,6 +29132,7 @@ init_db3();
29128
29132
  init_users();
29129
29133
  init_resolver();
29130
29134
  init_context_key();
29135
+ init_env_flag();
29131
29136
 
29132
29137
  // src/github/mentions.ts
29133
29138
  var GITHUB_BOT_NAME = process.env.GITHUB_BOT_NAME || "agent-swarm-bot";
@@ -29608,7 +29613,7 @@ function buildGithubContextKey(fullName, kind, number) {
29608
29613
  }
29609
29614
  async function cancelFlagEnabled(key) {
29610
29615
  const row = (await getSwarmConfigs2({ scope: "global", key }))[0];
29611
- return row?.value !== "false";
29616
+ return parseEnvFlag(row?.value, true);
29612
29617
  }
29613
29618
  var cancelOnUnassignEnabled = () => cancelFlagEnabled("github.cancelOnUnassign");
29614
29619
  var cancelOnReviewRequestRemovedEnabled = () => cancelFlagEnabled("github.cancelOnReviewRequestRemoved");
@@ -30305,7 +30310,7 @@ var PR_REVIEW_ACTION_ITEMS_QUERY = `query($owner: String!, $name: String!, $numb
30305
30310
  }
30306
30311
  }`;
30307
30312
  function skipNoopApprovalsEnabled() {
30308
- return process.env.GITHUB_SKIP_NOOP_APPROVALS?.trim().toLowerCase() !== "false";
30313
+ return parseEnvFlag(process.env.GITHUB_SKIP_NOOP_APPROVALS, true);
30309
30314
  }
30310
30315
  async function fetchPrReviewActionCounts(repo, prNumber, installationId) {
30311
30316
  const [owner, name] = repo.split("/");
@@ -33821,7 +33826,7 @@ async function notifySlack(text) {
33821
33826
  return;
33822
33827
  }
33823
33828
  try {
33824
- const { getSlackApp } = await import("./app-9h14qvr6.js");
33829
+ const { getSlackApp } = await import("./app-rb7vc02s.js");
33825
33830
  const app = getSlackApp();
33826
33831
  if (!app) {
33827
33832
  console.warn("[Jira webhook keepalive] Slack not available, cannot send notification");
@@ -33892,7 +33897,7 @@ async function deleteJiraWebhook(webhookId) {
33892
33897
  console.log(`[Jira webhook keepalive] Deleted webhook id=${webhookId}`);
33893
33898
  }
33894
33899
  async function overwriteWebhookIds(next) {
33895
- const { getDbClient } = await import("./db-nn0hcmx5.js");
33900
+ const { getDbClient } = await import("./db-xsjg9jqq.js");
33896
33901
  await getDbClient().transaction(async (tx) => {
33897
33902
  const row = await tx.get("SELECT metadata FROM oauth_apps WHERE provider = 'jira'");
33898
33903
  if (!row) {
@@ -107242,7 +107247,7 @@ async function reloadGlobalConfigsAndIntegrations() {
107242
107247
  return runWithoutRequestAuth(() => reloadGlobalConfigsAndIntegrationsInner());
107243
107248
  }
107244
107249
  async function reloadGlobalConfigsAndIntegrationsInner() {
107245
- const { getEmbeddingProvider, resetEmbeddingProvider } = await import("./index-smxyk04s.js");
107250
+ const { getEmbeddingProvider, resetEmbeddingProvider } = await import("./index-ww2vznkp.js");
107246
107251
  const wasEmbeddingsConfigured = getEmbeddingProvider().isConfigured();
107247
107252
  const updated = await loadGlobalConfigsIntoEnv(true);
107248
107253
  await syncTelemetryEnabled("settings").catch((err) => {
@@ -107258,10 +107263,10 @@ async function reloadGlobalConfigsAndIntegrationsInner() {
107258
107263
  integrations.push("embeddings");
107259
107264
  }
107260
107265
  if (!wasEmbeddingsConfigured && isEmbeddingsConfigured) {
107261
- import("./boot-reembed-6yn53ms9.js").then(({ runBootReembed }) => runBootReembed()).catch((err) => {
107266
+ import("./boot-reembed-srp6v6af.js").then(({ runBootReembed }) => runBootReembed()).catch((err) => {
107262
107267
  console.error("[config-reload] memory backfill failed (non-fatal):", err);
107263
107268
  });
107264
- import("./boot-reembed-7fcka4z5.js").then(({ runBootReembedScripts }) => runBootReembedScripts()).catch((err) => {
107269
+ import("./boot-reembed-xns7h5h9.js").then(({ runBootReembedScripts }) => runBootReembedScripts()).catch((err) => {
107265
107270
  console.error("[config-reload] script backfill failed (non-fatal):", err);
107266
107271
  });
107267
107272
  }
@@ -107452,6 +107457,8 @@ async function handleCore(req, res, myAgentId, apiKey) {
107452
107457
  return true;
107453
107458
  }
107454
107459
  req.headers["x-runtime-instance-id"] = auth.runtimeId;
107460
+ }
107461
+ if (auth.tokenKind !== "task") {
107455
107462
  const sourceHeader = req.headers["x-source-task-id"];
107456
107463
  const taskId = Array.isArray(sourceHeader) ? sourceHeader[0] : sourceHeader;
107457
107464
  if (taskId !== undefined && (await getTaskById2(taskId))?.agentId !== auth.agentId) {
@@ -108787,6 +108794,7 @@ async function runAppAction({
108787
108794
  app,
108788
108795
  name,
108789
108796
  input = {},
108797
+ parentTaskId,
108790
108798
  caller,
108791
108799
  actor
108792
108800
  }) {
@@ -108873,7 +108881,8 @@ async function runAppAction({
108873
108881
  routingReason: action.agentId ? "human_pinned" : lead ? "skill" : undefined,
108874
108882
  routingSource: action.agentId || lead ? "engine_default" : undefined,
108875
108883
  key: normalizeAssetKey(`shared/app:${app.id}/action:${name}/`),
108876
- ...actor.startsWith("user:") ? { requestedByUserId: actor.slice("user:".length) } : {}
108884
+ ...actor.startsWith("user:") ? { requestedByUserId: actor.slice("user:".length) } : {},
108885
+ ...parentTaskId ? { parentTaskId } : {}
108877
108886
  }, { origin: "app" });
108878
108887
  return {
108879
108888
  status: 200,
@@ -110044,6 +110053,47 @@ init_rbac();
110044
110053
  init_types();
110045
110054
  init_request_auth_context();
110046
110055
  init_secret_scrubber();
110056
+
110057
+ // src/http/request-principal.ts
110058
+ init_db3();
110059
+ init_request_auth_context();
110060
+ async function requestPrincipal(req, myAgentId) {
110061
+ const auth = getRequestAuth(req);
110062
+ if (auth?.kind === "controller")
110063
+ return { kind: "guest" };
110064
+ if (auth?.kind === "operator")
110065
+ return { kind: "operator" };
110066
+ if (auth?.kind === "user")
110067
+ return { kind: "user", userId: auth.userId };
110068
+ if (auth?.kind === "guest")
110069
+ return { kind: "guest" };
110070
+ if (!myAgentId)
110071
+ return null;
110072
+ const agent = await getAgentById2(myAgentId);
110073
+ return { kind: "agent", agentId: myAgentId, isLead: agent?.isLead ?? false };
110074
+ }
110075
+ async function agentFirstPrincipal(req, myAgentId) {
110076
+ const auth = getRequestAuth(req);
110077
+ if (auth?.kind === "controller")
110078
+ return { kind: "guest" };
110079
+ if (auth?.kind === "user")
110080
+ return { kind: "user", userId: auth.userId };
110081
+ if (auth?.kind === "guest")
110082
+ return { kind: "guest" };
110083
+ const agentId = auth?.kind === "agent" ? auth.agentId : myAgentId;
110084
+ if (!agentId)
110085
+ return { kind: "operator" };
110086
+ const agent = await getAgentById2(agentId);
110087
+ return { kind: "agent", agentId, isLead: agent?.isLead === true };
110088
+ }
110089
+ function rejectGuest(req, res) {
110090
+ if (getRequestAuth(req)?.kind !== "guest")
110091
+ return false;
110092
+ jsonError(res, "Forbidden", 403);
110093
+ return true;
110094
+ }
110095
+
110096
+ // src/http/apps.ts
110047
110097
  var MAX_APP_BODY_BYTES = 5 * 1024 * 1024;
110048
110098
  var MAX_APP_ROW_BODY_BYTES = 1 * 1024 * 1024;
110049
110099
  var MAX_APP_BULK_ROWS_BODY_BYTES = 10 * 1024 * 1024;
@@ -110492,17 +110542,23 @@ var runActionRoute = route({
110492
110542
  method: "post",
110493
110543
  path: "/api/apps/{id}/actions/{name}",
110494
110544
  pattern: ["api", "apps", null, "actions", null],
110545
+ session: bodyTask("parentTaskId"),
110495
110546
  summary: "Run a custom app action",
110496
110547
  description: "Runs the saved script, or creates the agent task, named by the app definition.",
110497
110548
  tags: ["Apps"],
110498
110549
  params: object2({ id: string2().min(1), name: AppNameSchema }),
110499
- body: object2({ input: record2(string2(), unknown()).optional() }),
110550
+ body: object2({
110551
+ input: record2(string2(), unknown()).optional(),
110552
+ parentTaskId: string2().min(1).optional()
110553
+ }),
110500
110554
  responses: {
110501
110555
  200: { description: "Action invoked", schema: runActionResultSchema },
110502
- 400: { description: "Invalid action input or stale script reference" },
110556
+ 400: {
110557
+ description: "Invalid action input, stale script reference, or parentTaskId on a non-task action"
110558
+ },
110503
110559
  403: { description: "Permission denied" },
110504
110560
  409: { description: "App definition needs repair" },
110505
- 404: { description: "App or action not found" }
110561
+ 404: { description: "App, action, or parent task not found" }
110506
110562
  },
110507
110563
  rbac: { permission: "app.use" }
110508
110564
  });
@@ -111071,10 +111127,29 @@ async function handleApps(req, res, pathSegments, queryParams, myAgentId) {
111071
111127
  }
111072
111128
  if (definitionNeedsRepair(res, app))
111073
111129
  return true;
111130
+ if (parsed.body.parentTaskId) {
111131
+ const actions = app.definition.actions;
111132
+ const action = actions && Object.hasOwn(actions, parsed.params.name) ? actions[parsed.params.name] : undefined;
111133
+ if (action && action.kind !== "task") {
111134
+ jsonError(res, "parentTaskId is only supported for task-kind actions", 400);
111135
+ return true;
111136
+ }
111137
+ if (action) {
111138
+ const parentTask = await getTaskById2(parsed.body.parentTaskId);
111139
+ if (!parentTask) {
111140
+ jsonError(res, "parent task not found", 404);
111141
+ return true;
111142
+ }
111143
+ const principal = await agentFirstPrincipal(req, myAgentId);
111144
+ if (await denyParentAttach2(req, res, myAgentId, parentTask, principal))
111145
+ return true;
111146
+ }
111147
+ }
111074
111148
  const output = await runAppAction({
111075
111149
  app,
111076
111150
  name: parsed.params.name,
111077
111151
  input: parsed.body.input,
111152
+ parentTaskId: parsed.body.parentTaskId,
111078
111153
  caller,
111079
111154
  actor
111080
111155
  });
@@ -136121,4 +136196,4 @@ async function createServer(opts = {}) {
136121
136196
  return server;
136122
136197
  }
136123
136198
 
136124
- export { DEFAULT_NEGOTIATED_PROTOCOL_VERSION, SUPPORTED_PROTOCOL_VERSIONS, isJSONRPCRequest, isJSONRPCResultResponse, isJSONRPCErrorResponse, JSONRPCMessageSchema, isInitializeRequest, McpServer, isGitHubEnabled, initGitHub, verifyWebhookSignature, isAgentMailEnabled, initAgentMail, verifyAgentMailWebhook, resolveIdentity, renderIdentity, createAdditiveBuffer, taskModelPin, resumedTaskModelSelection, listHarnessModelSupport, recordHarnessModelSupport, agentRanModel, getAgentHarnessCliVersion, setAgentHarnessCliVersion, sanitizeModelTierOverrides, parseModelTierOverridesHeader, setAgentModelTierOverrides, previewModelTiers, recordClaimModelResolution, harnessModelErrorFor, poolTaskRunsOnHarness, explicitModelError, explicitModelErrorForAgent, referencedBundlePaths, skillDirs, TaskCreationBlockedError, recordUnmappedIdentity, MAX_TASK_ATTACHMENT_BYTES, recordTaskAttachmentUpload, buildEffectiveText, bufferedFileFailures, fetchSlackFiles, createSlackTaskWithFiles, notifySlackFileFailures, isRuntimePoolWakeable, isAgentReachable, hasOtherUserMention, broadcastMatches, routeMessage, extractTaskFromMessage, extractSlackMessageText, recoverIncompleteRuns, handleWebhookTrigger, verifyHmacSignature, WebhookError, snapshotAndUpdateWorkflow, RawLlmConfigSchema, RawLlmOutputSchema, executeRawLlm, getExecutorRegistry2, initWorkflows2, dispatchScheduleTarget, calculateNextRun2, startScheduler2, stopScheduler2, runScheduleNow2, ExtensionAssetConflictError, ExtensionOwnershipError, getExtensionFiles, getExtensionById, getExtensionByName, listExtensions, listExtensionVersions, updateExtensionMeta, listExtensionRuns, SDK_ALLOWLIST, mcpToolNameForSdkMethod, mcpOverflowAuthError, hasKvViewArgs, resolveKvView, toolErr, createToolRegistrar, handleMcpBridge, Redacted, SCRIPT_SDK_RESPONSE_LIMIT_BYTES, readScriptSdkJsonResponse, ExtensionConfigError, ExtensionLifecycleError, setExtensionLoopbackBaseUrl, enableExtension, disableExtension, activateVersion, ExtensionAssetsInvalidError, installExtensionWithAssets, uninstallExtension, reloadExtension, loadEnabledExtensions, stopExtensionRuntime, ExtensionAbortedError2, isRegistered2, isExtensionAgentId2, getExtensionBridgeToken2, resolveBridgeCallOrigin2, extensionIdForAgent2, runContext2, registerLoaded2, unregister2, listRegistered2, dispatchPre2, dispatchPost2, stripSiblingBlock, createTaskWithSiblingAwareness, isInboxAllowed, isSenderAllowed, handleMessageReceived, isAzureDevOpsEnabled, initAzureDevOps, verifyAzureDevOpsWebhook, repointTrackerSyncBySwarmId, isAzureDevOpsUrl, canonicalAzureDevOpsRepoUrl, parseAzureDevOpsRepoUrl, createdPullRequestOf, commentedPayloadOf, handlePullRequestCreated, handlePullRequestCommented, handleWorkItemCreated, handleWorkItemUpdated, handleWorkItemCommented, handleWorkItemDeleted, handleWorkItemRestored, initAzureDevOpsOutbound, AGENT_MAX_TASKS_CONFIG_KEY, reconcileAgentMaxTasksPolicy, resetAgentMaxTasksMirror, upsertSwarmConfigWithPolicyMirror, runtimeStaleThresholdMinutes, upsertRuntimeInstance, getRuntimeInstanceById, insertProvisioningRuntime, markRuntimeTerminated, touchRuntimeInstance, countActiveRuntimeInstancesForAgent, listRuntimeInstancesForAgent, setRuntimeCredentialReady, reconcileAgentStatusFromRuntimes, agentsWithLiveRuntime, expireStaleRuntimeInstances, listRuntimeInstancesForPool, enqueueAuditRow, enqueueAdmissionRow, flushAuditBuffer, startAuditWriter, stopAuditWriter, startAuditGc, stopAuditGc, getTelemetryIngestAnchor, initApiTelemetry, syncTelemetryEnabled, handlePullRequest, handleIssue, handleComment, handlePullRequestReview, handleCheckRun, handleCheckSuite, handleWorkflowRun, isGitLabEnabled, initGitLab, verifyGitLabWebhook, handleMergeRequest, handleIssue2, handleNote, handlePipeline, isChatSdkEnabled, getChatSdkConfig, errorMessage, resolveAdapterApiUrl, trackBackground, TelegramBotApiError, callTelegramBotApi, isTrustedTeamsServiceUrl, isChatSdkStopping, startChatSdk, getChatInstance, isChatAdapterConfigured, getChatSdkHealth, stopChatSdk, getJiraMetadata, updateJiraMetadata, clearJiraMetadata, registerJiraWebhook, deleteJiraWebhook, isJiraEnabled, initJira, handleJiraWebhook, handleAgentSessionEvent, handleIssueUpdate, handleIssueDelete, handleAgentSessionPrompted, isLinearEnabled, initLinear, parseCookieHeader, extractAndVerifyCookie, issuePageSessionCookie, resolveHttpRequestAuth, loadGlobalConfigsIntoEnv, reloadGlobalConfigsAndIntegrations, scheduleIntegrationsReload, handleCore, userCtx, handleApps, cancelApprovalRequest, cancelApprovalRequestAndRun, getUserCommsPrefs, getTaskDetailsInputSchema, getTaskDetailsOutputSchema, getTaskDetailsHandler, cancelTaskInputSchema, cancelTaskOutputSchema, cancelTaskHandler, executeReadOnlyQuery, assertSelectOnlyQuery, handleDbQuery, snapshotMetric, AssetKeyAuthorizationError, authorizeAssetKeyWrite, getPageEditCounter, snapshotPage, assertOAuthAppUrlsSafe, assertOAuthEgressUrlSafe, listOAuthPresets, listOAuthPresetIds, getOAuthPreset, hydrateOAuthAppFromPreset, scopedResourceScopeIdSchema, resolveScopedResourceId, dedupeMemoryDocumentIds, recordMemoryAccesses, recordRetrievals, ExplicitSelfDuplicateError, applyRating, shouldPersistAutomaticTaskMemory, REBOOT_RETRY_PIN_TAG, getPinCandidateAgent, resolveLeadOnlyRecoveryAssignment, getResumeGeneration, getNextResumeGeneration, inheritedModelSelection, createWorkerTaskFollowUp, createResumeFollowUp, createRerouteDecisionTask, createPoolStarvationDecisionTask, guardTerminalTaskResultWrite, getTasksInputSchema, getTasksOutputSchema, getTasksHandler, reservedNamespaceError, reservedRoomKeyError, updateMcpServerChecked, updateTouchesStdioExecution, MemoryKeyError, refreshLinks, canReadMemory, getLinksForMemory, expandCandidatesWithGraph, indexMemoryContent, isApiDraining, drainApi, markKapsoMessageRead, sendKapsoReaction, getKapsoConfig, getKapsoNumberMapping, markKapsoMessageSeen, changesAllowMerge, updateSwarmRepoChecked, getCombConfig, resolveRoomNamespace, roomRequestInfo, authorizeRoomNamespace, sessionAccessTopic, sessionPresenceRoot, RoomOperationSchema, removeAwarenessStates, roomTopic, decodeRoomSnapshot, roomView, getRoom, changeRoom, applyRoomUpdate, resetRoom, sweepRooms, closeRooms, removeNamespaceRooms, MEMORY_KEYS_DEFAULT_PREFIX, MEMORY_KEYS_MAX_LIMIT, estimateTokens, posteriorMean, listMemoryKeys, checkChunkIntegrity, getMemoryChunks, getPosteriorsByIds, createEvent, createEventsBatch, getEventCountsFiltered, getEventsFiltered, mergeScheduleTiming, validateRecurringTiming, checkOutputSchemaShape, sendTaskOutputSchema, sendTaskHandler, steerTaskUserInputSchema, steerTaskOutputSchema, steerTaskHandler, canClaim, emitBudgetRefusalSideEffects, workflowModelErrors, patchWorkflowDefinition, resolveScriptsOnlyMode, ALL_CAPABILITIES, hasCapability, getEnabledCapabilities, createServer };
136199
+ export { DEFAULT_NEGOTIATED_PROTOCOL_VERSION, SUPPORTED_PROTOCOL_VERSIONS, isJSONRPCRequest, isJSONRPCResultResponse, isJSONRPCErrorResponse, JSONRPCMessageSchema, isInitializeRequest, McpServer, isGitHubEnabled, initGitHub, verifyWebhookSignature, isAgentMailEnabled, initAgentMail, verifyAgentMailWebhook, resolveIdentity, renderIdentity, createAdditiveBuffer, taskModelPin, resumedTaskModelSelection, listHarnessModelSupport, recordHarnessModelSupport, agentRanModel, getAgentHarnessCliVersion, setAgentHarnessCliVersion, sanitizeModelTierOverrides, parseModelTierOverridesHeader, setAgentModelTierOverrides, previewModelTiers, recordClaimModelResolution, harnessModelErrorFor, poolTaskRunsOnHarness, explicitModelError, explicitModelErrorForAgent, referencedBundlePaths, skillDirs, TaskCreationBlockedError, recordUnmappedIdentity, MAX_TASK_ATTACHMENT_BYTES, recordTaskAttachmentUpload, buildEffectiveText, bufferedFileFailures, fetchSlackFiles, createSlackTaskWithFiles, notifySlackFileFailures, isRuntimePoolWakeable, isAgentReachable, hasOtherUserMention, broadcastMatches, routeMessage, extractTaskFromMessage, extractSlackMessageText, recoverIncompleteRuns, handleWebhookTrigger, verifyHmacSignature, WebhookError, snapshotAndUpdateWorkflow, RawLlmConfigSchema, RawLlmOutputSchema, executeRawLlm, getExecutorRegistry2, initWorkflows2, dispatchScheduleTarget, calculateNextRun2, startScheduler2, stopScheduler2, runScheduleNow2, ExtensionAssetConflictError, ExtensionOwnershipError, getExtensionFiles, getExtensionById, getExtensionByName, listExtensions, listExtensionVersions, updateExtensionMeta, listExtensionRuns, SDK_ALLOWLIST, mcpToolNameForSdkMethod, mcpOverflowAuthError, hasKvViewArgs, resolveKvView, toolErr, createToolRegistrar, handleMcpBridge, Redacted, SCRIPT_SDK_RESPONSE_LIMIT_BYTES, readScriptSdkJsonResponse, ExtensionConfigError, ExtensionLifecycleError, setExtensionLoopbackBaseUrl, enableExtension, disableExtension, activateVersion, ExtensionAssetsInvalidError, installExtensionWithAssets, uninstallExtension, reloadExtension, loadEnabledExtensions, stopExtensionRuntime, ExtensionAbortedError2, isRegistered2, isExtensionAgentId2, getExtensionBridgeToken2, resolveBridgeCallOrigin2, extensionIdForAgent2, runContext2, registerLoaded2, unregister2, listRegistered2, dispatchPre2, dispatchPost2, stripSiblingBlock, createTaskWithSiblingAwareness, isInboxAllowed, isSenderAllowed, handleMessageReceived, isAzureDevOpsEnabled, initAzureDevOps, verifyAzureDevOpsWebhook, repointTrackerSyncBySwarmId, isAzureDevOpsUrl, canonicalAzureDevOpsRepoUrl, parseAzureDevOpsRepoUrl, createdPullRequestOf, commentedPayloadOf, handlePullRequestCreated, handlePullRequestCommented, handleWorkItemCreated, handleWorkItemUpdated, handleWorkItemCommented, handleWorkItemDeleted, handleWorkItemRestored, initAzureDevOpsOutbound, AGENT_MAX_TASKS_CONFIG_KEY, reconcileAgentMaxTasksPolicy, resetAgentMaxTasksMirror, upsertSwarmConfigWithPolicyMirror, runtimeStaleThresholdMinutes, upsertRuntimeInstance, getRuntimeInstanceById, insertProvisioningRuntime, markRuntimeTerminated, touchRuntimeInstance, countActiveRuntimeInstancesForAgent, listRuntimeInstancesForAgent, setRuntimeCredentialReady, reconcileAgentStatusFromRuntimes, agentsWithLiveRuntime, expireStaleRuntimeInstances, listRuntimeInstancesForPool, enqueueAuditRow, enqueueAdmissionRow, flushAuditBuffer, startAuditWriter, stopAuditWriter, startAuditGc, stopAuditGc, getTelemetryIngestAnchor, initApiTelemetry, syncTelemetryEnabled, handlePullRequest, handleIssue, handleComment, handlePullRequestReview, handleCheckRun, handleCheckSuite, handleWorkflowRun, isGitLabEnabled, initGitLab, verifyGitLabWebhook, handleMergeRequest, handleIssue2, handleNote, handlePipeline, isChatSdkEnabled, getChatSdkConfig, errorMessage, resolveAdapterApiUrl, trackBackground, TelegramBotApiError, callTelegramBotApi, isTrustedTeamsServiceUrl, isChatSdkStopping, startChatSdk, getChatInstance, isChatAdapterConfigured, getChatSdkHealth, stopChatSdk, getJiraMetadata, updateJiraMetadata, clearJiraMetadata, registerJiraWebhook, deleteJiraWebhook, isJiraEnabled, initJira, handleJiraWebhook, handleAgentSessionEvent, handleIssueUpdate, handleIssueDelete, handleAgentSessionPrompted, isLinearEnabled, initLinear, parseCookieHeader, extractAndVerifyCookie, issuePageSessionCookie, resolveHttpRequestAuth, loadGlobalConfigsIntoEnv, reloadGlobalConfigsAndIntegrations, scheduleIntegrationsReload, handleCore, userCtx, requestPrincipal, agentFirstPrincipal, rejectGuest, handleApps, cancelApprovalRequest, cancelApprovalRequestAndRun, getUserCommsPrefs, getTaskDetailsInputSchema, getTaskDetailsOutputSchema, getTaskDetailsHandler, cancelTaskInputSchema, cancelTaskOutputSchema, cancelTaskHandler, executeReadOnlyQuery, assertSelectOnlyQuery, handleDbQuery, snapshotMetric, AssetKeyAuthorizationError, authorizeAssetKeyWrite, getPageEditCounter, snapshotPage, assertOAuthAppUrlsSafe, assertOAuthEgressUrlSafe, listOAuthPresets, listOAuthPresetIds, getOAuthPreset, hydrateOAuthAppFromPreset, scopedResourceScopeIdSchema, resolveScopedResourceId, dedupeMemoryDocumentIds, recordMemoryAccesses, recordRetrievals, ExplicitSelfDuplicateError, applyRating, shouldPersistAutomaticTaskMemory, REBOOT_RETRY_PIN_TAG, getPinCandidateAgent, resolveLeadOnlyRecoveryAssignment, getResumeGeneration, getNextResumeGeneration, inheritedModelSelection, createWorkerTaskFollowUp, createResumeFollowUp, createRerouteDecisionTask, createPoolStarvationDecisionTask, guardTerminalTaskResultWrite, getTasksInputSchema, getTasksOutputSchema, getTasksHandler, reservedNamespaceError, reservedRoomKeyError, updateMcpServerChecked, updateTouchesStdioExecution, MemoryKeyError, refreshLinks, canReadMemory, getLinksForMemory, expandCandidatesWithGraph, indexMemoryContent, isApiDraining, drainApi, markKapsoMessageRead, sendKapsoReaction, getKapsoConfig, getKapsoNumberMapping, markKapsoMessageSeen, changesAllowMerge, updateSwarmRepoChecked, getCombConfig, resolveRoomNamespace, roomRequestInfo, authorizeRoomNamespace, sessionAccessTopic, sessionPresenceRoot, RoomOperationSchema, removeAwarenessStates, roomTopic, decodeRoomSnapshot, roomView, getRoom, changeRoom, applyRoomUpdate, resetRoom, sweepRooms, closeRooms, removeNamespaceRooms, MEMORY_KEYS_DEFAULT_PREFIX, MEMORY_KEYS_MAX_LIMIT, estimateTokens, posteriorMean, listMemoryKeys, checkChunkIntegrity, getMemoryChunks, getPosteriorsByIds, createEvent, createEventsBatch, getEventCountsFiltered, getEventsFiltered, mergeScheduleTiming, validateRecurringTiming, checkOutputSchemaShape, sendTaskOutputSchema, sendTaskHandler, steerTaskUserInputSchema, steerTaskOutputSchema, steerTaskHandler, canClaim, emitBudgetRefusalSideEffects, workflowModelErrors, patchWorkflowDefinition, resolveScriptsOnlyMode, ALL_CAPABILITIES, hasCapability, getEnabledCapabilities, createServer };
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  runStopHookSessionSummarySubprocess
3
- } from "./cli-ahtpy9kf.js";
3
+ } from "./cli-55qmbp6z.js";
4
4
  import {
5
5
  CONTEXT_FORMULA,
6
6
  getContextWindowSize,
@@ -15,7 +15,7 @@ import {
15
15
  } from "./cli-gx4rm0qx.js";
16
16
  import {
17
17
  swarmRuntimeInstanceId
18
- } from "./cli-7a91w22y.js";
18
+ } from "./cli-e8xyjvfc.js";
19
19
  import {
20
20
  detachedProcessGroup,
21
21
  registerProcessGroup,
@@ -47,7 +47,7 @@ import {
47
47
  import {
48
48
  withFileLock,
49
49
  init_file_lock
50
- } from "./cli-x5mq1fyq.js";
50
+ } from "./cli-74c1wpm0.js";
51
51
  import {
52
52
  CLAUDE_CREDENTIALS_HINT,
53
53
  validateClaudeCredentials,
@@ -66,7 +66,7 @@ import {
66
66
  import {
67
67
  isEnvFlagEnabled,
68
68
  init_env_flag
69
- } from "./cli-0hyhdkdk.js";
69
+ } from "./cli-cebvbc9t.js";
70
70
  import {
71
71
  scrubSecrets,
72
72
  init_secret_scrubber
@@ -1236,7 +1236,7 @@ class ClaudeAdapter2 {
1236
1236
  if (transport === "sdk" && isClaudeBridgeEffective(sourceEnv)) {
1237
1237
  throw new Error("CLAUDE_TRANSPORT=sdk cannot run with an effective Claude Bridge configuration. Select CLI transport or disable the bridge.");
1238
1238
  }
1239
- const claudeSdk = transport === "sdk" ? await import("./claude-sdk-session-s2k1qd8y.js") : undefined;
1239
+ const claudeSdk = transport === "sdk" ? await import("./claude-sdk-session-2j3j4kwn.js") : undefined;
1240
1240
  claudeSdk?.validateClaudeSdkAdditionalArgs([
1241
1241
  ...claudeBinaryArgv.slice(1),
1242
1242
  ...config.additionalArgs ?? []
@@ -21,6 +21,10 @@ import {
21
21
  getOpenRouterAttributionHeaders,
22
22
  init_openrouter_base_url
23
23
  } from "./cli-dfyv0jdy.js";
24
+ import {
25
+ isSessionSummarySkipped,
26
+ init_env_flag
27
+ } from "./cli-cebvbc9t.js";
24
28
  import {
25
29
  scrubSecrets,
26
30
  init_secret_scrubber
@@ -46,6 +50,7 @@ Current Progress: ${task.progress}` : ""
46
50
  }
47
51
 
48
52
  // src/providers/pi-mono-extension.ts
53
+ init_env_flag();
49
54
  init_openrouter_base_url();
50
55
  init_secret_scrubber();
51
56
  function apiHeaders(config) {
@@ -509,7 +514,7 @@ function createSwarmHooksExtension(config) {
509
514
  await syncIdentityFilesToServer(config);
510
515
  await syncSetupScriptToServer(config);
511
516
  const sessionFile = ctx.sessionManager.getSessionFile?.();
512
- if (!process.env.SKIP_SESSION_SUMMARY) {
517
+ if (!isSessionSummarySkipped()) {
513
518
  await summarizeSessionForPi(config, sessionFile);
514
519
  } else {
515
520
  console.debug("session_summary skipped (pi): SKIP_SESSION_SUMMARY is set");
@@ -22,7 +22,7 @@ import {
22
22
  } from "./cli-pnp2j5zg.js";
23
23
  import {
24
24
  swarmRuntimeInstanceId
25
- } from "./cli-7a91w22y.js";
25
+ } from "./cli-e8xyjvfc.js";
26
26
  import {
27
27
  detachedProcessGroup,
28
28
  registerProcessGroup,
@@ -52,7 +52,7 @@ import {
52
52
  import {
53
53
  DEFAULT_MODEL_TIER_MAP,
54
54
  init_types
55
- } from "./cli-fpmsqq59.js";
55
+ } from "./cli-nc35pxb7.js";
56
56
  import {
57
57
  runtimeCatalogModel,
58
58
  init_runtime_model_catalog
@@ -60,11 +60,12 @@ import {
60
60
  import {
61
61
  init_package,
62
62
  package_default
63
- } from "./cli-shvfedvm.js";
63
+ } from "./cli-pccfmtb5.js";
64
64
  import {
65
65
  isEnvFlagEnabled,
66
+ isSessionSummarySkipped,
66
67
  init_env_flag
67
- } from "./cli-0hyhdkdk.js";
68
+ } from "./cli-cebvbc9t.js";
68
69
  import {
69
70
  getApiKey,
70
71
  init_api_key
@@ -1693,7 +1694,7 @@ class CodexSession {
1693
1694
  });
1694
1695
  } finally {
1695
1696
  const sessionWasAborted = this.aborted || this.abortController?.signal.aborted === true || this.pendingResult?.exitCode === 130;
1696
- if (process.env.SKIP_SESSION_SUMMARY !== "1" && !sessionWasAborted) {
1697
+ if (!isSessionSummarySkipped() && !sessionWasAborted) {
1697
1698
  try {
1698
1699
  await this.summarizeAtEnd();
1699
1700
  } catch (err) {
@@ -15,17 +15,17 @@ import {
15
15
  init_secret_registry,
16
16
  upsertSwarmConfig2,
17
17
  init_db3
18
- } from "./cli-d3qqdy4c.js";
18
+ } from "./cli-p20r8w42.js";
19
19
  import {
20
20
  createRuntimeProvider,
21
21
  init_runtime_providers
22
- } from "./cli-pw7v69vp.js";
22
+ } from "./cli-625tb7aq.js";
23
23
  import {
24
24
  closeSessionTokenConnections,
25
25
  init_session_token_connections,
26
26
  insertSessionToken,
27
27
  init_users
28
- } from "./cli-nmqdc2t3.js";
28
+ } from "./cli-9fhkkpj5.js";
29
29
  import {
30
30
  RuntimeControllerCreateSchema,
31
31
  RuntimeControllerUpdateSchema,
@@ -33,7 +33,7 @@ import {
33
33
  RuntimePoolUpdateSchema,
34
34
  RuntimePoolCreateAgentSchema,
35
35
  init_types
36
- } from "./cli-fpmsqq59.js";
36
+ } from "./cli-nc35pxb7.js";
37
37
  import {
38
38
  scrubSecrets,
39
39
  registerVolatileSecret,
@@ -3,7 +3,8 @@ import {
3
3
  } from "./cli-f49w2hk5.js";
4
4
  import {
5
5
  toJSONSchema,
6
- safeParseAsync2
6
+ safeParseAsync2,
7
+ init_external
7
8
  } from "./cli-d9f7gzeq.js";
8
9
 
9
10
  // node_modules/@ai-sdk/provider/dist/index.mjs
@@ -338,6 +339,10 @@ function isJSONObject(value) {
338
339
  return value != null && typeof value === "object" && Object.entries(value).every(([key, val]) => typeof key === "string" && (val === undefined || isJSONValue(val)));
339
340
  }
340
341
 
342
+ // node_modules/zod/v4/classic/index.js
343
+ init_external();
344
+ init_external();
345
+
341
346
  // node_modules/eventsource-parser/dist/index.js
342
347
  class ParseError extends Error {
343
348
  constructor(message, options) {
@@ -4,11 +4,11 @@ import {
4
4
  getActivePricingRow2,
5
5
  insertPricingRow2,
6
6
  init_db3
7
- } from "./cli-d3qqdy4c.js";
7
+ } from "./cli-p20r8w42.js";
8
8
  import {
9
9
  loadModelsDevCache,
10
10
  buildModelsDevSeedRows
11
- } from "./cli-h93c9vb3.js";
11
+ } from "./cli-amyhm3gj.js";
12
12
  import {
13
13
  setRuntimeModelCatalog,
14
14
  init_runtime_model_catalog
@@ -4,7 +4,7 @@ import {
4
4
  import {
5
5
  normalizeOrgWebsite,
6
6
  init_org_website
7
- } from "./cli-d3qqdy4c.js";
7
+ } from "./cli-p20r8w42.js";
8
8
 
9
9
  // src/utils/lead-monitor-channels.ts
10
10
  function isLeadChannelMonitoringEnabled(env = process.env) {