@askexenow/exe-os 0.9.374 → 0.9.376

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 (455) hide show
  1. package/deploy/compose/.env.customer.example +16 -1
  2. package/deploy/compose/.env.example +16 -1
  3. package/deploy/compose/docker-compose.yml +80 -18
  4. package/deploy/compose/gateway-watchdog.sh +17 -0
  5. package/deploy/compose/generate-env.ts +41 -1
  6. package/deploy/compose/sso-edge/default.conf.template +59 -63
  7. package/deploy/compose/sso-edge/error-pages/404.html +129 -0
  8. package/deploy/compose/sso-edge/error-pages/500.html +129 -0
  9. package/deploy/compose/sso-edge/error-pages/503.html +118 -0
  10. package/deploy/compose/sso-edge/sso-redirect.conf +115 -92
  11. package/dist/.dist-verified.json +3 -3
  12. package/dist/{active-agent-ONPPEWQV.js → active-agent-BOBBUJ74.js} +6 -6
  13. package/dist/{active-agent-UJKMG7LJ.js → active-agent-GFGEGK2U.js} +6 -6
  14. package/dist/{agent-defs-generator-ZWI6DXOE.js → agent-defs-generator-OX6UFPRX.js} +5 -5
  15. package/dist/{agent-loop-OYHJKNYH.js → agent-loop-7ZRH56EX.js} +1 -1
  16. package/dist/{agentic-ontology-WHFJ3QFS.js → agentic-ontology-DT3VOXBT.js} +1 -1
  17. package/dist/{backfill-metadata-3OUSQD5V.js → backfill-metadata-VRP6PTPP.js} +9 -9
  18. package/dist/{backup-verify-ZKTUYLTA.js → backup-verify-LWHKGOOV.js} +1 -1
  19. package/dist/behavior-injection-GMZKZ3BT.js +83 -0
  20. package/dist/behavior-promotion-QPC4AQ24.js +62 -0
  21. package/dist/{behaviors-ZJ45TFBJ.js → behaviors-GPI4BLTC.js} +16 -14
  22. package/dist/bin/agentic-ontology-backfill.js +10 -10
  23. package/dist/bin/agentic-reflection-backfill.js +11 -11
  24. package/dist/bin/agentic-semantic-label.js +10 -10
  25. package/dist/bin/backfill-conversations.js +14 -12
  26. package/dist/bin/backfill-responses.js +14 -12
  27. package/dist/bin/backfill-vectors.js +16 -14
  28. package/dist/bin/bulk-sync-postgres.js +21 -19
  29. package/dist/bin/cc-doctor.js +19 -11
  30. package/dist/bin/cleanup-stale-review-tasks.js +27 -26
  31. package/dist/bin/cli.js +83 -109
  32. package/dist/bin/daemon-restart-handoff.js +2 -1
  33. package/dist/bin/deferred-daemon-restart.js +118 -110
  34. package/dist/bin/exe-actions.js +176 -0
  35. package/dist/bin/exe-agent-config.js +5 -5
  36. package/dist/bin/exe-agent.js +23 -23
  37. package/dist/bin/exe-assign.js +16 -14
  38. package/dist/bin/exe-boot.js +91 -71
  39. package/dist/bin/exe-call.js +8 -8
  40. package/dist/bin/exe-cicd.js +1210 -0
  41. package/dist/bin/exe-cloud.js +70 -37
  42. package/dist/bin/exe-config-dump.js +5 -5
  43. package/dist/bin/exe-dispatch.js +28 -27
  44. package/dist/bin/exe-doctor.js +12 -11
  45. package/dist/bin/exe-export-behaviors.js +20 -18
  46. package/dist/bin/exe-forget.js +11 -11
  47. package/dist/bin/exe-gateway.js +10 -10
  48. package/dist/bin/exe-healthcheck.js +22 -10
  49. package/dist/bin/exe-heartbeat.js +33 -32
  50. package/dist/bin/exe-kill.js +32 -31
  51. package/dist/bin/exe-launch-agent.js +76 -54
  52. package/dist/bin/exe-mcp.js +10 -6
  53. package/dist/bin/exe-memory-reads.js +9 -9
  54. package/dist/bin/exe-model-supervisor.js +138 -0
  55. package/dist/bin/exe-new-employee.js +14 -14
  56. package/dist/bin/exe-os-mcp-proxy.js +10 -6
  57. package/dist/bin/exe-pending-messages.js +28 -27
  58. package/dist/bin/exe-pending-notifications.js +27 -26
  59. package/dist/bin/exe-pending-reviews.js +28 -27
  60. package/dist/bin/exe-rename.js +9 -9
  61. package/dist/bin/exe-repo-truth.js +1 -1
  62. package/dist/bin/exe-review.js +31 -30
  63. package/dist/bin/exe-search.js +10 -10
  64. package/dist/bin/exe-session-cleanup.js +32 -31
  65. package/dist/bin/exe-settings.js +21 -19
  66. package/dist/bin/exe-start-codex.js +31 -25
  67. package/dist/bin/exe-start-opencode.js +24 -22
  68. package/dist/bin/exe-start.sh +11 -2
  69. package/dist/bin/exe-status.js +29 -28
  70. package/dist/bin/exe-support.js +3 -3
  71. package/dist/bin/exe-team.js +7 -7
  72. package/dist/bin/exe-timers.js +2 -1
  73. package/dist/bin/exe-watchdog.js +170 -16
  74. package/dist/bin/generate-hook-manifest.js +8 -41
  75. package/dist/bin/git-sweep.js +28 -27
  76. package/dist/bin/graph-backfill.js +11 -11
  77. package/dist/bin/graph-export.js +10 -10
  78. package/dist/bin/hooks-cli.js +289 -0
  79. package/dist/bin/import-history.js +14 -14
  80. package/dist/bin/install.js +130 -116
  81. package/dist/bin/intercom-check.js +5 -5
  82. package/dist/bin/mcp-sessions.js +2 -2
  83. package/dist/bin/orchestration-metrics.js +7 -7
  84. package/dist/bin/postgres-agentic-reflection-backfill.js +4 -4
  85. package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
  86. package/dist/bin/pre-publish.js +1 -1
  87. package/dist/bin/reconcile-backlog.js +2 -2
  88. package/dist/bin/registry-proxy.js +2 -2
  89. package/dist/bin/scan-tasks.js +52 -38
  90. package/dist/bin/setup.js +1 -1
  91. package/dist/bin/shard-migrate.js +9 -9
  92. package/dist/bin/stack-update.js +10 -5
  93. package/dist/bin/verify-stack.js +3 -1
  94. package/dist/bin/vps-health-gate.js +1 -1
  95. package/dist/{boot-generation-JKVZ4ZAT.js → boot-generation-BN6GKASY.js} +6 -6
  96. package/dist/{boot-review-sections-2M6BTG73.js → boot-review-sections-OQ5JGSOD.js} +26 -25
  97. package/dist/{branch-hygiene-U5GFRSTP.js → branch-hygiene-QLD77IMJ.js} +1 -1
  98. package/dist/build-manifest.json +1186 -1106
  99. package/dist/{capability-cards-5IMJT6J7.js → capability-cards-EDZ62HKG.js} +5 -5
  100. package/dist/{capacity-monitor-SAXCQK7O.js → capacity-monitor-6GMTVILS.js} +28 -27
  101. package/dist/{catchup-brief-U2TXBLHD.js → catchup-brief-SGGBMDUP.js} +32 -31
  102. package/dist/{cc-binary-detect-6TNIY5JX.js → cc-binary-detect-ZR6WNOUU.js} +1 -3
  103. package/dist/{chunk-NKETJCB5.js → chunk-2ODXCCMR.js} +18 -3
  104. package/dist/{hook-integrity-KGAV6ZC2.js → chunk-3L72UBUH.js} +28 -15
  105. package/dist/chunk-3OX5S7KZ.js +273 -0
  106. package/dist/{chunk-W75GTHR3.js → chunk-3SRZNJKD.js} +1 -1
  107. package/dist/{chunk-I4DNJFDR.js → chunk-42IFYZUN.js} +4 -4
  108. package/dist/{chunk-JHI5WMK5.js → chunk-473JUDCT.js} +5 -5
  109. package/dist/{chunk-ANLFH23R.js → chunk-4F5CNI65.js} +1 -1
  110. package/dist/{chunk-AWWKRZMB.js → chunk-4KVSCQND.js} +87 -14
  111. package/dist/{chunk-ZCERWHY2.js → chunk-4M6RXJEY.js} +33 -23
  112. package/dist/{chunk-YTSXPJUQ.js → chunk-4YJEEOYT.js} +3 -3
  113. package/dist/{chunk-6RKKVPYF.js → chunk-4YUGB637.js} +1 -1
  114. package/dist/{chunk-XXOPG4BW.js → chunk-4ZSOKEDY.js} +3 -3
  115. package/dist/{chunk-55BEFF4V.js → chunk-5DF4Y6EC.js} +1 -1
  116. package/dist/{chunk-4QCFFW2H.js → chunk-5QCIWWFA.js} +46 -0
  117. package/dist/{chunk-3UUX5OY4.js → chunk-5QKLWJ4Z.js} +1 -1
  118. package/dist/{chunk-YSLGFPWX.js → chunk-5UBWBXLF.js} +3 -3
  119. package/dist/chunk-5WA4DG2A.js +117 -0
  120. package/dist/{chunk-4EN3IZ3Q.js → chunk-64ODONK2.js} +67 -1
  121. package/dist/{chunk-TAMDAOCU.js → chunk-66CGXQUA.js} +239 -39
  122. package/dist/{chunk-QHJR7IMX.js → chunk-6F3FQCAQ.js} +3 -3
  123. package/dist/{chunk-WMEYJT4R.js → chunk-6FG34V6D.js} +15 -14
  124. package/dist/{chunk-NMH5ZQPU.js → chunk-6KQ6WMTI.js} +1 -1
  125. package/dist/{chunk-IRVOXUSK.js → chunk-6WKBTZVL.js} +10 -4
  126. package/dist/{chunk-NOKJCF27.js → chunk-7INEFMVU.js} +9 -3
  127. package/dist/{chunk-GSJLB6JI.js → chunk-7THUQU44.js} +34 -8
  128. package/dist/{chunk-HDLAB7W3.js → chunk-7UH2JWBF.js} +1 -1
  129. package/dist/{chunk-KTCXJWJG.js → chunk-7UNMSF5O.js} +1 -1
  130. package/dist/{chunk-JTVIANUB.js → chunk-AEUGIJDO.js} +3 -1
  131. package/dist/{chunk-DSJI76XL.js → chunk-AHNVFBVB.js} +113 -16
  132. package/dist/{chunk-IBS2FAI4.js → chunk-AUKRBHHZ.js} +4 -1
  133. package/dist/{chunk-AKLJ4JH3.js → chunk-BBK2TSK3.js} +1 -1
  134. package/dist/{chunk-ZL4AGWAH.js → chunk-BNWWVYRN.js} +6 -5
  135. package/dist/{chunk-PY3FOMRN.js → chunk-BQEZPRUC.js} +4 -4
  136. package/dist/{chunk-DIXXEE3S.js → chunk-BQXYXJYC.js} +721 -309
  137. package/dist/{chunk-ORM7ZFKC.js → chunk-BZ546I4Q.js} +32 -0
  138. package/dist/{chunk-3KDCORDO.js → chunk-C2UN464N.js} +1 -1
  139. package/dist/{chunk-75H4R62K.js → chunk-CBPNZFSU.js} +0 -2
  140. package/dist/{chunk-YLXTKI6M.js → chunk-CHO5SNWR.js} +1 -1
  141. package/dist/{chunk-MXPNVSXI.js → chunk-CIEVY5TD.js} +11 -11
  142. package/dist/{chunk-UBK7HK3J.js → chunk-CKLJT2DH.js} +2 -2
  143. package/dist/{chunk-MOGA4Q7F.js → chunk-CKOJP7JI.js} +1 -1
  144. package/dist/{chunk-V3W3SATA.js → chunk-CL4J4757.js} +1 -1
  145. package/dist/{chunk-XNNECNDL.js → chunk-CQFWTWC6.js} +13 -13
  146. package/dist/{chunk-PDVXWXTL.js → chunk-CROVXJ4S.js} +3 -3
  147. package/dist/{chunk-WJG344NC.js → chunk-CWSLTSL6.js} +8 -8
  148. package/dist/{chunk-VMTZ4RUW.js → chunk-DDMGQ5Q3.js} +60 -26
  149. package/dist/{chunk-YKC7QDZH.js → chunk-DN24VTS5.js} +31 -6
  150. package/dist/{chunk-IN6CAM4F.js → chunk-EHAN752X.js} +7 -7
  151. package/dist/{chunk-EXTZSNWL.js → chunk-EPHSISMT.js} +2 -2
  152. package/dist/{chunk-6EZQUNE6.js → chunk-FCMQVEVL.js} +36 -3
  153. package/dist/{chunk-3L2QU5ZF.js → chunk-FS7XF7SE.js} +1 -1
  154. package/dist/{chunk-LGS2V2XD.js → chunk-FUKVP54K.js} +66 -19
  155. package/dist/{chunk-44TLJZJ5.js → chunk-FX2QRSRT.js} +1 -1
  156. package/dist/{chunk-PWRC5XZO.js → chunk-FXZ6VGFW.js} +16 -8
  157. package/dist/{chunk-NT7W4RXD.js → chunk-GKDAQL45.js} +1 -1
  158. package/dist/{chunk-EKE37MO4.js → chunk-GOT5ZHPX.js} +3 -3
  159. package/dist/{chunk-SLLLOOEI.js → chunk-GPJIBLP4.js} +1 -0
  160. package/dist/{chunk-EKYYMIVT.js → chunk-GPUOUUHA.js} +10 -1
  161. package/dist/{chunk-PB5S7YOF.js → chunk-GXNBPTPJ.js} +1 -1
  162. package/dist/{chunk-4SJ4LK4V.js → chunk-HE34XVD5.js} +5 -5
  163. package/dist/{chunk-6VHOQ3IM.js → chunk-HHAKXIKX.js} +12 -9
  164. package/dist/{chunk-TFKCERAK.js → chunk-HHT527PV.js} +38 -41
  165. package/dist/{chunk-ZSODLMFV.js → chunk-HIVOLPLD.js} +1 -40
  166. package/dist/{chunk-UCFC2AEI.js → chunk-I3LDTSWU.js} +1 -1
  167. package/dist/{chunk-Q3AXXKDF.js → chunk-IKXH4BFC.js} +5 -5
  168. package/dist/chunk-IMYGYIAI.js +23 -0
  169. package/dist/{chunk-GS7LIT34.js → chunk-IPHLUZ37.js} +1 -1
  170. package/dist/{chunk-M4IRPXSZ.js → chunk-IZA7XW2Q.js} +3 -3
  171. package/dist/{chunk-SEQIPGLU.js → chunk-IZLML47J.js} +1 -1
  172. package/dist/{chunk-4HKTO2SV.js → chunk-JRMHGO5B.js} +1 -1
  173. package/dist/{chunk-U73AC5AN.js → chunk-JSTTPYL3.js} +16 -16
  174. package/dist/{chunk-6SCGLHJ7.js → chunk-JVWLHBAV.js} +4 -4
  175. package/dist/{chunk-OVEQE6YS.js → chunk-K7UNIEB4.js} +254 -48
  176. package/dist/{chunk-HNWS7YHN.js → chunk-KBR5LIWD.js} +1 -1
  177. package/dist/{chunk-AKLQSC6W.js → chunk-KI7O64XV.js} +328 -98
  178. package/dist/{chunk-XXFKSJYA.js → chunk-KK3MIY5C.js} +5 -5
  179. package/dist/{chunk-U6SUKSZR.js → chunk-KO3OHI6V.js} +3 -3
  180. package/dist/{chunk-NJFJWQNN.js → chunk-L5CGXEZC.js} +27 -22
  181. package/dist/{chunk-NBXDXKLC.js → chunk-LK3XQDBP.js} +1 -1
  182. package/dist/{chunk-T3QUKNLI.js → chunk-LM443ORV.js} +1 -1
  183. package/dist/{chunk-BBSIEYF5.js → chunk-LNAFLXL7.js} +12 -4
  184. package/dist/{chunk-32YV32VA.js → chunk-LTUA5EYI.js} +122 -11
  185. package/dist/{chunk-23MVDXLY.js → chunk-MAXD5JQL.js} +11 -10
  186. package/dist/{chunk-GNUAL43X.js → chunk-MFASHRJ6.js} +5 -5
  187. package/dist/chunk-MFYMDGE7.js +37 -0
  188. package/dist/{chunk-VKJGHAZT.js → chunk-MGVILAYU.js} +57 -13
  189. package/dist/{chunk-DB55JZHU.js → chunk-MSLWRWTI.js} +1 -1
  190. package/dist/{chunk-C2L622QJ.js → chunk-NB5IRTC4.js} +52 -44
  191. package/dist/{chunk-2ZOEC4KC.js → chunk-ND75TGPR.js} +2 -2
  192. package/dist/{chunk-VRTCVZND.js → chunk-NE34MWVL.js} +142 -16
  193. package/dist/{chunk-S2WBS6BG.js → chunk-NMOFLWDY.js} +1 -1
  194. package/dist/{chunk-CRCB5S7I.js → chunk-NPXKGBVZ.js} +140 -23
  195. package/dist/{chunk-JSMDRKPJ.js → chunk-NRBGUIPE.js} +1 -1
  196. package/dist/{chunk-4LWBC7CM.js → chunk-NY6SBR4O.js} +1 -1
  197. package/dist/{chunk-UCUOGVDX.js → chunk-O3K2C22L.js} +13 -1
  198. package/dist/{chunk-R522MWAR.js → chunk-OATET4BV.js} +2 -2
  199. package/dist/chunk-OOZU5H3T.js +86 -0
  200. package/dist/{chunk-XFTEX77S.js → chunk-OQ4FNDRG.js} +28 -6
  201. package/dist/{chunk-VYQ7B7DI.js → chunk-OWVX52XF.js} +4 -4
  202. package/dist/{chunk-AETLDRZB.js → chunk-PEAAX6UA.js} +1 -1
  203. package/dist/{chunk-UM3N6VND.js → chunk-PFAVHC5N.js} +5 -5
  204. package/dist/chunk-PMVVUIHH.js +85 -0
  205. package/dist/chunk-PPMGQFLJ.js +2317 -0
  206. package/dist/{chunk-7TSBV3SD.js → chunk-PTY2N23C.js} +310 -2
  207. package/dist/{chunk-UKLN57Q5.js → chunk-PZ5SKYK6.js} +4 -4
  208. package/dist/{chunk-636LKCKE.js → chunk-Q6ZLQMP2.js} +1 -1
  209. package/dist/{chunk-N7VEP5B3.js → chunk-QFR5EKZG.js} +29 -7
  210. package/dist/{chunk-YMP2QSOP.js → chunk-QN56VQ6Z.js} +1 -1
  211. package/dist/{chunk-6YVUR3OU.js → chunk-QR3BUMOS.js} +2 -2
  212. package/dist/{chunk-XZ65ST2I.js → chunk-QV5CQLQH.js} +2 -2
  213. package/dist/{chunk-DJOIMFKV.js → chunk-REZIGNA6.js} +2 -2
  214. package/dist/{chunk-UQGSBM3U.js → chunk-RFPMXR6B.js} +11 -0
  215. package/dist/{chunk-DN4YVV4Z.js → chunk-RSABKW6B.js} +1 -1
  216. package/dist/{chunk-LP4GB656.js → chunk-RZNP35SI.js} +2 -2
  217. package/dist/{chunk-NUTZJZKW.js → chunk-SKTAZGFI.js} +10 -42
  218. package/dist/{chunk-TQAZTRQ3.js → chunk-SVXUT2DN.js} +4 -4
  219. package/dist/{chunk-DJ7YXOTU.js → chunk-T7EF5CQO.js} +3 -3
  220. package/dist/{chunk-QAEWWYHL.js → chunk-TDF2XKLK.js} +5 -1
  221. package/dist/{chunk-ZGYNKA3O.js → chunk-TT5BBVLX.js} +29 -31
  222. package/dist/{chunk-5H47VHB7.js → chunk-UWX6MMCX.js} +1 -1
  223. package/dist/{chunk-XL5MFGMR.js → chunk-V4YNN7PA.js} +10 -3
  224. package/dist/{chunk-SL6KQYDU.js → chunk-V5DDXXMP.js} +7 -7
  225. package/dist/{chunk-DZKPOSFD.js → chunk-VH6SPPNA.js} +1 -1
  226. package/dist/{chunk-LDNYSMPZ.js → chunk-VJUUI2VT.js} +1 -1
  227. package/dist/{chunk-CBCGDEJA.js → chunk-VN5WOOAQ.js} +42 -6
  228. package/dist/{chunk-EXDW3E2R.js → chunk-VPHJ2LUI.js} +165 -15
  229. package/dist/{chunk-GOMQ7PVQ.js → chunk-WJC6AAJN.js} +1 -1
  230. package/dist/{chunk-GJI77VDO.js → chunk-WVBVUVZB.js} +6 -5
  231. package/dist/{chunk-A6PDF4BO.js → chunk-XTQ7R2PA.js} +2 -2
  232. package/dist/{chunk-L6RXG36J.js → chunk-Y2HD2YB7.js} +1 -1
  233. package/dist/{chunk-KTU3EAWK.js → chunk-YAACLBZ7.js} +5 -5
  234. package/dist/{chunk-7GE2EQ23.js → chunk-YGVAKKGJ.js} +11 -6
  235. package/dist/chunk-YLHACCCB.js +166 -0
  236. package/dist/{chunk-PLZSZOZN.js → chunk-YP6UGVEY.js} +3 -3
  237. package/dist/{chunk-ULIBLJ6W.js → chunk-YYC553FO.js} +5 -5
  238. package/dist/{chunk-T35RCQFE.js → chunk-YZPEQW7H.js} +9 -8
  239. package/dist/{chunk-KI5PFRG6.js → chunk-ZKGWHT56.js} +60 -2
  240. package/dist/{chunk-NUK7EEN5.js → chunk-ZKJ5S23O.js} +33 -13
  241. package/dist/chunk-ZLPS3GR7.js +146 -0
  242. package/dist/{chunk-XH7YL7JM.js → chunk-ZMX22HSS.js} +50 -6
  243. package/dist/{chunk-JY5GAZYC.js → chunk-ZQEJ4IX2.js} +4 -0
  244. package/dist/{chunk-R4CBHKZ2.js → chunk-ZS5JO6QV.js} +7 -6
  245. package/dist/{cleanup-graph-garbage-DPJGO52H.js → cleanup-graph-garbage-LAPIZGFX.js} +12 -12
  246. package/dist/{cloud-sync-command-JPNTT4OQ.js → cloud-sync-command-QAZ2NWRA.js} +11 -2
  247. package/dist/{cloud-sync-db-init-V2LWIUQU.js → cloud-sync-db-init-HAGVF32Y.js} +1 -1
  248. package/dist/{cloud-sync-shutdown-BNALPWGX.js → cloud-sync-shutdown-DAEPCFVK.js} +5 -5
  249. package/dist/{co-activation-CMNSWS6B.js → co-activation-523TKQPZ.js} +5 -5
  250. package/dist/{co-occurrence-WRI2NAN6.js → co-occurrence-PQUCTENN.js} +36 -17
  251. package/dist/{code-context-index-NOJSHLPN.js → code-context-index-LIDOFKOR.js} +6 -4
  252. package/dist/{code-context-watcher-VZNZU3BO.js → code-context-watcher-4F7K2N3U.js} +6 -4
  253. package/dist/{content-extractor-NXYNEF5K.js → content-extractor-DJM5EUDA.js} +2 -2
  254. package/dist/{conversation-entity-extractor-74252CAO.js → conversation-entity-extractor-THGKQ5RD.js} +5 -5
  255. package/dist/{crdt-sync-B3JN6AIV.js → crdt-sync-32B55NOJ.js} +1 -1
  256. package/dist/{crm-webhook-GYWQRFET.js → crm-webhook-FHRISFYQ.js} +2 -2
  257. package/dist/{cto-delegation-gate-LQHVLEMW.js → cto-delegation-gate-O6XPGECP.js} +27 -26
  258. package/dist/{daemon-auth-QZHEO7IQ.js → daemon-auth-PNKHERLV.js} +6 -1
  259. package/dist/daemon-drift-N2GKUBAO.js +15 -0
  260. package/dist/{daemon-orchestration-5HIQALZH.js → daemon-orchestration-BWLSJG2X.js} +33 -30
  261. package/dist/{daemon-ready-P2BR2XP5.js → daemon-ready-BN6EZLTQ.js} +1 -1
  262. package/dist/{daemon-ready-signal-CKXPUMJ2.js → daemon-ready-signal-PNDMVKPJ.js} +3 -1
  263. package/dist/{daemon-restart-circuit-breaker-SMTWFX27.js → daemon-restart-circuit-breaker-CD4VMCU7.js} +1 -1
  264. package/dist/daemon-restart-report-FIO5HZTJ.js +15 -0
  265. package/dist/{daemon-timer-report-TNJH5SFY.js → daemon-timer-report-6UK5PSDP.js} +2 -1
  266. package/dist/{db-integrity-events-2DTFO37N.js → db-integrity-events-GYGANKZV.js} +1 -1
  267. package/dist/{destructive-data-guard-BVFWPPIS.js → destructive-data-guard-HHWUBIGS.js} +1 -1
  268. package/dist/{doc-graph-extractor-PQHDHQPQ.js → doc-graph-extractor-HOKOV7BE.js} +10 -10
  269. package/dist/{documents-C4SSPJMC.js → documents-HWEJMONR.js} +16 -14
  270. package/dist/{dreaming-XAO3FCBV.js → dreaming-FMNDODG2.js} +31 -30
  271. package/dist/{employee-boot-brief-W4OHUMRQ.js → employee-boot-brief-DBFROOQJ.js} +35 -34
  272. package/dist/{entity-boost-3UWGXG5O.js → entity-boost-5V4W6NFA.js} +1 -1
  273. package/dist/{exe-drift-AG2KMKD5.js → exe-drift-V55UAYRT.js} +6 -6
  274. package/dist/{exe-export-IC5BT335.js → exe-export-LHN42ZUS.js} +18 -16
  275. package/dist/{exe-import-A35ZLDPG.js → exe-import-M536BEZC.js} +18 -16
  276. package/dist/{exe-key-TCMJNYLA.js → exe-key-37XIR22X.js} +111 -107
  277. package/dist/{exe-org-JXCR3JYZ.js → exe-org-7TDIRNTE.js} +14 -14
  278. package/dist/{exe-snapshot-SV6SRIG6.js → exe-snapshot-EOUBCIQK.js} +34 -33
  279. package/dist/{fast-db-init-L2RGKJWH.js → fast-db-init-GWUZ746B.js} +1 -1
  280. package/dist/{founder-context-D4HFIESJ.js → founder-context-6LQKET4A.js} +2 -2
  281. package/dist/{fts-integrity-4YB34KWX.js → fts-integrity-PLAL6NMG.js} +1 -1
  282. package/dist/gateway/index.js +17 -17
  283. package/dist/{git-main-guard-VTW4N3CM.js → git-main-guard-BGICS25C.js} +1 -1
  284. package/dist/{git-staleness-TN7CYGFG.js → git-staleness-QNNXJK3W.js} +5 -5
  285. package/dist/{global-procedures-YFDEIOG7.js → global-procedures-NMQGF54V.js} +7 -7
  286. package/dist/{gotrue-session-ODZ2ERJX.js → gotrue-session-U4H3UGHL.js} +1 -3
  287. package/dist/{graph-auto-extract-3YR3TYRW.js → graph-auto-extract-7POGAKHM.js} +10 -10
  288. package/dist/{graph-query-AP5R6ZHO.js → graph-query-ZEDO4BDF.js} +1 -1
  289. package/dist/{graph-rag-Z2KCJTPK.js → graph-rag-JA7XN7NO.js} +5 -5
  290. package/dist/hook-integrity-6NLSNTXD.js +15 -0
  291. package/dist/{hook-prefetch-K5DN3TOQ.js → hook-prefetch-4KH3D4YU.js} +28 -26
  292. package/dist/hook-tamper-log-Z4PWC7N4.js +90 -0
  293. package/dist/hooks/bug-report-worker.js +31 -30
  294. package/dist/hooks/codex-stop-task-finalizer.js +33 -32
  295. package/dist/hooks/commit-complete.js +30 -29
  296. package/dist/hooks/error-recall.js +12 -12
  297. package/dist/hooks/exe-heartbeat-hook.js +7 -7
  298. package/dist/hooks/ingest-worker.js +17 -15
  299. package/dist/hooks/ingest.js +20 -20
  300. package/dist/hooks/instructions-loaded.js +9 -9
  301. package/dist/hooks/manifest.json +20 -20
  302. package/dist/hooks/notification.js +8 -8
  303. package/dist/hooks/post-compact.js +7 -7
  304. package/dist/hooks/post-tool-combined.js +14 -14
  305. package/dist/hooks/pre-compact.js +30 -29
  306. package/dist/hooks/pre-tool-use.js +303 -489
  307. package/dist/hooks/prompt-submit.js +61 -54
  308. package/dist/hooks/session-end.js +35 -34
  309. package/dist/hooks/session-start.js +18 -18
  310. package/dist/hooks/stop.js +36 -35
  311. package/dist/hooks/subagent-stop.js +32 -31
  312. package/dist/hooks/summary-worker.js +36 -35
  313. package/dist/index.js +39 -38
  314. package/dist/{installer-LK35OX6R.js → installer-M34Q7LAS.js} +25 -10
  315. package/dist/{installer-54HTN5RE.js → installer-POV6TDQ5.js} +12 -8
  316. package/dist/{installer-LLWKZI2S.js → installer-S624ZOMB.js} +12 -8
  317. package/dist/{intercom-queue-5NOT2RKI.js → intercom-queue-MKDWAEUV.js} +26 -25
  318. package/dist/lib/cloud-sync.js +27 -19
  319. package/dist/lib/consolidation.js +12 -12
  320. package/dist/lib/database.js +5 -5
  321. package/dist/lib/db-backup.js +7 -1
  322. package/dist/lib/db-daemon-client.js +8 -6
  323. package/dist/lib/db-write-worker.js +4 -4
  324. package/dist/lib/db.js +5 -5
  325. package/dist/lib/device-registry.js +1 -1
  326. package/dist/lib/embedder.js +6 -4
  327. package/dist/lib/employee-templates.js +8 -8
  328. package/dist/lib/employees.js +5 -5
  329. package/dist/lib/exe-daemon-client.js +5 -3
  330. package/dist/lib/exe-daemon.js +333 -262
  331. package/dist/lib/hybrid-search.js +10 -10
  332. package/dist/lib/identity-templates.js +1 -1
  333. package/dist/lib/identity.js +17 -7
  334. package/dist/lib/license.js +2 -2
  335. package/dist/lib/messaging.js +27 -26
  336. package/dist/lib/post-tool-memory.js +9 -9
  337. package/dist/lib/registry-proxy.js +3 -1
  338. package/dist/lib/reminders.js +6 -6
  339. package/dist/lib/schedules.js +11 -11
  340. package/dist/lib/session-registry.js +11 -7
  341. package/dist/lib/session-wrappers.js +1 -1
  342. package/dist/lib/skill-learning.js +17 -15
  343. package/dist/lib/status-brief.js +2 -1
  344. package/dist/lib/store.js +9 -9
  345. package/dist/lib/task-router.js +6 -6
  346. package/dist/lib/tasks.js +28 -27
  347. package/dist/lib/tmux-routing.js +26 -25
  348. package/dist/lib/tmux-status.js +5 -1
  349. package/dist/lib/token-spend.js +6 -6
  350. package/dist/{license-gate-JVMB6OFD.js → license-gate-2QNMBAZU.js} +3 -3
  351. package/dist/{license-sync-5VYS2F2W.js → license-sync-FEDKH5MD.js} +2 -2
  352. package/dist/{mailbox-inbox-4MEUOL3J.js → mailbox-inbox-XE72D3AX.js} +2 -2
  353. package/dist/{mailbox-outbox-J6WIF3UY.js → mailbox-outbox-DNDDP2HW.js} +1 -1
  354. package/dist/mcp/register-tools.js +110 -106
  355. package/dist/mcp/server.js +113 -109
  356. package/dist/mcp/tools/complete-reminder.js +7 -7
  357. package/dist/mcp/tools/create-reminder.js +7 -7
  358. package/dist/mcp/tools/create-task.js +30 -29
  359. package/dist/mcp/tools/deactivate-behavior.js +18 -16
  360. package/dist/mcp/tools/list-reminders.js +7 -7
  361. package/dist/mcp/tools/list-tasks.js +30 -29
  362. package/dist/mcp/tools/send-message.js +33 -30
  363. package/dist/mcp/tools/update-task.js +29 -28
  364. package/dist/{mcp-child-registry-OTG4MWO7.js → mcp-child-registry-DVHYAHPW.js} +2 -2
  365. package/dist/{mcp-health-HNVSWKFA.js → mcp-health-B5EKRCZG.js} +2 -2
  366. package/dist/{mcp-http-config-DQWL7U2Z.js → mcp-http-config-ZJ7XHWT7.js} +10 -6
  367. package/dist/{mcp-session-identity-277GASTQ.js → mcp-session-identity-PEVM7VIP.js} +26 -25
  368. package/dist/{memory-cards-3S2ZQPR7.js → memory-cards-VN5DEWPD.js} +9 -9
  369. package/dist/{memory-graph-extractor-A6DFEFIN.js → memory-graph-extractor-TMEB6WLA.js} +11 -11
  370. package/dist/{memory-poisoning-defense-ZVP4H6DY.js → memory-poisoning-defense-DYHARQ2G.js} +5 -5
  371. package/dist/{memory-pressure-watchdog-6W5F6R7H.js → memory-pressure-watchdog-J6Q3SIBL.js} +27 -26
  372. package/dist/{memory-queue-client-ADSDP6OX.js → memory-queue-client-QC2OTMJB.js} +6 -4
  373. package/dist/{memory-reflection-BKB2YOE6.js → memory-reflection-ZYJUOSFX.js} +9 -9
  374. package/dist/{message-queue-client-XQN7QABL.js → message-queue-client-OEQCGSWC.js} +1 -25
  375. package/dist/{notification-ledger-CLGM7ODF.js → notification-ledger-TG6EFYBP.js} +29 -28
  376. package/dist/{notifications-MACUZPYP.js → notifications-LGYY22W5.js} +26 -25
  377. package/dist/{orchestration-events-N7LYMUGA.js → orchestration-events-JPHB6NPY.js} +6 -6
  378. package/dist/{orchestrator-4X24EWHV.js → orchestrator-IC4WGP6L.js} +28 -27
  379. package/dist/{org-brief-session-FZOFMO5U.js → org-brief-session-DEPHWCQR.js} +9 -9
  380. package/dist/{org-consent-policy-O5E6HXBL.js → org-consent-policy-T27AO5OJ.js} +2 -2
  381. package/dist/{org-join-POWUG25F.js → org-join-A3YXC5RB.js} +2 -2
  382. package/dist/{org-key-admin-E7EMDOZZ.js → org-key-admin-SQFHCVP2.js} +3 -3
  383. package/dist/{org-partner-runtime-FODONVTM.js → org-partner-runtime-L7L2WWGN.js} +10 -10
  384. package/dist/{org-row-visibility-VX4AVV5Q.js → org-row-visibility-M54Z6ZH3.js} +1 -1
  385. package/dist/{pipeline-router-6GGT2ZW3.js → pipeline-router-NKYAUR3Y.js} +6 -6
  386. package/dist/{plan-limits-FUN76LYY.js → plan-limits-ISRRGF23.js} +8 -8
  387. package/dist/{platform-procedures-7YSCLF4Z.js → platform-procedures-Z7ZGBJWN.js} +1 -1
  388. package/dist/{project-boot-3Q65LCIP.js → project-boot-BLYGVUJH.js} +4 -1
  389. package/dist/{project-name-LJVFMYTQ.js → project-name-WKSNNKXK.js} +6 -6
  390. package/dist/{projection-worker-4OANGP5K.js → projection-worker-RNYPE46G.js} +2 -2
  391. package/dist/{prospective-memory-KR3P4T6N.js → prospective-memory-GEO6E3UL.js} +5 -5
  392. package/dist/{push-notifications-NCZLH6DI.js → push-notifications-EY6BXZUY.js} +27 -26
  393. package/dist/{reproject-worktree-memories-PWYKPB2U.js → reproject-worktree-memories-DAA5GWMH.js} +28 -27
  394. package/dist/{reranker-6V3C2AO4.js → reranker-7OADQPMG.js} +1 -1
  395. package/dist/{retrieval-health-5D7O6VH6.js → retrieval-health-FCEDWN2P.js} +2 -2
  396. package/dist/{review-polling-QW3LJ4KN.js → review-polling-G52BR4MC.js} +27 -26
  397. package/dist/runtime/index.js +39 -38
  398. package/dist/{session-events-T45SSTMF.js → session-events-P6E2373E.js} +27 -26
  399. package/dist/{session-kill-telemetry-QSPVJGBF.js → session-kill-telemetry-OHNJMIVT.js} +27 -26
  400. package/dist/{session-mcp-config-SC5BLWZG.js → session-mcp-config-WFZAH6R5.js} +2 -1
  401. package/dist/{session-scope-KRWE54C4.js → session-scope-DKOHPQPJ.js} +26 -25
  402. package/dist/{setup-wizard-GP3TBTPF.js → setup-wizard-RNU3RFBE.js} +1 -1
  403. package/dist/{skill-refinement-C7JTMLJG.js → skill-refinement-AKJTHFXC.js} +6 -6
  404. package/dist/{stack-generate-manifest-MFMDWRUP.js → stack-generate-manifest-7WJZWSPK.js} +163 -15
  405. package/dist/{stack-promote-EKSCYY63.js → stack-promote-OP2URGFF.js} +4 -4
  406. package/dist/{stack-release-2GZAAFO4.js → stack-release-MY6U2QIO.js} +31 -8
  407. package/dist/{stack-update-J6JXSTAZ.js → stack-update-QSHSLUTZ.js} +3 -3
  408. package/dist/{steward-gate-BFCCMCSW.js → steward-gate-KMLS5ECC.js} +6 -6
  409. package/dist/{subagent-brief-injection-ED36PLYY.js → subagent-brief-injection-HCKZQZBF.js} +37 -36
  410. package/dist/{support-inbox-YW47SYJF.js → support-inbox-UBXU5RKV.js} +11 -11
  411. package/dist/{support-outbox-HFJWG52M.js → support-outbox-G2NG2U5K.js} +2 -2
  412. package/dist/{sweep-budget-KMPJ7O5Z.js → sweep-budget-YGLCNXZZ.js} +9 -3
  413. package/dist/{task-enforcement-CECTQX4U.js → task-enforcement-2GR7HU6V.js} +27 -26
  414. package/dist/{task-request-inbox-Q5T4N5K7.js → task-request-inbox-ANCVK2VG.js} +2 -2
  415. package/dist/{task-scope-ERVEUEYU.js → task-scope-QANJJXXB.js} +30 -29
  416. package/dist/{tasks-crud-ZRQNJXQ2.js → tasks-crud-45WOIMIM.js} +44 -25
  417. package/dist/{tasks-notify-MIZH4C2O.js → tasks-notify-ZJS4MA3S.js} +29 -26
  418. package/dist/{tasks-review-Z7J2P6DG.js → tasks-review-ZVPKY47Z.js} +26 -25
  419. package/dist/{telemetry-upload-LVQUQYFP.js → telemetry-upload-VY3UWAEL.js} +10 -10
  420. package/dist/{token-budget-BU4NOVZF.js → token-budget-XHX6XFEC.js} +6 -6
  421. package/dist/{tool-capability-index-7F42MOJT.js → tool-capability-index-6HLZU437.js} +1 -1
  422. package/dist/{tool-telemetry-O27EVMBR.js → tool-telemetry-GBDI4AXR.js} +1 -1
  423. package/dist/tui/App.js +36 -35
  424. package/dist/{tui-data-TPWWBIUQ.js → tui-data-IQFE3UW3.js} +30 -29
  425. package/dist/{typed-messages-RCMPEKJN.js → typed-messages-P2HLLA62.js} +1 -1
  426. package/dist/{update-support-F2F5537B.js → update-support-BDN5AK4R.js} +25 -22
  427. package/dist/{work-claims-B73X5NE7.js → work-claims-PDQNLE5K.js} +7 -7
  428. package/dist/{work-state-heartbeat-P4YX6E2R.js → work-state-heartbeat-CH6BLQKV.js} +1 -1
  429. package/dist/{worker-gate-BEEIIVWA.js → worker-gate-NUUSQMBT.js} +1 -3
  430. package/dist/{workflow-engine-5X46PFCW.js → workflow-engine-RZ7QEI3Z.js} +2 -2
  431. package/dist/{worktree-W47CIMJ6.js → worktree-Q25PZST6.js} +11 -7
  432. package/dist/worktree-ownership-guard-4LKMW6PW.js +421 -0
  433. package/dist/{worktree-sweep-BNBD4RFX.js → worktree-sweep-EV5YQ2OB.js} +8 -8
  434. package/package.json +15 -3
  435. package/release-notes.json +5 -5
  436. package/src/commands/exe.md +16 -16
  437. package/stack.release.json +9 -8
  438. package/dist/behavior-injection-M6UYZCMW.js +0 -63
  439. package/dist/chunk-BJ7AVSY6.js +0 -50
  440. package/dist/daemon-restart-report-EIVD6WDJ.js +0 -10
  441. package/dist/worktree-ownership-guard-OUWJROW2.js +0 -88
  442. /package/dist/{chunk-GQOEWNVM.js → chunk-4EG4DT4F.js} +0 -0
  443. /package/dist/{chunk-AISULNGL.js → chunk-BRAIWGMF.js} +0 -0
  444. /package/dist/{chunk-NRG7KZIP.js → chunk-HQEAZDAC.js} +0 -0
  445. /package/dist/{chunk-VZAFWPAY.js → chunk-IK4344V5.js} +0 -0
  446. /package/dist/{chunk-GM7TLYOK.js → chunk-K3VDF6II.js} +0 -0
  447. /package/dist/{chunk-2AJGV5UL.js → chunk-KM7DAG5J.js} +0 -0
  448. /package/dist/{chunk-YO4BO2CL.js → chunk-QIEYJ4KZ.js} +0 -0
  449. /package/dist/{chunk-WSQASFLP.js → chunk-VCTK5HRA.js} +0 -0
  450. /package/dist/{chunk-KQ6RJWRW.js → chunk-VPT6VMBG.js} +0 -0
  451. /package/dist/{chunk-6WIFPD2P.js → chunk-YZ4AEMR7.js} +0 -0
  452. /package/dist/{core-memory-7I7RE2SJ.js → core-memory-UIZKCY4L.js} +0 -0
  453. /package/dist/{memory-isolation-2TUZ7Z4K.js → memory-isolation-3GJ6WLYX.js} +0 -0
  454. /package/dist/{oauth-server-AYM37SQ4.js → oauth-server-ZRHXIRXQ.js} +0 -0
  455. /package/dist/{wiki-acl-IBQLLBTS.js → wiki-acl-MFOYK5F4.js} +0 -0
