@askexenow/exe-os 0.9.409 → 0.9.410

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 (400) hide show
  1. package/deploy/stack-manifests/v0.9.json +408 -1
  2. package/dist/.dist-verified.json +3 -3
  3. package/dist/{active-agent-5AKPW2N7.js → active-agent-2ELFTYNT.js} +4 -4
  4. package/dist/{active-agent-2AMJC3SC.js → active-agent-SS4SRXYZ.js} +4 -4
  5. package/dist/agent-defs-generator-6S2BSYCP.js +32 -0
  6. package/dist/{agentic-ontology-6RS7A7KP.js → agentic-ontology-TJOAUAPD.js} +1 -1
  7. package/dist/{artifact-backup-6O4FNYPS.js → artifact-backup-STQQZDZ5.js} +3 -3
  8. package/dist/{backfill-metadata-6YX6LGPJ.js → backfill-metadata-I2FVENKJ.js} +7 -7
  9. package/dist/{backup-verify-QIAQ63VC.js → backup-verify-AOTKX5DA.js} +69 -4
  10. package/dist/{behavior-injection-NRXTNROW.js → behavior-injection-CTSIKHTH.js} +10 -10
  11. package/dist/{behavior-promotion-MW7OQ72V.js → behavior-promotion-NZMTTFHK.js} +9 -9
  12. package/dist/{behaviors-7AOK44QK.js → behaviors-RUNSC5WI.js} +8 -8
  13. package/dist/bin/agentic-ontology-backfill.js +8 -8
  14. package/dist/bin/agentic-reflection-backfill.js +9 -9
  15. package/dist/bin/agentic-semantic-label.js +8 -8
  16. package/dist/bin/backfill-conversations.js +7 -7
  17. package/dist/bin/backfill-responses.js +7 -7
  18. package/dist/bin/backfill-vectors.js +7 -7
  19. package/dist/bin/bulk-sync-postgres.js +16 -16
  20. package/dist/bin/cc-doctor.js +8 -8
  21. package/dist/bin/cleanup-stale-review-tasks.js +13 -16
  22. package/dist/bin/cli.js +24 -24
  23. package/dist/bin/deferred-daemon-restart.js +95 -95
  24. package/dist/bin/exe-agent-config.js +3 -3
  25. package/dist/bin/exe-agent.js +11 -11
  26. package/dist/bin/exe-assign.js +8 -8
  27. package/dist/bin/exe-boot.js +33 -36
  28. package/dist/bin/exe-call.js +8 -8
  29. package/dist/bin/exe-cloud.js +26 -22
  30. package/dist/bin/exe-config-dump.js +3 -3
  31. package/dist/bin/exe-dispatch.js +14 -17
  32. package/dist/bin/exe-doctor.js +5 -5
  33. package/dist/bin/exe-export-behaviors.js +12 -12
  34. package/dist/bin/exe-forget.js +12 -12
  35. package/dist/bin/exe-gateway.js +9 -9
  36. package/dist/bin/exe-grant.js +6 -6
  37. package/dist/bin/exe-healthcheck.js +8 -8
  38. package/dist/bin/exe-heartbeat.js +19 -22
  39. package/dist/bin/exe-kill.js +18 -21
  40. package/dist/bin/exe-launch-agent.js +215 -100
  41. package/dist/bin/exe-mcp.js +5 -5
  42. package/dist/bin/exe-memory-reads.js +7 -7
  43. package/dist/bin/exe-new-employee.js +10 -10
  44. package/dist/bin/exe-os-mcp-proxy.js +5 -5
  45. package/dist/bin/exe-pending-messages.js +14 -17
  46. package/dist/bin/exe-pending-notifications.js +13 -16
  47. package/dist/bin/exe-pending-reviews.js +14 -17
  48. package/dist/bin/exe-rename.js +6 -6
  49. package/dist/bin/exe-review.js +17 -20
  50. package/dist/bin/exe-search.js +11 -11
  51. package/dist/bin/exe-session-cleanup.js +18 -21
  52. package/dist/bin/exe-settings.js +16 -16
  53. package/dist/bin/exe-start-codex.js +18 -18
  54. package/dist/bin/exe-start-opencode.js +16 -16
  55. package/dist/bin/exe-status.js +15 -18
  56. package/dist/bin/exe-support.js +3 -3
  57. package/dist/bin/exe-team.js +5 -5
  58. package/dist/bin/git-sweep.js +15 -17
  59. package/dist/bin/graph-backfill.js +8 -8
  60. package/dist/bin/graph-export.js +8 -8
  61. package/dist/bin/hooks-cli.js +1 -1
  62. package/dist/bin/import-history.js +11 -11
  63. package/dist/bin/install.js +97 -97
  64. package/dist/bin/intercom-check.js +5 -5
  65. package/dist/bin/mcp-sessions.js +2 -2
  66. package/dist/bin/orchestration-metrics.js +5 -5
  67. package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
  68. package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
  69. package/dist/bin/reconcile-backlog.js +2 -2
  70. package/dist/bin/registry-proxy.js +1 -1
  71. package/dist/bin/repair-document-chunks.js +7 -7
  72. package/dist/bin/scan-tasks.js +14 -17
  73. package/dist/bin/setup.js +2 -2
  74. package/dist/bin/shard-migrate.js +8 -8
  75. package/dist/bin/stack-update.js +4 -4
  76. package/dist/bin/vps-health-gate.js +1 -1
  77. package/dist/{boot-generation-HG6LLZLY.js → boot-generation-4W4CDJSX.js} +4 -4
  78. package/dist/{boot-review-sections-STZ5EAIL.js → boot-review-sections-HJN25GMU.js} +12 -15
  79. package/dist/{bug-landed-reconciler-EO72HUI2.js → bug-landed-reconciler-GGQU6G2L.js} +6 -6
  80. package/dist/build-info.json +3 -3
  81. package/dist/build-manifest.json +989 -989
  82. package/dist/{capability-cards-C3SMHB2E.js → capability-cards-EV7VHL3W.js} +3 -3
  83. package/dist/{capacity-monitor-UI553HRL.js → capacity-monitor-YO3WRSRY.js} +14 -17
  84. package/dist/{catchup-brief-VE2X4HML.js → catchup-brief-4XFFW3H2.js} +21 -23
  85. package/dist/{chunk-R7QZXQPU.js → chunk-22XJWSWN.js} +216 -147
  86. package/dist/{chunk-XGPBHKU3.js → chunk-26CY4EAR.js} +2 -2
  87. package/dist/{chunk-E2Z3F26R.js → chunk-2A556FNI.js} +1 -1
  88. package/dist/{chunk-EIM7OGTD.js → chunk-2AXJRXA6.js} +2 -2
  89. package/dist/{chunk-DE2V7547.js → chunk-2CG3LHI6.js} +2 -2
  90. package/dist/{chunk-VLAENYCN.js → chunk-2K7IKLBL.js} +1 -1
  91. package/dist/{chunk-6JLVCMKH.js → chunk-2LJ2GZEE.js} +1 -1
  92. package/dist/{chunk-7I6KVKFF.js → chunk-2OIVIPU7.js} +3 -3
  93. package/dist/{chunk-6TB7UXCA.js → chunk-2Q2U3NB2.js} +1 -1
  94. package/dist/{chunk-QUK3UDZV.js → chunk-2WOHFX4Z.js} +1 -1
  95. package/dist/{chunk-23XUZHB7.js → chunk-2YK5HP2B.js} +245 -36
  96. package/dist/{chunk-LMF2YC5C.js → chunk-2YZZR2BW.js} +4 -4
  97. package/dist/{chunk-VMHZSZQJ.js → chunk-3ARSKDHC.js} +52 -0
  98. package/dist/{chunk-IZ24HRDC.js → chunk-3UEDFBDE.js} +3 -3
  99. package/dist/{chunk-TCV3WA5I.js → chunk-3WNDI5KT.js} +1 -1
  100. package/dist/{chunk-W5XAB2SW.js → chunk-47UBJKS3.js} +271 -167
  101. package/dist/{chunk-TBYWOHTE.js → chunk-4THJIDJE.js} +1 -1
  102. package/dist/{chunk-HRYWB4TO.js → chunk-4XY33GRO.js} +2 -2
  103. package/dist/{chunk-PCFYNK7V.js → chunk-53GNYXNR.js} +2 -2
  104. package/dist/{chunk-OFT5KSBM.js → chunk-54Q7M2AG.js} +1 -1
  105. package/dist/{chunk-GG73NHZD.js → chunk-575FWHQJ.js} +2 -2
  106. package/dist/{chunk-4W7Y67B5.js → chunk-5BWN6A5E.js} +1 -1
  107. package/dist/{chunk-KBHK2WNO.js → chunk-5F3E57TQ.js} +1 -1
  108. package/dist/{chunk-4S6H2NWS.js → chunk-5JHIAGZY.js} +1 -1
  109. package/dist/{chunk-IPANAGA3.js → chunk-5Q64Q5ZD.js} +1 -1
  110. package/dist/{chunk-LVEMYNYH.js → chunk-5WNZGNQL.js} +3 -3
  111. package/dist/{chunk-HYZV25LY.js → chunk-67IVG6CB.js} +1 -11
  112. package/dist/{chunk-5N34MMKS.js → chunk-6APOLYIZ.js} +43 -3
  113. package/dist/{chunk-HFXBL7XE.js → chunk-6T5RC3L4.js} +1 -1
  114. package/dist/{chunk-HUMNRJZE.js → chunk-6TOV7UVU.js} +4 -4
  115. package/dist/{chunk-HNGAM3U4.js → chunk-7QFRZT4H.js} +3 -3
  116. package/dist/{chunk-52Z435PH.js → chunk-7RVTQXST.js} +15 -10
  117. package/dist/{chunk-SY53PYLU.js → chunk-7WCYJXOF.js} +1 -1
  118. package/dist/{chunk-IURGBN5B.js → chunk-AEEAQZ3E.js} +4 -4
  119. package/dist/{chunk-HFSFWMID.js → chunk-AEOB4JCJ.js} +3 -3
  120. package/dist/{chunk-DM4VTXM6.js → chunk-AGXV5HLA.js} +4 -4
  121. package/dist/{chunk-NDCW4G55.js → chunk-AGY2KUQ6.js} +1 -1
  122. package/dist/{chunk-6RRPVE5O.js → chunk-APKEGWFB.js} +3 -3
  123. package/dist/{chunk-FJKUFMNF.js → chunk-ASA2UJDH.js} +1 -1
  124. package/dist/{chunk-GRAMRMWS.js → chunk-AWTLUJZL.js} +2 -2
  125. package/dist/{chunk-BHDDDNC6.js → chunk-B34RSIUP.js} +2 -2
  126. package/dist/{chunk-BPBEJD7U.js → chunk-B55U5BKF.js} +1 -1
  127. package/dist/{chunk-UXJAW4IQ.js → chunk-BBTNF72N.js} +2 -2
  128. package/dist/{chunk-IPBNHPTE.js → chunk-BIHPY7JW.js} +9 -9
  129. package/dist/{chunk-SYUJCVJG.js → chunk-BPXWWD7P.js} +1 -1
  130. package/dist/{chunk-G2M7WQ2M.js → chunk-CBC3JCIF.js} +1 -1
  131. package/dist/{chunk-GKPPLIMJ.js → chunk-CEHGXPMO.js} +4 -4
  132. package/dist/{chunk-L5CPS34O.js → chunk-CKRZBQ2K.js} +1 -1
  133. package/dist/{chunk-NHQWPKX7.js → chunk-CPC75PXE.js} +2 -2
  134. package/dist/{chunk-OEHZ46WQ.js → chunk-DLHE4PCM.js} +4 -4
  135. package/dist/{chunk-RZ23QQCI.js → chunk-DWK5HEKY.js} +4 -4
  136. package/dist/{chunk-YUAOQJVV.js → chunk-E2346GKI.js} +2 -2
  137. package/dist/{chunk-VYKXRSHU.js → chunk-E3ZO4EL3.js} +1 -1
  138. package/dist/{chunk-GTRB6DGI.js → chunk-FCX2XHIC.js} +2 -2
  139. package/dist/{chunk-K7DAE2HO.js → chunk-FOZSHNET.js} +19 -6
  140. package/dist/{chunk-7P2TDFZL.js → chunk-FRJICRED.js} +1 -1
  141. package/dist/{chunk-XCPD7NGP.js → chunk-FUEKSCTN.js} +1 -1
  142. package/dist/{chunk-B3ISLIKE.js → chunk-FYKEL2L6.js} +2 -2
  143. package/dist/{chunk-SFGFNJBR.js → chunk-FZT7CBXB.js} +1 -1
  144. package/dist/{chunk-NFNM64A7.js → chunk-GGT6Y5AN.js} +22 -18
  145. package/dist/{chunk-Q4GS5VW7.js → chunk-H5H2LGVE.js} +3 -3
  146. package/dist/{chunk-GEQQGN3J.js → chunk-HCBISGUU.js} +7 -7
  147. package/dist/{chunk-FZT4VQP7.js → chunk-HKAWEIB2.js} +1 -1
  148. package/dist/{chunk-QK3Z4TKQ.js → chunk-HLNRLXUS.js} +5 -5
  149. package/dist/{chunk-FBZ32BD4.js → chunk-HNJLAMD3.js} +1 -1
  150. package/dist/{chunk-6EY6OFBC.js → chunk-I35OMCL3.js} +2 -2
  151. package/dist/{chunk-OISOA6NX.js → chunk-IHBYJG7N.js} +1 -1
  152. package/dist/{chunk-KIJRAZWR.js → chunk-IQCC6WFI.js} +1 -1
  153. package/dist/{chunk-EHILXBVT.js → chunk-IUAW7FVX.js} +3 -3
  154. package/dist/{chunk-OE7TAEOG.js → chunk-IXRYS5X3.js} +1 -1
  155. package/dist/{chunk-4Q7H3TO7.js → chunk-J6RTX7XT.js} +1 -1
  156. package/dist/{chunk-BIV4IHED.js → chunk-JDZNGC4O.js} +15 -28
  157. package/dist/{chunk-JJYAETCO.js → chunk-JTXXLNYD.js} +4 -4
  158. package/dist/{chunk-YVS77JPW.js → chunk-JZ23D5YF.js} +3 -3
  159. package/dist/{chunk-QYIR64RR.js → chunk-K464YYT5.js} +1 -1
  160. package/dist/{chunk-BM467PZN.js → chunk-K6XWIJN7.js} +1 -1
  161. package/dist/{chunk-DIKLSAJE.js → chunk-KNEEOZWN.js} +1 -1
  162. package/dist/{chunk-3MDUKF3N.js → chunk-LBEBSXZA.js} +5 -4
  163. package/dist/{chunk-NK4JHJNP.js → chunk-LCXWQVOD.js} +4 -4
  164. package/dist/{chunk-3AL2LO3L.js → chunk-LZS2B2JT.js} +1 -1
  165. package/dist/{chunk-W2VDJKTB.js → chunk-MNWN3SQ3.js} +1 -1
  166. package/dist/{chunk-ZEHBSA25.js → chunk-MQD3JJCO.js} +1 -1
  167. package/dist/{chunk-KPLMY2GT.js → chunk-NUEDA2US.js} +4 -4
  168. package/dist/{chunk-F5ZRHLG5.js → chunk-NYV4A5IG.js} +2 -2
  169. package/dist/{chunk-M7774YLB.js → chunk-O5RKAXCG.js} +1 -1
  170. package/dist/{chunk-GPWXUU3L.js → chunk-OUUNFTS4.js} +1 -1
  171. package/dist/{chunk-G3ZYXXO7.js → chunk-PCF4QMJS.js} +10 -10
  172. package/dist/{chunk-HRKN3DQE.js → chunk-PONGX3YG.js} +7 -7
  173. package/dist/{chunk-JR3GTBV3.js → chunk-QH2V67NX.js} +1 -1
  174. package/dist/{chunk-4O7OUBEX.js → chunk-QKHQTHE6.js} +27 -15
  175. package/dist/{chunk-4M24XCTI.js → chunk-R2ZHPVF2.js} +53 -7
  176. package/dist/{chunk-HK7HIDXP.js → chunk-R3N5BCMM.js} +1 -1
  177. package/dist/{chunk-IUBCS6TA.js → chunk-RWM6TZH6.js} +3 -3
  178. package/dist/{chunk-N3JEYUDV.js → chunk-RXICR3D7.js} +1 -1
  179. package/dist/{chunk-QPMKVSHU.js → chunk-S2DTXCV6.js} +2 -2
  180. package/dist/{chunk-YLWKWEJJ.js → chunk-SLG3T26A.js} +3 -3
  181. package/dist/{chunk-7R7KDRKV.js → chunk-SUGAHHVR.js} +1 -1
  182. package/dist/{chunk-SGR4ZQAV.js → chunk-T7W75LII.js} +3 -3
  183. package/dist/{agent-defs-generator-QN3J6FVJ.js → chunk-TU5Y5ZNC.js} +4 -21
  184. package/dist/{chunk-LE3DIA25.js → chunk-UBTKHJCB.js} +6 -6
  185. package/dist/{chunk-ZYOIH5NY.js → chunk-UF5BDAF6.js} +6 -6
  186. package/dist/{chunk-4RQ62XXK.js → chunk-UG3YOQAC.js} +5 -5
  187. package/dist/{chunk-7LTAA55U.js → chunk-V7AID6MC.js} +1 -1
  188. package/dist/{chunk-SA66WRBT.js → chunk-WLV27PAO.js} +1 -1
  189. package/dist/{chunk-XAGIZVYI.js → chunk-WSYIQKZ6.js} +180 -1624
  190. package/dist/{chunk-KCRSJ3VU.js → chunk-WZPD4QSE.js} +2 -2
  191. package/dist/{chunk-APVU4Q5B.js → chunk-X2EBM5BQ.js} +16 -16
  192. package/dist/{chunk-XFGS22VE.js → chunk-XBCIRNNU.js} +1 -1
  193. package/dist/{chunk-M4N7I2H5.js → chunk-XC2KAJK4.js} +5 -5
  194. package/dist/{chunk-WYNIWJRN.js → chunk-XCKTCOK3.js} +5 -5
  195. package/dist/{chunk-PZDAPIQL.js → chunk-XJQGS4IM.js} +1 -1
  196. package/dist/{chunk-DACRR362.js → chunk-XMMWBLQK.js} +6 -6
  197. package/dist/{chunk-T2PAFWRK.js → chunk-YC6SZFVD.js} +5 -5
  198. package/dist/{chunk-6ZW6BRI4.js → chunk-YJ7MCZSY.js} +2 -2
  199. package/dist/{chunk-DMYJVGQM.js → chunk-YSDSQRE2.js} +1 -1
  200. package/dist/{chunk-R6CKQLEA.js → chunk-YWZGDFAL.js} +1 -1
  201. package/dist/{chunk-C426MZMD.js → chunk-ZBXZFOIF.js} +3 -3
  202. package/dist/{chunk-ME733Y2F.js → chunk-ZEDLED43.js} +37 -9
  203. package/dist/{cleanup-graph-garbage-NKAJSCWZ.js → cleanup-graph-garbage-N7FTWU6C.js} +8 -8
  204. package/dist/{cli-shutdown-F3DFDCB5.js → cli-shutdown-NCBQTN7G.js} +1 -1
  205. package/dist/{cloud-sync-command-3YBLSMAL.js → cloud-sync-command-UL7GNN3J.js} +2 -2
  206. package/dist/{cloud-sync-db-init-JWSPAFKY.js → cloud-sync-db-init-ASM7ZXBH.js} +1 -1
  207. package/dist/{cloud-sync-shutdown-4R6RIO67.js → cloud-sync-shutdown-HER4ISBU.js} +3 -3
  208. package/dist/{co-activation-2ZRANV3Q.js → co-activation-V5XXR327.js} +3 -3
  209. package/dist/{co-occurrence-6EELW2L2.js → co-occurrence-MKZ6YWSQ.js} +6 -6
  210. package/dist/{consent-passphrase-TDR263MC.js → consent-passphrase-YI3J4UEL.js} +2 -2
  211. package/dist/content-extractor-GWF2T7FK.js +13 -0
  212. package/dist/{conversation-entity-extractor-KUJN3MOH.js → conversation-entity-extractor-66G7ROQ3.js} +3 -3
  213. package/dist/{crdt-sync-IX43KVQ3.js → crdt-sync-Z62SWOKD.js} +4 -4
  214. package/dist/{crm-webhook-GSCIW6CE.js → crm-webhook-6GBACWJX.js} +2 -2
  215. package/dist/{cto-delegation-gate-ZWD4EFRR.js → cto-delegation-gate-FUKPBFCM.js} +12 -15
  216. package/dist/{daemon-orchestration-WL6V4QL4.js → daemon-orchestration-O3QPSJEP.js} +19 -21
  217. package/dist/{doc-graph-extractor-NJ7ZZC2C.js → doc-graph-extractor-BBPKLIVM.js} +6 -6
  218. package/dist/{documents-O7WYZFFE.js → documents-NILTWYSQ.js} +8 -8
  219. package/dist/{dreaming-TUESPDT3.js → dreaming-KMDGPIFY.js} +17 -20
  220. package/dist/{employee-boot-brief-UCP6QLN4.js → employee-boot-brief-KSH3MWIF.js} +23 -25
  221. package/dist/{entity-boost-TK43XT24.js → entity-boost-XETN7C2S.js} +2 -2
  222. package/dist/{exe-drift-QD6LUZT2.js → exe-drift-SFD7SHXC.js} +4 -4
  223. package/dist/{exe-export-QIUNHFSS.js → exe-export-NHWKEZL4.js} +9 -9
  224. package/dist/{exe-import-3UFOLHEW.js → exe-import-SPI5HJBU.js} +9 -9
  225. package/dist/{exe-key-D5NDKGHT.js → exe-key-TY5LFUEM.js} +95 -95
  226. package/dist/{exe-org-UWDJBOCV.js → exe-org-LVQLXA7C.js} +32 -32
  227. package/dist/{exe-snapshot-P6SFODEN.js → exe-snapshot-WH2DSRZW.js} +20 -23
  228. package/dist/{fast-db-init-SD7JZSEC.js → fast-db-init-UN225WS7.js} +1 -1
  229. package/dist/{founder-context-QIXDZIJX.js → founder-context-DVHSVBM5.js} +2 -2
  230. package/dist/{founder-monitor-envelope-TLOC4UYG.js → founder-monitor-envelope-HMPPUBUT.js} +4 -4
  231. package/dist/gateway/index.js +14 -14
  232. package/dist/{gateway-client-CQTSYJLP.js → gateway-client-TXHCHOVM.js} +1 -1
  233. package/dist/{git-staleness-JSQTHB4Z.js → git-staleness-CUVLXQOJ.js} +3 -3
  234. package/dist/{global-procedures-T3RKI4QX.js → global-procedures-T5W3S6OU.js} +5 -5
  235. package/dist/{graph-auto-extract-V75GSTNX.js → graph-auto-extract-S7OIZXYP.js} +6 -6
  236. package/dist/{graph-query-VAQN2RK3.js → graph-query-CRIH4DXF.js} +1 -1
  237. package/dist/{graph-rag-GBA5E3QC.js → graph-rag-LH34CEGC.js} +3 -3
  238. package/dist/{hook-integrity-II6QK6Y4.js → hook-integrity-TSJYZFZ6.js} +1 -1
  239. package/dist/{hook-prefetch-5EHPOYY3.js → hook-prefetch-SNW5DFCZ.js} +13 -16
  240. package/dist/hooks/bug-report-worker.js +17 -20
  241. package/dist/hooks/codex-stop-task-finalizer.js +19 -22
  242. package/dist/hooks/commit-complete.js +16 -19
  243. package/dist/hooks/error-recall.js +14 -14
  244. package/dist/hooks/exe-heartbeat-hook.js +5 -5
  245. package/dist/hooks/ingest-worker.js +18 -20
  246. package/dist/hooks/ingest.js +16 -16
  247. package/dist/hooks/instructions-loaded.js +7 -7
  248. package/dist/hooks/manifest.json +20 -20
  249. package/dist/hooks/notification.js +6 -6
  250. package/dist/hooks/post-compact.js +5 -5
  251. package/dist/hooks/post-tool-combined.js +13 -13
  252. package/dist/hooks/pre-compact.js +16 -19
  253. package/dist/hooks/pre-tool-use.js +2 -2
  254. package/dist/hooks/prompt-submit.js +40 -39
  255. package/dist/hooks/session-end.js +21 -24
  256. package/dist/hooks/session-start.js +18 -18
  257. package/dist/hooks/stop.js +19 -22
  258. package/dist/hooks/subagent-stop.js +18 -21
  259. package/dist/hooks/summary-worker.js +20 -23
  260. package/dist/index.js +25 -28
  261. package/dist/{installer-XEEZSF3V.js → installer-4IVP2PTX.js} +7 -8
  262. package/dist/{installer-ILYC4LI5.js → installer-CJWNUASI.js} +7 -8
  263. package/dist/{installer-MPVQ5L22.js → installer-UFRZHMX5.js} +7 -8
  264. package/dist/{intercom-queue-QGHAW2KO.js → intercom-queue-II6RRK3J.js} +12 -15
  265. package/dist/lib/cloud-sync.js +16 -16
  266. package/dist/lib/consolidation.js +9 -9
  267. package/dist/lib/crypto.js +3 -3
  268. package/dist/lib/database.js +3 -3
  269. package/dist/lib/db-backup.js +1 -1
  270. package/dist/lib/db-write-worker.js +3 -3
  271. package/dist/lib/db.js +3 -3
  272. package/dist/lib/device-registry.js +1 -1
  273. package/dist/lib/employee-templates.js +6 -6
  274. package/dist/lib/employees.js +3 -3
  275. package/dist/lib/error-detector.js +2 -2
  276. package/dist/lib/exe-daemon.js +83 -86
  277. package/dist/lib/hybrid-search.js +11 -11
  278. package/dist/lib/identity.js +5 -3
  279. package/dist/lib/keychain.js +1 -1
  280. package/dist/lib/license.js +2 -2
  281. package/dist/lib/messaging.js +13 -16
  282. package/dist/lib/post-tool-memory.js +16 -18
  283. package/dist/lib/registry-proxy.js +1 -1
  284. package/dist/lib/reminders.js +4 -4
  285. package/dist/lib/schedules.js +8 -8
  286. package/dist/lib/session-registry.js +5 -5
  287. package/dist/lib/skill-learning.js +9 -9
  288. package/dist/lib/store.js +7 -7
  289. package/dist/lib/task-router.js +4 -4
  290. package/dist/lib/tasks.js +14 -17
  291. package/dist/lib/tmux-routing.js +14 -41
  292. package/dist/lib/token-spend.js +4 -4
  293. package/dist/lib/ws-client.js +1 -1
  294. package/dist/{license-gate-CARN6AB6.js → license-gate-M7EDJLAA.js} +3 -3
  295. package/dist/{license-recheck-7Z3LS6YS.js → license-recheck-DLTOHAH2.js} +1 -1
  296. package/dist/{license-sync-PUQV3HSZ.js → license-sync-YTDCUN3S.js} +2 -2
  297. package/dist/mcp/register-tools.js +94 -94
  298. package/dist/mcp/server.js +97 -97
  299. package/dist/mcp/tools/complete-reminder.js +5 -5
  300. package/dist/mcp/tools/create-reminder.js +5 -5
  301. package/dist/mcp/tools/create-task.js +16 -19
  302. package/dist/mcp/tools/deactivate-behavior.js +10 -10
  303. package/dist/mcp/tools/list-reminders.js +5 -5
  304. package/dist/mcp/tools/list-tasks.js +16 -19
  305. package/dist/mcp/tools/send-message.js +15 -18
  306. package/dist/mcp/tools/update-task.js +15 -18
  307. package/dist/{mcp-http-config-RJKTZPHZ.js → mcp-http-config-652YK3CI.js} +5 -5
  308. package/dist/{mcp-session-identity-HN444A3G.js → mcp-session-identity-6QGXD52Y.js} +12 -15
  309. package/dist/{memory-cards-AT3QCCWU.js → memory-cards-FOPSLULE.js} +8 -8
  310. package/dist/{memory-graph-extractor-B43UWGV5.js → memory-graph-extractor-7G3CIGN7.js} +7 -7
  311. package/dist/{memory-maintenance-WDLL3ZX3.js → memory-maintenance-5XIGUPYL.js} +1 -1
  312. package/dist/{memory-poisoning-defense-TS4WNW4S.js → memory-poisoning-defense-MI7Y5XBP.js} +3 -3
  313. package/dist/{memory-pressure-watchdog-6YH7S6W7.js → memory-pressure-watchdog-SPIDPGU2.js} +13 -16
  314. package/dist/{memory-reflection-N6NSYW6S.js → memory-reflection-DVAT4QKS.js} +8 -8
  315. package/dist/{memory-write-repository-D35RDO62.js → memory-write-repository-YC7HJTV5.js} +1 -1
  316. package/dist/{monitor-grants-FH4PNYN5.js → monitor-grants-3A77O6XK.js} +3 -3
  317. package/dist/{monitor-identity-LK5ZCCND.js → monitor-identity-BTFFMFEX.js} +2 -2
  318. package/dist/{notification-ledger-3WJYJGGS.js → notification-ledger-AV5242RM.js} +13 -16
  319. package/dist/{notifications-T5C2CVB3.js → notifications-75FVPJLY.js} +12 -15
  320. package/dist/{orchestration-events-73VEJT7Q.js → orchestration-events-ARGZU6KS.js} +4 -4
  321. package/dist/{orchestrator-3O657734.js → orchestrator-TCXZMLSB.js} +14 -17
  322. package/dist/{org-brief-session-EGB35QLM.js → org-brief-session-B455POUI.js} +15 -15
  323. package/dist/{org-consent-policy-MSVSRI53.js → org-consent-policy-7K5H6FOB.js} +5 -5
  324. package/dist/{org-join-4BK2XJJI.js → org-join-ETR5KO27.js} +9 -9
  325. package/dist/{org-key-admin-EUSSGXQ3.js → org-key-admin-IRC6H3TL.js} +11 -11
  326. package/dist/{org-key-epoch-NMEWDT5L.js → org-key-epoch-EG4YQ47A.js} +5 -5
  327. package/dist/{org-key-pin-HUSXGINB.js → org-key-pin-GLQEU3P3.js} +3 -3
  328. package/dist/{org-membership-B74IWEM5.js → org-membership-JC5YVU6N.js} +4 -4
  329. package/dist/{org-partner-config-5FJTJABN.js → org-partner-config-QFSVGHEA.js} +8 -8
  330. package/dist/{org-partner-runtime-GN4GFWI2.js → org-partner-runtime-7AD7WY3Y.js} +15 -15
  331. package/dist/{org-row-visibility-PBZ2TSCR.js → org-row-visibility-AXZKVOA6.js} +1 -1
  332. package/dist/{pipeline-router-2IELBSVJ.js → pipeline-router-2KY4X6PO.js} +4 -4
  333. package/dist/{plan-limits-4GXK5PFT.js → plan-limits-PG6HG2DT.js} +6 -6
  334. package/dist/{pre-tool-use-impl-CY73PRJP.js → pre-tool-use-impl-45B4NFIF.js} +34 -32
  335. package/dist/{project-name-337ERIAX.js → project-name-LHYHR4VN.js} +4 -4
  336. package/dist/{projection-worker-W476IG6V.js → projection-worker-POT2AOR5.js} +2 -2
  337. package/dist/{prospective-memory-5INB7NUL.js → prospective-memory-ECXSAEAW.js} +3 -3
  338. package/dist/{push-notifications-YVOP4KGN.js → push-notifications-W3UNHDC5.js} +13 -16
  339. package/dist/{reproject-worktree-memories-OGBR3CMO.js → reproject-worktree-memories-PIXMJBHG.js} +12 -15
  340. package/dist/{reranker-W7WCJH6Y.js → reranker-ZBPYIRBB.js} +1 -1
  341. package/dist/{retrieval-health-R6MGXLTP.js → retrieval-health-42MFLOEP.js} +1 -1
  342. package/dist/{review-polling-TKAWVY6G.js → review-polling-V4CSK4TZ.js} +13 -16
  343. package/dist/runtime/index.js +16 -19
  344. package/dist/{session-events-HUCZ7TOR.js → session-events-C3NUY6MR.js} +13 -16
  345. package/dist/{session-kill-telemetry-RWRWOW4C.js → session-kill-telemetry-ZOSAIYU2.js} +13 -16
  346. package/dist/{session-scope-5CDRHV75.js → session-scope-BZALGKYZ.js} +12 -15
  347. package/dist/{setup-wizard-RBTJAZOP.js → setup-wizard-DNA2UT4J.js} +2 -2
  348. package/dist/{shard-manager-LRPAAQA4.js → shard-manager-NG4SXV7L.js} +2 -2
  349. package/dist/{skill-refinement-MDXKDCY6.js → skill-refinement-Y3M7XBRE.js} +4 -4
  350. package/dist/{skill-retrieval-OWY6MTCX.js → skill-retrieval-XDY352AS.js} +11 -11
  351. package/dist/{skill-usage-GNV737U5.js → skill-usage-QOLIJQJC.js} +4 -4
  352. package/dist/{stack-generate-manifest-S4SBLKBY.js → stack-generate-manifest-VFHCOLAD.js} +4 -4
  353. package/dist/{stack-promote-U4EZNLOV.js → stack-promote-24BY6AXF.js} +4 -4
  354. package/dist/{stack-release-4VBGOYGK.js → stack-release-AXH7ZIOR.js} +5 -5
  355. package/dist/{stack-update-C5YKHE7A.js → stack-update-7ET7S3ED.js} +3 -3
  356. package/dist/{steward-gate-QFPXQBUZ.js → steward-gate-2MUESY3V.js} +4 -4
  357. package/dist/{subagent-brief-injection-GDXO5WNS.js → subagent-brief-injection-6PM3WMMR.js} +25 -27
  358. package/dist/{support-bug-actions-4XEKXIIO.js → support-bug-actions-WWKDXT74.js} +3 -3
  359. package/dist/{support-inbox-Y7AFCOGM.js → support-inbox-AN44HIOG.js} +12 -12
  360. package/dist/{task-enforcement-CN3Q4PEH.js → task-enforcement-QO7RXYK2.js} +13 -16
  361. package/dist/{task-request-inbox-AY3C6DND.js → task-request-inbox-RXAT2QJF.js} +5 -5
  362. package/dist/{task-scope-AMR3Z3DJ.js → task-scope-4EKZBTTM.js} +12 -15
  363. package/dist/{tasks-crud-2GHKIZOM.js → tasks-crud-MB7WXGPW.js} +14 -15
  364. package/dist/{tasks-notify-Z53446KM.js → tasks-notify-BCWO7AP6.js} +13 -16
  365. package/dist/{tasks-review-APRNSHMQ.js → tasks-review-HXHYA76X.js} +12 -15
  366. package/dist/{telemetry-upload-5XR42SQN.js → telemetry-upload-Q7DLE5I3.js} +8 -8
  367. package/dist/{token-budget-TTNJXI7W.js → token-budget-EL6BEBDP.js} +4 -4
  368. package/dist/{tool-telemetry-36ST422N.js → tool-telemetry-SNWF4WDH.js} +1 -1
  369. package/dist/tui/App.js +22 -25
  370. package/dist/{tui-data-AP5TPUOQ.js → tui-data-ZMSBEPJT.js} +16 -19
  371. package/dist/{update-support-SFTI2PUD.js → update-support-QY7WALUZ.js} +11 -11
  372. package/dist/{whatsapp-5CXE3JHG.js → whatsapp-NCZ43BB3.js} +2 -2
  373. package/dist/{wiki-acl-N754BC2W.js → wiki-acl-3L7BRJUV.js} +1 -1
  374. package/dist/{work-claims-OAICQBWO.js → work-claims-XQXT2VWJ.js} +4 -4
  375. package/dist/{work-state-heartbeat-MTTUGMPU.js → work-state-heartbeat-GAIQ7M73.js} +1 -1
  376. package/dist/{workflow-engine-RID3QL2U.js → workflow-engine-FCOOI5M6.js} +2 -2
  377. package/dist/{worktree-XWVNDBRD.js → worktree-GS4ODQ4C.js} +5 -5
  378. package/dist/{worktree-sweep-6VEHGH7U.js → worktree-sweep-6LMC7H5Y.js} +6 -6
  379. package/package.json +1 -1
  380. package/release-notes.json +27 -9
  381. package/stack.release.json +3 -3
  382. package/dist/chunk-ESO5JDOT.js +0 -70
  383. package/dist/content-extractor-OVD7PTSN.js +0 -9
  384. /package/dist/{chunk-EZQ4W3WW.js → chunk-7ZP2PAW3.js} +0 -0
  385. /package/dist/{chunk-YBB43SXC.js → chunk-AC36VWNB.js} +0 -0
  386. /package/dist/{chunk-YG4DZZ6J.js → chunk-CS4SHHLY.js} +0 -0
  387. /package/dist/{chunk-33PG3KNY.js → chunk-FDQXQBBC.js} +0 -0
  388. /package/dist/{chunk-OLMLA377.js → chunk-IKJUZ3VO.js} +0 -0
  389. /package/dist/{chunk-FUZHMV7K.js → chunk-JXGOO53U.js} +0 -0
  390. /package/dist/{chunk-WIDOLS7T.js → chunk-LAWI42NC.js} +0 -0
  391. /package/dist/{chunk-PKM456D2.js → chunk-LK6OG47X.js} +0 -0
  392. /package/dist/{chunk-FLO24BNN.js → chunk-R6H2IRCF.js} +0 -0
  393. /package/dist/{chunk-64UAHPXA.js → chunk-UQKGV6SX.js} +0 -0
  394. /package/dist/{chunk-CLV7ALXV.js → chunk-XDWIJBTY.js} +0 -0
  395. /package/dist/{chunk-LDHJX4TZ.js → chunk-XJDSTA2C.js} +0 -0
  396. /package/dist/{chunk-OEEHLATI.js → chunk-ZQS4S4AX.js} +0 -0
  397. /package/dist/{core-memory-WR7I7DIP.js → core-memory-3TZV3ZDW.js} +0 -0
  398. /package/dist/{memory-isolation-4RQJ5RCK.js → memory-isolation-TE4AOMQX.js} +0 -0
  399. /package/dist/{oauth-server-VBDMZIEV.js → oauth-server-CWQ6EBGQ.js} +0 -0
  400. /package/dist/{project-boot-G7T5WHO6.js → project-boot-MX2FNKTJ.js} +0 -0
