@askexenow/exe-os 0.9.166 → 0.9.167

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 (244) hide show
  1. package/deploy/compose/backup.sh +45 -7
  2. package/deploy/compose/setup.sh +7 -0
  3. package/deploy/stack-manifests/v0.9.json +40 -1
  4. package/dist/{active-agent-R2KMWMR6.js → active-agent-DGTIJN2U.js} +2 -2
  5. package/dist/{active-agent-CYMM3QQA.js → active-agent-HVMLG6FH.js} +2 -2
  6. package/dist/{agentic-ontology-GKAKYNPE.js → agentic-ontology-S54AFODT.js} +1 -1
  7. package/dist/{backfill-metadata-Z5SYUWAV.js → backfill-metadata-74IWETRF.js} +4 -3
  8. package/dist/{behaviors-QGU6XI5R.js → behaviors-LZVAVHTC.js} +2 -2
  9. package/dist/bin/agentic-ontology-backfill.js +5 -4
  10. package/dist/bin/agentic-reflection-backfill.js +6 -5
  11. package/dist/bin/agentic-semantic-label.js +5 -4
  12. package/dist/bin/backfill-conversations.js +5 -4
  13. package/dist/bin/backfill-responses.js +5 -4
  14. package/dist/bin/backfill-vectors.js +6 -5
  15. package/dist/bin/bulk-sync-postgres.js +6 -5
  16. package/dist/bin/cleanup-stale-review-tasks.js +9 -9
  17. package/dist/bin/cli.js +16 -13
  18. package/dist/bin/daily-summary.js +0 -217
  19. package/dist/bin/deferred-daemon-restart.js +8 -0
  20. package/dist/bin/exe-agent-config.js +1 -1
  21. package/dist/bin/exe-agent.js +10 -10
  22. package/dist/bin/exe-assign.js +7 -6
  23. package/dist/bin/exe-boot.js +20 -19
  24. package/dist/bin/exe-call.js +4 -4
  25. package/dist/bin/exe-cloud.js +3 -3
  26. package/dist/bin/exe-dispatch.js +9 -9
  27. package/dist/bin/exe-doctor.js +1 -1
  28. package/dist/bin/exe-export-behaviors.js +7 -6
  29. package/dist/bin/exe-forget.js +6 -5
  30. package/dist/bin/exe-gateway.js +5 -5
  31. package/dist/bin/exe-heartbeat.js +9 -9
  32. package/dist/bin/exe-kill.js +13 -12
  33. package/dist/bin/exe-launch-agent.js +11 -10
  34. package/dist/bin/exe-new-employee.js +6 -6
  35. package/dist/bin/exe-pending-messages.js +10 -10
  36. package/dist/bin/exe-pending-notifications.js +9 -9
  37. package/dist/bin/exe-pending-reviews.js +9 -9
  38. package/dist/bin/exe-rename.js +4 -4
  39. package/dist/bin/exe-review.js +12 -11
  40. package/dist/bin/exe-search.js +5 -4
  41. package/dist/bin/exe-session-cleanup.js +19 -14
  42. package/dist/bin/exe-settings.js +3 -3
  43. package/dist/bin/exe-start-codex.js +11 -10
  44. package/dist/bin/exe-start-opencode.js +8 -7
  45. package/dist/bin/exe-status.js +10 -10
  46. package/dist/bin/exe-team.js +2 -2
  47. package/dist/bin/git-sweep.js +9 -9
  48. package/dist/bin/graph-backfill.js +4 -3
  49. package/dist/bin/graph-export.js +5 -4
  50. package/dist/bin/import-history.js +171 -0
  51. package/dist/bin/install-launchd.js +41 -0
  52. package/dist/bin/install.js +50 -74
  53. package/dist/bin/intercom-check.js +4 -4
  54. package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
  55. package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
  56. package/dist/bin/pre-publish.js +1 -1
  57. package/dist/bin/scan-tasks.js +22 -12
  58. package/dist/bin/setup.js +1 -1
  59. package/dist/bin/shard-migrate.js +4 -3
  60. package/dist/bin/stack-update.js +61 -857
  61. package/dist/bin/vps-backup.js +170 -0
  62. package/dist/bin/vps-health-gate.js +232 -0
  63. package/dist/{capacity-monitor-ZEAE4WP2.js → capacity-monitor-JBZB2S4P.js} +10 -10
  64. package/dist/{catchup-brief-OGWCHENC.js → catchup-brief-HE2EMZS5.js} +12 -11
  65. package/dist/{chunk-DJJNB47C.js → chunk-27DO3EZO.js} +1 -1
  66. package/dist/{chunk-45FYZIHI.js → chunk-32YUET3Y.js} +2 -2
  67. package/dist/{chunk-Y75ECPO5.js → chunk-3FW5LUGI.js} +2 -2
  68. package/dist/{chunk-4OZGQZ4U.js → chunk-3M3O56VT.js} +636 -179
  69. package/dist/{chunk-77WQOD6J.js → chunk-4CXUZ4NI.js} +2 -2
  70. package/dist/{chunk-PBXWPHEK.js → chunk-4VEHJZ6R.js} +1 -1
  71. package/dist/{chunk-TH22QIEC.js → chunk-6A4COFDG.js} +1 -1
  72. package/dist/{chunk-ACBTCC2L.js → chunk-7OJH2A6I.js} +1 -1
  73. package/dist/{chunk-NHCOTCI6.js → chunk-A7SGEBXJ.js} +2 -2
  74. package/dist/{chunk-5MPQSNZF.js → chunk-AUTCT6AY.js} +1 -1
  75. package/dist/{chunk-OEKSTOTE.js → chunk-AZAZ2C75.js} +1 -1
  76. package/dist/chunk-CHCA3ZM2.js +167 -0
  77. package/dist/{chunk-X347L57O.js → chunk-CSTJQDOE.js} +4 -3
  78. package/dist/{chunk-B234R3VW.js → chunk-D7WLV6WD.js} +2 -2
  79. package/dist/{chunk-GMXF3AHJ.js → chunk-DGAONW36.js} +1 -1
  80. package/dist/chunk-EAT5YL3W.js +229 -0
  81. package/dist/{chunk-OD4H5YCJ.js → chunk-EKTQE2R5.js} +8 -8
  82. package/dist/{chunk-Z44PC42G.js → chunk-ELUBA7XL.js} +2 -2
  83. package/dist/{chunk-ZWS6XQER.js → chunk-F5AKOE4P.js} +7 -7
  84. package/dist/{chunk-T5YULDDO.js → chunk-FVI4UBKO.js} +27 -4
  85. package/dist/{chunk-ESRI7MFI.js → chunk-GAN7PW6G.js} +28 -24
  86. package/dist/{chunk-K4OWYJSP.js → chunk-GM2WZTG3.js} +2 -2
  87. package/dist/{chunk-TAB5QGIK.js → chunk-GZYQTPTF.js} +3 -3
  88. package/dist/{chunk-CXDU5DE3.js → chunk-IAUNGATJ.js} +1 -1
  89. package/dist/{chunk-YS63NS6M.js → chunk-IHSM5GR4.js} +1 -1
  90. package/dist/{chunk-23PTS2ZD.js → chunk-IP7KJAUW.js} +117 -15
  91. package/dist/{chunk-D6IMJAV2.js → chunk-J64P2LB2.js} +2 -2
  92. package/dist/{chunk-CXAVSQZM.js → chunk-JXMSCKRM.js} +1 -1
  93. package/dist/{chunk-RQMK3IQH.js → chunk-K4OTJP6N.js} +14 -7
  94. package/dist/{chunk-L7ROZR2H.js → chunk-KXAUMIOX.js} +1 -1
  95. package/dist/{chunk-TPC3LAP7.js → chunk-LGY2BIOT.js} +13 -0
  96. package/dist/{chunk-RPIDSBK7.js → chunk-LLHRJEE4.js} +3 -3
  97. package/dist/{chunk-6WG2VIKC.js → chunk-LM7H6XU4.js} +1 -1
  98. package/dist/{chunk-Y6GMKZZ2.js → chunk-LOFFGJSY.js} +150 -23
  99. package/dist/{chunk-W7SDGBEC.js → chunk-MFI5OXYW.js} +52 -84
  100. package/dist/{chunk-KNPEVPYG.js → chunk-MSSQWF6X.js} +2 -2
  101. package/dist/{chunk-QIQAO3VG.js → chunk-NEFFFKMD.js} +3 -3
  102. package/dist/{chunk-YUC552KZ.js → chunk-NEHONJJC.js} +3 -3
  103. package/dist/{chunk-KZ7SXZ2V.js → chunk-NFMQRLCD.js} +1 -1
  104. package/dist/{chunk-52HCNDPG.js → chunk-O4TATDOV.js} +1 -1
  105. package/dist/{chunk-AR3OYGLB.js → chunk-PEFBRL4S.js} +28 -6
  106. package/dist/{chunk-AEUXUEJG.js → chunk-PEXVU3HU.js} +5 -3
  107. package/dist/chunk-Q2G5C3HV.js +217 -0
  108. package/dist/{chunk-KOO56JVC.js → chunk-Q6N6LDEJ.js} +1 -1
  109. package/dist/{chunk-TXSJ2L5O.js → chunk-QI4IXJN7.js} +1 -1
  110. package/dist/{chunk-HLVQ5Y7B.js → chunk-RE4VLK45.js} +1 -1
  111. package/dist/{chunk-TF6SZGDT.js → chunk-SA2PH6WY.js} +1 -1
  112. package/dist/{chunk-5RSYY7BE.js → chunk-SJYOPYXH.js} +117 -9
  113. package/dist/{chunk-PJGHBANY.js → chunk-TTJE7CCU.js} +1 -1
  114. package/dist/{chunk-A7KEWR6S.js → chunk-TXWQPL2U.js} +1 -1
  115. package/dist/{chunk-XXSJ35J5.js → chunk-U5ZH52FB.js} +2 -2
  116. package/dist/{chunk-G4FDG3LK.js → chunk-UVNDLF74.js} +63 -40
  117. package/dist/{chunk-5OD3AFRW.js → chunk-V6RCZ25F.js} +1 -1
  118. package/dist/{chunk-LHMBIFKD.js → chunk-VYNNN2S3.js} +4 -4
  119. package/dist/chunk-WCYT54XP.js +934 -0
  120. package/dist/{chunk-5AMSQRHT.js → chunk-XGYSTVUH.js} +1 -1
  121. package/dist/{chunk-MKZBHM6A.js → chunk-XLWF3C4R.js} +4 -4
  122. package/dist/{chunk-YL36L2SN.js → chunk-Y7YHLV57.js} +1 -1
  123. package/dist/{chunk-HZC4MR4H.js → chunk-YBKB2PXY.js} +1 -1
  124. package/dist/{chunk-NWM3A4TK.js → chunk-ZDNLKXZA.js} +1 -1
  125. package/dist/{chunk-O7KW6QMH.js → chunk-ZW4TKQUM.js} +15 -5
  126. package/dist/{chunk-6BURHBE6.js → chunk-ZXB44R3E.js} +32 -11
  127. package/dist/co-occurrence-WCED475N.js +73 -0
  128. package/dist/{code-context-index-B6VIWPSF.js → code-context-index-LSZ3DKTJ.js} +2 -2
  129. package/dist/{crdt-sync-XA22KI3S.js → crdt-sync-PBXZTHZC.js} +1 -1
  130. package/dist/{crm-webhook-CIZNOEY4.js → crm-webhook-W7Q25VZU.js} +2 -2
  131. package/dist/{cto-delegation-gate-H5IULFRC.js → cto-delegation-gate-JKULOLMC.js} +8 -8
  132. package/dist/{daemon-orchestration-VO5XQIJL.js → daemon-orchestration-CHV6MB42.js} +13 -11
  133. package/dist/{exe-drift-DMT75WR3.js → exe-drift-PW36OULT.js} +2 -2
  134. package/dist/{exe-export-2RZWOSX6.js → exe-export-XQOD3KE6.js} +6 -5
  135. package/dist/{exe-import-NFNYATHL.js → exe-import-QOFP67LW.js} +6 -5
  136. package/dist/{exe-key-4D7CF3BU.js → exe-key-WQ34UZR6.js} +1 -1
  137. package/dist/{fast-db-init-LAEISZQ2.js → fast-db-init-UKETGWQI.js} +1 -1
  138. package/dist/gateway/index.js +6 -6
  139. package/dist/{git-staleness-M46AYLPP.js → git-staleness-ATV5CGAP.js} +1 -1
  140. package/dist/{git-task-sweep-PXOS56YT.js → git-task-sweep-KXZRIP4T.js} +9 -9
  141. package/dist/{global-procedures-KROQQX54.js → global-procedures-G6IKCYKM.js} +3 -3
  142. package/dist/{graph-auto-extract-QJ2BBJM2.js → graph-auto-extract-ZJXJOLE2.js} +1 -1
  143. package/dist/hooks/bug-report-worker.js +10 -10
  144. package/dist/hooks/codex-stop-task-finalizer.js +10 -10
  145. package/dist/hooks/commit-complete.js +11 -11
  146. package/dist/hooks/error-recall.js +8 -7
  147. package/dist/hooks/exe-heartbeat-hook.js +2 -2
  148. package/dist/hooks/ingest-worker.js +3 -3
  149. package/dist/hooks/ingest.js +9 -9
  150. package/dist/hooks/instructions-loaded.js +3 -3
  151. package/dist/hooks/notification.js +3 -3
  152. package/dist/hooks/post-compact.js +10 -10
  153. package/dist/hooks/post-tool-combined.js +5 -5
  154. package/dist/hooks/pre-compact.js +16 -16
  155. package/dist/hooks/pre-tool-use.js +14 -14
  156. package/dist/hooks/prompt-submit.js +30 -29
  157. package/dist/hooks/session-end.js +46 -25
  158. package/dist/hooks/session-start.js +48 -10
  159. package/dist/hooks/stop.js +17 -17
  160. package/dist/hooks/subagent-stop.js +10 -10
  161. package/dist/hooks/summary-worker.js +17 -16
  162. package/dist/index.js +17 -17
  163. package/dist/{installer-SDBLJBAB.js → installer-DE2LH5EC.js} +4 -4
  164. package/dist/{installer-ZA6QNQ4P.js → installer-M2MDS7HC.js} +4 -4
  165. package/dist/{installer-6KAY6LD6.js → installer-VE23YFXU.js} +4 -4
  166. package/dist/{intercom-queue-K3DVKSPJ.js → intercom-queue-RNM6EPGA.js} +1 -1
  167. package/dist/keyword-extractor-UJHFWVZE.js +11 -0
  168. package/dist/lib/cloud-sync.js +3 -3
  169. package/dist/lib/consolidation.js +5 -4
  170. package/dist/lib/database.js +1 -1
  171. package/dist/lib/db-daemon-client.js +1 -1
  172. package/dist/lib/db.js +1 -1
  173. package/dist/lib/embed-worker.js +98 -0
  174. package/dist/lib/embedder.js +2 -2
  175. package/dist/lib/employee-templates.js +4 -4
  176. package/dist/lib/employees.js +1 -1
  177. package/dist/lib/exe-daemon-client.js +1 -1
  178. package/dist/lib/exe-daemon.js +523 -500
  179. package/dist/lib/hybrid-search.js +5 -6
  180. package/dist/lib/identity.js +1 -1
  181. package/dist/lib/messaging.js +9 -9
  182. package/dist/lib/reminders.js +2 -2
  183. package/dist/lib/schedules.js +5 -4
  184. package/dist/lib/skill-learning.js +3 -3
  185. package/dist/lib/store.js +4 -3
  186. package/dist/lib/task-router.js +2 -2
  187. package/dist/lib/tasks.js +9 -9
  188. package/dist/lib/tmux-routing.js +8 -8
  189. package/dist/lib/tmux-transport.js +1 -1
  190. package/dist/lib/token-spend.js +2 -2
  191. package/dist/lib/transport.js +2 -2
  192. package/dist/lib/ws-client.js +3 -1
  193. package/dist/mcp/register-tools.js +54 -51
  194. package/dist/mcp/server.js +58 -55
  195. package/dist/mcp/tools/complete-reminder.js +3 -3
  196. package/dist/mcp/tools/create-reminder.js +3 -3
  197. package/dist/mcp/tools/create-task.js +11 -11
  198. package/dist/mcp/tools/deactivate-behavior.js +4 -4
  199. package/dist/mcp/tools/list-reminders.js +3 -3
  200. package/dist/mcp/tools/list-tasks.js +11 -11
  201. package/dist/mcp/tools/send-message.js +11 -11
  202. package/dist/mcp/tools/update-task.js +10 -10
  203. package/dist/{mcp-http-config-LK2EDOEJ.js → mcp-http-config-Z2E4VUOF.js} +2 -2
  204. package/dist/{memory-cards-V3DKSRWL.js → memory-cards-SFDKDIAW.js} +1 -1
  205. package/dist/memory-graph-extractor-YD4GNH7T.js +16 -0
  206. package/dist/{memory-poisoning-defense-3B75HS74.js → memory-poisoning-defense-VEGNFELN.js} +1 -1
  207. package/dist/{memory-queue-client-LFPZPPQA.js → memory-queue-client-5HB2XUH7.js} +2 -2
  208. package/dist/{memory-reflection-HTDAUUE5.js → memory-reflection-MTPRQNI6.js} +2 -2
  209. package/dist/{notifications-76VCYXWW.js → notifications-6TCE6OBG.js} +8 -8
  210. package/dist/{orchestrator-CBNSBI5P.js → orchestrator-W2GYJR23.js} +10 -10
  211. package/dist/{plan-limits-SOR3QXKV.js → plan-limits-4EP46323.js} +2 -2
  212. package/dist/{projection-worker-FK5YOEIL.js → projection-worker-EBUYNMU2.js} +1 -1
  213. package/dist/{review-polling-ZLNDUKL4.js → review-polling-2N7KQFZZ.js} +9 -9
  214. package/dist/runtime/index.js +15 -15
  215. package/dist/{session-events-CUSPL25D.js → session-events-K47FHAXJ.js} +9 -9
  216. package/dist/{session-kill-telemetry-FLBRHBDP.js → session-kill-telemetry-275YUXM5.js} +2 -2
  217. package/dist/{session-scope-PX2ABSJO.js → session-scope-XSFJZEER.js} +8 -8
  218. package/dist/{setup-wizard-Y6PBZGFX.js → setup-wizard-UEO7HYLQ.js} +1 -1
  219. package/dist/{skill-refinement-L7PGKCYO.js → skill-refinement-WXBTANDQ.js} +1 -1
  220. package/dist/stack-update-2B2UXREV.js +50 -0
  221. package/dist/{task-enforcement-7FUILB63.js → task-enforcement-2JIJSXPU.js} +14 -16
  222. package/dist/{task-scope-2N45TE32.js → task-scope-W73Z3XWE.js} +8 -8
  223. package/dist/{tasks-crud-ADLCGHGH.js → tasks-crud-HPJKI3QQ.js} +8 -8
  224. package/dist/{tasks-review-PJ2DUI6N.js → tasks-review-MXLMPGNZ.js} +8 -8
  225. package/dist/{token-budget-T5DFXVTM.js → token-budget-BA46CVHX.js} +1 -1
  226. package/dist/{tool-capability-index-6JJN6ZRC.js → tool-capability-index-42VVN5BS.js} +1 -1
  227. package/dist/{tool-telemetry-72PVO5HV.js → tool-telemetry-GZ5E2AUL.js} +1 -1
  228. package/dist/tui/App.js +22 -18
  229. package/dist/{tui-data-63JHE6EZ.js → tui-data-PVXWQCJX.js} +8 -8
  230. package/dist/{worker-gate-REVBJUZ6.js → worker-gate-WTTK64TK.js} +1 -1
  231. package/dist/{workflow-engine-W2WNHJG5.js → workflow-engine-LT3WTT7V.js} +2 -2
  232. package/package.json +1 -1
  233. package/release-notes.json +209 -209
  234. /package/dist/{chunk-BNOZUS6J.js → chunk-6VVCAVRT.js} +0 -0
  235. /package/dist/{chunk-IC7GKK6I.js → chunk-CWQZZ7X3.js} +0 -0
  236. /package/dist/{chunk-ZI2ZVERO.js → chunk-EIW5GOBW.js} +0 -0
  237. /package/dist/{chunk-2BGGDNRD.js → chunk-IPPJEM26.js} +0 -0
  238. /package/dist/{chunk-4ISDU5KR.js → chunk-K5UR73PM.js} +0 -0
  239. /package/dist/{chunk-ZWRTVUQ6.js → chunk-KIMO5S45.js} +0 -0
  240. /package/dist/{chunk-S2FX5KJ4.js → chunk-WBLILGAP.js} +0 -0
  241. /package/dist/{core-memory-PCJ3L46L.js → core-memory-RAC6M67J.js} +0 -0
  242. /package/dist/{entity-boost-GHFPE6A2.js → entity-boost-5FIRFRDC.js} +0 -0
  243. /package/dist/{message-queue-client-CHRQYBH5.js → message-queue-client-PTQ2S7D7.js} +0 -0
  244. /package/dist/{wiki-acl-QYRAYYVQ.js → wiki-acl-MSDRCIAI.js} +0 -0
