@askexenow/exe-os 0.9.302 → 0.9.303

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 (299) hide show
  1. package/deploy/compose/README.md +7 -3
  2. package/deploy/compose/add-routes.sh +107 -0
  3. package/deploy/compose/docker-compose.yml +80 -14
  4. package/deploy/compose/gateway-watchdog.sh +223 -0
  5. package/deploy/compose/setup.sh +7 -8
  6. package/deploy/stack-manifests/v0.9.json +44 -1
  7. package/dist/{active-agent-GGQAP4QE.js → active-agent-F3TFM4GE.js} +4 -3
  8. package/dist/{active-agent-ODI6GGVD.js → active-agent-SJ2EH6WL.js} +4 -3
  9. package/dist/{agentic-ontology-M7T72M6V.js → agentic-ontology-B36CUQLH.js} +1 -1
  10. package/dist/{backfill-metadata-GSZP2BEW.js → backfill-metadata-HPLVG42J.js} +5 -4
  11. package/dist/{behaviors-JM6KFSXL.js → behaviors-KRP2Q5XL.js} +6 -5
  12. package/dist/bin/agentic-ontology-backfill.js +6 -5
  13. package/dist/bin/agentic-reflection-backfill.js +7 -6
  14. package/dist/bin/agentic-semantic-label.js +6 -5
  15. package/dist/bin/backfill-conversations.js +7 -6
  16. package/dist/bin/backfill-responses.js +7 -6
  17. package/dist/bin/backfill-vectors.js +9 -8
  18. package/dist/bin/bulk-sync-postgres.js +13 -12
  19. package/dist/bin/cc-doctor.js +5 -4
  20. package/dist/bin/cleanup-stale-review-tasks.js +13 -12
  21. package/dist/bin/cli.js +16 -16
  22. package/dist/bin/exe-agent-config.js +3 -2
  23. package/dist/bin/exe-agent.js +14 -13
  24. package/dist/bin/exe-assign.js +9 -8
  25. package/dist/bin/exe-boot.js +21 -20
  26. package/dist/bin/exe-call.js +5 -4
  27. package/dist/bin/exe-cloud.js +13 -12
  28. package/dist/bin/exe-config-dump.js +525 -0
  29. package/dist/bin/exe-dispatch.js +13 -12
  30. package/dist/bin/exe-doctor.js +2 -2
  31. package/dist/bin/exe-export-behaviors.js +8 -7
  32. package/dist/bin/exe-forget.js +7 -6
  33. package/dist/bin/exe-gateway.js +8 -7
  34. package/dist/bin/exe-healthcheck.js +7 -4
  35. package/dist/bin/exe-heartbeat.js +13 -12
  36. package/dist/bin/exe-kill.js +16 -15
  37. package/dist/bin/exe-launch-agent.js +40 -24
  38. package/dist/bin/exe-new-employee.js +9 -8
  39. package/dist/bin/exe-pending-messages.js +14 -13
  40. package/dist/bin/exe-pending-notifications.js +13 -12
  41. package/dist/bin/exe-pending-reviews.js +13 -12
  42. package/dist/bin/exe-rename.js +5 -4
  43. package/dist/bin/exe-review.js +15 -14
  44. package/dist/bin/exe-search-quality.js +282 -0
  45. package/dist/bin/exe-search.js +6 -5
  46. package/dist/bin/exe-session-cleanup.js +18 -17
  47. package/dist/bin/exe-settings.js +14 -13
  48. package/dist/bin/exe-start-codex.js +13 -12
  49. package/dist/bin/exe-start-opencode.js +9 -8
  50. package/dist/bin/exe-status.js +14 -13
  51. package/dist/bin/exe-support.js +3 -3
  52. package/dist/bin/exe-team.js +4 -3
  53. package/dist/bin/exe-timers.js +237 -0
  54. package/dist/bin/git-sweep.js +14 -13
  55. package/dist/bin/graph-backfill.js +7 -6
  56. package/dist/bin/graph-export.js +6 -5
  57. package/dist/bin/import-history.js +10 -9
  58. package/dist/bin/install-launchd.js +2 -2
  59. package/dist/bin/install.js +10 -9
  60. package/dist/bin/intercom-check.js +4 -4
  61. package/dist/bin/mcp-sessions.js +2 -2
  62. package/dist/bin/orchestration-metrics.js +5 -4
  63. package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
  64. package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
  65. package/dist/bin/scan-tasks.js +13 -12
  66. package/dist/bin/setup.js +1 -1
  67. package/dist/bin/shard-migrate.js +5 -4
  68. package/dist/bin/stack-update.js +4 -4
  69. package/dist/bin/vps-health-gate.js +1 -1
  70. package/dist/{capability-cards-BCTFKT4G.js → capability-cards-7FFJF4HF.js} +3 -2
  71. package/dist/{capacity-monitor-B4S3XEDO.js → capacity-monitor-G4XO7GNU.js} +14 -13
  72. package/dist/{catchup-brief-I35KHK62.js → catchup-brief-NBAN42X7.js} +16 -15
  73. package/dist/{chunk-HZEAAKCR.js → chunk-2DDRLHWF.js} +3 -3
  74. package/dist/{chunk-AAPPSMPH.js → chunk-2JESQBYU.js} +1 -1
  75. package/dist/{chunk-V6P7TPPA.js → chunk-3BE52GPB.js} +148 -2
  76. package/dist/{chunk-7FNELLMX.js → chunk-4GBTBZFC.js} +8 -8
  77. package/dist/{chunk-BEIYF4NS.js → chunk-4NWEVZKT.js} +3 -3
  78. package/dist/{chunk-MM7SWUQ4.js → chunk-4OTIVBY3.js} +1 -1
  79. package/dist/{chunk-MY36XDUK.js → chunk-4VHQ6QQ3.js} +1 -1
  80. package/dist/{chunk-4AN6KMVG.js → chunk-53LLDHLD.js} +1 -1
  81. package/dist/{chunk-YNALY3SX.js → chunk-5SYMJCBM.js} +1 -1
  82. package/dist/{chunk-7I43GVER.js → chunk-5Y2DO57X.js} +3 -3
  83. package/dist/{chunk-W65Z4SJS.js → chunk-624YJGMR.js} +1 -1
  84. package/dist/{chunk-3IJCP6ZH.js → chunk-6U6HNE2Y.js} +1 -1
  85. package/dist/{chunk-PBCRUNIK.js → chunk-75SBA2D4.js} +463 -137
  86. package/dist/{chunk-LD2JKEJT.js → chunk-7CMIKNAB.js} +4 -4
  87. package/dist/{chunk-RO7EXVSJ.js → chunk-7DAUFPDV.js} +1 -1
  88. package/dist/{chunk-KA5RK5HZ.js → chunk-7RGIYC7W.js} +2 -2
  89. package/dist/{chunk-OZRO37JW.js → chunk-7RMIXFMD.js} +4 -4
  90. package/dist/{chunk-EI7PBUIA.js → chunk-7WQ36FAD.js} +1 -1
  91. package/dist/{chunk-LTI2DLHY.js → chunk-ALVJ3CT3.js} +2 -2
  92. package/dist/{chunk-BUGMW7YF.js → chunk-B7BDXCKK.js} +11 -11
  93. package/dist/{chunk-P33JVGSP.js → chunk-BM3YRAE5.js} +1 -1
  94. package/dist/{chunk-OMCNFTSI.js → chunk-C5CR4XDV.js} +1 -1
  95. package/dist/{chunk-N76VTMMF.js → chunk-CCYRCRLW.js} +2 -2
  96. package/dist/{chunk-6X2YNVLB.js → chunk-CTIEJGO4.js} +3 -3
  97. package/dist/{chunk-WIL6LXNG.js → chunk-CTUQZ7LF.js} +1 -1
  98. package/dist/{chunk-35U72CD2.js → chunk-D3IYBLWN.js} +3 -3
  99. package/dist/{chunk-QNJPDIWY.js → chunk-D6INBP4F.js} +1 -1
  100. package/dist/{chunk-KHZQVLNZ.js → chunk-EW2P62CV.js} +46 -0
  101. package/dist/{chunk-OR7J7TIA.js → chunk-EWIW3R6V.js} +1 -1
  102. package/dist/{chunk-OVKNFTCL.js → chunk-FMJ4D5G6.js} +133 -22
  103. package/dist/{chunk-W3E4VEEJ.js → chunk-FTOUQEYH.js} +1 -1
  104. package/dist/{chunk-2LJDLQNO.js → chunk-G4SVYLPT.js} +1 -1
  105. package/dist/{chunk-AYMSIV7X.js → chunk-HDCP6CGI.js} +1 -1
  106. package/dist/{chunk-RHMWSUJB.js → chunk-HHKI2FBV.js} +2 -2
  107. package/dist/{chunk-LE7CDIOA.js → chunk-HU5SQUZX.js} +1 -1
  108. package/dist/{chunk-H2ISTRWU.js → chunk-HUO7WZFC.js} +1 -1
  109. package/dist/{chunk-HNLBHP6P.js → chunk-JAPPHNDZ.js} +3 -3
  110. package/dist/{chunk-TCJEFW5V.js → chunk-JBWYZAQE.js} +1 -1
  111. package/dist/{chunk-4LZ54YGA.js → chunk-JLOB72OV.js} +5 -5
  112. package/dist/{chunk-T62GAN7I.js → chunk-JPGU7XUA.js} +7 -7
  113. package/dist/{chunk-ZQ2QHGWE.js → chunk-KCJZJJJG.js} +20 -24
  114. package/dist/{chunk-KVHPBQV4.js → chunk-KLAVORDC.js} +1 -1
  115. package/dist/{chunk-ORNKGGFX.js → chunk-MDO5LEP7.js} +1 -1
  116. package/dist/{chunk-6ERZFDBS.js → chunk-MGKZPSXW.js} +1 -1
  117. package/dist/{chunk-PJTRAFL4.js → chunk-MO3G76UK.js} +3 -3
  118. package/dist/{chunk-P3SIFDES.js → chunk-N5G4T47B.js} +16 -4
  119. package/dist/{chunk-D6UICP3C.js → chunk-NME5E325.js} +81 -3
  120. package/dist/{chunk-ST3X3YMZ.js → chunk-NWUPOAFV.js} +4 -4
  121. package/dist/{chunk-US64UR5O.js → chunk-O2KITXII.js} +3 -3
  122. package/dist/{chunk-3YJMI422.js → chunk-OVQDDRGZ.js} +4 -4
  123. package/dist/{chunk-WHOT5NZ7.js → chunk-P4WXINQT.js} +14 -2
  124. package/dist/{chunk-RQUHAXMM.js → chunk-PHFPIUWU.js} +2 -0
  125. package/dist/{chunk-U724Z3S3.js → chunk-PNYUSBLA.js} +100 -37
  126. package/dist/{chunk-GSWGOGP5.js → chunk-PRU6NRJY.js} +5 -5
  127. package/dist/{chunk-SXJACGQ5.js → chunk-PTR4DP7H.js} +4 -4
  128. package/dist/{chunk-XKGNKH6V.js → chunk-PY6RG2DV.js} +1 -1
  129. package/dist/{chunk-QWLPAEG5.js → chunk-Q32XYR7C.js} +3 -3
  130. package/dist/{chunk-H7ZNSQ2E.js → chunk-QPA5UAXG.js} +2 -2
  131. package/dist/{chunk-YMSWCERY.js → chunk-QTDS7LFB.js} +3 -3
  132. package/dist/chunk-RQ7OVXUZ.js +81 -0
  133. package/dist/{chunk-IMJNYREY.js → chunk-S4OOC2EM.js} +1 -1
  134. package/dist/{chunk-Z3EXECOX.js → chunk-S76SQ6R5.js} +1 -1
  135. package/dist/{chunk-74TUYU5A.js → chunk-SCUUQ3VB.js} +1 -1
  136. package/dist/{chunk-7ZWC5HVG.js → chunk-UFYO4DLS.js} +1 -1
  137. package/dist/{chunk-ALH6QLYF.js → chunk-UI5WA22X.js} +2 -2
  138. package/dist/{chunk-BR74NYEF.js → chunk-UJJIFFIJ.js} +11 -11
  139. package/dist/{chunk-VME3UH4D.js → chunk-UN6KSHLI.js} +1 -1
  140. package/dist/{chunk-CXKR5Z5F.js → chunk-V7E4I7J5.js} +4 -0
  141. package/dist/chunk-VQRTO7IS.js +290 -0
  142. package/dist/{chunk-VDHUHXFF.js → chunk-VTMPER4B.js} +2 -2
  143. package/dist/{chunk-Y5ASPRP7.js → chunk-X37ENEN5.js} +17 -13
  144. package/dist/{chunk-TLOILHSL.js → chunk-XHJESIVW.js} +32 -14
  145. package/dist/chunk-XXJRZ75E.js +43 -0
  146. package/dist/{chunk-4FG6IX7U.js → chunk-Y4TYFJ37.js} +1 -1
  147. package/dist/{chunk-VLSYKMCJ.js → chunk-YHYWYSWK.js} +1 -1
  148. package/dist/{chunk-5YL4Y27D.js → chunk-YLAYKXX3.js} +1 -1
  149. package/dist/{chunk-RMRZXPUU.js → chunk-YLLUDO54.js} +1 -1
  150. package/dist/{token-budget-UMHRRDBT.js → chunk-ZXZU6NCE.js} +2 -9
  151. package/dist/{co-activation-OKAHEMPE.js → co-activation-W3DTVIXG.js} +3 -2
  152. package/dist/{co-occurrence-IHSPB53O.js → co-occurrence-JP6QO7DC.js} +5 -4
  153. package/dist/{code-context-index-KGY4LKCA.js → code-context-index-6SWHYPLZ.js} +3 -3
  154. package/dist/{conversation-entity-extractor-KXJSHRGJ.js → conversation-entity-extractor-KYOBXNID.js} +2 -2
  155. package/dist/{crdt-sync-K2G3C6XY.js → crdt-sync-V4MYKLOX.js} +1 -1
  156. package/dist/{crm-webhook-ERZSQ3CW.js → crm-webhook-PJZ37A2Q.js} +2 -2
  157. package/dist/{cto-delegation-gate-ZCJ53LBQ.js → cto-delegation-gate-72TPHIVT.js} +12 -11
  158. package/dist/daemon-auth-N6P2MZAV.js +17 -0
  159. package/dist/{daemon-orchestration-V6HALVDS.js → daemon-orchestration-7ESTK6HS.js} +16 -15
  160. package/dist/daemon-ready-signal-3L2MJT7C.js +13 -0
  161. package/dist/{db-backup-VZHSFUVA.js → db-backup-3CT2GJK2.js} +1 -1
  162. package/dist/{doc-graph-extractor-LQ2IFND2.js → doc-graph-extractor-ECZF4H6G.js} +5 -4
  163. package/dist/{dreaming-QAKUASYV.js → dreaming-BZZAZHL5.js} +13 -12
  164. package/dist/{exe-drift-H3UWNFFY.js → exe-drift-24KYGBPH.js} +4 -3
  165. package/dist/{exe-export-MN5D4JMT.js → exe-export-SONG5KUF.js} +7 -6
  166. package/dist/{exe-import-IFFMEVD7.js → exe-import-JJJL7E5D.js} +7 -6
  167. package/dist/{exe-key-RSZC72QK.js → exe-key-BRKHDMIX.js} +3 -2
  168. package/dist/{exe-snapshot-I622MPLS.js → exe-snapshot-436XVPEC.js} +16 -15
  169. package/dist/{fast-db-init-QEFVT7Q3.js → fast-db-init-4VL3ZQIH.js} +1 -1
  170. package/dist/{founder-context-3SOKEW76.js → founder-context-6KTVHGVC.js} +2 -2
  171. package/dist/gateway/index.js +18 -17
  172. package/dist/{git-staleness-E7RPQA5U.js → git-staleness-VFDGCAMO.js} +3 -2
  173. package/dist/{git-task-sweep-D3A2C5BW.js → git-task-sweep-KZ27TCNB.js} +13 -12
  174. package/dist/{global-procedures-POG4V6IK.js → global-procedures-LDKZ2IPH.js} +4 -3
  175. package/dist/{graph-auto-extract-E7KALNWA.js → graph-auto-extract-VA3SFHPF.js} +5 -4
  176. package/dist/{graph-rag-3RZN7JR3.js → graph-rag-HITZZ63L.js} +2 -2
  177. package/dist/hooks/bug-report-worker.js +15 -14
  178. package/dist/hooks/codex-stop-task-finalizer.js +15 -14
  179. package/dist/hooks/commit-complete.js +15 -14
  180. package/dist/hooks/error-recall.js +8 -7
  181. package/dist/hooks/exe-heartbeat-hook.js +4 -3
  182. package/dist/hooks/ingest-worker.js +3 -3
  183. package/dist/hooks/ingest.js +8 -7
  184. package/dist/hooks/instructions-loaded.js +5 -4
  185. package/dist/hooks/manifest.json +20 -20
  186. package/dist/hooks/notification.js +5 -4
  187. package/dist/hooks/post-compact.js +14 -13
  188. package/dist/hooks/post-tool-combined.js +7 -7
  189. package/dist/hooks/pre-compact.js +18 -17
  190. package/dist/hooks/pre-tool-use.js +18 -17
  191. package/dist/hooks/prompt-submit.js +28 -27
  192. package/dist/hooks/session-end.js +23 -22
  193. package/dist/hooks/session-start.js +46 -22
  194. package/dist/hooks/stop.js +22 -21
  195. package/dist/hooks/subagent-stop.js +14 -13
  196. package/dist/hooks/summary-worker.js +21 -20
  197. package/dist/index.js +25 -23
  198. package/dist/{installer-IXUX73JN.js → installer-7LYVKNUK.js} +10 -9
  199. package/dist/{installer-RCUPPZ7Y.js → installer-B6PUJTSR.js} +10 -9
  200. package/dist/{installer-HDD6OH5Z.js → installer-MSAJOOHK.js} +7 -6
  201. package/dist/lib/cloud-sync.js +13 -12
  202. package/dist/lib/consolidation.js +8 -7
  203. package/dist/lib/database.js +3 -2
  204. package/dist/lib/db-daemon-client.js +3 -3
  205. package/dist/lib/db.js +3 -2
  206. package/dist/lib/device-registry.js +3 -1
  207. package/dist/lib/embedder.js +3 -3
  208. package/dist/lib/employee-templates.js +5 -4
  209. package/dist/lib/employees.js +3 -2
  210. package/dist/lib/exe-daemon-client.js +2 -2
  211. package/dist/lib/exe-daemon.js +252 -402
  212. package/dist/lib/hybrid-search.js +6 -5
  213. package/dist/lib/identity.js +3 -2
  214. package/dist/lib/license.js +2 -2
  215. package/dist/lib/messaging.js +13 -12
  216. package/dist/lib/reminders.js +4 -3
  217. package/dist/lib/schedules.js +6 -5
  218. package/dist/lib/session-registry.js +5 -4
  219. package/dist/lib/skill-learning.js +7 -6
  220. package/dist/lib/store.js +7 -4
  221. package/dist/lib/task-router.js +4 -3
  222. package/dist/lib/tasks.js +14 -13
  223. package/dist/lib/tmux-routing.js +16 -11
  224. package/dist/lib/token-spend.js +4 -3
  225. package/dist/{license-gate-V2UCK4KJ.js → license-gate-U7TC44UX.js} +3 -3
  226. package/dist/mcp/register-tools.js +70 -69
  227. package/dist/mcp/server.js +73 -72
  228. package/dist/mcp/tools/complete-reminder.js +5 -4
  229. package/dist/mcp/tools/create-reminder.js +5 -4
  230. package/dist/mcp/tools/create-task.js +16 -15
  231. package/dist/mcp/tools/deactivate-behavior.js +8 -7
  232. package/dist/mcp/tools/list-reminders.js +5 -4
  233. package/dist/mcp/tools/list-tasks.js +16 -15
  234. package/dist/mcp/tools/send-message.js +15 -14
  235. package/dist/mcp/tools/update-task.js +15 -14
  236. package/dist/{mcp-http-config-7LFFPNGV.js → mcp-http-config-DKDEXFVS.js} +4 -3
  237. package/dist/{memory-cards-BGI6MJRN.js → memory-cards-OMPYI2GY.js} +3 -2
  238. package/dist/{memory-graph-extractor-DTRRNWHZ.js → memory-graph-extractor-QARQCG53.js} +6 -5
  239. package/dist/{memory-poisoning-defense-MOCWJK6S.js → memory-poisoning-defense-4J5CPLJT.js} +3 -2
  240. package/dist/{memory-queue-client-DD4E5SIZ.js → memory-queue-client-2NURVA62.js} +3 -3
  241. package/dist/{memory-reflection-UKKTGZYR.js → memory-reflection-KSOFEZNV.js} +3 -2
  242. package/dist/{notifications-AMJ2K3MM.js → notifications-FAHXEFR2.js} +12 -11
  243. package/dist/{orchestration-events-MB4QVHTD.js → orchestration-events-2MVWZ2ET.js} +4 -3
  244. package/dist/orchestration-health-read-EJWVUARG.js +191 -0
  245. package/dist/{orchestrator-M7DJH6TN.js → orchestrator-DMM6AJVL.js} +14 -13
  246. package/dist/{pipeline-router-4LT5YG5P.js → pipeline-router-M3ESJZYK.js} +4 -3
  247. package/dist/{plan-limits-ENS7OJWP.js → plan-limits-BDOAH4DJ.js} +6 -5
  248. package/dist/{project-boot-6W5JPGSB.js → project-boot-DQZXRY5C.js} +25 -1
  249. package/dist/{projection-worker-WWXZK7QD.js → projection-worker-UBPNRKPX.js} +2 -2
  250. package/dist/{prospective-memory-VNGLPMS6.js → prospective-memory-OALGUYBS.js} +3 -2
  251. package/dist/{reranker-6XBS55FA.js → reranker-CTZ4SYCN.js} +1 -1
  252. package/dist/{retrieval-health-ATX5TIQ2.js → retrieval-health-P4ZMY4H3.js} +1 -1
  253. package/dist/{review-polling-E4ALHTQE.js → review-polling-VQUPLRWQ.js} +13 -12
  254. package/dist/runtime/index.js +20 -18
  255. package/dist/{session-events-3J6APMKN.js → session-events-4GHYBXXH.js} +13 -12
  256. package/dist/session-kill-telemetry-S445CSOH.js +63 -0
  257. package/dist/{session-scope-E54VIYTJ.js → session-scope-PPGKSJEL.js} +12 -11
  258. package/dist/{setup-wizard-XV736U5D.js → setup-wizard-ERES36LR.js} +1 -1
  259. package/dist/shared-rate-limit-store-QZPQEVE2.js +80 -0
  260. package/dist/{skill-refinement-FTURVWFN.js → skill-refinement-KITOKH6T.js} +3 -2
  261. package/dist/{stack-update-BIK2QHOE.js → stack-update-V7AJ425P.js} +5 -3
  262. package/dist/{steward-gate-YGU4VXPP.js → steward-gate-VLN2FTQD.js} +4 -3
  263. package/dist/{task-enforcement-GY3VTY6L.js → task-enforcement-XAPBTPBF.js} +12 -11
  264. package/dist/{task-scope-PYOK7OQ6.js → task-scope-ZGFHVDG5.js} +12 -11
  265. package/dist/{tasks-crud-HLJEJ2UU.js → tasks-crud-KIZREZSN.js} +12 -11
  266. package/dist/{tasks-notify-NGS3DWUJ.js → tasks-notify-3W3YIVF4.js} +13 -12
  267. package/dist/{tasks-review-BP5V2X34.js → tasks-review-F5PPITAJ.js} +12 -11
  268. package/dist/{telemetry-upload-AXYPFAPS.js → telemetry-upload-ZUFI5VH4.js} +8 -7
  269. package/dist/token-budget-7BD6ROHF.js +16 -0
  270. package/dist/{tool-capability-index-RHPVMMDD.js → tool-capability-index-335P663V.js} +1 -1
  271. package/dist/{tool-telemetry-BLSVABFJ.js → tool-telemetry-P6XVPFOF.js} +1 -1
  272. package/dist/tui/App.js +20 -19
  273. package/dist/{tui-data-EYPOFYLS.js → tui-data-QWJVWVTP.js} +12 -11
  274. package/dist/{worker-gate-SMFOBMMX.js → worker-gate-IHCMOXDF.js} +1 -1
  275. package/dist/{workflow-engine-TDJZ3TXB.js → workflow-engine-PJ7JAO6E.js} +2 -2
  276. package/dist/{worktree-XISIYRM4.js → worktree-4BR3ZQWN.js} +5 -4
  277. package/dist/{worktree-sweep-AS6GAR6X.js → worktree-sweep-XCPOF3RD.js} +6 -5
  278. package/package.json +8 -4
  279. package/release-notes.json +50 -88
  280. package/stack.release.json +47 -0
  281. package/dist/chunk-PHOQAVTK.js +0 -42
  282. package/dist/daemon-auth-BK7ON5ZH.js +0 -13
  283. package/dist/session-kill-telemetry-KOAHLRBT.js +0 -31
  284. package/dist/{chunk-NLHUA3YB.js → chunk-6JJBGPMF.js} +0 -0
  285. package/dist/{chunk-XDE5IGBX.js → chunk-ERAHOO7R.js} +0 -0
  286. package/dist/{chunk-LUGWK6QB.js → chunk-FF5DA4XP.js} +3 -3
  287. /package/dist/{chunk-FKFVNV7X.js → chunk-KYF3KSFT.js} +0 -0
  288. /package/dist/{chunk-GZSG2ZOX.js → chunk-O573H7LS.js} +0 -0
  289. /package/dist/{chunk-JTMKRUX6.js → chunk-PCU4ZMUA.js} +0 -0
  290. /package/dist/{chunk-PTDBHQX7.js → chunk-PGQMMD5P.js} +0 -0
  291. /package/dist/{chunk-GBV5PV5T.js → chunk-PP3RXZID.js} +0 -0
  292. /package/dist/{chunk-BGOMFGSW.js → chunk-Q5V3B6BP.js} +0 -0
  293. /package/dist/{chunk-UZATXREL.js → chunk-YH2IYVPW.js} +0 -0
  294. /package/dist/{chunk-YM3367VC.js → chunk-Z77S2QQU.js} +0 -0
  295. /package/dist/{core-memory-4OM7LR77.js → core-memory-VIWP7GJL.js} +0 -0
  296. /package/dist/{entity-boost-SFHIRXT5.js → entity-boost-VZ7ZEDVR.js} +0 -0
  297. /package/dist/{message-queue-client-QTC3VHJT.js → message-queue-client-32HOVUK7.js} +0 -0
  298. /package/dist/{oauth-server-BPN55EJM.js → oauth-server-V4H3SY7H.js} +0 -0
  299. /package/dist/{wiki-acl-45SIGG4O.js → wiki-acl-HNP5GGDA.js} +0 -0