@@ -2,10 +2,10 @@ import {
2
2
  exportOrchestration,
3
3
  importOrchestration,
4
4
  validatePackage
5
- } from "./chunk-HRYWB4TO.js";
5
+ } from "./chunk-4XY33GRO.js";
6
6
  import {
7
7
  runDriftProbes
8
- } from "./chunk-IPANAGA3.js";
8
+ } from "./chunk-5Q64Q5ZD.js";
9
9
  import {
10
10
  candidateAdminOrgIds,
11
11
  departOrgToPersonalFreeTier,
@@ -13,7 +13,7 @@ import {
13
13
  orgAdminScopePresent,
14
14
  recordOrgAdminship,
15
15
  resolveTargetOrgId
16
- } from "./chunk-JJYAETCO.js";
16
+ } from "./chunk-JTXXLNYD.js";
17
17
  import {
18
18
  registerAddBugReportComment,
19
19
  registerGetBugReport,
@@ -29,7 +29,7 @@ import {
29
29
  registerUpdateBugReport,
30
30
  resolveAttribution,
31
31
  verificationArtifactInputSchema
32
- } from "./chunk-4M24XCTI.js";
32
+ } from "./chunk-R2ZHPVF2.js";
33
33
  import {
34
34
  persistSupportArtifact,
35
35
  supportClusterClearableSchema,
@@ -39,7 +39,7 @@ import {
39
39
  supportProductSchema,
40
40
  supportTaskIdSchema,
41
41
  supportVersionSchema
42
- } from "./chunk-HK7HIDXP.js";
42
+ } from "./chunk-R3N5BCMM.js";
43
43
  import {
44
44
  BugCensusError,
45
45
  fetchBugCensus,
@@ -58,13 +58,13 @@ import {
58
58
  normalizeTarget,
59
59
  releaseClaim,
60
60
  resolveHolderSession
61
- } from "./chunk-B3ISLIKE.js";
61
+ } from "./chunk-FYKEL2L6.js";
62
62
  import {
63
63
  StewardGate
64
- } from "./chunk-FZT4VQP7.js";
64
+ } from "./chunk-HKAWEIB2.js";
65
65
  import {
66
66
  promotedRulesDropped
67
- } from "./chunk-6EY6OFBC.js";
67
+ } from "./chunk-I35OMCL3.js";
68
68
  import {
69
69
  DEFAULT_LIST_LIMIT,
70
70
  MAX_IMPORTANCE,
@@ -73,29 +73,26 @@ import {
73
73
  ingestDocument,
74
74
  listDocumentsByWorkspace,
75
75
  updateChunksImportance
76
- } from "./chunk-ZYOIH5NY.js";
76
+ } from "./chunk-UF5BDAF6.js";
77
77
  import {
78
78
  DreamingEngine
79
- } from "./chunk-LMF2YC5C.js";
79
+ } from "./chunk-2YZZR2BW.js";
80
80
  import {
81
81
  isRerankerAvailable,
82
82
  rerankWithScores
83
- } from "./chunk-FLO24BNN.js";
83
+ } from "./chunk-R6H2IRCF.js";
84
84
  import {
85
85
  listRecentSessionEvents
86
- } from "./chunk-GRAMRMWS.js";
86
+ } from "./chunk-AWTLUJZL.js";
87
87
  import {
88
88
  AUTO_WAKE_MAX_RETRIES
89
- } from "./chunk-G3ZYXXO7.js";
89
+ } from "./chunk-PCF4QMJS.js";
90
90
  import {
91
91
  DEFAULT_EXPLORE_DURATION_MS,
92
92
  getPlayMode,
93
93
  listExploreSessions,
94
94
  setPlayMode
95
- } from "./chunk-KPLMY2GT.js";
96
- import {
97
- getToolUsageStats
98
- } from "./chunk-YBB43SXC.js";
95
+ } from "./chunk-NUEDA2US.js";
99
96
  import {
100
97
  getToolCapabilityIndex
101
98
  } from "./chunk-KDTM7TD6.js";