@@ -1,3 +1,10 @@
1
+ import {
2
+ writeContinuityCheckpoint
3
+ } from "../chunk-NFMQRLCD.js";
4
+ import "../chunk-V6RCZ25F.js";
5
+ import "../chunk-GUCKE3GK.js";
6
+ import "../chunk-UVNDLF74.js";
7
+ import "../chunk-CMFLJNP6.js";
1
8
  import {
2
9
  clearCacheState
3
10
  } from "../chunk-6A7P74QV.js";
@@ -6,39 +13,32 @@ import "../chunk-SH45SJQW.js";
6
13
  import {
7
14
  clearActiveAgent,
8
15
  getActiveAgent
9
- } from "../chunk-6WG2VIKC.js";
10
- import {
11
- writeContinuityCheckpoint
12
- } from "../chunk-KZ7SXZ2V.js";
13
- import "../chunk-5OD3AFRW.js";
14
- import "../chunk-GUCKE3GK.js";
15
- import "../chunk-G4FDG3LK.js";
16
- import "../chunk-CMFLJNP6.js";
16
+ } from "../chunk-LM7H6XU4.js";
17
17
  import {
18
18
  strictSessionScopeFilter
19
- } from "../chunk-W7SDGBEC.js";
19
+ } from "../chunk-MFI5OXYW.js";
20
20
  import "../chunk-LOQCOHEW.js";