@@ -0,0 +1,282 @@
1
+ #!/usr/bin/env node
2
+ import {
3
+ isMainModule
4
+ } from "../chunk-6Y4B3QF6.js";
5
+ import "../chunk-MLKGABMK.js";
6
+
7
+ // src/lib/search-quality-read.ts
8
+ import { readFileSync, statSync } from "fs";
9
+ import { homedir } from "os";
10
+ import { join } from "path";
11
+ function resolveLogPath() {
12
+ return process.env.EXE_SEARCH_LOG_PATH ?? join(homedir(), ".exe-os", "search-quality.jsonl");
13
+ }
14
+ function percentile(sorted, p) {
15
+ if (sorted.length === 0) return 0;
16
+ const idx = Math.min(sorted.length - 1, Math.max(0, Math.ceil(p / 100 * sorted.length) - 1));
17
+ return sorted[idx] ?? 0;
18
+ }
19
+ function toPercentiles(values) {
20
+ if (values.length === 0) return null;
21
+ const sorted = [...values].sort((a, b) => a - b);
22
+ return {
23
+ p50: percentile(sorted, 50),
24
+ p95: percentile(sorted, 95),
25
+ p99: percentile(sorted, 99),
26
+ min: sorted[0] ?? 0,
27
+ max: sorted[sorted.length - 1] ?? 0
28
+ };
29
+ }
30
+ function parseSearchQualityLog(raw) {
31
+ const entries = [];
32
+ let malformed = 0;
33
+ for (const line of raw.split("\n")) {
34
+ const trimmed = line.trim();
35
+ if (trimmed === "") continue;
36
+ try {
37
+ const parsed = JSON.parse(trimmed);
38
+ if (parsed && typeof parsed.timestamp === "string" && parsed.signals) {
39
+ entries.push(parsed);
40
+ } else {
41
+ malformed++;
42
+ }
43
+ } catch {
44
+ malformed++;
45
+ }
46
+ }
47
+ return { entries, malformed };
48
+ }
49
+ function resultCount(e) {
50
+ if (Array.isArray(e.topResults)) return e.topResults.length;
51
+ const s = e.signals;
52
+ return s.fts + s.vector + s.graph + s.cards + s.reflections + s.grep;
53
+ }
54
+ function topScore(e) {
55
+ const first = e.topResults?.find((r) => typeof r.score === "number");
56
+ return first ? first.score : null;
57
+ }
58
+ function buildTrend(sorted, buckets) {
59
+ if (sorted.length === 0) return [];
60
+ const size = Math.max(1, Math.ceil(sorted.length / buckets));
61
+ const points = [];
62
+ for (let i = 0; i < sorted.length; i += size) {
63
+ const slice = sorted.slice(i, i + size);
64
+ if (slice.length === 0) continue;
65
+ const last = slice[slice.length - 1];
66
+ const lat = slice.map((e) => e.latencyMs).filter((n) => Number.isFinite(n));
67
+ const scores = slice.map(topScore).filter((n) => n !== null);
68
+ const lowConf = slice.filter((e) => e.signals.lowConfidence).length;
69
+ points.push({
70
+ until: last.timestamp,
71
+ count: slice.length,
72
+ latencyP50: toPercentiles(lat)?.p50 ?? 0,
73
+ lowConfidenceRate: slice.length ? lowConf / slice.length : 0,
74
+ meanTopScore: scores.length ? scores.reduce((a, b) => a + b, 0) / scores.length : null
75
+ });
76
+ }
77
+ return points;
78
+ }
79
+ function loadSearchQualityReport(opts) {
80
+ const logPath = opts?.path ?? resolveLogPath();
81
+ const trendBuckets = opts?.trendBuckets ?? 6;
82
+ let sizeBytes = 0;
83
+ let exists = false;
84
+ try {
85
+ sizeBytes = statSync(logPath).size;
86
+ exists = true;
87
+ } catch {
88
+ exists = false;
89
+ }
90
+ const empty = {
91
+ logPath,
92
+ exists,
93
+ sizeBytes,
94
+ totalQueries: 0,
95
+ malformedLines: 0,
96
+ firstTimestamp: null,
97
+ lastTimestamp: null,
98
+ latencyMs: null,
99
+ topScore: null,
100
+ lowConfidenceRate: 0,
101
+ zeroResultRate: 0,
102
+ meanResultCount: 0,
103
+ signalCoverage: {
104
+ fts: 0,
105
+ vector: 0,
106
+ graph: 0,
107
+ cards: 0,
108
+ reflections: 0,
109
+ grep: 0,
110
+ reranker: 0,
111
+ selfQueryRouter: 0,
112
+ entityBoost: 0
113
+ },
114
+ trend: []
115
+ };
116
+ if (!exists) return empty;
117
+ let raw;
118
+ try {
119
+ raw = readFileSync(logPath, "utf8");
120
+ } catch {
121
+ return empty;
122
+ }
123
+ const { entries, malformed } = parseSearchQualityLog(raw);
124
+ if (entries.length === 0) {
125
+ return { ...empty, malformedLines: malformed };
126
+ }
127
+ const sorted = [...entries].sort(
128
+ (a, b) => Date.parse(a.timestamp) - Date.parse(b.timestamp)
129
+ );
130
+ const n = sorted.length;
131
+ const latencies = sorted.map((e) => e.latencyMs).filter((v) => Number.isFinite(v));
132
+ const scores = sorted.map(topScore).filter((v) => v !== null);
133
+ const counts = sorted.map(resultCount);
134
+ const lowConf = sorted.filter((e) => e.signals.lowConfidence).length;
135
+ const zeroResult = counts.filter((c) => c === 0).length;
136
+ const cover = (pred) => sorted.filter(pred).length / n;
137
+ return {
138
+ logPath,
139
+ exists: true,
140
+ sizeBytes,
141
+ totalQueries: n,
142
+ malformedLines: malformed,
143
+ firstTimestamp: sorted[0]?.timestamp ?? null,
144
+ lastTimestamp: sorted[n - 1]?.timestamp ?? null,
145
+ latencyMs: toPercentiles(latencies),
146
+ topScore: toPercentiles(scores),
147
+ lowConfidenceRate: lowConf / n,
148
+ zeroResultRate: zeroResult / n,
149
+ meanResultCount: counts.reduce((a, b) => a + b, 0) / n,
150
+ signalCoverage: {
151
+ fts: cover((e) => e.signals.fts > 0),
152
+ vector: cover((e) => e.signals.vector > 0),
153
+ graph: cover((e) => e.signals.graph > 0),
154
+ cards: cover((e) => e.signals.cards > 0),
155
+ reflections: cover((e) => e.signals.reflections > 0),
156
+ grep: cover((e) => e.signals.grep > 0),
157
+ reranker: cover((e) => e.signals.reranker === true),
158
+ selfQueryRouter: cover((e) => e.signals.selfQueryRouter === true),
159
+ entityBoost: cover((e) => e.signals.entityBoost === true)
160
+ },
161
+ trend: buildTrend(sorted, trendBuckets)
162
+ };
163
+ }
164
+ function formatSearchQualityReport(r) {
165
+ const lines = [];
166
+ lines.push("Search Quality Telemetry");
167
+ lines.push("========================");
168
+ lines.push(`Log: ${r.logPath}`);
169
+ if (!r.exists) {
170
+ lines.push("");
171
+ lines.push("No data yet \u2014 search-quality.jsonl does not exist.");
172
+ lines.push("Run some searches (EXE_SEARCH_LOG != 0) to populate it.");
173
+ return lines.join("\n");
174
+ }
175
+ if (r.totalQueries === 0) {
176
+ lines.push(`Size: ${(r.sizeBytes / 1024).toFixed(1)} KB`);
177
+ lines.push("");
178
+ lines.push(
179
+ r.malformedLines > 0 ? `No parseable entries yet (${r.malformedLines} malformed line(s)).` : "No data yet \u2014 the log is empty."
180
+ );
181
+ return lines.join("\n");
182
+ }
183
+ lines.push(`Size: ${(r.sizeBytes / 1024).toFixed(1)} KB`);
184
+ lines.push(`Window: ${r.firstTimestamp} -> ${r.lastTimestamp}`);
185
+ lines.push("");
186
+ lines.push("Overview");
187
+ lines.push("--------");
188
+ const pct = (v) => `${(v * 100).toFixed(1)}%`;
189
+ const ov = [
190
+ ["Queries", String(r.totalQueries)],
191
+ ["Mean results/query", r.meanResultCount.toFixed(2)],
192
+ ["Zero-result rate", pct(r.zeroResultRate)],
193
+ ["Low-confidence rate", pct(r.lowConfidenceRate)]
194
+ ];
195
+ if (r.malformedLines > 0) ov.push(["Malformed lines", String(r.malformedLines)]);
196
+ for (const [k, v] of ov) lines.push(` ${k.padEnd(20)} ${v}`);
197
+ lines.push("");
198
+ lines.push("Latency (ms) p50 p95 p99 min max");
199
+ lines.push("------------");
200
+ if (r.latencyMs) {
201
+ const f = (n) => String(Math.round(n)).padStart(8);
202
+ lines.push(
203
+ ` end-to-end ${f(r.latencyMs.p50)} ${f(r.latencyMs.p95)} ${f(r.latencyMs.p99)} ${f(r.latencyMs.min)} ${f(r.latencyMs.max)}`
204
+ );
205
+ } else {
206
+ lines.push(" (no latency recorded)");
207
+ }
208
+ lines.push("");
209
+ lines.push("Top-1 distance (lower = better)");
210
+ lines.push("------------");
211
+ if (r.topScore) {
212
+ const f = (n) => n.toFixed(4).padStart(9);
213
+ lines.push(
214
+ ` p50 ${f(r.topScore.p50)} p95 ${f(r.topScore.p95)} p99 ${f(r.topScore.p99)} min ${f(r.topScore.min)} max ${f(r.topScore.max)}`
215
+ );
216
+ } else {
217
+ lines.push(" (no scored results \u2014 keyword/graph-only retrieval)");
218
+ }
219
+ lines.push("");
220
+ lines.push("Signal coverage (queries where source contributed >=1 result)");
221
+ lines.push("---------------");
222
+ const c = r.signalCoverage;
223
+ const sc = [
224
+ ["fts", c.fts],
225
+ ["vector", c.vector],
226
+ ["graph", c.graph],
227
+ ["cards", c.cards],
228
+ ["reflections", c.reflections],
229
+ ["grep", c.grep],
230
+ ["reranker", c.reranker],
231
+ ["selfQueryRouter", c.selfQueryRouter],
232
+ ["entityBoost", c.entityBoost]
233
+ ];
234
+ for (const [k, v] of sc) lines.push(` ${k.padEnd(18)} ${pct(v)}`);
235
+ lines.push("");
236
+ lines.push("Trend (oldest -> newest)");
237
+ lines.push("-----");
238
+ lines.push(" until n lat_p50 lowConf meanTop1");
239
+ for (const t of r.trend) {
240
+ const score = t.meanTopScore === null ? " - " : t.meanTopScore.toFixed(4).padStart(8);
241
+ lines.push(
242
+ ` ${t.until.padEnd(24)} ${String(t.count).padStart(3)} ${String(Math.round(t.latencyP50)).padStart(9)} ${pct(t.lowConfidenceRate).padStart(9)} ${score}`
243
+ );
244
+ }
245
+ return lines.join("\n");
246
+ }
247
+
248
+ // src/bin/exe-search-quality.ts
249
+ function parseArgs(argv) {
250
+ const json = argv.includes("--json");
251
+ let buckets;
252
+ let path;
253
+ const bi = argv.indexOf("--buckets");
254
+ if (bi !== -1 && argv[bi + 1]) {
255
+ const n = Number(argv[bi + 1]);
256
+ if (Number.isFinite(n) && n > 0) buckets = Math.floor(n);
257
+ }
258
+ const pi = argv.indexOf("--path");
259
+ if (pi !== -1 && argv[pi + 1]) path = argv[pi + 1];
260
+ return { json, buckets, path };
261
+ }
262
+ function main() {
263
+ const { json, buckets, path } = parseArgs(process.argv.slice(2));
264
+ const report = loadSearchQualityReport({ path, trendBuckets: buckets });
265
+ if (json) {
266
+ console.log(JSON.stringify(report, null, 2));
267
+ return;
268
+ }
269
+ console.log(formatSearchQualityReport(report));
270
+ }
271
+ if (isMainModule(import.meta.url) && process.argv[1]?.includes("exe-search-quality")) {
272
+ try {
273
+ main();
274
+ process.exit(0);
275
+ } catch (err) {
276
+ process.stderr.write(
277
+ `[exe-search-quality] FATAL: ${err instanceof Error ? err.message : String(err)}
278
+ `
279
+ );
280
+ process.exit(1);
281
+ }
282
+ }
@@ -2,20 +2,21 @@
2
2
  import {
3
3
  hybridSearch,
4
4
  lightweightSearch
5
- } from "../chunk-ZQ2QHGWE.js";
5
+ } from "../chunk-KCJZJJJG.js";
6
6
  import "../chunk-AB4PAQYK.js";