@@ -116,11 +113,14 @@ import {
116
113
  import {
117
114
  getCachedLicenseGate,
118
115
  refreshLicenseGate
119
- } from "./chunk-7P2TDFZL.js";
116
+ } from "./chunk-FRJICRED.js";
117
+ import {
118
+ getToolUsageStats
119
+ } from "./chunk-AC36VWNB.js";
120
120
  import {
121
121
  assertOrgPartnerRuntimeReady,
122
122
  orgPartnerRuntimeStatus
123
- } from "./chunk-7I6KVKFF.js";
123
+ } from "./chunk-2OIVIPU7.js";
124
124
  import {
125
125
  createMailboxInboxPoller,
126
126
  getMailboxInboxState
@@ -131,30 +131,30 @@ import {
131
131
  listSentBriefs,
132
132
  reviewOpenDraft,
133
133
  sendOpenDraft
134
- } from "./chunk-YLWKWEJJ.js";
134
+ } from "./chunk-SLG3T26A.js";
135
135
  import {
136
136
  OrgAdminError,
137
137
  createOrg,
138
138
  issueSeatInvite
139
- } from "./chunk-NK4JHJNP.js";
139
+ } from "./chunk-LCXWQVOD.js";
140
140
  import {
141
141
  deriveOrgKeyIdentities
142
- } from "./chunk-6RRPVE5O.js";
142
+ } from "./chunk-APKEGWFB.js";
143
143
  import {
144
144
  MemberKeyAlreadyBoundError,
145
145
  MemberKeyError,
146
146
  bindMemberKey,
147
147
  getMemberKeyStatus
148
- } from "./chunk-IZ24HRDC.js";
149
- import {
150
- InviteError,
151
- completeOrgJoin,
152
- fetchInviteOffer
153
- } from "./chunk-M4N7I2H5.js";
148
+ } from "./chunk-3UEDFBDE.js";
154
149
  import {
155
150
  loadOrchestrationPhase,
156
151
  setOrchestrationPhase
157
152
  } from "./chunk-XHU3KOKJ.js";