21
- import "../chunk-TXSJ2L5O.js";
21
+ import "../chunk-QI4IXJN7.js";
22
22
  import "../chunk-64WZEXXA.js";
23
- import "../chunk-A7KEWR6S.js";
24
- import "../chunk-X347L57O.js";
25
23
  import "../chunk-GZIAQYGI.js";
24
+ import "../chunk-TXWQPL2U.js";
25
+ import "../chunk-CSTJQDOE.js";
26
26
  import "../chunk-ZQX6UOP6.js";
27
27
  import "../chunk-H2CFBUGF.js";
28
28
  import "../chunk-NGP6LSV2.js";
29
- import "../chunk-HLVQ5Y7B.js";
30
- import "../chunk-OPU3NYOO.js";
29
+ import "../chunk-RE4VLK45.js";
31
30
  import {
32
31
  getSessionKey
33
32
  } from "../chunk-CVYC6DUW.js";
33
+ import "../chunk-OPU3NYOO.js";
34
34
  import "../chunk-GJV3WDWM.js";
35
35
  import "../chunk-MP2AFCGL.js";
36
36
  import "../chunk-PWMMIGVQ.js";
37
- import "../chunk-YS63NS6M.js";
37
+ import "../chunk-IHSM5GR4.js";
38
38
  import "../chunk-HYZV25LY.js";