7
7
  import {
8
8
  initStore
9
- } from "../chunk-Y5ASPRP7.js";
9
+ } from "../chunk-X37ENEN5.js";
10
10
  import "../chunk-CHCA3ZM2.js";
11
11
  import "../chunk-OTVEIJUQ.js";
12
- import "../chunk-PTDBHQX7.js";
12
+ import "../chunk-PGQMMD5P.js";
13
13
  import "../chunk-Y25OJWOQ.js";
14
14
  import "../chunk-MP2AFCGL.js";
15
- import "../chunk-P3SIFDES.js";
15
+ import "../chunk-N5G4T47B.js";
16
16
  import "../chunk-2I23RPSI.js";
17
- import "../chunk-BGOMFGSW.js";
17
+ import "../chunk-Q5V3B6BP.js";
18
18
  import "../chunk-PNQDP3OA.js";
19
+ import "../chunk-VQRTO7IS.js";
19
20
  import "../chunk-7HLWBYH7.js";
20
21
  import "../chunk-FXU7JOXK.js";
21
22
  import "../chunk-Z42MXYWW.js";
@@ -3,46 +3,47 @@ import {
3
3
  flushBatch,
4
4
  initStore,
5
5
  writeMemory
6
- } from "../chunk-Y5ASPRP7.js";
6
+ } from "../chunk-X37ENEN5.js";
7
7
  import "../chunk-CHCA3ZM2.js";