@@ -120,6 +120,20 @@ function getPaneCwd(windowName) {
120
120
  return void 0;
121
121
  }
122
122
  }
123
+ function getPanePid(windowName) {
124
+ try {
125
+ const out = execFileSync(
126
+ "tmux",
127
+ ["list-panes", "-t", windowName, "-F", "#{pane_pid}"],
128
+ { encoding: "utf8", stdio: ["pipe", "pipe", "pipe"], timeout: 3e3 }
129
+ );
130
+ const pidStr = out.trim();
131
+ const pid = parseInt(pidStr, 10);
132
+ return Number.isNaN(pid) || pid <= 0 ? null : pid;
133
+ } catch {
134
+ return null;
135
+ }
136
+ }
123
137
  async function getPaneCwdAsync(windowName) {
124
138
  try {
125
139
  const { promisify } = await import("util");
@@ -131,6 +145,22 @@ async function getPaneCwdAsync(windowName) {
131
145
  return void 0;
132
146
  }
133
147
  }
148
+ async function getPanePidAsync(windowName) {
149
+ try {
150
+ const { promisify } = await import("util");
151
+ const { execFile } = await import("child_process");
152
+ const exec = promisify(execFile);
153
+ const { stdout } = await exec(
154
+ "tmux",
155
+ ["list-panes", "-t", windowName, "-F", "#{pane_pid}"],
156
+ { encoding: "utf8", timeout: 3e3 }
157
+ );
158
+ const pid = Number.parseInt(String(stdout ?? "").trim(), 10);
159
+ return Number.isNaN(pid) || pid <= 0 ? null : pid;
160
+ } catch {
161
+ return null;
162
+ }
163
+ }
134
164
  function projectFromPath(dir) {
135
165
  try {
136
166
  const root = execFileSync("git", ["-C", dir, "rev-parse", "--show-toplevel"], {
@@ -330,7 +360,9 @@ export {
330
360
  capturePaneLines,
331
361
  capturePaneLinesAsync,
332
362
  getPaneCwd,
363
+ getPanePid,
333
364
  getPaneCwdAsync,
365
+ getPanePidAsync,
334
366
  parseActivity,
335
367
  parseContextPercentageFromLines,
336
368
  parseContextPercentage,
@@ -22,7 +22,7 @@ var OrgOriginProvenanceError = class extends Error {
22
22
  async function mintOrgOriginStamp(input) {
23
23
  if (!input.orgId) throw new OrgOriginProvenanceError("An org-origin stamp requires a non-empty org_id (\xA71.5)");
24
24
  if (!input.requestId) throw new OrgOriginProvenanceError("An org-origin stamp requires a request id");
25
- const { getTaskRequest } = await import("./task-request-inbox-Q5T4N5K7.js");
25
+ const { getTaskRequest } = await import("./task-request-inbox-ANCVK2VG.js");
26
26
  const req = getTaskRequest(input.orgId, input.requestId);
27
27
  if (!req) {
28
28
  throw new OrgOriginProvenanceError(
@@ -3,7 +3,6 @@ import { execSync } from "child_process";
3
3
  import { existsSync, readFileSync, readdirSync } from "fs";
4
4
  import path from "path";
5
5
  var CC_NATIVE_ONLY_CUTOFF = "2.1.119";
6
- var CC_SAFE_PINNED_VERSION = "2.1.98";
7
6
  function detectAutoupdaterVar(varName, homeDir = process.env.HOME ?? process.env.USERPROFILE ?? "", env = process.env) {
8
7
  if (env[varName] === "1") {
9
8
  return { source: "env" };
@@ -186,7 +185,6 @@ function ccNativeBinaryWarningLine(status = detectCcNativeBinary(), env = proces
186
185
 
187
186
  export {
188
187
  CC_NATIVE_ONLY_CUTOFF,
189
- CC_SAFE_PINNED_VERSION,
190
188
  detectAutoupdaterVar,
191
189
  isAutoupdaterDisabled,
192
190
  resolveClaudeBinaryPath,
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  redactSecrets
3
- } from "./chunk-4QCFFW2H.js";
3
+ } from "./chunk-5QCIWWFA.js";
4
4
  import {
5
5
  isExeMcpTool,
6
6
  stripExeMcpPrefix
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  WORK_STATE_HEARTBEAT_TOOL
3
- } from "./chunk-VZAFWPAY.js";
3
+ } from "./chunk-IK4344V5.js";
4
4
  import {
5
5
  extractKeywords,
6
6
  keywordsToString
@@ -12,7 +12,7 @@ import {
12
12
  findScopedDuplicate,
13
13
  governMemoryRecord,
14
14
  schedulePostWriteMemoryHygiene
15
- } from "./chunk-DN4YVV4Z.js";
15
+ } from "./chunk-RSABKW6B.js";
16
16
  import {
17
17
  orgBus
18
18
  } from "./chunk-MP2AFCGL.js";
@@ -23,13 +23,13 @@ import {
23
23
  initPostgresOnlyDatabase,
24
24
  initTurso,
25
25
  isDaemonRoutingActive
26
- } from "./chunk-TAMDAOCU.js";
26
+ } from "./chunk-66CGXQUA.js";
27
27
  import {
28
28
  isPostgresBackendEnabled
29
29
  } from "./chunk-YYB5PMTK.js";
30
30
  import {
31
31
  directWriterAllowed
32
- } from "./chunk-V3W3SATA.js";
32
+ } from "./chunk-CL4J4757.js";
33
33
  import {
34
34
  EMBEDDING_DIM
35
35
  } from "./chunk-FXU7JOXK.js";
@@ -82,7 +82,7 @@ function recordShardFailure(project, error) {
82
82
  `[store] Shard circuit OPEN for "${project}" after ${state.failures} consecutive failures. Will retry in ${SHARD_CB_COOLDOWN_MS / 6e4}min. Last error: ${error}
83
83
  `
84
84
  );
85
- void import("./orchestration-events-N7LYMUGA.js").then(({ recordOrchestrationEventBestEffort }) => {
85
+ void import("./orchestration-events-JPHB6NPY.js").then(({ recordOrchestrationEventBestEffort }) => {
86
86
  recordOrchestrationEventBestEffort({
87
87
  eventType: "shard.circuit_open",
88
88
  source: "store.recordShardFailure",
@@ -186,7 +186,7 @@ async function initStore(options) {
186
186
  );
187
187
  _nextVersion = (Number(vResult.rows[0]?.max_v) || 0) + 1;
188
188
  try {
189
- const { loadGlobalProcedures } = await import("./global-procedures-YFDEIOG7.js");
189
+ const { loadGlobalProcedures } = await import("./global-procedures-NMQGF54V.js");
190
190
  await loadGlobalProcedures();
191
191
  } catch (e) {
192
192
  logStoreWarn("catch", e);
@@ -314,7 +314,7 @@ async function writeMemory(record) {
314
314
  founder_id: record.founder_id ?? null
315
315
  };
316
316
  try {
317
- const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-ZVP4H6DY.js");
317
+ const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-DYHARQ2G.js");
318
318
  const poisonResult = await checkMemoryPoisoning({
319
319
  memoryId: dbRow.id,
320
320
  vector: Array.isArray(dbRow.vector) ? dbRow.vector : void 0,
@@ -513,19 +513,19 @@ async function flushBatch() {
513
513
  _nextVersion = baseVersion;
514
514
  if (insertedBatch.length > 0) {
515
515
  try {
516
- const { insertMemoryCardsForBatch } = await import("./memory-cards-3S2ZQPR7.js");
516
+ const { insertMemoryCardsForBatch } = await import("./memory-cards-VN5DEWPD.js");
517
517
  await insertMemoryCardsForBatch(insertedBatch);
518
518
  } catch (e) {
519
519
  logStoreWarn("catch", e);
520
520
  }
521
521
  try {
522
- const { insertOntologyForBatch } = await import("./agentic-ontology-WHFJ3QFS.js");
522
+ const { insertOntologyForBatch } = await import("./agentic-ontology-DT3VOXBT.js");
523
523
  await insertOntologyForBatch(insertedBatch);
524
524
  } catch (e) {
525
525
  logStoreWarn("catch", e);
526
526
  }
527
527
  try {
528
- const { extractGraphForBatch } = await import("./memory-graph-extractor-A6DFEFIN.js");
528
+ const { extractGraphForBatch } = await import("./memory-graph-extractor-TMEB6WLA.js");
529
529
  await extractGraphForBatch(insertedBatch);
530
530
  } catch (e) {
531
531
  logStoreWarn("catch", e);
@@ -680,7 +680,7 @@ async function searchMemories(queryVector, agentId, options) {
680
680
  args.push(activeEmbeddingModel);
681
681
  }
682
682
  try {
683
- const { founderScopeFilter } = await import("./founder-context-D4HFIESJ.js");
683
+ const { founderScopeFilter } = await import("./founder-context-6LQKET4A.js");
684
684
  const founderFilter = founderScopeFilter(options?.founderId);
685
685
  sql += founderFilter.sql;
686
686
  args.push(...founderFilter.args.filter((a) => a !== null));
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  behaviorTruncationNotice
3
- } from "./chunk-32YV32VA.js";
3
+ } from "./chunk-LTUA5EYI.js";
4
4
  import {
5
5
  countActiveBehaviors,
6
6
  listBehaviors
7
- } from "./chunk-WMEYJT4R.js";
7
+ } from "./chunk-6FG34V6D.js";
8
8
  import {
9
9
  loadConfigSync
10
10
  } from "./chunk-ZIG7VPJV.js";
@@ -2,7 +2,7 @@ import {
2
2
  connectEmbedDaemon,
3
3
  disconnectClient,
4
4
  embedViaClient
5
- } from "./chunk-NUK7EEN5.js";
5
+ } from "./chunk-ZKJ5S23O.js";
6
6
  import {
7
7
  EMBEDDING_DIM
8
8
  } from "./chunk-FXU7JOXK.js";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  eventLoopHeartbeatPath,
3
3
  exeDir
4
- } from "./chunk-JY5GAZYC.js";
4
+ } from "./chunk-ZQEJ4IX2.js";
5
5
 
6
6
  // src/lib/mcp-health.ts
7
7
  import { existsSync, readFileSync, statSync } from "fs";
@@ -1,14 +1,10 @@
1
- import {
2
- readPostinstallFailureMarker
3
- } from "./chunk-PHBU4LGO.js";
4
- import {
5
- formatDegradations,
6
- getRetrievalHealth
7
- } from "./chunk-XFTEX77S.js";
8
1
  import {
9
2
  buildRestartReport,
10
3
  formatRestartReport
11
- } from "./chunk-EXDW3E2R.js";
4
+ } from "./chunk-VPHJ2LUI.js";
5
+ import {
6
+ readPostinstallFailureMarker
7
+ } from "./chunk-PHBU4LGO.js";
12
8
  import {
13
9
  EXE_HOOK_MANIFEST,
14
10
  LEGACY_SPLIT_POST_TOOL_HOOK_MARKERS,
@@ -17,7 +13,11 @@ import {
17
13
  import {
18
14
  cleanupLocalSecretResidue,
19
15
  inventoryLocalSecretResidue
20
- } from "./chunk-HDLAB7W3.js";
16
+ } from "./chunk-7UH2JWBF.js";
17
+ import {
18
+ formatDegradations,
19
+ getRetrievalHealth
20
+ } from "./chunk-OQ4FNDRG.js";
21
21
  import {
22
22
  resolveAnthropicAuth
23
23
  } from "./chunk-VGMACSEV.js";
@@ -27,7 +27,7 @@ import {
27
27
  import {
28
28
  offloadReadIfMain,
29
29
  repairFtsTable
30
- } from "./chunk-TAMDAOCU.js";
30
+ } from "./chunk-66CGXQUA.js";
31
31
 
32
32
  // src/bin/exe-doctor.ts
33
33
  import os from "os";
@@ -718,7 +718,7 @@ function auditLocalSecretResidue() {
718
718
  }
719
719
  async function auditOutbox() {
720
720
  try {
721
- const { getOutboxStatus } = await import("./support-outbox-HFJWG52M.js");
721
+ const { getOutboxStatus } = await import("./support-outbox-G2NG2U5K.js");
722
722
  return await getOutboxStatus();
723
723
  } catch {
724
724
  return {
@@ -1112,7 +1112,7 @@ function formatReport(report, flags) {
1112
1112
  return lines.join("\n");
1113
1113
  }
1114
1114
  async function fixNullVectors() {
1115
- const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-BEEIIVWA.js");
1115
+ const { tryAcquireWorkerSlot, registerWorkerPid } = await import("./worker-gate-NUUSQMBT.js");
1116
1116
  if (!tryAcquireWorkerSlot()) {
1117
1117
  process.stderr.write("[exe-doctor] Worker gate full \u2014 waiting for existing backfill workers to finish\n");
1118
1118
  await new Promise((r) => setTimeout(r, 5e3));
@@ -1300,7 +1300,7 @@ async function main(argv = process.argv.slice(2)) {
1300
1300
  console.log(formatRestartReport(restartReport));
1301
1301
  return emptyAuditReport();
1302
1302
  }
1303
- const { fastDbInit } = await import("./fast-db-init-L2RGKJWH.js");
1303
+ const { fastDbInit } = await import("./fast-db-init-GWUZ746B.js");
1304
1304
  const client = await fastDbInit();
1305
1305
  const report = await runAudit(client, flags);
1306
1306
  console.log(formatReport(report, flags));
@@ -9,10 +9,10 @@ import {
9
9
  import {
10
10
  buildClaudeHttpMcpEntry,
11
11
  buildClaudeStdioProxyMcpEntry
12
- } from "./chunk-NKETJCB5.js";
12
+ } from "./chunk-2ODXCCMR.js";
13
13
  import {
14
14
  ensureAllAgentSymlinks
15
- } from "./chunk-6RKKVPYF.js";
15
+ } from "./chunk-4YUGB637.js";
16
16
  import {
17
17
  MCP_LEGACY_KEY,
18
18
  MCP_PRIMARY_KEY
@@ -942,7 +942,7 @@ async function runInstaller(homeDir) {
942
942
  );
943
943
  }
944
944
  try {
945
- const { generateAgentDefs, summarizeAgentDefResults } = await import("./agent-defs-generator-ZWI6DXOE.js");
945
+ const { generateAgentDefs, summarizeAgentDefResults } = await import("./agent-defs-generator-OX6UFPRX.js");
946
946
  const defResults = generateAgentDefs({ homeDir: resolvedHome });
947
947
  process.stderr.write(`Agent definitions: ${summarizeAgentDefResults(defResults)}
948
948
  `);
@@ -1,10 +1,3 @@
1
- import {
2
- IMessageAdapter
3
- } from "./chunk-2SRG3B3D.js";
4
- import {
5
- createCRMWebhookHandler,
6
- parseTwentyWebhook
7
- } from "./chunk-NMH5ZQPU.js";
8
1
  import {
9
2
  WhatsAppAdapter
10
3
  } from "./chunk-E426DOSY.js";
@@ -20,6 +13,13 @@ import {
20
13
  import {
21
14
  SlackAdapter
22
15
  } from "./chunk-ORCCI2VV.js";
16
+ import {
17
+ IMessageAdapter
18
+ } from "./chunk-2SRG3B3D.js";
19
+ import {
20
+ createCRMWebhookHandler,
21
+ parseTwentyWebhook
22
+ } from "./chunk-6KQ6WMTI.js";
23
23
  import {
24
24
  BotRegistry,
25
25
  BotRuntime,
@@ -42,7 +42,7 @@ import {
42
42
  retryWithBackoff,
43
43
  routeMessage,
44
44
  validateGatewayConfig
45
- } from "./chunk-UKLN57Q5.js";
45
+ } from "./chunk-PZ5SKYK6.js";
46
46
  import {
47
47
  OllamaProvider
48
48
  } from "./chunk-FWFFZGSC.js";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  isPaneBusy
3
- } from "./chunk-23MVDXLY.js";
3
+ } from "./chunk-MAXD5JQL.js";
4
4
  import {
5
5
  recordSessionKill
6
- } from "./chunk-TQAZTRQ3.js";
6
+ } from "./chunk-SVXUT2DN.js";
7
7
  import {
8
8
  updateTask
9
- } from "./chunk-ZCERWHY2.js";
9
+ } from "./chunk-4M6RXJEY.js";
10
10
  import {
11
11
  BUSY_PATTERN,
12
12
  countPendingReviews,
@@ -15,6 +15,7 @@ import {
15
15
  getSessionState,
16
16
  getSessionStateAsync,
17
17
  isExeSession,
18
+ liveSessionHoldingTask,
18
19
  queryTaskRows,
19
20
  queueIntercom,
20
21
  sendIntercomAsync,
@@ -22,30 +23,27 @@ import {
22
23
  sessionScopeFilter,
23
24
  strictSessionScopeFilter,
24
25
  writeNotification
25
- } from "./chunk-AKLQSC6W.js";
26
- import {
27
- isValidSessionScope
28
- } from "./chunk-BTSWFMEH.js";
26
+ } from "./chunk-KI7O64XV.js";
29
27
  import {
30
28
  LEASE_MINUTES,
31
29
  isLeaseExpired
32
30
  } from "./chunk-E23LNUWJ.js";
33
31
  import {
34
32
  listSessions
35
- } from "./chunk-XH7YL7JM.js";
33
+ } from "./chunk-ZMX22HSS.js";
34
+ import {
35
+ getTransport
36
+ } from "./chunk-VI4ATC6I.js";
36
37
  import {
37
38
  capturePaneLinesAsync,
38
39
  listTmuxSessions,
39
40
  listTmuxSessionsAsync,
40
41
  parseContextPercentage,
41
42
  parseContextPercentageAsync
42
- } from "./chunk-ORM7ZFKC.js";
43
- import {
44
- getTransport
45
- } from "./chunk-VI4ATC6I.js";
43
+ } from "./chunk-BZ546I4Q.js";
46
44
  import {
47
45
  recordOrchestrationEventBestEffort
48
- } from "./chunk-W75GTHR3.js";
46
+ } from "./chunk-3SRZNJKD.js";
49
47
  import {
50
48
  checkDispatchStatus,
51
49
  readTerminalLauncherFailure,
@@ -55,10 +53,13 @@ import {
55
53
  import {
56
54
  getAgentRuntime
57
55
  } from "./chunk-GZOG2MAX.js";
56
+ import {
57
+ isValidSessionScope
58
+ } from "./chunk-BTSWFMEH.js";
58
59
  import {
59
60
  killIfSameProcess,
60
61
  processStartedAt
61
- } from "./chunk-SLLLOOEI.js";
62
+ } from "./chunk-GPJIBLP4.js";
62
63
  import {
63
64
  recordKillIntent
64
65
  } from "./chunk-V3WLC5TJ.js";
@@ -67,10 +68,10 @@ import {
67
68
  getCoordinatorName,
68
69
  isCoordinatorName,
69
70
  shouldAutoInstance
70
- } from "./chunk-TAMDAOCU.js";
71
+ } from "./chunk-66CGXQUA.js";
71
72
  import {
72
73
  eventLoopBlockedMarkerPath
73
- } from "./chunk-JY5GAZYC.js";
74
+ } from "./chunk-ZQEJ4IX2.js";
74
75
  import {
75
76
  loadConfigSync
76
77
  } from "./chunk-ZIG7VPJV.js";
@@ -144,7 +145,8 @@ async function hasOpenTasks(client, agentId, sessionScope) {
144
145
  const scope = sessionScopeFilter(sessionScope);
145
146
  const result = await client.execute({
146
147
  sql: `SELECT 1 FROM tasks
147
- WHERE assigned_to = ? AND status IN ('open', 'in_progress', 'blocked')${scope.sql}
148
+ WHERE assigned_to = ? AND status IN ('open', 'in_progress', 'blocked')
149
+ AND execution_mode = 'durable_tmux'${scope.sql}
148
150
  LIMIT 1`,
149
151
  args: [agentId, ...scope.args]
150
152
  });
@@ -158,7 +160,8 @@ async function hasNeedsReview(client, agentId, sessionScope) {
158
160
  const scope = sessionScopeFilter(sessionScope);
159
161
  const result = await client.execute({
160
162
  sql: `SELECT 1 FROM tasks
161
- WHERE assigned_to = ? AND status = 'needs_review'${scope.sql}
163
+ WHERE assigned_to = ? AND status = 'needs_review'
164
+ AND execution_mode = 'durable_tmux'${scope.sql}
162
165
  LIMIT 1`,
163
166
  args: [agentId, ...scope.args]
164
167
  });
@@ -883,7 +886,8 @@ function createIdleNudgeRealDeps(_getClient) {
883
886
  sessionScope: sessionScope ?? null,
884
887
  projectName: null,
885
888
  orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 ELSE 2 END",
886
- limit: 1
889
+ limit: 1,
890
+ extraConditions: ["execution_mode = 'durable_tmux'"]
887
891
  });
888
892
  if (rows.length === 0) return null;
889
893
  const r = rows[0];
@@ -1292,6 +1296,7 @@ async function pollOrphanedTasks(deps, nowMs = Date.now()) {
1292
1296
  process.stderr.write("[daemon-orch] query tasks by agent: " + (e instanceof Error ? e.message : String(e)) + "\n");
1293
1297
  return [];
1294
1298
  }
1299
+ tasksByAgent = tasksByAgent.filter((task) => task.executionMode !== "checklist");
1295
1300
  const coordinatorSet = new Set(coordinatorSessions);
1296
1301
  const agentTasks = /* @__PURE__ */ new Map();
1297
1302
  let deadScopeStateDirty = false;
@@ -1594,6 +1599,22 @@ async function pollOrphanedTasks(deps, nowMs = Date.now()) {
1594
1599
  continue;
1595
1600
  }
1596
1601
  spawnAttempts++;
1602
+ if (deps.liveSessionHoldingTask) {
1603
+ let holder = null;
1604
+ try {
1605
+ holder = await deps.liveSessionHoldingTask(topTask.taskId, topTask.sessionScope);
1606
+ } catch {
1607
+ holder = null;
1608
+ }
1609
+ if (holder) {
1610
+ spawnAttempts--;
1611
+ process.stderr.write(
1612
+ `[auto-wake] SUPPRESS ${agentId} task ${topTask.taskId} -- already in_progress on live session ${holder}; not spawning a duplicate
1613
+ `
1614
+ );
1615
+ continue;
1616
+ }
1617
+ }
1597
1618
  if (deps.acquireDispatchClaim) {
1598
1619
  let claimed = true;
1599
1620
  try {
@@ -2424,13 +2445,14 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
2424
2445
  const deviceId = loadDeviceId();
2425
2446
  const rows = await queryTaskRows({
2426
2447
  status: ["open", "in_progress"],
2427
- columns: "assigned_to, assigned_by, id, priority, session_scope, project_name, spawn_runtime",
2448
+ columns: "assigned_to, assigned_by, id, priority, session_scope, project_name, spawn_runtime, execution_mode",
2428
2449
  sessionScope: null,
2429
2450
  // daemon-level: no session filter
2430
2451
  projectName: null,
2431
2452
  deviceId,
2432
2453
  orderBy: "CASE priority WHEN 'p0' THEN 0 WHEN 'p1' THEN 1 WHEN 'p2' THEN 2 ELSE 3 END, created_at ASC",
2433
- limit: 1e3
2454
+ limit: 1e3,
2455
+ extraConditions: ["execution_mode = 'durable_tmux'"]
2434
2456
  });
2435
2457
  return rows.map((r) => ({
2436
2458
  agentId: String(r.assigned_to),
@@ -2439,7 +2461,8 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
2439
2461
  sessionScope: r.session_scope ? String(r.session_scope) : null,
2440
2462
  projectName: r.project_name ? String(r.project_name) : null,
2441
2463
  assignedBy: r.assigned_by ? String(r.assigned_by) : null,
2442
- spawnRuntime: r.spawn_runtime != null ? String(r.spawn_runtime) : null
2464
+ spawnRuntime: r.spawn_runtime != null ? String(r.spawn_runtime) : null,
2465
+ executionMode: r.execution_mode === "checklist" ? "checklist" : "durable_tmux"
2443
2466
  }));
2444
2467
  },
2445
2468
  // DEFECT 1 (dup-spawn): honor create_task's fresh dispatch signal so auto-wake
@@ -2453,6 +2476,7 @@ function createAutoWakeRealDeps(getClient, projectDir, listTmuxSessionsAsync2) {
2453
2476
  // atomic lock as create_task / nudge / resume — one spawner per task.
2454
2477
  acquireDispatchClaim: (taskId, assignedTo) => tryAcquireDispatchClaim(taskId, assignedTo),
2455
2478
  releaseDispatchClaim: (taskId, assignedTo, reason) => releaseDispatchClaim(taskId, assignedTo, reason),
2479
+ liveSessionHoldingTask: (taskId, sessionScope) => liveSessionHoldingTask(taskId, sessionScope),
2456
2480
  // C1: registry lookup + re-parent for dead-scope escalation.
2457
2481
  listRegisteredSessions: () => listSessions(),
2458
2482
  reparentTask: async (taskId, newSessionScope) => {
@@ -2788,6 +2812,11 @@ function reapZombieAgentProcesses(deps) {
2788
2812
  // macOS framework helpers
2789
2813
  /\/Applications\/Claude/i,
2790
2814
  // Launched from /Applications
2815
+ // Codex Desktop's bundled services include binaries named `codex` and a
2816
+ // computer-use app under ~/.codex. Anchor these at the executable position:
2817
+ // a genuine CLI may legitimately mention Codex.app later in its arguments.
2818
+ /^\/Applications\/Codex\.app\/Contents\//i,
2819
+ /^\/Users\/[^/]+\/\.codex\/computer-use\/Codex Computer Use\.app\/Contents\//i,
2791
2820
  // Bug af3a7da8: the OpenAI Codex desktop app ships a Chrome extension at
2792
2821
  // ~/.codex/plugins/cache/openai-bundled/chrome/.../extension-h that runs as a
2793
2822
  // Google Chrome renderer. Its args contain "codex" (the path), so /\bcodex\b/
@@ -3376,7 +3405,7 @@ async function reapOrphanedWorktrees(deps, nowMs = Date.now()) {
3376
3405
  }
3377
3406
  async function createWorktreeReaperRealDeps() {
3378
3407
  const { getPaneCwdAsync } = await import("./lib/tmux-status.js");
3379
- const { getGitRootAsync, isWorktreeDirtyAsync, GIT_CRYPT_SMUDGE_BYPASS_ARGS } = await import("./worktree-W47CIMJ6.js");
3408
+ const { getGitRootAsync, isWorktreeDirtyAsync, GIT_CRYPT_SMUDGE_BYPASS_ARGS } = await import("./worktree-Q25PZST6.js");
3380
3409
  const { statSync: statSync3 } = await import("fs");
3381
3410
  const { basename: basename2 } = await import("path");
3382
3411
  const { promisify: promisify2 } = await import("util");
@@ -3618,9 +3647,12 @@ async function gcStaleCheckpoints() {
3618
3647
  return 0;
3619
3648
  }
3620
3649
  }
3650
+ function shouldNotifyTaskGroupViaIntercom(executionMode) {
3651
+ return executionMode !== "checklist";
3652
+ }
3621
3653
  async function pollTaskGroupBarriers() {
3622
3654
  try {
3623
- const { checkAndFireBarriers } = await import("./tasks-crud-ZRQNJXQ2.js");
3655
+ const { checkAndFireBarriers } = await import("./tasks-crud-45WOIMIM.js");
3624
3656
  const firedGroupIds = await checkAndFireBarriers();
3625
3657
  if (firedGroupIds.length === 0) return 0;
3626
3658
  const { getClient } = await import("./lib/database.js");
@@ -3628,7 +3660,7 @@ async function pollTaskGroupBarriers() {
3628
3660
  for (const groupId of firedGroupIds) {
3629
3661
  try {
3630
3662
  const groupRow = await client.execute({
3631
- sql: "SELECT title, coordinator, session_scope, aggregated_result FROM task_groups WHERE id = ?",
3663
+ sql: "SELECT title, coordinator, session_scope, aggregated_result, execution_mode FROM task_groups WHERE id = ?",
3632
3664
  args: [groupId]
3633
3665
  });
3634
3666
  if (groupRow.rows.length === 0) continue;
@@ -3636,6 +3668,7 @@ async function pollTaskGroupBarriers() {
3636
3668
  const coordinator = String(group.coordinator);
3637
3669
  const sessionScope = group.session_scope != null ? String(group.session_scope) : null;
3638
3670
  const title = String(group.title);
3671
+ const executionMode = group.execution_mode === "checklist" ? "checklist" : "durable_tmux";
3639
3672
  let summary = `Task group "${title}" barrier fired.`;
3640
3673
  try {
3641
3674
  const agg = JSON.parse(String(group.aggregated_result ?? "{}"));
@@ -3644,7 +3677,7 @@ async function pollTaskGroupBarriers() {
3644
3677
  if (agg.timed_out) summary += " (timed out)";
3645
3678
  } catch {
3646
3679
  }
3647
- if (sessionScope) {
3680
+ if (sessionScope && shouldNotifyTaskGroupViaIntercom(executionMode)) {
3648
3681
  try {
3649
3682
  if (isCoordinatorName(coordinator) && isExeSession(sessionScope)) {
3650
3683
  await sendIntercomAsync(sessionScope, { force: true, reason: "completion", callerSessionScope: sessionScope });
@@ -3770,5 +3803,6 @@ export {
3770
3803
  reapOrphanedWorktrees,
3771
3804
  createWorktreeReaperRealDeps,
3772
3805
  gcStaleCheckpoints,
3806
+ shouldNotifyTaskGroupViaIntercom,
3773
3807
  pollTaskGroupBarriers
3774
3808
  };