153
+ import {
154
+ InviteError,
155
+ completeOrgJoin,
156
+ fetchInviteOffer
157
+ } from "./chunk-XC2KAJK4.js";
158
158
  import {
159
159
  adminInviteDisclosureText,
160
160
  memberJoinBenefitText,
@@ -164,12 +164,15 @@ import {
164
164
  requireOrgPartnerBinding,
165
165
  resolveOrgPartnerBindings,
166
166
  resolvePartnerIdentities
167
- } from "./chunk-WYNIWJRN.js";
167
+ } from "./chunk-XCKTCOK3.js";
168
168
  import {
169
169
  ORG_KEY_FP_DISPLAY_LEN,
170
170
  orgKeyPinConfirmation,
171
171
  readOrgKeyPin
172
- } from "./chunk-XFGS22VE.js";
172
+ } from "./chunk-XBCIRNNU.js";
173
+ import {
174
+ generateAgentDefs
175
+ } from "./chunk-TU5Y5ZNC.js";
173
176
  import {
174
177
  getEntityByName,
175
178
  getEntityNeighbors,
@@ -177,10 +180,10 @@ import {
177
180
  getHotEntities,
178
181
  getRelationships,
179
182
  searchEntities
180
- } from "./chunk-YG4DZZ6J.js";
183
+ } from "./chunk-CS4SHHLY.js";
181
184
  import {
182
185
  createOrRefreshResumeTask
183
- } from "./chunk-QK3Z4TKQ.js";
186
+ } from "./chunk-HLNRLXUS.js";
184
187
  import {
185
188
  PAYLOAD_CAPS,
186
189
  STRUCTURED_BRIEF_TYPES,
@@ -203,10 +206,10 @@ import {
203
206
  setAutoAcceptPolicy,
204
207
  setAutoSendPolicy,
205
208
  withExclusiveLock
206
- } from "./chunk-DACRR362.js";
209
+ } from "./chunk-XMMWBLQK.js";
207
210
  import {
208
211
  displayFingerprint
209
- } from "./chunk-GPWXUU3L.js";
212
+ } from "./chunk-OUUNFTS4.js";
210
213
  import {
211
214
  flushMailboxOutbox,
212
215
  getMailboxOutboxStatus,
@@ -216,65 +219,65 @@ import {
216
219
  } from "./chunk-3FGBBJYM.js";
217
220
  import {
218
221
  registerDeactivateBehavior
219
- } from "./chunk-IURGBN5B.js";
222
+ } from "./chunk-AEEAQZ3E.js";
220
223
  import {
221
224
  registerSendMessage,
222
225
  resolveMessageTarget
223
- } from "./chunk-HUMNRJZE.js";
226
+ } from "./chunk-6TOV7UVU.js";
224
227
  import {
225
- isTmuxDispatchAllowed,
226
228
  registerCreateTask,
227
- resolveProjectDir,
228
- tmuxDispatchRefusal
229
- } from "./chunk-BIV4IHED.js";
229
+ resolveProjectDir
230
+ } from "./chunk-JDZNGC4O.js";
230
231
  import {
231
232
  registerListTasks
232
- } from "./chunk-C426MZMD.js";
233
+ } from "./chunk-ZBXZFOIF.js";
233
234
  import {
234
235
  registerUpdateTask
235
- } from "./chunk-DM4VTXM6.js";
236
+ } from "./chunk-AGXV5HLA.js";
236
237
  import {
237
238
  registerCreateReminder
238
- } from "./chunk-SYUJCVJG.js";
239
+ } from "./chunk-BPXWWD7P.js";
239
240
  import {
240
241
  registerListReminders
241
- } from "./chunk-E2Z3F26R.js";
242
+ } from "./chunk-2A556FNI.js";
242
243
  import {
243
244
  registerCompleteReminder
244
- } from "./chunk-4W7Y67B5.js";
245
+ } from "./chunk-5BWN6A5E.js";
245
246
  import {
246
247
  completeReminder,
247
248
  createReminder,
248
249
  formatAmbiguousReminder,
249
250
  listReminders
250
- } from "./chunk-W2VDJKTB.js";
251
+ } from "./chunk-MNWN3SQ3.js";
251
252
  import {
252
253
  registerImportConversations
253
- } from "./chunk-HNGAM3U4.js";
254
+ } from "./chunk-7QFRZT4H.js";
254
255
  import {
255
256
  TOKENS_PER_IDLE_MINUTE,
256
257
  countKillsSince,
257
258
  sumTokensSavedSince
258
- } from "./chunk-HFSFWMID.js";
259
+ } from "./chunk-AEOB4JCJ.js";
259
260
  import {
260
261
  createSchedule,
261
262
  parseHumanCron
262
- } from "./chunk-UXJAW4IQ.js";
263
+ } from "./chunk-BBTNF72N.js";
263
264
  import {
264
265
  status
265
- } from "./chunk-RZ23QQCI.js";
266
+ } from "./chunk-DWK5HEKY.js";
266
267
  import {
267
268
  evaluateGlobalSpendCap,
268
269
  getAgentSpend
269
- } from "./chunk-7LTAA55U.js";
270
+ } from "./chunk-V7AID6MC.js";
270
271
  import {
271
272
  exportGraphHTML,
272
273
  generateGraphReport
273
274
  } from "./chunk-3OEVDGIY.js";
274
275
  import {
276
+ captureDaemonStall,
277
+ probeDaemonServing,
275
278
  readSupervisionState,
276
279
  runHealthCheck
277
- } from "./chunk-23XUZHB7.js";
280
+ } from "./chunk-2YK5HP2B.js";
278
281
  import {
279
282
  checkCpuStealSync
280
283
  } from "./chunk-SSC7EKY2.js";
@@ -286,16 +289,16 @@ import {
286
289
  formatReport,
287
290
  runAudit,
288
291
  shouldFixShards
289
- } from "./chunk-T2PAFWRK.js";
292
+ } from "./chunk-YC6SZFVD.js";
290
293
  import {
291
294
  formatDegradations,
292
295
  getRetrievalHealth
293
- } from "./chunk-ME733Y2F.js";
296
+ } from "./chunk-ZEDLED43.js";
294
297
  import {
295
298
  hasFailures,
296
299
  runHealth,
297
300
  runTest
298
- } from "./chunk-QUK3UDZV.js";
301
+ } from "./chunk-2WOHFX4Z.js";
299
302
  import {
300
303
  isSupportReportSentStatus,
301
304
  markSupportReportSent
@@ -307,12 +310,12 @@ import {
307
310
  } from "./chunk-6QBBJJK2.js";
308
311
  import {
309
312
  renderClientCOOTemplate
310
- } from "./chunk-R6CKQLEA.js";
313
+ } from "./chunk-YWZGDFAL.js";
311
314
  import {
312
315
  deactivateGlobalProcedure,
313
316
  loadGlobalProcedures,
314
317
  storeGlobalProcedure
315
- } from "./chunk-KCRSJ3VU.js";
318
+ } from "./chunk-WZPD4QSE.js";
316
319
  import {
317
320
  PLATFORM_PROCEDURES
318
321
  } from "./chunk-NVM3SKJ4.js";
@@ -321,11 +324,11 @@ import {
321
324
  groupMemories,
322
325
  runConsolidation,
323
326
  selectUnconsolidated
324
- } from "./chunk-Q4GS5VW7.js";
327
+ } from "./chunk-H5H2LGVE.js";
325
328
  import {
326
329
  entityId,
327
330
  mergeEntities
328
- } from "./chunk-XGPBHKU3.js";
331
+ } from "./chunk-26CY4EAR.js";
329
332
  import {
330
333
  beginCloudReupload,
331
334
  clearCloudReuploadRequired,
@@ -334,18 +337,18 @@ import {
334
337
  getCloudReuploadInProgress,
335
338
  getCloudReuploadRequired,
336
339
  markCloudReuploadIncomplete
337
- } from "./chunk-4O7OUBEX.js";
340
+ } from "./chunk-QKHQTHE6.js";
338
341
  import {
339
342
  orgMembershipPresent,
340
343
  readActiveOrgMemberships
341
- } from "./chunk-K7DAE2HO.js";
344
+ } from "./chunk-FOZSHNET.js";
342
345
  import {
343
346
  createARecord
344
347
  } from "./chunk-X2Z5GT3V.js";
345
348
  import {
346
349
  findSimilarTrajectories,
347
350
  hashSignature
348
- } from "./chunk-DE2V7547.js";
351
+ } from "./chunk-2CG3LHI6.js";
349
352
  import {
350
353
  BEHAVIOR_CONTENT_MAX_LENGTH,
351
354
  GHOST_BEHAVIOR_SQL,
@@ -357,7 +360,7 @@ import {
357
360
  reactivateBehavior,
358
361
  storeBehavior,
359
362
  storeReflexBehavior
360
- } from "./chunk-F5ZRHLG5.js";
363
+ } from "./chunk-NYV4A5IG.js";
361
364
  import {
362
365
  embed
363
366
  } from "./chunk-Q3GMM6I7.js";
@@ -376,20 +379,20 @@ import {
376
379
  hybridSearch,
377
380
  isCapturedSearchCall,
378
381
  recentRecords
379
- } from "./chunk-NFNM64A7.js";
382
+ } from "./chunk-GGT6Y5AN.js";
380
383
  import {
381
384
  buildFtsMatch,
382
385
  tokenizeForFts
383
- } from "./chunk-VMHZSZQJ.js";
386
+ } from "./chunk-3ARSKDHC.js";
384
387
  import {
385
388
  filterWikiRecallResults
386
- } from "./chunk-33PG3KNY.js";
389
+ } from "./chunk-FDQXQBBC.js";
387
390
  import {
388
391
  attachDocumentMetadata,
389
392
  buildWikiScopeFilter,
390
393
  commitMemoryRecord,
391
394
  initStore
392
- } from "./chunk-APVU4Q5B.js";
395
+ } from "./chunk-X2EBM5BQ.js";
393
396
  import {
394
397
  UPSTREAM_ATTACHMENT_MAX_CHARS,
395
398
  describeUpstreamFailure,
@@ -404,16 +407,19 @@ import {
404
407
  } from "./chunk-BYP3DOUU.js";
405
408
  import {
406
409
  updateTask
407
- } from "./chunk-IPBNHPTE.js";
410
+ } from "./chunk-BIHPY7JW.js";
408
411
  import {
409
412
  fastDbInit
410
- } from "./chunk-EZQ4W3WW.js";
413
+ } from "./chunk-7ZP2PAW3.js";
414
+ import {
415
+ mcpHttpPort
416
+ } from "./chunk-YJ7MCZSY.js";
411
417
  import {
412
418
  MAX_CONCURRENT_WORKERS
413
419
  } from "./chunk-RJ67XAJU.js";
414
420
  import {
415
421
  getActiveAgent
416
- } from "./chunk-OISOA6NX.js";
422
+ } from "./chunk-IHBYJG7N.js";
417
423
  import {
418
424
  getMySession,
419
425
  isAmbiguousMultiCoordinatorContext,
@@ -421,15 +427,16 @@ import {
421
427
  resolveTask,
422
428
  sessionScopeFilter,
423
429
  strictSessionScopeFilter,
430
+ tmuxDispatchRefusal,
424
431
  updateTaskStatus,
425
432
  writeCheckpoint
426
- } from "./chunk-XAGIZVYI.js";
433
+ } from "./chunk-WSYIQKZ6.js";
427
434
  import {
428
435
  listSessions
429
- } from "./chunk-HFXBL7XE.js";
436
+ } from "./chunk-6T5RC3L4.js";
430
437
  import {
431
438
  recordOrchestrationEventBestEffort
432
- } from "./chunk-SA66WRBT.js";
439
+ } from "./chunk-WLV27PAO.js";
433
440
  import {
434
441
  DEFAULT_MODELS,
435
442
  KNOWN_RUNTIMES,
@@ -443,7 +450,7 @@ import {
443
450
  assertEmployeeLimit,
444
451
  assertFeature,
445
452
  assertMemoryLimit
446
- } from "./chunk-EIM7OGTD.js";
453
+ } from "./chunk-2AXJRXA6.js";
447
454
  import {
448
455
  readDaemonToken
449
456
  } from "./chunk-PCV52RYM.js";
@@ -453,7 +460,7 @@ import {
453
460
  } from "./chunk-BTSWFMEH.js";
454
461
  import {
455
462
  getProjectName
456
- } from "./chunk-4Q7H3TO7.js";
463
+ } from "./chunk-J6RTX7XT.js";
457
464
  import {
458
465
  getAgentContext
459
466
  } from "./chunk-GJV3WDWM.js";