8
8
  import "../chunk-OTVEIJUQ.js";
9
- import "../chunk-PTDBHQX7.js";
9
+ import "../chunk-PGQMMD5P.js";
10
10
  import "../chunk-Y25OJWOQ.js";
11
11
  import {
12
12
  sessionScopeFilter,
13
13
  updateTaskStatus
14
- } from "../chunk-OVKNFTCL.js";
15
- import "../chunk-YNALY3SX.js";
14
+ } from "../chunk-FMJ4D5G6.js";
15
+ import "../chunk-5SYMJCBM.js";
16
+ import "../chunk-E23LNUWJ.js";
16
17
  import "../chunk-4JERP7NT.js";
17
18
  import "../chunk-4FVVJ7ME.js";
18
- import "../chunk-E23LNUWJ.js";
19
- import "../chunk-2LJDLQNO.js";
19
+ import "../chunk-G4SVYLPT.js";
20
20
  import "../chunk-KOO3J5PV.js";
21
21
  import "../chunk-22TVSRQQ.js";
22
22
  import "../chunk-SSTLTIF3.js";
23
- import "../chunk-WHOT5NZ7.js";
23
+ import "../chunk-P4WXINQT.js";
24
24
  import "../chunk-QB5JOGPK.js";
25
25
  import "../chunk-NGP6LSV2.js";