39
39
  import {
40
40
  canCoordinate
41
- } from "../chunk-5RSYY7BE.js";
41
+ } from "../chunk-SJYOPYXH.js";
42
42
  import "../chunk-RVSGXGWG.js";
43
43
  import "../chunk-FXU7JOXK.js";
44
44
  import "../chunk-MVMMULOJ.js";
@@ -74,23 +74,44 @@ process.stdin.on("end", async () => {
74
74
  const { appendFileSync } = await import("fs");
75
75
  const { join } = await import("path");
76
76
  const { homedir } = await import("os");
77
- const deathLog = join(homedir(), ".exe-os", "session-deaths.log");
77
+ const { execSync: execSyncForDeath } = await import("child_process");
78
+ const deathLog = join(homedir(), ".exe-os", "logs", "session-deaths.jsonl");
79
+ let daemonAlive = false;
80
+ try {
81
+ execSyncForDeath("curl -sf --max-time 2 -X POST http://127.0.0.1:48739/v1/heartbeat -H 'Content-Type: application/json' -d '{}' 2>/dev/null", { timeout: 3e3 });
82
+ daemonAlive = true;
83
+ } catch {
84
+ }
85
+ const uptimeMs = Math.round(process.uptime() * 1e3);
86
+ let exitReason = "unknown";
87
+ if (!daemonAlive) exitReason = "mcp_daemon_dead";
88
+ else if (uptimeMs < 1e4) exitReason = "crash_immediate";
89
+ else if (data.transcript_path) exitReason = "normal_end_or_context_full";
90
+ else exitReason = "abrupt_no_transcript";
78
91
  const entry = JSON.stringify({
79
- ts: (/* @__PURE__ */ new Date()).toISOString(),
92
+ timestamp: (/* @__PURE__ */ new Date()).toISOString(),
93
+ event: "session_exit",
80
94
  agent: agent.agentId,
81
95
  role: agent.agentRole,
82
96
  session: data.session_id,
83
97
  project: process.env.EXE_PROJECT_NAME ?? process.cwd().split("/").pop() ?? "unknown",
98
+ tmuxSession: process.env.EXE_SESSION ?? process.env.TMUX_PANE ?? "unknown",
84
99
  tty: process.env.TTY ?? process.env.GPG_TTY ?? "unknown",
85
100
  pid: process.pid,
86
- ppid: process.ppid
101
+ ppid: process.ppid,
102
+ uptimeMs,
103
+ exitReason,
104
+ daemonAlive,
105
+ memoryRssMB: Math.round(process.memoryUsage.rss() / 1024 / 1024)
87
106
  });
88
107
  appendFileSync(deathLog, entry + "\n");
108
+ process.stderr.write(`[session-end] EXIT: ${agent.agentId} after ${Math.round(uptimeMs / 1e3)}s \u2014 reason=${exitReason} daemon=${daemonAlive ? "alive" : "DEAD"}
109
+ `);
89
110
  } catch {
90
111
  }
91
112
  if (agent.agentId !== "default") {
92
113
  try {
93
- const { fastDbInit } = await import("../fast-db-init-LAEISZQ2.js");
114
+ const { fastDbInit } = await import("../fast-db-init-UKETGWQI.js");
94
115
  const client = await fastDbInit();
95
116
  const seScope = strictSessionScopeFilter();
96
117
  const orphanResult = await client.execute({
@@ -166,7 +187,7 @@ Orphaned tasks at session end: ${orphanResult.rows.map((r) => `"${String(r.title
166
187
  });
167
188
  if (conversationSummary.length > 100) {
168
189
  try {
169
- const { writeMemoryViaDaemon } = await import("../memory-queue-client-LFPZPPQA.js");
190
+ const { writeMemoryViaDaemon } = await import("../memory-queue-client-5HB2XUH7.js");
170
191
  await writeMemoryViaDaemon({
171
192
  raw_text: conversationSummary.slice(0, 8e3),
172
193
  agent_id: agent.agentId,
@@ -182,7 +203,7 @@ Orphaned tasks at session end: ${orphanResult.rows.map((r) => `"${String(r.title
182
203
  }
183
204
  }
184
205
  try {
185
- const { clearSessionFileReads } = await import("../git-staleness-M46AYLPP.js");
206
+ const { clearSessionFileReads } = await import("../git-staleness-ATV5CGAP.js");
186
207
  await clearSessionFileReads(data.session_id);
187
208
  } catch {
188
209
  }
@@ -196,7 +217,7 @@ Orphaned tasks at session end: ${orphanResult.rows.map((r) => `"${String(r.title
196
217
  );
197
218
  let commits = [];
198
219
  try {
199
- const { getRecentCommits } = await import("../git-task-sweep-PXOS56YT.js");
220
+ const { getRecentCommits } = await import("../git-task-sweep-KXZRIP4T.js");
200
221
  commits = getRecentCommits(30);
201
222
  } catch {
202
223
  }
@@ -206,7 +227,7 @@ Orphaned tasks at session end: ${orphanResult.rows.map((r) => `"${String(r.title
206
227
  const title = String(row.title);
207
228
  try {
208
229
  if (commits.length > 0) {
209
- const { findBestMatch } = await import("../git-task-sweep-PXOS56YT.js");
230
+ const { findBestMatch } = await import("../git-task-sweep-KXZRIP4T.js");
210
231
  let context;
211
232
  try {
212
233
  const ctxResult = await client.execute({
@@ -250,7 +271,7 @@ Orphaned tasks at session end: ${orphanResult.rows.map((r) => `"${String(r.title
250
271
  parts.push(`Left in_progress (no matching commits, needs triage): ${leftInProgress.join(", ")}`);
251
272
  }
252
273
  try {
253
- const { writeNotification } = await import("../notifications-76VCYXWW.js");
274
+ const { writeNotification } = await import("../notifications-6TCE6OBG.js");
254
275
  await writeNotification({
255
276
  agentId: agent.agentId,
256
277
  agentRole: agent.agentRole,
@@ -29,16 +29,27 @@ process.stdin.on("data", (chunk) => {
29
29
  });
30
30
  process.stdin.on("end", async () => {
31
31
  try {
32
- const { getClient } = await import("../lib/database.js");
33
- const { lightweightSearch } = await import("../lib/hybrid-search.js");
34
- const { getActiveAgent } = await import("../active-agent-R2KMWMR6.js");
32
+ const { getActiveAgent } = await import("../active-agent-DGTIJN2U.js");
35
33
  const { getProjectName } = await import("../project-name-EWG5KAZP.js");
36
- const { getCurrentSessionScope } = await import("../task-scope-2N45TE32.js");
34
+ const { getCurrentSessionScope } = await import("../task-scope-W73Z3XWE.js");
37
35
  const { canCoordinate } = await import("../lib/employees.js");
38
36
  const data = JSON.parse(input);
39
37
  const projectName = getProjectName(data.cwd || void 0);
40
38
  const source = data.source ?? "startup";
41
39
  const sessionScope = getCurrentSessionScope();
40
+ let getClient = null;
41
+ let lightweightSearch = null;
42
+ let daemonDegraded = false;
43
+ try {
44
+ const db = await import("../lib/database.js");
45
+ const search = await import("../lib/hybrid-search.js");
46
+ getClient = db.getClient;
47
+ lightweightSearch = search.lightweightSearch;
48
+ getClient();
49
+ } catch {
50
+ daemonDegraded = true;
51
+ process.stderr.write("[session-start] WARNING: daemon/DB unavailable \u2014 booting in degraded mode (no memory context)\n");
52
+ }
42
53
  if (source === "startup") {
43
54
  try {
44
55
  const undefinedPath = path.join(
@@ -50,8 +61,15 @@ process.stdin.on("end", async () => {
50
61
  } catch {
51
62
  }
52
63
  }
53
- const { fastDbInit } = await import("../fast-db-init-LAEISZQ2.js");
54
- await fastDbInit();
64
+ if (!daemonDegraded) {
65
+ try {
66
+ const { fastDbInit } = await import("../fast-db-init-UKETGWQI.js");
67
+ await fastDbInit();
68
+ } catch {
69
+ daemonDegraded = true;
70
+ process.stderr.write("[session-start] fastDbInit failed \u2014 degraded mode\n");
71
+ }
72
+ }
55
73
  const agent = getActiveAgent();
56
74
  const agentId = agent.agentId;
57
75
  if (agentId !== "default") {
@@ -73,7 +91,7 @@ process.stdin.on("end", async () => {
73
91
  }
74
92
  try {
75
93
  const sessionId = data.session_id;
76
- if (sessionId && agentId !== "default") {
94
+ if (sessionId && agentId !== "default" && getClient && !daemonDegraded) {
77
95
  const client = getClient();
78
96
  const sessionName = process.env.EXE_SESSION_NAME ?? "";
79
97
  await client.execute({
@@ -90,6 +108,26 @@ process.stdin.on("end", async () => {
90
108
  }
91
109
  } catch {
92
110
  }
111
+ if (daemonDegraded) {
112
+ let degradedContext = "## \u26A0\uFE0F Degraded Boot\nDaemon/MCP is temporarily unavailable. This session started without memory context. MCP tools may fail \u2014 retry in 30s if they do.\n";
113
+ try {
114
+ const { getActiveAgent: getAgent } = await import("../active-agent-DGTIJN2U.js");
115
+ const ag = getAgent();
116
+ if (ag.agentId !== "default") {
117
+ degradedContext = `## Your Identity
118
+ You are **${ag.agentId}** (${ag.agentRole}). Daemon is degraded \u2014 memory unavailable.
119
+
120
+ ` + degradedContext;
121
+ }
122
+ } catch {
123
+ }
124
+ process.stdout.write(JSON.stringify({
125
+ hookSpecificOutput: { hookEventName: "SessionStart", additionalContext: degradedContext }
126
+ }));
127
+ clearTimeout(timeout);
128
+ process.exit(0);
129
+ return;
130
+ }
93
131
  let query;
94
132
  let header;
95
133
  let extraContext = "";
@@ -97,7 +135,7 @@ process.stdin.on("end", async () => {
97
135
  query = `last actions on ${projectName}`;
98
136
  header = "## Resuming Session\nHere's where you left off:";
99
137
  try {
100
- const { buildCatchupBrief } = await import("../catchup-brief-OGWCHENC.js");
138
+ const { buildCatchupBrief } = await import("../catchup-brief-HE2EMZS5.js");
101
139
  const brief = await buildCatchupBrief(
102
140
  agentId,
103
141
  projectName,
@@ -109,7 +147,7 @@ process.stdin.on("end", async () => {
109
147
  } catch {
110
148
  }
111
149
  try {
112
- const { detectStaleFiles } = await import("../git-staleness-M46AYLPP.js");
150
+ const { detectStaleFiles } = await import("../git-staleness-ATV5CGAP.js");
113
151
  const staleFiles = await detectStaleFiles(agentId, data.cwd || process.cwd());
114
152
  if (staleFiles.length > 0) {
115
153
  extraContext += `${extraContext.length > 0 ? "\n\n" : ""}## \u26A0\uFE0F Stale File Warning
@@ -122,7 +160,7 @@ The following files have been modified since you last read them:
122
160
  query = `recent work on ${projectName}`;
123
161
  header = "## Memory Brief\nRecent memories from this project:";
124
162
  }
125
- const { queryTaskRows } = await import("../tasks-crud-ADLCGHGH.js");
163
+ const { queryTaskRows } = await import("../tasks-crud-HPJKI3QQ.js");
126
164
  const [memories, taskResult] = await Promise.all([
127
165
  lightweightSearch(query, agentId, { projectName, limit: 5 }),
128
166
  queryTaskRows({
@@ -1,29 +1,29 @@
1
1
  import "../chunk-SH45SJQW.js";
2
2
  import {
3
3
  getActiveAgent
4
- } from "../chunk-6WG2VIKC.js";
4
+ } from "../chunk-LM7H6XU4.js";
5
5
  import {
6
6
  sessionScopeFilter
7
- } from "../chunk-W7SDGBEC.js";
7
+ } from "../chunk-MFI5OXYW.js";
8
8
  import "../chunk-LOQCOHEW.js";
9
- import "../chunk-TXSJ2L5O.js";
9
+ import "../chunk-QI4IXJN7.js";
10
10
  import "../chunk-64WZEXXA.js";
11
- import "../chunk-A7KEWR6S.js";
12
- import "../chunk-X347L57O.js";
13
11
  import "../chunk-GZIAQYGI.js";
12
+ import "../chunk-TXWQPL2U.js";
13
+ import "../chunk-CSTJQDOE.js";
14
14
  import "../chunk-ZQX6UOP6.js";
15
15
  import "../chunk-H2CFBUGF.js";
16
16
  import "../chunk-NGP6LSV2.js";
17
- import "../chunk-HLVQ5Y7B.js";
18
- import "../chunk-OPU3NYOO.js";
17
+ import "../chunk-RE4VLK45.js";
19
18
  import "../chunk-CVYC6DUW.js";
19
+ import "../chunk-OPU3NYOO.js";
20
20
  import "../chunk-GJV3WDWM.js";
21
21
  import "../chunk-MP2AFCGL.js";
22
- import "../chunk-YS63NS6M.js";
22
+ import "../chunk-IHSM5GR4.js";
23
23
  import "../chunk-HYZV25LY.js";
24
24
  import {
25
25
  canCoordinate
26
- } from "../chunk-5RSYY7BE.js";
26
+ } from "../chunk-SJYOPYXH.js";
27
27
  import "../chunk-RVSGXGWG.js";
28
28
  import "../chunk-FXU7JOXK.js";
29
29
  import "../chunk-MVMMULOJ.js";
@@ -118,8 +118,8 @@ process.stdin.on("end", async () => {
118
118
  process.exit(0);
119
119
  }
120
120
  try {
121
- const { fastDbInit } = await import("../fast-db-init-LAEISZQ2.js");
122
- const { recordSessionEvent } = await import("../session-events-CUSPL25D.js");
121
+ const { fastDbInit } = await import("../fast-db-init-UKETGWQI.js");
122
+ const { recordSessionEvent } = await import("../session-events-K47FHAXJ.js");
123
123
  const client = await fastDbInit();
124
124
  await recordSessionEvent(client, {
125
125
  agentId: agent.agentId,
@@ -137,7 +137,7 @@ process.stdin.on("end", async () => {
137
137
  if (existsSync(taskCachePath)) {
138
138
  const cached = JSON.parse(readFileSync(taskCachePath, "utf8"));
139
139
  if (cached.taskId) {
140
- const { createTokenBudgetMiddleware } = await import("../token-budget-T5DFXVTM.js");
140
+ const { createTokenBudgetMiddleware } = await import("../token-budget-BA46CVHX.js");
141
141
  const middleware = createTokenBudgetMiddleware(cached.taskId);
142
142
  const estimatedOutputTokens = Math.ceil(message.length / 4);
143
143
  const result = await middleware.onTokenUsed(0, estimatedOutputTokens);
@@ -155,7 +155,7 @@ process.stdin.on("end", async () => {
155
155
  }
156
156
  const CAPACITY_SIGNALS = /context[- ]?full|hit capacity|conversation is too long|maximum context length|context window.*(?:limit|exceed|full)/i;
157
157
  if (!canCoordinate(agent.agentId, agent.agentRole) && CAPACITY_SIGNALS.test(message)) {
158
- import("../fast-db-init-LAEISZQ2.js").then(({ fastDbInit }) => fastDbInit()).then(async (client) => {
158
+ import("../fast-db-init-UKETGWQI.js").then(({ fastDbInit }) => fastDbInit()).then(async (client) => {
159
159
  const stScope = sessionScopeFilter();
160
160
  const tasks = await client.execute({
161
161
  sql: `SELECT title, status, task_file FROM tasks
@@ -173,7 +173,7 @@ process.stdin.on("end", async () => {
173
173
  "",
174
174
  `Last response fragment: ${message.slice(0, 500)}`
175
175
  ].join("\n");
176
- const { writeMemoryViaDaemon } = await import("../memory-queue-client-LFPZPPQA.js");
176
+ const { writeMemoryViaDaemon } = await import("../memory-queue-client-5HB2XUH7.js");
177
177
  await writeMemoryViaDaemon({
178
178
  raw_text: checkpoint,
179
179
  agent_id: agent.agentId,
@@ -226,7 +226,7 @@ Session: ${data.session_id}
226
226
 
227
227
  ## Recent Thread
228
228
  ${msgs.slice(-15).join("\n")}`;
229
- const { writeMemoryViaDaemon } = await import("../memory-queue-client-LFPZPPQA.js");
229
+ const { writeMemoryViaDaemon } = await import("../memory-queue-client-5HB2XUH7.js");
230
230
  await writeMemoryViaDaemon({
231
231
  raw_text: summary,
232
232
  agent_id: agent.agentId,
@@ -248,7 +248,7 @@ ${msgs.slice(-15).join("\n")}`;
248
248
  } catch {
249
249
  }
250
250
  if (!canCoordinate(agent.agentId, agent.agentRole)) {
251
- import("../fast-db-init-LAEISZQ2.js").then(({ fastDbInit }) => fastDbInit()).then(async (client) => {
251
+ import("../fast-db-init-UKETGWQI.js").then(({ fastDbInit }) => fastDbInit()).then(async (client) => {
252
252
  const orScope = sessionScopeFilter();
253
253
  return client.execute({
254
254
  sql: `SELECT title, status FROM tasks
@@ -268,7 +268,7 @@ ${msgs.slice(-15).join("\n")}`;
268
268
  });
269
269
  }
270
270
  if (AUTO_INGESTION_ENABLED) {
271
- import("../memory-queue-client-LFPZPPQA.js").then(
271
+ import("../memory-queue-client-5HB2XUH7.js").then(
272
272
  ({ writeMemoryViaDaemon }) => writeMemoryViaDaemon({
273
273
  raw_text: message.slice(0, 5e3),
274
274
  agent_id: agent.agentId,
@@ -1,29 +1,29 @@
1
1
  import "../chunk-SH45SJQW.js";
2
2
  import {
3
3
  getActiveAgent
4
- } from "../chunk-6WG2VIKC.js";
4
+ } from "../chunk-LM7H6XU4.js";
5
5
  import {
6
6
  sessionScopeFilter
7
- } from "../chunk-W7SDGBEC.js";
7
+ } from "../chunk-MFI5OXYW.js";
8
8
  import "../chunk-LOQCOHEW.js";
9
- import "../chunk-TXSJ2L5O.js";
9
+ import "../chunk-QI4IXJN7.js";
10
10
  import "../chunk-64WZEXXA.js";
11
- import "../chunk-A7KEWR6S.js";
12
- import "../chunk-X347L57O.js";
13
11
  import "../chunk-GZIAQYGI.js";
12
+ import "../chunk-TXWQPL2U.js";
13
+ import "../chunk-CSTJQDOE.js";
14
14
  import "../chunk-ZQX6UOP6.js";
15
15
  import "../chunk-H2CFBUGF.js";
16
16
  import "../chunk-NGP6LSV2.js";
17
- import "../chunk-HLVQ5Y7B.js";
18
- import "../chunk-OPU3NYOO.js";
17
+ import "../chunk-RE4VLK45.js";
19
18
  import "../chunk-CVYC6DUW.js";
19
+ import "../chunk-OPU3NYOO.js";
20
20
  import "../chunk-GJV3WDWM.js";
21
21
  import "../chunk-MP2AFCGL.js";
22
- import "../chunk-YS63NS6M.js";
22
+ import "../chunk-IHSM5GR4.js";
23
23
  import "../chunk-HYZV25LY.js";
24
24
  import {
25
25
  canCoordinate
26
- } from "../chunk-5RSYY7BE.js";
26
+ } from "../chunk-SJYOPYXH.js";
27
27
  import "../chunk-RVSGXGWG.js";
28
28
  import "../chunk-FXU7JOXK.js";
29
29
  import "../chunk-MVMMULOJ.js";
@@ -55,7 +55,7 @@ process.stdin.on("end", async () => {
55
55
  if (canCoordinate(agent.agentId, agent.agentRole)) {
56
56
  process.exit(0);
57
57
  }
58
- const { fastDbInit } = await import("../fast-db-init-LAEISZQ2.js");
58
+ const { fastDbInit } = await import("../fast-db-init-UKETGWQI.js");
59
59
  const client = await fastDbInit();
60
60
  const saScope = sessionScopeFilter();
61
61
  const pendingResult = await client.execute({
@@ -1,40 +1,41 @@
1
1
  import {
2
2
  writeContinuityCheckpoint
3
- } from "../chunk-KZ7SXZ2V.js";
4
- import "../chunk-5OD3AFRW.js";
3
+ } from "../chunk-NFMQRLCD.js";
4
+ import "../chunk-V6RCZ25F.js";
5
5
  import "../chunk-GUCKE3GK.js";
6
- import "../chunk-G4FDG3LK.js";
6
+ import "../chunk-UVNDLF74.js";
7
7
  import "../chunk-CMFLJNP6.js";
8
8
  import {
9
9
  initStore,
10
10
  vectorToBlob
11
- } from "../chunk-6BURHBE6.js";
12
- import "../chunk-S2FX5KJ4.js";
11
+ } from "../chunk-ZXB44R3E.js";
12
+ import "../chunk-CHCA3ZM2.js";
13
+ import "../chunk-WBLILGAP.js";
13
14
  import {
14
15
  sessionScopeFilter,
15
16
  writeNotification
16
- } from "../chunk-W7SDGBEC.js";
17
+ } from "../chunk-MFI5OXYW.js";
17
18
  import "../chunk-LOQCOHEW.js";
18
- import "../chunk-TXSJ2L5O.js";
19
+ import "../chunk-QI4IXJN7.js";
19
20
  import "../chunk-64WZEXXA.js";
20
- import "../chunk-A7KEWR6S.js";
21
- import "../chunk-X347L57O.js";
22
21
  import "../chunk-GZIAQYGI.js";
22
+ import "../chunk-TXWQPL2U.js";
23
+ import "../chunk-CSTJQDOE.js";
23
24
  import "../chunk-ZQX6UOP6.js";
24
25
  import "../chunk-H2CFBUGF.js";
25
26
  import "../chunk-NGP6LSV2.js";
26
- import "../chunk-HLVQ5Y7B.js";
27
- import "../chunk-OPU3NYOO.js";
27
+ import "../chunk-RE4VLK45.js";
28
28
  import "../chunk-CVYC6DUW.js";
29
+ import "../chunk-OPU3NYOO.js";
29
30
  import "../chunk-GJV3WDWM.js";
30
31
  import "../chunk-MP2AFCGL.js";
31
32
  import "../chunk-PWMMIGVQ.js";
32
- import "../chunk-YS63NS6M.js";
33
+ import "../chunk-IHSM5GR4.js";
33
34
  import "../chunk-HYZV25LY.js";
34
35
  import {
35
36
  canCoordinate,
36
37
  getClient
37
- } from "../chunk-5RSYY7BE.js";
38
+ } from "../chunk-SJYOPYXH.js";
38
39
  import "../chunk-RVSGXGWG.js";
39
40
  import "../chunk-FXU7JOXK.js";
40
41
  import "../chunk-6D23UNXU.js";
@@ -110,7 +111,7 @@ async function main() {
110
111
  let summaryText = "";
111
112
  let limitReached = false;
112
113
  try {
113
- const { assertMemoryLimit } = await import("../plan-limits-SOR3QXKV.js");
114
+ const { assertMemoryLimit } = await import("../plan-limits-4EP46323.js");
114
115
  await assertMemoryLimit();
115
116
  } catch (err) {
116
117
  const msg = err instanceof Error ? err.message : String(err);
@@ -180,7 +181,7 @@ async function main() {
180
181
  const { EXE_AI_DIR } = await import("../lib/config.js");
181
182
  const flagPath = path.join(EXE_AI_DIR, "session-cache", "needs-backfill");
182
183
  if (existsSync(flagPath)) {
183
- const { tryAcquireWorkerSlot, registerWorkerPid } = await import("../worker-gate-REVBJUZ6.js");
184
+ const { tryAcquireWorkerSlot, registerWorkerPid } = await import("../worker-gate-WTTK64TK.js");
184
185
  if (!tryAcquireWorkerSlot()) {
185
186
  process.stderr.write("[summary-worker] Backfill needed but worker gate full \u2014 skipping\n");
186
187
  } else {
@@ -287,7 +288,7 @@ main().catch((err) => {
287
288
  process.stderr.write("[summary-worker] FATAL: " + (err instanceof Error ? err.message : String(err)) + "\n");
288
289
  }).finally(async () => {
289
290
  try {
290
- const { cleanupWorkerPid } = await import("../worker-gate-REVBJUZ6.js");
291
+ const { cleanupWorkerPid } = await import("../worker-gate-WTTK64TK.js");
291
292
  cleanupWorkerPid();
292
293
  } catch {
293
294
  }
package/dist/index.js CHANGED
@@ -1,51 +1,51 @@
1
1
  import {
2
2
  runtime_exports
3
- } from "./chunk-OD4H5YCJ.js";
4
- import "./chunk-LHMBIFKD.js";
3
+ } from "./chunk-EKTQE2R5.js";
4
+ import "./chunk-VYNNN2S3.js";
5
5
  import "./chunk-YZFZDJWZ.js";
6
6
  import "./chunk-AVE2B4DQ.js";
7
7
  import "./chunk-NGVOA6ZQ.js";
8
8
  import "./chunk-AJWFPKQS.js";
9
9
  import "./chunk-JQ6TLNIV.js";
10
+ import "./chunk-O377P7GM.js";
10
11
  import "./chunk-PRKVT4KN.js";
11
12
  import "./chunk-HF25XPZE.js";
12
- import "./chunk-O377P7GM.js";
13
- import "./chunk-HZC4MR4H.js";
14
- import "./chunk-W7SDGBEC.js";
13
+ import "./chunk-YBKB2PXY.js";
14
+ import "./chunk-MFI5OXYW.js";
15
15
  import "./chunk-LOQCOHEW.js";
16
- import "./chunk-TXSJ2L5O.js";
16
+ import "./chunk-QI4IXJN7.js";
17
17
  import "./chunk-64WZEXXA.js";
18
- import "./chunk-A7KEWR6S.js";
19
- import "./chunk-X347L57O.js";
20
18
  import "./chunk-GZIAQYGI.js";
19
+ import "./chunk-TXWQPL2U.js";
20
+ import "./chunk-CSTJQDOE.js";
21
21
  import "./chunk-ZQX6UOP6.js";
22
22
  import "./chunk-H2CFBUGF.js";
23
23
  import "./chunk-NGP6LSV2.js";
24
- import "./chunk-HLVQ5Y7B.js";
25
- import "./chunk-OPU3NYOO.js";
24
+ import "./chunk-RE4VLK45.js";
26
25
  import "./chunk-CVYC6DUW.js";
26
+ import "./chunk-OPU3NYOO.js";
27
27
  import "./chunk-GJV3WDWM.js";
28
28
  import {
29
29
  gateway_exports
30
- } from "./chunk-77WQOD6J.js";
30
+ } from "./chunk-4CXUZ4NI.js";
31
31
  import "./chunk-ECSNSHZ7.js";
32
32
  import "./chunk-RJT7H2KR.js";
33
33
  import "./chunk-Q3V7K4ME.js";
34
34
  import "./chunk-N5RRQOAC.js";
35
35
  import "./chunk-ORCCI2VV.js";
36
36
  import "./chunk-FLSASUV3.js";
37
- import "./chunk-OEKSTOTE.js";
38
- import "./chunk-KNPEVPYG.js";
39
- import "./chunk-5MPQSNZF.js";
37
+ import "./chunk-AZAZ2C75.js";
38
+ import "./chunk-MSSQWF6X.js";
39
+ import "./chunk-AUTCT6AY.js";
40
40
  import "./chunk-FWFFZGSC.js";
41
41
  import "./chunk-ECGTESAP.js";
42
42
  import "./chunk-YGAAZN3E.js";
43
43
  import "./chunk-ONKIWA3R.js";
44
- import "./chunk-ZWRTVUQ6.js";
44
+ import "./chunk-KIMO5S45.js";
45
45
  import "./chunk-MP2AFCGL.js";
46
- import "./chunk-YS63NS6M.js";
46
+ import "./chunk-IHSM5GR4.js";
47
47
  import "./chunk-HYZV25LY.js";
48
- import "./chunk-5RSYY7BE.js";
48
+ import "./chunk-SJYOPYXH.js";
49
49
  import "./chunk-RVSGXGWG.js";
50
50
  import "./chunk-FXU7JOXK.js";
51
51
  import "./chunk-MVMMULOJ.js";
@@ -10,13 +10,13 @@ import {
10
10
  setupGhostty,
11
11
  setupTmux,
12
12
  setupWezterm
13
- } from "./chunk-45FYZIHI.js";
14
- import "./chunk-L7ROZR2H.js";
13
+ } from "./chunk-32YUET3Y.js";
14
+ import "./chunk-KXAUMIOX.js";
15
15
  import "./chunk-GNHN5HRQ.js";
16
16
  import "./chunk-L3TB7CC3.js";
17
- import "./chunk-YS63NS6M.js";
17
+ import "./chunk-IHSM5GR4.js";
18
18
  import "./chunk-HYZV25LY.js";
19
- import "./chunk-5RSYY7BE.js";
19
+ import "./chunk-SJYOPYXH.js";
20
20
  import "./chunk-RVSGXGWG.js";
21
21
  import "./chunk-FXU7JOXK.js";
22
22
  import "./chunk-4GXRETYL.js";
@@ -1,18 +1,18 @@
1
1
  import {
2
2
  resolvePackageRoot
3
- } from "./chunk-45FYZIHI.js";
3
+ } from "./chunk-32YUET3Y.js";
4
4
  import {
5
5
  buildMcpHttpHeaders,
6
6
  mcpHttpUrl
7
- } from "./chunk-L7ROZR2H.js";
7
+ } from "./chunk-KXAUMIOX.js";
8
8
  import "./chunk-GNHN5HRQ.js";
9
9
  import {
10
10
  EXE_HOOK_FILES,
11
11
  textHasLegacySplitPostToolHook
12
12
  } from "./chunk-L3TB7CC3.js";
13
- import "./chunk-YS63NS6M.js";
13
+ import "./chunk-IHSM5GR4.js";
14
14
  import "./chunk-HYZV25LY.js";
15
- import "./chunk-5RSYY7BE.js";
15
+ import "./chunk-SJYOPYXH.js";
16
16
  import "./chunk-RVSGXGWG.js";
17
17
  import "./chunk-FXU7JOXK.js";
18
18
  import "./chunk-4GXRETYL.js";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  resolvePackageRoot
3
- } from "./chunk-45FYZIHI.js";
3
+ } from "./chunk-32YUET3Y.js";
4
4
  import {
5
5
  buildMcpHttpHeaders,
6
6
  mcpHttpUrl
7
- } from "./chunk-L7ROZR2H.js";
7
+ } from "./chunk-KXAUMIOX.js";
8
8
  import {
9
9
  loadPreferences
10
10
  } from "./chunk-GNHN5HRQ.js";
@@ -12,9 +12,9 @@ import {
12
12
  EXE_HOOKS,
13
13
  isLegacySplitPostToolCommand
14
14
  } from "./chunk-L3TB7CC3.js";
15
- import "./chunk-YS63NS6M.js";
15
+ import "./chunk-IHSM5GR4.js";
16
16
  import "./chunk-HYZV25LY.js";
17
- import "./chunk-5RSYY7BE.js";
17
+ import "./chunk-SJYOPYXH.js";
18
18
  import "./chunk-RVSGXGWG.js";
19
19
  import "./chunk-FXU7JOXK.js";
20
20
  import "./chunk-4GXRETYL.js";
@@ -5,7 +5,7 @@ import {
5
5
  drainQueue,
6
6
  queueIntercom,
7
7
  readQueue
8
- } from "./chunk-TXSJ2L5O.js";
8
+ } from "./chunk-QI4IXJN7.js";
9
9
  import "./chunk-MLKGABMK.js";
10
10
  export {
11
11
  _resetDrainGuard,
@@ -0,0 +1,11 @@
1
+ import {
2
+ extractKeywords,
3
+ keywordsToString,
4
+ stringToKeywords
5
+ } from "./chunk-CHCA3ZM2.js";
6
+ import "./chunk-MLKGABMK.js";
7
+ export {
8
+ extractKeywords,
9
+ keywordsToString,
10
+ stringToKeywords
11
+ };