@@ -468,12 +475,13 @@ import {
468
475
  isScheduledTrigger,
469
476
  loadTriggers,
470
477
  sanitizeParam
471
- } from "./chunk-CLV7ALXV.js";
478
+ } from "./chunk-XDWIJBTY.js";
472
479
  import {
473
480
  pushConversationToCRM
474
481
  } from "./chunk-ML4S5SHZ.js";
475
482
  import {
476
483
  EMPLOYEES_PATH,
484
+ IDENTITY_DIR,
477
485
  IdentityWriteError,
478
486
  addEmployee,
479
487
  baseAgentName,
@@ -492,7 +500,7 @@ import {
492
500
  mutateIdentity,
493
501
  repairFtsTable,
494
502
  saveEmployees
495
- } from "./chunk-3MDUKF3N.js";
503
+ } from "./chunk-LBEBSXZA.js";
496
504
  import {
497
505
  getEventLoopLagMs,
498
506
  getLastStall,
@@ -505,7 +513,7 @@ import {
505
513
  } from "./chunk-UWGQNJIE.js";
506
514
  import {
507
515
  getMasterKey
508
- } from "./chunk-KIJRAZWR.js";
516
+ } from "./chunk-IQCC6WFI.js";
509
517
  import {
510
518
  checkForUpdate
511
519
  } from "./chunk-F55P3H4S.js";
@@ -517,7 +525,7 @@ import {
517
525
  loadLicense,
518
526
  readCachedLicenseToken,
519
527
  refreshLicense
520
- } from "./chunk-DIKLSAJE.js";
528
+ } from "./chunk-KNEEOZWN.js";
521
529
  import {
522
530
  PLAN_LIMITS
523
531
  } from "./chunk-3R7UDPVR.js";
@@ -785,7 +793,7 @@ function registerRecallMyMemory(server) {
785
793
  throw new Error("Recall session_scope must match the current caller's session.");
786
794
  }