26
- import "../chunk-VDHUHXFF.js";
26
+ import "../chunk-VTMPER4B.js";
27
27
  import "../chunk-CVYC6DUW.js";
28
28
  import {
29
29
  getProjectName
30
30
  } from "../chunk-OPU3NYOO.js";
31
31
  import "../chunk-GJV3WDWM.js";
32
32
  import "../chunk-MP2AFCGL.js";
33
- import "../chunk-AYMSIV7X.js";
33
+ import "../chunk-HDCP6CGI.js";
34
34
  import "../chunk-HYZV25LY.js";
35
35
  import {
36
36
  getClient
37
- } from "../chunk-P3SIFDES.js";
37
+ } from "../chunk-N5G4T47B.js";
38
38
  import "../chunk-2I23RPSI.js";
39
- import "../chunk-BGOMFGSW.js";
39
+ import "../chunk-Q5V3B6BP.js";
40
40
  import "../chunk-PNQDP3OA.js";
41
+ import "../chunk-VQRTO7IS.js";
41
42
  import "../chunk-7HLWBYH7.js";
42
43
  import "../chunk-FXU7JOXK.js";
43
44
  import "../chunk-Z42MXYWW.js";
44
- import "../chunk-VME3UH4D.js";
45
- import "../chunk-CXKR5Z5F.js";
45
+ import "../chunk-UN6KSHLI.js";
46
+ import "../chunk-V7E4I7J5.js";
46
47
  import "../chunk-DFIOOK5R.js";
47
48
  import "../chunk-65DBIEM2.js";
48
49
  import "../chunk-MLKGABMK.js";
@@ -147,7 +148,7 @@ try {
147
148
  `
148
149
  );
149
150
  try {
150
- const { createReviewForCompletedTask } = await import("../tasks-review-BP5V2X34.js");
151
+ const { createReviewForCompletedTask } = await import("../tasks-review-F5PPITAJ.js");
151
152
  await createReviewForCompletedTask(
152
153
  {
153
154
  id: String(dt.id),
@@ -218,7 +219,7 @@ try {
218
219
  if (result.rows.length === 0) process.exit(0);
219
220
  let commits = [];
220
221
  try {
221
- const { getRecentCommits } = await import("../git-task-sweep-D3A2C5BW.js");
222
+ const { getRecentCommits } = await import("../git-task-sweep-KZ27TCNB.js");
222
223
  commits = getRecentCommits(30);
223
224
  } catch {
224
225
  }
@@ -231,7 +232,7 @@ try {
231
232
  const context = row.context ? String(row.context) : void 0;
232
233
  if (commits.length > 0) {
233
234
  try {
234
- const { findBestMatch } = await import("../git-task-sweep-D3A2C5BW.js");
235
+ const { findBestMatch } = await import("../git-task-sweep-KZ27TCNB.js");
235
236
  const match = findBestMatch({ id: taskId, title, context }, commits);
236
237
  if (match) {
237
238
  try {
@@ -357,7 +358,7 @@ try {
357
358
  } catch {
358
359
  }
359
360
  try {
360
- const { cleanupWorktree } = await import("../worktree-XISIYRM4.js");
361
+ const { cleanupWorktree } = await import("../worktree-4BR3ZQWN.js");
361
362
  const cleanup = cleanupWorktree(process.cwd(), agentName);
362
363
  if (cleanup.cleaned) {
363
364
  process.stderr.write(`[session-cleanup] worktree cleaned: ${cleanup.reason}
@@ -1,17 +1,17 @@
1
1
  import {
2
2
  assertSecureEndpoint
3
- } from "../chunk-T62GAN7I.js";
4
- import "../chunk-FKFVNV7X.js";
5
- import "../chunk-N76VTMMF.js";
3
+ } from "../chunk-JPGU7XUA.js";
4
+ import "../chunk-KYF3KSFT.js";
5
+ import "../chunk-CCYRCRLW.js";
6
6
  import "../chunk-LO6L5ADL.js";