787
795
  {
788
- const { ensureReadDbReady } = await import("./fast-db-init-SD7JZSEC.js");
796
+ const { ensureReadDbReady } = await import("./fast-db-init-UN225WS7.js");
789
797
  if (!await ensureReadDbReady()) {
790
798
  return {
791
799
  content: [{ type: "text", text: "Memory is unavailable; retrieval did not run. Please retry." }],
@@ -1016,7 +1024,7 @@ function registerAskTeamMemory(server) {
1016
1024
  }, safeMode);
1017
1025
  if (!effectiveIncludeRaw) searchOptions.includeRaw = false;
1018
1026
  {
1019
- const { ensureReadDbReady } = await import("./fast-db-init-SD7JZSEC.js");
1027
+ const { ensureReadDbReady } = await import("./fast-db-init-UN225WS7.js");
1020
1028
  if (!await ensureReadDbReady()) {
1021
1029
  return {
1022
1030
  content: [
@@ -1112,7 +1120,7 @@ function registerStoreMemory(server) {
1112
1120
  const context = resolved.context;
1113
1121
  const { agentId, agentRole } = context;
1114
1122
  if (kind === "prospective") {
1115
- const { createProspectiveMemory } = await import("./prospective-memory-5INB7NUL.js");
1123
+ const { createProspectiveMemory } = await import("./prospective-memory-ECXSAEAW.js");
1116
1124
  const sessionScope = context.sessionScope;
1117
1125
  const record = await createProspectiveMemory({
1118
1126
  agentId,
@@ -1457,7 +1465,7 @@ function registerSearchEverything(server) {
1457
1465
  },
1458
1466
  async (params) => {
1459
1467
  try {
1460
- const { ensureReadDbReady } = await import("./fast-db-init-SD7JZSEC.js");
1468
+ const { ensureReadDbReady } = await import("./fast-db-init-UN225WS7.js");
1461
1469
  if (!await ensureReadDbReady()) {
1462
1470
  return {
1463
1471
  content: [
@@ -2131,7 +2139,7 @@ async function handleSupersede(input) {
2131
2139
  }
2132
2140
  async function handleResonanceQuery(input) {
2133
2141
  try {
2134
- const { getHotPairs, getCoActivationNeighbors } = await import("./co-activation-2ZRANV3Q.js");
2142
+ const { getHotPairs, getCoActivationNeighbors } = await import("./co-activation-V5XXR327.js");
2135
2143
  const subAction = input.resonance_action ?? "hot_pairs";
2136
2144
  const limit = input.limit ?? 20;
2137
2145
  if (subAction === "hot_pairs") {
@@ -2237,7 +2245,7 @@ function registerMemory(server) {
2237
2245
  return handleResonanceQuery(input);
2238
2246
  }
2239
2247
  if (action === "update_working_memory" || action === "get_working_memory") {
2240
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
2248
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
2241
2249
  const { agentId } = getActiveAgent2();
2242
2250
  const { readWorkingMemoryWithMeta, writeWorkingMemory, WORKING_MEMORY_MAX_BYTES } = await import("./working-memory-DPFRSKH3.js");
2243
2251
  if (action === "get_working_memory") {
@@ -2263,9 +2271,9 @@ function registerMemory(server) {
2263
2271
  }
2264
2272
  }
2265
2273
  if (action === "core_get" || action === "core_set" || action === "core_delete") {
2266
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
2274
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
2267
2275
  const { agentId } = getActiveAgent2();
2268
- const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-WR7I7DIP.js");
2276
+ const { getCoreMemory, setCoreMemory, deleteCoreMemory, formatCoreMemoryBlock } = await import("./core-memory-3TZV3ZDW.js");
2269
2277
  if (action === "core_get") {
2270
2278
  const entries = await getCoreMemory(agentId);
2271
2279
  const block = formatCoreMemoryBlock(entries);
@@ -2303,7 +2311,7 @@ function registerMemory(server) {
2303
2311
  if (!storeTrigger || !storeTriggerAction) {
2304
2312
  return errorResult('memory action "store" with kind="reflex" requires trigger and trigger_action fields');
2305
2313
  }
2306
- const { formatReflexContent } = await import("./behaviors-7AOK44QK.js");
2314
+ const { formatReflexContent } = await import("./behaviors-RUNSC5WI.js");
2307
2315
  const reflexText = formatReflexContent(storeTrigger, storeTriggerAction);
2308
2316
  legacyArgs.text ??= reflexText;
2309
2317
  legacyArgs.query ??= reflexText;
@@ -2322,9 +2330,9 @@ function registerMemory(server) {
2322
2330
  const result3 = await legacyTool.handler(args, extra);
2323
2331
  if (action === "store" && legacyArgs.kind === "reflex" && !result3.isError) {
2324
2332
  try {
2325
- const { storeReflexBehavior: storeReflexBehavior2 } = await import("./behaviors-7AOK44QK.js");
2326
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
2327
- const { getProjectName: getProjectName2 } = await import("./project-name-337ERIAX.js");
2333
+ const { storeReflexBehavior: storeReflexBehavior2 } = await import("./behaviors-RUNSC5WI.js");
2334
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
2335
+ const { getProjectName: getProjectName2 } = await import("./project-name-LHYHR4VN.js");
2328
2336
  const agent = getActiveAgent2();
2329
2337
  const behaviorId = await storeReflexBehavior2({
2330
2338
  agentId: agent.agentId,
@@ -2761,8 +2769,8 @@ async function respawnAssigneeAfterClose(input) {
2761
2769
  } catch {
2762
2770
  }
2763
2771
  try {
2764
- const { cleanupAgentWorktree } = await import("./worktree-sweep-6VEHGH7U.js");
2765
- const { getGitRoot } = await import("./worktree-XWVNDBRD.js");
2772
+ const { cleanupAgentWorktree } = await import("./worktree-sweep-6LMC7H5Y.js");
2773
+ const { getGitRoot } = await import("./worktree-GS4ODQ4C.js");
2766
2774
  const root = getGitRoot(projectDir);
2767
2775
  if (root) {
2768
2776
  const notes = await cleanupAgentWorktree(root, input.assignee);
@@ -2881,7 +2889,7 @@ function registerCloseTask(server) {
2881
2889
  const callerIsAssignedReviewer = Boolean(agent.agentId) && taskReviewer !== null && agent.agentId === taskReviewer;
2882
2890
  const canClose = canCoordinate(agent.agentId, agent.agentRole) || CLOSE_TASK_ALLOWED_ROLES.has(agent.agentRole ?? "") || callerIsAssignedReviewer;
2883
2891
  try {
2884
- const { StewardGate: StewardGate2 } = await import("./steward-gate-QFPXQBUZ.js");
2892
+ const { StewardGate: StewardGate2 } = await import("./steward-gate-2MUESY3V.js");
2885
2893
  const steward = new StewardGate2();
2886
2894
  const gateDecision = await steward.checkAuthority(agent.agentId || "unknown", "close_task", task_id);
2887
2895
  if (!gateDecision.allowed && !callerIsAssignedReviewer) {
@@ -3087,7 +3095,7 @@ ${prAmbiguityNote.trim()}` : result3,
3087
3095
  skipReviewCreation: true
3088
3096
  });
3089
3097
  if (isLegacyExecution) try {
3090
- const { releaseClaim: releaseClaim2 } = await import("./work-claims-OAICQBWO.js");
3098
+ const { releaseClaim: releaseClaim2 } = await import("./work-claims-XQXT2VWJ.js");
3091
3099
  const holderSession = sanitizeSessionScope(mySession ?? "") || "";
3092
3100
  if (holderSession) {
3093
3101
  await releaseClaim2({ holderSession, taskId: task.id });
@@ -3109,8 +3117,8 @@ ${preflightWarnings.join("\n")}`;
3109
3117
  if (mergeNote) text5 += mergeNote;
3110
3118
  if (status2 === "closed" && assignee && isLegacyExecution) {
3111
3119
  try {
3112
- const { cleanupAgentWorktree } = await import("./worktree-sweep-6VEHGH7U.js");
3113
- const { getGitRoot } = await import("./worktree-XWVNDBRD.js");
3120
+ const { cleanupAgentWorktree } = await import("./worktree-sweep-6LMC7H5Y.js");
3121
+ const { getGitRoot } = await import("./worktree-GS4ODQ4C.js");
3114
3122
  const repoRoot = getGitRoot(baseDir);
3115
3123
  if (repoRoot) {
3116
3124
  const cleanupNotes = await cleanupAgentWorktree(repoRoot, assignee);
@@ -3254,7 +3262,7 @@ function registerResumeEmployee(server) {
3254
3262
  async ({ agent_id, project_name }) => {
3255
3263
  let client;
3256
3264
  if (!isInitialized()) {
3257
- const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-SD7JZSEC.js");
3265
+ const { fastDbInit: fastDbInit2 } = await import("./fast-db-init-UN225WS7.js");
3258
3266
  client = await fastDbInit2();
3259
3267
  } else {
3260
3268
  client = getClient();
@@ -3284,7 +3292,7 @@ function registerResumeEmployee(server) {
3284
3292
  };
3285
3293
  }
3286
3294
  try {
3287
- const { isTmuxSessionAlive } = await import("./tasks-crud-2GHKIZOM.js");
3295
+ const { isTmuxSessionAlive } = await import("./tasks-crud-MB7WXGPW.js");
3288
3296
  const now = (/* @__PURE__ */ new Date()).toISOString();
3289
3297
  for (const row of openTasks.rows) {
3290
3298
  const status2 = String(row.status);
@@ -3312,7 +3320,7 @@ function registerResumeEmployee(server) {
3312
3320
  }
3313
3321
  let checkpointInfo = "";
3314
3322
  try {
3315
- const { readLatestCheckpoint } = await import("./tasks-crud-2GHKIZOM.js");
3323
+ const { readLatestCheckpoint } = await import("./tasks-crud-MB7WXGPW.js");
3316
3324
  const checkpointSessionScope = openTasks.rows[0]?.session_scope != null ? String(openTasks.rows[0].session_scope) : reScope.args[0] != null ? String(reScope.args[0]) : "";
3317
3325
  const checkpoint = checkpointSessionScope ? await readLatestCheckpoint(agent_id, { sessionScope: checkpointSessionScope }) : null;
3318
3326
  if (checkpoint) {
@@ -3372,6 +3380,7 @@ function registerResumeEmployee(server) {
3372
3380
  }
3373
3381
  }
3374
3382
  let dispatchStatus = "";
3383
+ let dispatchFailed = false;
3375
3384
  try {
3376
3385
  const { ensureEmployeeAsync, resolveExeSession: resolveExeSession2 } = await import("./lib/tmux-routing.js");
3377
3386
  let taskScope = null;
@@ -3400,7 +3409,7 @@ function registerResumeEmployee(server) {
3400
3409
  );
3401
3410
  const { shouldAutoInstance } = await import("./lib/employees.js");
3402
3411
  if (taskId) {
3403
- const { liveSessionHoldingTask } = await import("./tasks-crud-2GHKIZOM.js");
3412
+ const { liveSessionHoldingTask } = await import("./tasks-crud-MB7WXGPW.js");
3404
3413
  const holder = await liveSessionHoldingTask(taskId, taskScope);
3405
3414
  if (holder) {
3406
3415
  dispatchStatus = `
@@ -3461,6 +3470,7 @@ Dispatched: spawned ${result3.sessionName}`;
3461
3470
  case "failed":
3462
3471
  dispatchStatus = `
3463
3472
  Dispatch failed: ${result3.error ?? "unknown"}`;
3473
+ dispatchFailed = true;
3464
3474
  break;
3465
3475
  }
3466
3476
  } catch (err) {
@@ -3468,13 +3478,16 @@ Dispatch failed: ${result3.error ?? "unknown"}`;
3468
3478
  const message = err instanceof Error ? err.message : String(err);
3469
3479
  dispatchStatus = `
3470
3480
  Dispatch failed: ${message || "unknown"}`;
3481
+ dispatchFailed = true;
3471
3482
  }
3472
3483
  }
3473
3484
  const verb = created ? "Created" : "Refreshed existing";
3474
3485
  const text5 = `${verb} RESUME task for ${agent_id} in ${effectiveProjectName ?? "unknown"}.
3475
3486
  Task ID: ${taskId}
3476
- Open tasks surfaced: ${openTasks.rows.length}${dispatchStatus}`;
3487
+ Open tasks surfaced: ${openTasks.rows.length}${dispatchStatus}` + (dispatchFailed ? `
3488
+ NO ONE WAS DISPATCHED \u2014 the RESUME task row exists but requires a manual nudge.` : "");
3477
3489
  return {
3490
+ isError: dispatchFailed,
3478
3491
  content: [
3479
3492
  {
3480
3493
  type: "text",
@@ -3858,13 +3871,13 @@ function registerTask(server) {
3858
3871
  const args = input;
3859
3872
  const missing2 = missingRequiredFields2(args, REQUIRED_FIELDS2.create_group);
3860
3873
  if (missing2.length > 0) return errorResult2(`task action "create_group" missing required field(s): ${missing2.join(", ")}`);
3861
- if (args.execution_mode === "durable_tmux" && !isTmuxDispatchAllowed()) {
3874
+ if (args.execution_mode === "durable_tmux") {
3862
3875
  return errorResult2(tmuxDispatchRefusal("task(action='create_group')"));
3863
3876
  }
3864
3877
  try {
3865
3878
  const requestScope = resolveTaskRequestScope(args.session_scope);
3866
3879
  if (!requestScope) return errorResult2("create_group requires a concrete session_scope from X-Exe-Session, the launch environment, or session_scope");
3867
- const { createTaskGroup } = await import("./tasks-crud-2GHKIZOM.js");
3880
+ const { createTaskGroup } = await import("./tasks-crud-MB7WXGPW.js");
3868
3881
  const group = await createTaskGroup({
3869
3882
  title: args.title,
3870
3883
  coordinator: args.coordinator,
@@ -3886,7 +3899,7 @@ function registerTask(server) {
3886
3899
  try {
3887
3900
  const requestScope = resolveTaskRequestScope(args.session_scope);
3888
3901
  if (!requestScope) return errorResult2("group_status requires a concrete caller session_scope");
3889
- const { getGroupStatus } = await import("./tasks-crud-2GHKIZOM.js");
3902
+ const { getGroupStatus } = await import("./tasks-crud-MB7WXGPW.js");
3890
3903
  const status2 = await getGroupStatus(args.group_id, requestScope.scope);
3891
3904
  return { content: [{ type: "text", text: JSON.stringify(status2, null, 2) }] };
3892
3905
  } catch (err) {
@@ -3900,7 +3913,7 @@ function registerTask(server) {
3900
3913
  try {
3901
3914
  const requestScope = resolveTaskRequestScope(args.session_scope);
3902
3915
  if (!requestScope) return errorResult2("group_results requires a concrete caller session_scope");
3903
- const { getGroupResults } = await import("./tasks-crud-2GHKIZOM.js");
3916
+ const { getGroupResults } = await import("./tasks-crud-MB7WXGPW.js");
3904
3917
  const results = await getGroupResults(args.group_id, requestScope.scope);
3905
3918
  return { content: [{ type: "text", text: JSON.stringify(results, null, 2) }] };
3906
3919
  } catch (err) {
@@ -4294,8 +4307,8 @@ function registerStoreBehavior(server) {
4294
4307
  });
4295
4308
  let responseText = `Behavior stored for ${resolvedAgent}. ID: ${id}`;
4296
4309
  try {
4297
- const { countActiveBehaviors } = await import("./behaviors-7AOK44QK.js");
4298
- const { formatOverCapWarning } = await import("./behavior-injection-NRXTNROW.js");
4310
+ const { countActiveBehaviors } = await import("./behaviors-RUNSC5WI.js");
4311
+ const { formatOverCapWarning } = await import("./behavior-injection-CTSIKHTH.js");
4299
4312
  const counts = await countActiveBehaviors(resolvedAgent, resolvedProject);
4300
4313
  const warning = formatOverCapWarning(resolvedAgent, counts);
4301
4314
  if (warning) responseText += `
@@ -4421,7 +4434,7 @@ function registerMessage(server) {
4421
4434
  if (msgType && msgPayload) {
4422
4435
  try {
4423
4436
  const { buildTypedMessage, serializeMessage } = await import("./typed-messages-P2HLLA62.js");
4424
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
4437
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
4425
4438
  const { sendMessage } = await import("./lib/messaging.js");
4426
4439
  const { agentId } = getActiveAgent2();
4427
4440
  const envelope = buildTypedMessage({
@@ -4456,7 +4469,7 @@ ID: ${msg.id}`
4456
4469
  if (action === "read") {
4457
4470
  try {
4458
4471
  const { getPendingMessages } = await import("./lib/messaging.js");
4459
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
4472
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
4460
4473
  const { resolveExeSession: resolveExeSession2 } = await import("./lib/tmux-routing.js");
4461
4474
  const { agentId } = getActiveAgent2();
4462
4475
  const callerScope = resolveExeSession2() ?? void 0;
@@ -4756,6 +4769,40 @@ ${findings[0].reason} This is a lint, not a block \u2014 review the flagged line
4756
4769
  }
4757
4770
 
4758
4771
  // src/mcp/tools/update-identity.ts
4772
+ function regenerateAgentDef(agentId) {
4773
+ const name = agentId.toLowerCase();
4774
+ const employee = loadEmployeesSync().find(
4775
+ (emp) => String(emp.name ?? "").toLowerCase() === name
4776
+ );
4777
+ if (!employee) {
4778
+ return `No roster entry for "${agentId}" \u2014 no agent definition to regenerate.`;
4779
+ }
4780
+ const [result3] = generateAgentDefs({
4781
+ employees: [employee],
4782
+ // The identity we just wrote lives under EXE_AI_DIR (which follows
4783
+ // EXE_OS_DIR/EXE_MEM_DIR), NOT necessarily <homeDir>/.exe-os. Read it back
4784
+ // from the exact directory mutateIdentity wrote to — otherwise the
4785
+ // regeneration errors out or silently bakes a stale, unrelated identity
4786
+ // into the definition while reporting success (codex-review P1 on the
4787
+ // original d8798016 fix).
4788
+ identityDir: IDENTITY_DIR
4789
+ });
4790
+ if (!result3) {
4791
+ return `No agent definition result for "${agentId}" \u2014 regeneration produced nothing.`;
4792
+ }
4793
+ switch (result3.action) {
4794
+ case "created":
4795
+ case "updated":
4796
+ return `Agent definition ${result3.action} at ~/.claude/agents/${name}.md \u2014 dispatched subagents now load the updated identity.`;
4797
+ case "unchanged":
4798
+ return `Agent definition at ~/.claude/agents/${name}.md already up to date.`;
4799
+ case "skipped":
4800
+ if (result3.reason === "user_file" || result3.reason === "foreign_symlink") {
4801
+ return `Agent definition NOT regenerated (${result3.reason === "user_file" ? "user-authored file without the generated-by marker" : "symlink not owned by exe-os"}): ${result3.path} left untouched.`;
4802
+ }
4803
+ return null;
4804
+ }
4805
+ }
4759
4806
  function registerUpdateIdentity(server) {
4760
4807
  server.registerTool(
4761
4808
  "update_identity",
@@ -4841,6 +4888,33 @@ If this substantial shrink is intentional, re-send with confirmShrink: true. (Bl
4841
4888
  }
4842
4889
  const action = existed ? "Updated" : "Created";
4843
4890
  let responseText = `${action} identity for "${agent_id}". File: ~/.exe-os/identity/${agent_id}.md`;
4891
+ let defOutcome;
4892
+ try {
4893
+ defOutcome = regenerateAgentDef(agent_id);
4894
+ } catch (err) {
4895
+ defOutcome = null;
4896
+ responseText += `
4897
+
4898
+ Agent definition regeneration FAILED: ${err instanceof Error ? err.message : String(err)}
4899
+ The identity write above succeeded, but dispatched subagents will keep loading the OLD instructions from ~/.claude/agents/${agent_id.toLowerCase()}.md until it is regenerated (re-run the install or this update).`;
4900
+ return {
4901
+ content: [{ type: "text", text: responseText }],
4902
+ isError: true
4903
+ };
4904
+ }
4905
+ if (defOutcome === null) {
4906
+ responseText += `
4907
+
4908
+ Agent definition regeneration FAILED (skipped) for ~/.claude/agents/${agent_id.toLowerCase()}.md.
4909
+ The identity write above succeeded, but dispatched subagents will keep loading the OLD instructions until the definition is regenerated. Re-run the install or this update after fixing the cause.`;
4910
+ return {
4911
+ content: [{ type: "text", text: responseText }],
4912
+ isError: true
4913
+ };
4914
+ }
4915
+ responseText += `
4916
+
4917
+ ${defOutcome}`;
4844
4918
  const findings = lintIdentityContradictions(content);
4845
4919
  const warning = formatIdentityContradictionWarning(agent_id, findings);
4846
4920
  if (warning) responseText += `
@@ -4982,8 +5056,8 @@ function registerIngestDocument(server) {
4982
5056
  },
4983
5057
  async (input) => {
4984
5058
  try {
4985
- const { assertFeature: assertFeature2 } = await import("./plan-limits-4GXK5PFT.js");
4986
- const { assertMemoryLimit: assertMemoryLimit2 } = await import("./plan-limits-4GXK5PFT.js");
5059
+ const { assertFeature: assertFeature2 } = await import("./plan-limits-PG6HG2DT.js");
5060
+ const { assertMemoryLimit: assertMemoryLimit2 } = await import("./plan-limits-PG6HG2DT.js");
4987
5061
  await assertFeature2("wiki");
4988
5062
  await assertMemoryLimit2();
4989
5063
  const result3 = await ingestDocument(input);
@@ -5054,8 +5128,8 @@ function registerPurgeDocument(server) {
5054
5128
  },
5055
5129
  async ({ document_id }) => {
5056
5130
  try {
5057
- const { StewardGate: StewardGate2 } = await import("./steward-gate-QFPXQBUZ.js");
5058
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
5131
+ const { StewardGate: StewardGate2 } = await import("./steward-gate-2MUESY3V.js");
5132
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
5059
5133
  const steward = new StewardGate2();
5060
5134
  const agent = getActiveAgent2();
5061
5135
  const gateDecision = await steward.checkAuthority(agent.agentId || "unknown", "purge_document", document_id);
@@ -5225,7 +5299,7 @@ function registerDocument(server) {
5225
5299
  const { action: _action, ...legacyArgs } = input;
5226
5300
  if (action === "list" && (legacyArgs.workspace_id === void 0 || legacyArgs.workspace_id === null || legacyArgs.workspace_id === "")) {
5227
5301
  try {
5228
- const { resolveDefaultWorkspaceId, listWorkspaces } = await import("./documents-O7WYZFFE.js");
5302
+ const { resolveDefaultWorkspaceId, listWorkspaces } = await import("./documents-NILTWYSQ.js");
5229
5303
  const defaultId = await resolveDefaultWorkspaceId();
5230
5304
  if (defaultId) {
5231
5305
  legacyArgs.workspace_id = defaultId;
@@ -6233,7 +6307,7 @@ async function handleStatus() {
6233
6307
  detail: wikiUrl ? `API at ${wikiUrl}` : "EXE_WIKI_API_URL not set"
6234
6308
  };
6235
6309
  try {
6236
- await import("./graph-rag-GBA5E3QC.js");
6310
+ await import("./graph-rag-LH34CEGC.js");
6237
6311
  sinks.entity_extraction = { configured: true, detail: "GraphRAG available" };
6238
6312
  } catch {
6239
6313
  sinks.entity_extraction = { configured: false, detail: "graph-rag module unavailable" };
@@ -6260,7 +6334,7 @@ async function handleTrigger(limit) {
6260
6334
  if (rows.rows.length === 0) {
6261
6335
  return text3("No conversations found to re-process.");
6262
6336
  }
6263
- const { ingest } = await import("./pipeline-router-2IELBSVJ.js");
6337
+ const { ingest } = await import("./pipeline-router-2KY4X6PO.js");
6264
6338
  const results = [];
6265
6339
  for (const row of rows.rows) {
6266
6340
  const r = row;
@@ -6934,8 +7008,8 @@ function registerMergeEntities(server) {
6934
7008
  };
6935
7009
  }
6936
7010
  try {
6937
- const { StewardGate: StewardGate2 } = await import("./steward-gate-QFPXQBUZ.js");
6938
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
7011
+ const { StewardGate: StewardGate2 } = await import("./steward-gate-2MUESY3V.js");
7012
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
6939
7013
  const steward = new StewardGate2();
6940
7014
  const agent = getActiveAgent2();
6941
7015
  const sourceLabel2 = source_name ?? source_id;
@@ -7149,7 +7223,7 @@ async function handleExtractFromDocument(args) {
7149
7223
  return errorResult8('graph action "extract_from_document" requires document_id');
7150
7224
  }
7151
7225
  try {
7152
- const { extractGraphFromExistingDocument } = await import("./doc-graph-extractor-NJ7ZZC2C.js");
7226
+ const { extractGraphFromExistingDocument } = await import("./doc-graph-extractor-BBPKLIVM.js");
7153
7227
  const result3 = await extractGraphFromExistingDocument(documentId);
7154
7228
  const lines = [
7155
7229
  `## Graph Extraction for Document ${documentId}`,
@@ -7176,7 +7250,7 @@ async function handleCleanupGarbage(args) {
7176
7250
  const doMerge = !garbageOnly;
7177
7251
  let mod;
7178
7252
  try {
7179
- mod = await import("./cleanup-graph-garbage-NKAJSCWZ.js");
7253
+ mod = await import("./cleanup-graph-garbage-N7FTWU6C.js");
7180
7254
  } catch (err) {
7181
7255
  return errorResult8(`cleanup_garbage: failed to load cleanup module \u2014 ${err instanceof Error ? err.message : String(err)}`);
7182
7256
  }
@@ -7767,6 +7841,15 @@ function registerGetDaemonHealth(server) {
7767
7841
  health = await pingDaemon();
7768
7842
  } catch {
7769
7843
  }
7844
+ let serving = null;
7845
+ if (!health) {
7846
+ const portNum = /^\d+$/.test(mcpHttpPort()) ? Number(mcpHttpPort()) : void 0;
7847
+ serving = await probeDaemonServing(portNum !== void 0 ? { port: portNum } : {});
7848
+ if (serving.state === "stalled") {
7849
+ await captureDaemonStall(serving).catch(() => {
7850
+ });
7851
+ }
7852
+ }
7770
7853
  const supervision = readSupervisionState();
7771
7854
  const lines = [];
7772
7855
  lines.push("## Daemon Health\n");
@@ -7776,9 +7859,20 @@ function registerGetDaemonHealth(server) {
7776
7859
  lines.push(`> ${supervision.detail}`);
7777
7860
  lines.push("");
7778
7861
  }
7862
+ if (serving?.state === "stalled") {
7863
+ lines.push(`> \u{1F534} **${serving.detail}**`);
7864
+ lines.push(">");
7865
+ lines.push("> Detection only \u2014 nothing was restarted. The daemon process is alive and the");
7866
+ lines.push("> port is accepting connections, but the event loop is not answering requests.");
7867
+ lines.push("> A bounded stall record was appended to logs/daemon-stalls.log for post-mortem.");
7868
+ lines.push("");
7869
+ }
7779
7870
  lines.push("| Metric | Value |");
7780
7871
  lines.push("|--------|-------|");
7781
- lines.push(`| Status | ${health ? health.status : "running (no health response)"} |`);
7872
+ lines.push(`| Status | ${health ? health.status : serving?.state === "stalled" ? "STALLED (not serving)" : serving?.state === "down" ? "running (HTTP port not listening)" : "running (no health response)"} |`);
7873
+ if (serving && !health) {
7874
+ lines.push(`| Serving probe | ${serving.state} \u2014 ${serving.detail} |`);
7875
+ }
7782
7876
  lines.push(`| PID | ${pid} |`);
7783
7877
  lines.push(`| Supervision | ${supervision.degraded ? "\u{1F534}" : "\u{1F7E2}"} ${supervision.state} |`);
7784
7878
  if (health) {
@@ -7911,7 +8005,13 @@ function registerMcpPing(server) {
7911
8005
  };
7912
8006
  } catch {
7913
8007
  }
7914
- const status2 = !daemon.alive ? "degraded" : eventLoopDegraded ? "degraded" : "ok";
8008
+ const portNum = /^\d+$/.test(mcpHttpPort()) ? Number(mcpHttpPort()) : void 0;
8009
+ const servingProbe = await probeDaemonServing(portNum !== void 0 ? { port: portNum } : {});
8010
+ if (servingProbe.state === "stalled") {
8011
+ await captureDaemonStall(servingProbe).catch(() => {
8012
+ });
8013
+ }
8014
+ const status2 = servingProbe.state === "stalled" ? "stalled" : !daemon.alive ? "degraded" : eventLoopDegraded ? "degraded" : "ok";
7915
8015
  return {
7916
8016
  content: [
7917
8017
  {
@@ -7922,6 +8022,7 @@ function registerMcpPing(server) {
7922
8022
  ...daemon,
7923
8023
  eventLoopLagMs,
7924
8024
  lastStall,
8025
+ serving: { state: servingProbe.state, detail: servingProbe.detail, portOpen: servingProbe.portOpen },
7925
8026
  ...eventLoopDegraded && { eventLoopWarning: `Event loop lag ${eventLoopLagMs}ms exceeds 5000ms \u2014 daemon is alive but unresponsive to real-time requests` }
7926
8027
  },
7927
8028
  ...retrieval && { retrieval },
@@ -7932,7 +8033,7 @@ function registerMcpPing(server) {
7932
8033
  },
7933
8034
  toolUsage: getToolUsageStats(),
7934
8035
  mcpTransport: summary,
7935
- remediation: !daemon.alive ? "Daemon is offline. Restart exe-os/exed; do not bypass MCP or access the DB directly." : eventLoopDegraded ? stallAdvice ?? `Daemon process is alive but event loop is blocked (${eventLoopLagMs}ms lag). This typically happens during model loading or heavy DB operations. Wait for the operation to complete, or restart the daemon if it persists.` : gate.hasKey ? "MCP transport probe reached the server. If tools still fail, reconnect the MCP client." : "No license key found. Run: echo 'exe_sk_YOUR_KEY' > ~/.exe-os/license.key then reconnect MCP."
8036
+ remediation: servingProbe.state === "stalled" ? `${servingProbe.detail} The daemon process/port is up but not serving requests; restarting a starved daemon often makes it worse \u2014 check host load first. A stall record was appended to logs/daemon-stalls.log.` : !daemon.alive ? "Daemon is offline. Restart exe-os/exed; do not bypass MCP or access the DB directly." : eventLoopDegraded ? stallAdvice ?? `Daemon process is alive but event loop is blocked (${eventLoopLagMs}ms lag). This typically happens during model loading or heavy DB operations. Wait for the operation to complete, or restart the daemon if it persists.` : gate.hasKey ? "MCP transport probe reached the server. If tools still fail, reconnect the MCP client." : "No license key found. Run: echo 'exe_sk_YOUR_KEY' > ~/.exe-os/license.key then reconnect MCP."
7936
8037
  }, null, 2)
7937
8038
  }
7938
8039
  ]
@@ -8078,7 +8179,7 @@ async function getAgentSessionLoad() {
8078
8179
  return { sessions: [], totalLive: 0, busySessions: 0, idleSessions: 0 };
8079
8180
  }
8080
8181
  const { getClient: getClient2 } = await import("./lib/database.js");
8081
- const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-AMR3Z3DJ.js");
8182
+ const { sessionScopeFilter: sessionScopeFilter2 } = await import("./task-scope-4EKZBTTM.js");
8082
8183
  const client = getClient2();
8083
8184
  const scope = sessionScopeFilter2();
8084
8185
  for (const s of liveAgentSessions) {
@@ -8393,14 +8494,17 @@ function shortKeyFingerprint(key) {
8393
8494
  if (!key) return "missing";
8394
8495
  return `${key.toString("hex").slice(0, 8)}...`;
8395
8496
  }
8497
+ function formatMemoryCursor(local, pushed, pulled) {
8498
+ return `local=${local ?? "unknown"} last pushed=${pushed ?? "unknown"} last pulled=${pulled ?? "unknown"}`;
8499
+ }
8396
8500
  async function cloudStatusText() {
8397
8501
  const config = await loadConfig();
8398
8502
  const key = await getMasterKey();
8399
8503
  const cloud = config.cloud;
8400
8504
  let reuploadRequired = false;
8401
- let localMemoryVersion = 0;
8402
- let lastPushedMemoryVersion = 0;
8403
- let lastPullVersion = 0;
8505
+ let localMemoryVersion = null;
8506
+ let lastPushedMemoryVersion = null;
8507
+ let lastPullVersion = null;
8404
8508
  let pendingMemoryCount = 0;
8405
8509
  let lastReuploadedAt = null;
8406
8510
  try {
@@ -8419,7 +8523,7 @@ async function cloudStatusText() {
8419
8523
  }
8420
8524
  const pending = await client.execute({
8421
8525
  sql: "SELECT COUNT(*) as cnt FROM memories WHERE (scope IS NULL OR scope != 'personal') AND version > ?",
8422
- args: [lastPushedMemoryVersion]
8526
+ args: [lastPushedMemoryVersion ?? 0]
8423
8527
  });
8424
8528
  pendingMemoryCount = Number(pending.rows[0]?.cnt ?? 0);
8425
8529
  } catch (_err) {
@@ -8482,7 +8586,7 @@ async function cloudStatusText() {
8482
8586
  lines.push("**Sync status:** SYNC ENABLED \u2014 no obvious memory backlog");
8483
8587
  }
8484
8588
  lines.push("");
8485
- lines.push(`- Memory cursor: local=${localMemoryVersion} last pushed=${lastPushedMemoryVersion} last pulled=${lastPullVersion}`);
8589
+ lines.push(`- Memory cursor: ${formatMemoryCursor(localMemoryVersion, lastPushedMemoryVersion, lastPullVersion)}`);
8486
8590
  lines.push(`- Last successful background sync: ${backgroundStatus.lastSuccessAt ?? "never"}`);
8487
8591
  if (backgroundStatus.consecutiveFailures !== void 0) {
8488
8592
  lines.push(`- Consecutive background failures: ${backgroundStatus.consecutiveFailures.toLocaleString()}`);
@@ -8490,7 +8594,7 @@ async function cloudStatusText() {
8490
8594
  if (lastReuploadedAt) lines.push(`- Last re-upload: ${lastReuploadedAt}`);
8491
8595
  lines.push("");
8492
8596
  try {
8493
- const { getRetrievalHealth: getRetrievalHealth2, formatDegradations: formatDegradations2 } = await import("./retrieval-health-R6MGXLTP.js");
8597
+ const { getRetrievalHealth: getRetrievalHealth2, formatDegradations: formatDegradations2 } = await import("./retrieval-health-42MFLOEP.js");
8494
8598
  const h = await getRetrievalHealth2();
8495
8599
  lines.push(formatDegradations2(h.degradations, "Health / Degradations"));
8496
8600
  lines.push("");
@@ -10122,7 +10226,7 @@ function registerCreateTrigger(server) {
10122
10226
  };
10123
10227
  }
10124
10228
  const normalizedConditions = conditions == null ? [] : conditions;
10125
- const { assertFeature: assertFeature2 } = await import("./plan-limits-4GXK5PFT.js");
10229
+ const { assertFeature: assertFeature2 } = await import("./plan-limits-PG6HG2DT.js");
10126
10230
  const gatedActions = {
10127
10231
  send_whatsapp: "external_agents",
10128
10232
  update_wiki: "wiki"
@@ -11194,8 +11298,8 @@ function buildHandlers5() {
11194
11298
  }
11195
11299
  async function handleDreaming(action, args) {
11196
11300
  try {
11197
- const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-TUESPDT3.js");
11198
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
11301
+ const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-KMDGPIFY.js");
11302
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
11199
11303
  const { getClient: getClient2 } = await import("./lib/database.js");
11200
11304
  const agentId = args.agent_id ?? getActiveAgent2().agentId;
11201
11305
  if (action === "dreaming_run") {
@@ -11403,11 +11507,11 @@ function registerConfig(server) {
11403
11507
  }
11404
11508
  if (action === "closeout") {
11405
11509
  try {
11406
- const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-TUESPDT3.js");
11407
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
11510
+ const { DreamingEngine: DreamingEngine2 } = await import("./dreaming-KMDGPIFY.js");
11511
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
11408
11512
  const { writeMemory, flushBatch } = await import("./lib/store.js");
11409
11513
  const { randomUUID: randomUUID4 } = await import("crypto");
11410
- const { getProjectName: getProjectName2 } = await import("./project-name-337ERIAX.js");
11514
+ const { getProjectName: getProjectName2 } = await import("./project-name-LHYHR4VN.js");
11411
11515
  const { retryOnDaemonTransportError } = await import("./lib/db-daemon-client.js");
11412
11516
  const agentId = args.agent_id ?? getActiveAgent2().agentId;
11413
11517
  const hours = args.hours ?? 24;
@@ -11485,7 +11589,7 @@ function registerConfig(server) {
11485
11589
  }
11486
11590
  if (action === "capability_cards") {
11487
11591
  try {
11488
- const { getAllCapabilityCards, findAgentForTask } = await import("./capability-cards-C3SMHB2E.js");
11592
+ const { getAllCapabilityCards, findAgentForTask } = await import("./capability-cards-EV7VHL3W.js");
11489
11593
  const cards = getAllCapabilityCards();
11490
11594
  const taskQuery = args.query;
11491
11595
  if (taskQuery) {
@@ -11536,7 +11640,7 @@ function registerConfig(server) {
11536
11640
  const existing = loadEmployeesSync2();
11537
11641
  if (existing.some((e) => e.name === employeeName)) return errorResult9(`Employee "${employeeName}" already exists.`);
11538
11642
  try {
11539
- const { assertEmployeeLimit: assertEmployeeLimit2 } = await import("./plan-limits-4GXK5PFT.js");
11643
+ const { assertEmployeeLimit: assertEmployeeLimit2 } = await import("./plan-limits-PG6HG2DT.js");
11540
11644
  await assertEmployeeLimit2();
11541
11645
  } catch (e) {
11542
11646
  return errorResult9(e instanceof Error ? e.message : "Employee limit reached.");
@@ -11577,7 +11681,7 @@ You are ${employeeName}. Role: ${role}.`, "utf-8");
11577
11681
  }
11578
11682
  try {
11579
11683
  const { generateSessionWrappers } = await import("./lib/session-wrappers.js");
11580
- const { resolvePackageRoot } = await import("./installer-MPVQ5L22.js");
11684
+ const { resolvePackageRoot } = await import("./installer-UFRZHMX5.js");
11581
11685
  generateSessionWrappers(resolvePackageRoot());
11582
11686
  } catch {
11583
11687
  }
@@ -11674,7 +11778,7 @@ function registerListWikiPages(server) {
11674
11778
  }
11675
11779
  },
11676
11780
  async ({ workspace, folder }) => {
11677
- const { assertFeature: assertFeature2 } = await import("./plan-limits-4GXK5PFT.js");
11781
+ const { assertFeature: assertFeature2 } = await import("./plan-limits-PG6HG2DT.js");
11678
11782
  await assertFeature2("wiki");
11679
11783
  const apiUrl = process.env.EXE_WIKI_API_URL;
11680
11784
  const apiKey = process.env.EXE_WIKI_API_KEY;
@@ -11774,7 +11878,7 @@ function registerGetWikiPage(server) {
11774
11878
  }
11775
11879
  },
11776
11880
  async ({ workspace, document_id, title }) => {
11777
- const { assertFeature: assertFeature2 } = await import("./plan-limits-4GXK5PFT.js");
11881
+ const { assertFeature: assertFeature2 } = await import("./plan-limits-PG6HG2DT.js");
11778
11882
  await assertFeature2("wiki");
11779
11883
  const apiUrl = process.env.EXE_WIKI_API_URL;
11780
11884
  const apiKey = process.env.EXE_WIKI_API_KEY;
@@ -11968,10 +12072,10 @@ async function handleWikiSearch(input) {
11968
12072
  const userId = input.user_id;
11969
12073
  if (!workspace) return errorResult10('wiki action "search" requires workspace');
11970
12074
  if (!query) return errorResult10('wiki action "search" requires query');
11971
- const { assertFeature: assertFeature2 } = await import("./plan-limits-4GXK5PFT.js");
12075
+ const { assertFeature: assertFeature2 } = await import("./plan-limits-PG6HG2DT.js");
11972
12076
  await assertFeature2("wiki");
11973
12077
  if (userId) {
11974
- const { checkWikiAccess } = await import("./wiki-acl-N754BC2W.js");
12078
+ const { checkWikiAccess } = await import("./wiki-acl-3L7BRJUV.js");
11975
12079
  const { allowed } = await checkWikiAccess(String(userId), String(workspace), "read");
11976
12080
  if (!allowed) {
11977
12081
  return errorResult10(`Access denied: user "${userId}" does not have read access to workspace "${workspace}"`);
@@ -12074,7 +12178,7 @@ function registerWiki(server) {
12074
12178
  return errorResult10('wiki action "document_rerank" requires at least one candidate');
12075
12179
  }
12076
12180
  if (user_id && legacyArgs.workspace) {
12077
- const { checkWikiAccess } = await import("./wiki-acl-N754BC2W.js");
12181
+ const { checkWikiAccess } = await import("./wiki-acl-3L7BRJUV.js");
12078
12182
  const { allowed } = await checkWikiAccess(
12079
12183
  String(user_id),
12080
12184
  String(legacyArgs.workspace),
@@ -12268,7 +12372,7 @@ ${lines.join("\n")}`
12268
12372
  const targetAgent = agent_id ?? getActiveAgent().agentId;
12269
12373
  const resolvedAgent = baseAgentName(targetAgent, loadEmployeesSync());
12270
12374
  const proj = project_name === "global" ? void 0 : project_name || getProjectName();
12271
- const { retrieveSkills } = await import("./skill-retrieval-OWY6MTCX.js");
12375
+ const { retrieveSkills } = await import("./skill-retrieval-XDY352AS.js");
12272
12376
  const results = await retrieveSkills({
12273
12377
  agentId: resolvedAgent,
12274
12378
  projectName: proj,
@@ -12310,7 +12414,7 @@ ${lines.join("\n")}`
12310
12414
  isError: true
12311
12415
  };
12312
12416
  }
12313
- const { recordBehaviorApplied } = await import("./skill-usage-GNV737U5.js");
12417
+ const { recordBehaviorApplied } = await import("./skill-usage-QOLIJQJC.js");
12314
12418
  const updated = await recordBehaviorApplied(behavior_id);
12315
12419
  if (!updated) {
12316
12420
  return {
@@ -12415,8 +12519,8 @@ Trigger: ${trigger}
12415
12519
  Action: ${trigger_action}
12416
12520
  Priority: p0 (always injected). The agent decides whether to act.` : `Behavior stored for ${resolvedAgent}. ID: ${id}`;
12417
12521
  try {
12418
- const { countActiveBehaviors } = await import("./behaviors-7AOK44QK.js");
12419
- const { formatOverCapWarning } = await import("./behavior-injection-NRXTNROW.js");
12522
+ const { countActiveBehaviors } = await import("./behaviors-RUNSC5WI.js");
12523
+ const { formatOverCapWarning } = await import("./behavior-injection-CTSIKHTH.js");
12420
12524
  const counts = await countActiveBehaviors(resolvedAgent, resolvedProject);
12421
12525
  const warning = formatOverCapWarning(resolvedAgent, counts);
12422
12526
  if (warning) responseText += `
@@ -12511,7 +12615,7 @@ Use /exe-forget to remove any that this supersedes.`;
12511
12615
  }]
12512
12616
  };
12513
12617
  }
12514
- const { bulkPurgeGhostBehaviors } = await import("./behaviors-7AOK44QK.js");
12618
+ const { bulkPurgeGhostBehaviors } = await import("./behaviors-RUNSC5WI.js");
12515
12619
  const res = await bulkPurgeGhostBehaviors({ batchSize: 5e3, vacuum: true });
12516
12620
  return {
12517
12621
  content: [{
@@ -12611,7 +12715,7 @@ Use /exe-forget to remove any that this supersedes.`;
12611
12715
  }
12612
12716
  if (action === "promotable") {
12613
12717
  const targetAgent = agent_id ?? getActiveAgent().agentId;
12614
- const { listPromotionCandidates, DEFAULT_MIN_STABLE_DAYS } = await import("./behavior-promotion-MW7OQ72V.js");
12718
+ const { listPromotionCandidates, DEFAULT_MIN_STABLE_DAYS } = await import("./behavior-promotion-NZMTTFHK.js");
12615
12719
  const candidates = await listPromotionCandidates(targetAgent, {
12616
12720
  projectName: project_name,
12617
12721
  minStableDays: min_stable_days,
@@ -12644,7 +12748,7 @@ Promotion moves a rule into the identity file, which is injected on a SEPARATE p
12644
12748
  return { content: [{ type: "text", text: "Missing required field: behavior_id is required for promote action." }], isError: true };
12645
12749
  }
12646
12750
  const targetAgent = agent_id ?? caller2.agentId;
12647
- const { promoteBehaviorToIdentity } = await import("./behavior-promotion-MW7OQ72V.js");
12751
+ const { promoteBehaviorToIdentity } = await import("./behavior-promotion-NZMTTFHK.js");
12648
12752
  const result4 = await promoteBehaviorToIdentity({
12649
12753
  behaviorId: behavior_id,
12650
12754
  agentId: targetAgent,
@@ -12680,7 +12784,7 @@ Stable for ${r.stableDays} days; promoted by ${r.promotedBy}.
12680
12784
  return { content: [{ type: "text", text: `Behavior not found: ${behavior_id}` }], isError: true };
12681
12785
  }
12682
12786
  const row2 = result4.rows[0];
12683
- const { reactivateBehavior: reactivateBehavior2 } = await import("./behaviors-7AOK44QK.js");
12787
+ const { reactivateBehavior: reactivateBehavior2 } = await import("./behaviors-RUNSC5WI.js");
12684
12788
  const wasReactivated = await reactivateBehavior2(behavior_id);
12685
12789
  if (!wasReactivated) {
12686
12790
  return { content: [{ type: "text", text: `Behavior ${behavior_id} is already active.` }] };
@@ -13223,7 +13327,7 @@ function registerWorkflowTool(server) {
13223
13327
  getWorkflowInstance,
13224
13328
  listWorkflowInstances,
13225
13329
  approveWorkflowStep
13226
- } = await import("./workflow-engine-RID3QL2U.js");
13330
+ } = await import("./workflow-engine-FCOOI5M6.js");
13227
13331
  try {
13228
13332
  switch (input.action) {
13229
13333
  case "create_workflow": {
@@ -13734,7 +13838,7 @@ If this is genuinely a new issue, retry with not_duplicate_of: [${unacknowledged
13734
13838
  const version = package_version === void 0 ? readPackageVersion() : sanitizeVersionField(package_version) ?? "unknown";
13735
13839
  let metricsSnapshot = "";
13736
13840
  try {
13737
- const { getOrchestrationMetrics, formatOrchestrationMetrics } = await import("./orchestration-events-73VEJT7Q.js");
13841
+ const { getOrchestrationMetrics, formatOrchestrationMetrics } = await import("./orchestration-events-ARGZU6KS.js");
13738
13842
  const sinceIso = new Date(Date.now() - 60 * 60 * 1e3).toISOString();
13739
13843
  const metrics = await getOrchestrationMetrics({ sinceIso });
13740
13844
  if (metrics.totalEvents > 0) {
@@ -14937,7 +15041,7 @@ function registerCliParityTools(server) {
14937
15041
  const out = await runCommand("exe-os", ["cloud", "status"], 45e3);
14938
15042
  let healthSection = "";
14939
15043
  try {
14940
- const { getRetrievalHealth: getRetrievalHealth2, formatDegradations: formatDegradations2 } = await import("./retrieval-health-R6MGXLTP.js");
15044
+ const { getRetrievalHealth: getRetrievalHealth2, formatDegradations: formatDegradations2 } = await import("./retrieval-health-42MFLOEP.js");
14941
15045
  const h = await getRetrievalHealth2();
14942
15046
  const lines = [
14943
15047
  "",
@@ -15012,7 +15116,7 @@ function registerCodeContext(server) {
15012
15116
  const index = await buildCodeContextIndexAsync(opts);
15013
15117
  let graphExtract;
15014
15118
  try {
15015
- const { autoExtractGraphEntities } = await import("./graph-auto-extract-V75GSTNX.js");
15119
+ const { autoExtractGraphEntities } = await import("./graph-auto-extract-S7OIZXYP.js");
15016
15120
  graphExtract = await autoExtractGraphEntities(index.projectRoot);
15017
15121
  } catch {
15018
15122
  }
@@ -15980,7 +16084,7 @@ function registerDiagnostics(server) {
15980
16084
  }
15981
16085
  }
15982
16086
  if (job === "tier3_archival") {
15983
- const { runTier3Archival } = await import("./memory-maintenance-WDLL3ZX3.js");
16087
+ const { runTier3Archival } = await import("./memory-maintenance-5XIGUPYL.js");
15984
16088
  const result3 = await runTier3Archival();
15985
16089
  return {
15986
16090
  content: [{
@@ -15994,7 +16098,7 @@ function registerDiagnostics(server) {
15994
16098
  if (typeof memoryId !== "string" || !memoryId) {
15995
16099
  return { content: [{ type: "text", text: "supersession_hygiene requires memory_id." }], isError: true };
15996
16100
  }
15997
- const { runSupersessionHygieneSerialized } = await import("./memory-maintenance-WDLL3ZX3.js");
16101
+ const { runSupersessionHygieneSerialized } = await import("./memory-maintenance-5XIGUPYL.js");
15998
16102
  await runSupersessionHygieneSerialized(memoryId);
15999
16103
  return {
16000
16104
  content: [{
@@ -16169,7 +16273,7 @@ async function handleReprojectWorktreeMemories(input) {
16169
16273
  const sessionScope = rawScope;
16170
16274
  try {
16171
16275
  const { getClient: getClient2 } = await import("./lib/database.js");
16172
- const { runReprojectWorktreeMemories, formatReprojectReport } = await import("./reproject-worktree-memories-OGBR3CMO.js");
16276
+ const { runReprojectWorktreeMemories, formatReprojectReport } = await import("./reproject-worktree-memories-PIXMJBHG.js");
16173
16277
  const client = await getClient2();
16174
16278
  const result3 = await runReprojectWorktreeMemories(
16175
16279
  client,
@@ -16188,7 +16292,7 @@ async function handleReprojectWorktreeMemories(input) {
16188
16292
  }
16189
16293
  async function handleMemoryIsolation(input) {
16190
16294
  try {
16191
- const { queryMemoryIsolation, formatMemoryIsolationReport } = await import("./memory-isolation-4RQJ5RCK.js");
16295
+ const { queryMemoryIsolation, formatMemoryIsolationReport } = await import("./memory-isolation-TE4AOMQX.js");
16192
16296
  const agentId = typeof input.agent_id === "string" ? input.agent_id : void 0;
16193
16297
  const allScopes = input.all_scopes === true;
16194
16298
  const sessionScope = typeof input.session_scope === "string" ? input.session_scope : void 0;
@@ -16218,7 +16322,7 @@ ${report.lastOutcomes.map((o) => ` [${new Date(o.settledAt).toISOString()}] ${o
16218
16322
  }
16219
16323
  async function handleSpawnFailures() {
16220
16324
  try {
16221
- const { getOrchestrationMetrics } = await import("./orchestration-events-73VEJT7Q.js");
16325
+ const { getOrchestrationMetrics } = await import("./orchestration-events-ARGZU6KS.js");
16222
16326
  const metrics = await getOrchestrationMetrics();
16223
16327
  const c = metrics.counts;
16224
16328
  const attempted = c.tmuxSpawnAttempted;
@@ -16320,7 +16424,7 @@ async function handleOrchestrationHealth() {
16320
16424
  async function handleWorkMap() {
16321
16425
  try {
16322
16426
  const { getAgentLivenessReport } = await import("./agent-heartbeat-GUVUUQVM.js");
16323
- const { classifyRole } = await import("./session-kill-telemetry-RWRWOW4C.js");
16427
+ const { classifyRole } = await import("./session-kill-telemetry-ZOSAIYU2.js");
16324
16428
  const { buildSessionDeathSummary } = await import("./orchestration-health-read-EJWVUARG.js");
16325
16429
  const { getPaneCwd } = await import("./lib/tmux-status.js");
16326
16430
  const live = getAgentLivenessReport();
@@ -16390,7 +16494,7 @@ async function handleWorkMap() {
16390
16494
  async function handleWorkState(input) {
16391
16495
  try {
16392
16496
  const { getClient: getClient2 } = await import("./lib/database.js");
16393
- const { readWorkState, listWorkStates } = await import("./work-state-heartbeat-MTTUGMPU.js");
16497
+ const { readWorkState, listWorkStates } = await import("./work-state-heartbeat-GAIQ7M73.js");
16394
16498
  const client = await getClient2();
16395
16499
  const sessionScope = typeof input.session_scope === "string" ? input.session_scope.trim() : "";
16396
16500
  if (sessionScope) {
@@ -16492,7 +16596,7 @@ async function handleDrift(input) {
16492
16596
  }
16493
16597
  async function handleSteward(action, input) {
16494
16598
  const gate = new StewardGate();
16495
- const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-5AKPW2N7.js");
16599
+ const { getActiveAgent: getActiveAgent2 } = await import("./active-agent-2ELFTYNT.js");
16496
16600
  const inputAgent = input.agent_id;
16497
16601
  const operation = input.operation;
16498
16602
  const target = input.target;
@@ -16790,7 +16894,7 @@ function registerResonance(server) {
16790
16894
  }
16791
16895
  }, async ({ action, memory_id, entity_id, limit }) => {
16792
16896
  try {
16793
- const { getHotPairs, getCoActivationNeighbors } = await import("./co-activation-2ZRANV3Q.js");
16897
+ const { getHotPairs, getCoActivationNeighbors } = await import("./co-activation-V5XXR327.js");
16794
16898
  if (action === "hot_pairs") {
16795
16899
  const pairs = await getHotPairs(limit ?? 20);
16796
16900
  if (pairs.length === 0) return text4("No co-activation data yet. Pairs are recorded as memories are accessed together in searches.");
@@ -17854,7 +17958,7 @@ var OrgAssignmentEpochError = class extends OrgAssignmentError {
17854
17958
  };
17855
17959
  async function heldOrgKeyEpoch(orgId) {
17856
17960
  try {
17857
- const mod = await import("./org-key-pin-HUSXGINB.js");
17961
+ const mod = await import("./org-key-pin-GLQEU3P3.js");
17858
17962
  const fn = mod.pinnedOrgKeyEpochs;
17859
17963
  if (typeof fn === "function") {
17860
17964
  const epochs = fn(orgId);