7
- import "../chunk-MY36XDUK.js";
7
+ import "../chunk-4VHQ6QQ3.js";
8
8
  import "../chunk-QGGH7LOU.js";
9
- import "../chunk-TCJEFW5V.js";
10
- import "../chunk-PHOQAVTK.js";
11
- import "../chunk-Y5ASPRP7.js";
9
+ import "../chunk-JBWYZAQE.js";
10
+ import "../chunk-RQ7OVXUZ.js";
11
+ import "../chunk-X37ENEN5.js";
12
12
  import "../chunk-CHCA3ZM2.js";
13
13
  import "../chunk-OTVEIJUQ.js";
14
- import "../chunk-PTDBHQX7.js";
14
+ import "../chunk-PGQMMD5P.js";
15
15
  import "../chunk-Y25OJWOQ.js";
16
16
  import {
17
17
  DEFAULT_MODELS,
@@ -30,18 +30,19 @@ import "../chunk-7L2EV3XX.js";
30
30
  import {
31
31
  resolveEmbeddingsEnabled,
32
32
  setEmbeddingsEnabled
33
- } from "../chunk-RQUHAXMM.js";
33
+ } from "../chunk-PHFPIUWU.js";
34
34
  import {
35
35
  loadEmployeesSync
36
- } from "../chunk-P3SIFDES.js";
36
+ } from "../chunk-N5G4T47B.js";
37
37
  import "../chunk-2I23RPSI.js";
38
- import "../chunk-BGOMFGSW.js";
38
+ import "../chunk-Q5V3B6BP.js";
39
39
  import "../chunk-PNQDP3OA.js";
40
+ import "../chunk-VQRTO7IS.js";
40
41
  import "../chunk-7HLWBYH7.js";
41
42
  import "../chunk-FXU7JOXK.js";
42
43
  import "../chunk-Z42MXYWW.js";
43
- import "../chunk-VME3UH4D.js";
44
- import "../chunk-CXKR5Z5F.js";
44
+ import "../chunk-UN6KSHLI.js";
45
+ import "../chunk-V7E4I7J5.js";
45
46
  import {
46
47
  loadConfig,
47
48
  saveConfig
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  exportBehaviorsForAgent
4
- } from "../chunk-XKGNKH6V.js";
5
- import "../chunk-N76VTMMF.js";
4
+ } from "../chunk-PY6RG2DV.js";
5
+ import "../chunk-CCYRCRLW.js";
6
6
  import {
7
7
  disposeStore,
8
8
  initStore
9
- } from "../chunk-Y5ASPRP7.js";
9
+ } from "../chunk-X37ENEN5.js";
10
10
  import "../chunk-CHCA3ZM2.js";
11
11
  import "../chunk-OTVEIJUQ.js";
12
- import "../chunk-PTDBHQX7.js";
12
+ import "../chunk-PGQMMD5P.js";
13
13
  import "../chunk-Y25OJWOQ.js";
14
14
  import {
15
15
  RUNTIME_TABLE
@@ -18,10 +18,11 @@ import "../chunk-MP2AFCGL.js";
18
18
  import {
19
19
  baseAgentName,
20
20
  loadEmployeesSync
21
- } from "../chunk-P3SIFDES.js";
21
+ } from "../chunk-N5G4T47B.js";
22
22
  import "../chunk-2I23RPSI.js";
23
- import "../chunk-BGOMFGSW.js";
23
+ import "../chunk-Q5V3B6BP.js";
24
24
  import "../chunk-PNQDP3OA.js";
25
+ import "../chunk-VQRTO7IS.js";
25
26
  import "../chunk-7HLWBYH7.js";
26
27
  import "../chunk-FXU7JOXK.js";
27
28
  import "../chunk-Z42MXYWW.js";
@@ -223,7 +224,7 @@ async function main() {
223
224
  await initStore();
224
225
  behaviorsPath = await exportBehaviorsForAgent(baseAgent, "");
225
226
  try {
226
- const { loadGlobalProcedures, getGlobalProceduresBlock } = await import("../global-procedures-POG4V6IK.js");
227
+ const { loadGlobalProcedures, getGlobalProceduresBlock } = await import("../global-procedures-LDKZ2IPH.js");
227
228
  await loadGlobalProcedures();
228
229
  const block = getGlobalProceduresBlock();
229
230
  if (block) globalProcedures = block;
@@ -272,8 +273,8 @@ async function main() {
272
273
  let codexProfileName = null;
273
274
  if (exeSessionName) {
274
275
  try {
275
- const { readOrCreateDaemonToken } = await import("../mcp-http-config-7LFFPNGV.js");
276
- const { mcpHttpUrl } = await import("../mcp-http-config-7LFFPNGV.js");
276
+ const { readOrCreateDaemonToken } = await import("../mcp-http-config-DKDEXFVS.js");
277
+ const { mcpHttpUrl } = await import("../mcp-http-config-DKDEXFVS.js");
277
278
  const token = readOrCreateDaemonToken();
278
279
  const profileContent = [
279
280
  `# Auto-generated per-session MCP config for ${memoryAgent} in ${exeSessionName}`,
@@ -302,12 +303,12 @@ async function main() {
302
303
  }
303
304
  }
304
305
  try {
305
- const { writeActiveAgent } = await import("../active-agent-GGQAP4QE.js");
306
+ const { writeActiveAgent } = await import("../active-agent-F3TFM4GE.js");
306
307
  writeActiveAgent(memoryAgent, empRole);
307
308
  } catch {
308
309
  }
309
310
  try {
310
- const { verifyCodexHooks, runCodexInstaller } = await import("../installer-RCUPPZ7Y.js");
311
+ const { verifyCodexHooks, runCodexInstaller } = await import("../installer-B6PUJTSR.js");
311
312
  if (!verifyCodexHooks()) {
312
313
  process.stderr.write("[exe-start-codex] hooks missing \u2014 registering now\n");
313
314
  await runCodexInstaller();
@@ -325,7 +326,7 @@ async function main() {
325
326
  `);
326
327
  if (WORKTREE_ROLES.has(empRole)) {
327
328
  try {
328
- const { ensureWorktree, parseInstanceLabel } = await import("../worktree-XISIYRM4.js");
329
+ const { ensureWorktree, parseInstanceLabel } = await import("../worktree-4BR3ZQWN.js");
329
330
  const { base, instance } = parseInstanceLabel(worktreeName);
330
331
  worktreePath = ensureWorktree(process.cwd(), base, instance);
331
332
  if (worktreePath) {
@@ -1,15 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  exportBehaviorsForAgent
4
- } from "../chunk-XKGNKH6V.js";
5
- import "../chunk-N76VTMMF.js";
4
+ } from "../chunk-PY6RG2DV.js";
5
+ import "../chunk-CCYRCRLW.js";
6
6
  import {
7
7
  disposeStore,
8
8
  initStore
9
- } from "../chunk-Y5ASPRP7.js";
9
+ } from "../chunk-X37ENEN5.js";
10
10
  import "../chunk-CHCA3ZM2.js";
11
11
  import "../chunk-OTVEIJUQ.js";
12
- import "../chunk-PTDBHQX7.js";
12
+ import "../chunk-PGQMMD5P.js";
13
13
  import "../chunk-Y25OJWOQ.js";
14
14
  import {
15
15
  RUNTIME_TABLE
@@ -18,10 +18,11 @@ import "../chunk-MP2AFCGL.js";
18
18
  import {
19
19
  baseAgentName,
20
20
  loadEmployeesSync
21
- } from "../chunk-P3SIFDES.js";
21
+ } from "../chunk-N5G4T47B.js";
22
22
  import "../chunk-2I23RPSI.js";
23
- import "../chunk-BGOMFGSW.js";
23
+ import "../chunk-Q5V3B6BP.js";
24
24
  import "../chunk-PNQDP3OA.js";
25
+ import "../chunk-VQRTO7IS.js";
25
26
  import "../chunk-7HLWBYH7.js";
26
27
  import "../chunk-FXU7JOXK.js";
27
28
  import "../chunk-Z42MXYWW.js";
@@ -180,12 +181,12 @@ async function main() {
180
181
  })();
181
182
  process.env.AGENT_ROLE = empRole;
182
183
  try {
183
- const { writeActiveAgent } = await import("../active-agent-GGQAP4QE.js");
184
+ const { writeActiveAgent } = await import("../active-agent-F3TFM4GE.js");
184
185
  writeActiveAgent(memoryAgent, empRole);
185
186
  } catch {
186
187
  }
187
188
  try {
188
- const { verifyOpenCodeHooks, runOpenCodeInstaller } = await import("../installer-IXUX73JN.js");
189
+ const { verifyOpenCodeHooks, runOpenCodeInstaller } = await import("../installer-7LYVKNUK.js");
189
190
  if (!verifyOpenCodeHooks()) {
190
191
  process.stderr.write("[exe-start-opencode] hooks missing \u2014 registering now\n");
191
192
  await runOpenCodeInstaller();
@@ -1,35 +1,36 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  status
4
- } from "../chunk-YMSWCERY.js";
5
- import "../chunk-KHZQVLNZ.js";
6
- import "../chunk-OVKNFTCL.js";
7
- import "../chunk-YNALY3SX.js";
4
+ } from "../chunk-QTDS7LFB.js";
5
+ import "../chunk-EW2P62CV.js";
6
+ import "../chunk-FMJ4D5G6.js";
7
+ import "../chunk-5SYMJCBM.js";
8
+ import "../chunk-E23LNUWJ.js";
8
9
  import "../chunk-4JERP7NT.js";
9
10
  import "../chunk-4FVVJ7ME.js";
10
- import "../chunk-E23LNUWJ.js";
11
- import "../chunk-2LJDLQNO.js";
11
+ import "../chunk-G4SVYLPT.js";
12
12
  import "../chunk-KOO3J5PV.js";
13
13
  import "../chunk-22TVSRQQ.js";
14
14
  import "../chunk-SSTLTIF3.js";
15
- import "../chunk-WHOT5NZ7.js";
15
+ import "../chunk-P4WXINQT.js";
16
16
  import "../chunk-QB5JOGPK.js";
17
17
  import "../chunk-NGP6LSV2.js";
18
- import "../chunk-VDHUHXFF.js";
18
+ import "../chunk-VTMPER4B.js";
19
19
  import "../chunk-CVYC6DUW.js";
20
20
  import "../chunk-OPU3NYOO.js";
21
21
  import "../chunk-GJV3WDWM.js";
22
22
  import "../chunk-MP2AFCGL.js";
23
- import "../chunk-AYMSIV7X.js";
23
+ import "../chunk-HDCP6CGI.js";
24
24
  import "../chunk-HYZV25LY.js";
25
- import "../chunk-P3SIFDES.js";
25
+ import "../chunk-N5G4T47B.js";
26
26
  import "../chunk-2I23RPSI.js";
27
- import "../chunk-BGOMFGSW.js";
27
+ import "../chunk-Q5V3B6BP.js";
28
28
  import "../chunk-PNQDP3OA.js";
29
+ import "../chunk-VQRTO7IS.js";
29
30
  import "../chunk-7HLWBYH7.js";
30
31
  import "../chunk-FXU7JOXK.js";
31
- import "../chunk-VME3UH4D.js";
32
- import "../chunk-CXKR5Z5F.js";
32
+ import "../chunk-UN6KSHLI.js";
33
+ import "../chunk-V7E4I7J5.js";
33
34
  import "../chunk-DFIOOK5R.js";
34
35
  import "../chunk-65DBIEM2.js";
35
36
  import "../chunk-6Y4B3QF6.js";
@@ -4,11 +4,11 @@ import {
4
4
  main,
5
5
  runHealth,
6
6
  runTest
7
- } from "../chunk-MM7SWUQ4.js";
7
+ } from "../chunk-4OTIVBY3.js";
8
8
  import "../chunk-2XZ6X3PJ.js";
9
9
  import "../chunk-MMRUBN3I.js";
10
- import "../chunk-VME3UH4D.js";
11
- import "../chunk-CXKR5Z5F.js";
10
+ import "../chunk-UN6KSHLI.js";
11
+ import "../chunk-V7E4I7J5.js";
12
12
  import "../chunk-DFIOOK5R.js";
13
13
  import "../chunk-65DBIEM2.js";
14
14
  import "../chunk-MLKGABMK.js";
@@ -1,14 +1,15 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  fastDbInit
4
- } from "../chunk-KHZQVLNZ.js";
4
+ } from "../chunk-EW2P62CV.js";
5
5
  import {
6
6
  getClient,
7
7
  loadEmployees
8
- } from "../chunk-P3SIFDES.js";
8
+ } from "../chunk-N5G4T47B.js";
9
9
  import "../chunk-2I23RPSI.js";
10
- import "../chunk-BGOMFGSW.js";
10
+ import "../chunk-Q5V3B6BP.js";
11
11
  import "../chunk-PNQDP3OA.js";
12
+ import "../chunk-VQRTO7IS.js";
12
13
  import "../chunk-7HLWBYH7.js";
13
14
  import "../chunk-FXU7JOXK.js";
14
15
  import "../chunk-DFIOOK5R.js";