@askexenow/exe-os 0.9.229 → 0.9.232

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 (293) hide show
  1. package/dist/{active-agent-GJDG4CAW.js → active-agent-QFQKXG3F.js} +4 -4
  2. package/dist/{active-agent-WOP3ZHLN.js → active-agent-Z5MLNWDB.js} +4 -4
  3. package/dist/{agentic-ontology-ASORFII6.js → agentic-ontology-GBRFTYFS.js} +1 -1
  4. package/dist/{backfill-metadata-JRWUECUS.js → backfill-metadata-KT6XR5QQ.js} +6 -6
  5. package/dist/{background-jobs-VTOMOTNA.js → background-jobs-53U6HSUF.js} +2 -2
  6. package/dist/{behaviors-36T3O2DC.js → behaviors-KZZE732K.js} +4 -4
  7. package/dist/bin/age-ontology-load.js +2 -2
  8. package/dist/bin/agentic-ontology-backfill.js +8 -8
  9. package/dist/bin/agentic-reflection-backfill.js +9 -9
  10. package/dist/bin/agentic-semantic-label.js +8 -8
  11. package/dist/bin/backfill-conversations.js +8 -8
  12. package/dist/bin/backfill-responses.js +8 -8
  13. package/dist/bin/backfill-vectors.js +10 -10
  14. package/dist/bin/bulk-sync-postgres.js +9 -9
  15. package/dist/bin/cc-doctor.js +3 -3
  16. package/dist/bin/cleanup-stale-review-tasks.js +12 -12
  17. package/dist/bin/cli.js +23 -20
  18. package/dist/bin/exe-agent-config.js +4 -4
  19. package/dist/bin/exe-agent.js +5 -5
  20. package/dist/bin/exe-assign.js +10 -10
  21. package/dist/bin/exe-boot.js +20 -20
  22. package/dist/bin/exe-call.js +5 -5
  23. package/dist/bin/exe-cloud.js +8 -8
  24. package/dist/bin/exe-dispatch.js +12 -12
  25. package/dist/bin/exe-doctor.js +1 -1
  26. package/dist/bin/exe-export-behaviors.js +9 -9
  27. package/dist/bin/exe-forget.js +8 -8
  28. package/dist/bin/exe-gateway.js +8 -8
  29. package/dist/bin/exe-healthcheck.js +3 -3
  30. package/dist/bin/exe-heartbeat.js +12 -12
  31. package/dist/bin/exe-kill.js +16 -16
  32. package/dist/bin/exe-launch-agent.js +20 -20
  33. package/dist/bin/exe-new-employee.js +9 -9
  34. package/dist/bin/exe-pending-messages.js +13 -13
  35. package/dist/bin/exe-pending-notifications.js +12 -12
  36. package/dist/bin/exe-pending-reviews.js +12 -12
  37. package/dist/bin/exe-rename.js +5 -5
  38. package/dist/bin/exe-review.js +15 -15
  39. package/dist/bin/exe-search.js +7 -7
  40. package/dist/bin/exe-session-cleanup.js +18 -18
  41. package/dist/bin/exe-settings.js +7 -7
  42. package/dist/bin/exe-start-codex.js +13 -13
  43. package/dist/bin/exe-start-opencode.js +10 -10
  44. package/dist/bin/exe-status.js +13 -13
  45. package/dist/bin/exe-support.js +3 -3
  46. package/dist/bin/exe-team.js +4 -4
  47. package/dist/bin/git-sweep.js +12 -12
  48. package/dist/bin/graph-backfill.js +7 -7
  49. package/dist/bin/graph-export.js +7 -7
  50. package/dist/bin/import-history.js +9 -9
  51. package/dist/bin/install.js +34 -21
  52. package/dist/bin/intercom-check.js +4 -4
  53. package/dist/bin/mcp-sessions.js +2 -2
  54. package/dist/bin/orchestration-metrics.js +5 -5
  55. package/dist/bin/postgres-agentic-reflection-backfill.js +4 -4
  56. package/dist/bin/postgres-agentic-semantic-backfill.js +3 -3
  57. package/dist/bin/scan-tasks.js +12 -12
  58. package/dist/bin/setup.js +3 -3
  59. package/dist/bin/shard-migrate.js +7 -7
  60. package/dist/bin/stack-update.js +3 -3
  61. package/dist/bin/update.js +3 -12
  62. package/dist/bin/vps-health-gate.js +1 -1
  63. package/dist/{branding-I2TDZFUH.js → branding-CLWTOGDU.js} +1 -1
  64. package/dist/{capacity-monitor-HZPAFQZH.js → capacity-monitor-GGTPFYQG.js} +13 -13
  65. package/dist/{catchup-brief-CDG4KD5Y.js → catchup-brief-5HRROAN7.js} +15 -15
  66. package/dist/{chunk-L24HYX62.js → chunk-2L6GV2VS.js} +2 -2
  67. package/dist/{chunk-CTFKTUYN.js → chunk-2OFB7NQW.js} +1 -1
  68. package/dist/{chunk-X3AVWFWW.js → chunk-3KIULH4N.js} +1 -1
  69. package/dist/{chunk-YCTCKUZE.js → chunk-3LTFCIMU.js} +1 -1
  70. package/dist/{chunk-V3QAAU2U.js → chunk-4E2XAON5.js} +3 -3
  71. package/dist/{chunk-JJNXFW7M.js → chunk-4GAN7BGG.js} +3 -3
  72. package/dist/{chunk-OHPRXEUA.js → chunk-4KYGTWQ2.js} +1 -1
  73. package/dist/{chunk-W6TC6A73.js → chunk-5B5DRXBQ.js} +2 -2
  74. package/dist/{chunk-Q5GUJUDW.js → chunk-63KZ3LV4.js} +1 -1
  75. package/dist/{chunk-JKGAJAM7.js → chunk-6SKF42BO.js} +2 -2
  76. package/dist/{chunk-YADYM2DE.js → chunk-72GRCS2I.js} +1 -1
  77. package/dist/{chunk-TOQZO2XX.js → chunk-7GCZAO22.js} +3 -3
  78. package/dist/{chunk-R2E4TV5V.js → chunk-7ZOFRNMG.js} +1 -1
  79. package/dist/{chunk-3DQ3IPPO.js → chunk-AKYXKCDN.js} +2 -2
  80. package/dist/{chunk-YZKJLGWL.js → chunk-ALSWBA34.js} +1 -1
  81. package/dist/{chunk-OSMMWGJ2.js → chunk-AQSGZ3DL.js} +4 -4
  82. package/dist/{chunk-JSH5MAMM.js → chunk-ASWHNMK5.js} +3 -3
  83. package/dist/{chunk-7BPKHR4O.js → chunk-AWHANCZN.js} +1 -1
  84. package/dist/{chunk-CHT3THVG.js → chunk-BYBACXPV.js} +1 -1
  85. package/dist/{chunk-ADJXHBEU.js → chunk-CYWD6JN3.js} +1 -1
  86. package/dist/{chunk-ZVSG2KKG.js → chunk-D6MAKN4A.js} +1 -1
  87. package/dist/{chunk-3A5BZETG.js → chunk-DHV2DGH2.js} +9 -9
  88. package/dist/{chunk-DLXTKVBO.js → chunk-DUBO7325.js} +2 -2
  89. package/dist/{chunk-GFCQJZTO.js → chunk-EDPL7RUE.js} +1 -1
  90. package/dist/{chunk-GVP5U4WL.js → chunk-EEAY2YNU.js} +1 -1
  91. package/dist/{chunk-RTXGUKY3.js → chunk-ERG2BYEY.js} +4 -4
  92. package/dist/{chunk-IQT43SDJ.js → chunk-ESQCAAOT.js} +2 -2
  93. package/dist/{chunk-FIPU4BDF.js → chunk-FZOXXQ34.js} +1 -1
  94. package/dist/{chunk-2VZ6SY2R.js → chunk-GBCZXOWU.js} +7 -3
  95. package/dist/{chunk-UJOSFVWG.js → chunk-IYHYMEEV.js} +8 -4
  96. package/dist/{chunk-ECQBG62Y.js → chunk-JO5H3IVP.js} +1 -1
  97. package/dist/{chunk-JBKA7F5V.js → chunk-JR6S6JD7.js} +470 -445
  98. package/dist/{chunk-NUVDSQNY.js → chunk-K4KJEH4Y.js} +2 -2
  99. package/dist/{chunk-7NNXBDOO.js → chunk-KDJRFJDL.js} +26 -16
  100. package/dist/{chunk-GKM7RYN3.js → chunk-KHEX4NY3.js} +6 -5
  101. package/dist/{chunk-UPSZ2VKV.js → chunk-KQBSNOJL.js} +2 -2
  102. package/dist/{chunk-IKTMX6N7.js → chunk-KXOX7SDE.js} +2 -2
  103. package/dist/{chunk-UV4ZHXUP.js → chunk-L55G65Q2.js} +1 -1
  104. package/dist/{chunk-HQMEOIUJ.js → chunk-LHY4ZRZV.js} +1 -1
  105. package/dist/{chunk-MJXEOKIW.js → chunk-LOLA7VLN.js} +1 -1
  106. package/dist/{chunk-WA67SFFZ.js → chunk-LZHNW2TW.js} +1 -1
  107. package/dist/{chunk-OE6SYHTC.js → chunk-M44DCO63.js} +1 -1
  108. package/dist/{chunk-UBMGUX6T.js → chunk-M6W3HYEK.js} +16 -16
  109. package/dist/{chunk-3MK3R5E6.js → chunk-MJYZJP7O.js} +4 -4
  110. package/dist/{chunk-Z3TT2SVJ.js → chunk-NV3WPNBM.js} +1 -1
  111. package/dist/{chunk-WZ2RVKRO.js → chunk-O7A2X7MH.js} +3 -3
  112. package/dist/{chunk-MSCB4ACU.js → chunk-OANEAQ7F.js} +26 -4
  113. package/dist/{chunk-OI6MVDSY.js → chunk-OE6XFO2J.js} +1 -1
  114. package/dist/{chunk-ETSREHYC.js → chunk-OVG7IQTZ.js} +2 -2
  115. package/dist/{chunk-D4IVTUNN.js → chunk-OZCZNEYI.js} +1 -1
  116. package/dist/{chunk-FF62UWIJ.js → chunk-P6Z6TTQZ.js} +1 -1
  117. package/dist/{chunk-26PUEPOY.js → chunk-PBFEGM26.js} +3 -3
  118. package/dist/{chunk-HTCBLSIB.js → chunk-PQV5FL3N.js} +18 -18
  119. package/dist/{chunk-QHIGMP2M.js → chunk-QDDPNZBG.js} +1 -1
  120. package/dist/{chunk-7DNX45WB.js → chunk-QHFTK5EF.js} +1 -1
  121. package/dist/{chunk-6MP5NOOR.js → chunk-QU3ULJBC.js} +1 -1
  122. package/dist/{chunk-G4LLKD4Z.js → chunk-QWRRM2BE.js} +1 -1
  123. package/dist/{chunk-F2GUJW5O.js → chunk-RMIJ5G7P.js} +2 -2
  124. package/dist/{chunk-Q7RGLXQO.js → chunk-RRSTE5AR.js} +1 -1
  125. package/dist/{chunk-NFB4N53K.js → chunk-RZQ4QPV5.js} +2 -2
  126. package/dist/{chunk-EHKIJPVX.js → chunk-S5K7OGFP.js} +1 -1
  127. package/dist/{chunk-I2CDSGQW.js → chunk-SBUSQBPP.js} +1 -1
  128. package/dist/{chunk-LHOIY5LQ.js → chunk-SOU6SIMY.js} +1 -1
  129. package/dist/{chunk-UWISNP4U.js → chunk-SU7NR5JA.js} +6 -6
  130. package/dist/{chunk-YKIPAQZG.js → chunk-TCUOOFBS.js} +1 -1
  131. package/dist/{chunk-CQDSTBKT.js → chunk-TPG4TR43.js} +10 -10
  132. package/dist/{chunk-M37HYGAG.js → chunk-UESS3A4X.js} +5 -5
  133. package/dist/{chunk-BZAQ4UG7.js → chunk-V5QHETEF.js} +9 -9
  134. package/dist/{chunk-Q7XA3SQ4.js → chunk-WCLWK2GI.js} +97 -91
  135. package/dist/{chunk-RMPAMMYW.js → chunk-WUHYKL36.js} +1 -1
  136. package/dist/{chunk-TNTFEWU5.js → chunk-XBXKLACW.js} +8 -1
  137. package/dist/{chunk-AZSCW64F.js → chunk-XIQZTFQQ.js} +1 -1
  138. package/dist/{chunk-HO5SBL4B.js → chunk-XM2B73ES.js} +2 -2
  139. package/dist/{chunk-DGOGCPYU.js → chunk-XQ6YKRLZ.js} +2 -2
  140. package/dist/{chunk-36DAY227.js → chunk-XUBNHBQE.js} +2 -2
  141. package/dist/{chunk-MKVFPQH2.js → chunk-XW57NQDY.js} +2 -2
  142. package/dist/{chunk-GGV3PFUW.js → chunk-YHPULREH.js} +1 -1
  143. package/dist/{chunk-HFJNYSTQ.js → chunk-YKR4AM5K.js} +24 -10
  144. package/dist/{chunk-NRFVWJHP.js → chunk-ZDO2PPFL.js} +2 -2
  145. package/dist/{chunk-PW2YH2ZR.js → chunk-ZPTGXNUS.js} +1 -1
  146. package/dist/{co-activation-AJZTQHI3.js → co-activation-LHVIX5DN.js} +3 -3
  147. package/dist/{co-occurrence-FGEJIMMV.js → co-occurrence-34TI6766.js} +3 -3
  148. package/dist/{code-context-index-KHUYATRB.js → code-context-index-TPJZBS6M.js} +4 -4
  149. package/dist/{conversation-wiki-populator-GNFRTS7X.js → conversation-wiki-populator-7ZQUMJTL.js} +1 -1
  150. package/dist/{crdt-sync-K25AKQAD.js → crdt-sync-UDQLFKQ4.js} +1 -1
  151. package/dist/{crm-webhook-3ODT32F7.js → crm-webhook-ALFLLQQZ.js} +2 -2
  152. package/dist/{cto-delegation-gate-4XDMTK6H.js → cto-delegation-gate-PDL77V7U.js} +11 -11
  153. package/dist/{daemon-auth-WFQMMNSD.js → daemon-auth-YJ7XBUR3.js} +2 -2
  154. package/dist/{daemon-orchestration-5I7RLXCP.js → daemon-orchestration-3QCHGFYF.js} +14 -14
  155. package/dist/{db-backup-MSQKO6M5.js → db-backup-3ZQQPS5G.js} +2 -2
  156. package/dist/{dreaming-UL7T5ZXA.js → dreaming-MNQ3UIMT.js} +4 -4
  157. package/dist/{exe-drift-2KHRPBUK.js → exe-drift-GHZD7CP6.js} +4 -4
  158. package/dist/{exe-export-UZN6EFOR.js → exe-export-CEC3JASW.js} +7 -7
  159. package/dist/{exe-import-OSM3U36A.js → exe-import-LJNVTJUJ.js} +7 -7
  160. package/dist/{exe-key-OG35WPBA.js → exe-key-4VYTLMXT.js} +4 -4
  161. package/dist/{exe-org-JRBBON5H.js → exe-org-2FN2JADE.js} +2 -2
  162. package/dist/{exe-snapshot-7TQIN7XI.js → exe-snapshot-MOU536LX.js} +8 -8
  163. package/dist/{fast-db-init-4VXDSFUY.js → fast-db-init-3ZWHPYUQ.js} +1 -1
  164. package/dist/{founder-context-3N6BMG7B.js → founder-context-ZNGQ5NGW.js} +2 -2
  165. package/dist/gateway/index.js +9 -9
  166. package/dist/{gateway-client-V7NH35Q2.js → gateway-client-TBA6RKLN.js} +1 -1
  167. package/dist/{git-staleness-JW57ZGEJ.js → git-staleness-3XLWI33K.js} +3 -3
  168. package/dist/{git-task-sweep-HYAPIM44.js → git-task-sweep-SNJG4T4E.js} +12 -12
  169. package/dist/{global-procedures-NY3W7L5Q.js → global-procedures-OC5C7BWJ.js} +4 -4
  170. package/dist/{graph-auto-extract-5GZ34NXS.js → graph-auto-extract-B4Z66POP.js} +3 -3
  171. package/dist/{hook-integrity-OKSYTGVP.js → hook-integrity-R7EIWBUF.js} +1 -1
  172. package/dist/hooks/bug-report-worker.js +13 -13
  173. package/dist/hooks/codex-stop-task-finalizer.js +13 -13
  174. package/dist/hooks/commit-complete.js +15 -15
  175. package/dist/hooks/error-recall.js +9 -9
  176. package/dist/hooks/exe-heartbeat-hook.js +5 -5
  177. package/dist/hooks/ingest-worker.js +5 -5
  178. package/dist/hooks/ingest.js +12 -12
  179. package/dist/hooks/instructions-loaded.js +6 -6
  180. package/dist/hooks/manifest.json +20 -20
  181. package/dist/hooks/notification.js +6 -6
  182. package/dist/hooks/post-compact.js +14 -14
  183. package/dist/hooks/post-tool-combined.js +6 -6
  184. package/dist/hooks/pre-compact.js +19 -19
  185. package/dist/hooks/pre-tool-use.js +18 -18
  186. package/dist/hooks/prompt-submit.js +26 -26
  187. package/dist/hooks/session-end.js +24 -24
  188. package/dist/hooks/session-start.js +13 -13
  189. package/dist/hooks/stop.js +21 -21
  190. package/dist/hooks/subagent-stop.js +14 -14
  191. package/dist/hooks/summary-worker.js +22 -22
  192. package/dist/index.js +20 -20
  193. package/dist/{installer-GMIVB2JS.js → installer-KAKAR5WI.js} +6 -6
  194. package/dist/{installer-OBYQ6O3C.js → installer-KK2CS2CK.js} +6 -6
  195. package/dist/{installer-UAMA6ZVH.js → installer-RV2QVZTK.js} +6 -6
  196. package/dist/{key-backup-status-TVFMMWTT.js → key-backup-status-DRZO77KR.js} +1 -1
  197. package/dist/lib/agent-config.js +2 -2
  198. package/dist/lib/cloud-sync.js +8 -6
  199. package/dist/lib/config.js +1 -1
  200. package/dist/lib/consolidation.js +7 -7
  201. package/dist/lib/database.js +3 -3
  202. package/dist/lib/db-daemon-client.js +3 -3
  203. package/dist/lib/db.js +3 -3
  204. package/dist/lib/device-registry.js +1 -1
  205. package/dist/lib/embedder.js +4 -4
  206. package/dist/lib/employee-templates.js +5 -5
  207. package/dist/lib/employees.js +3 -3
  208. package/dist/lib/exe-daemon-client.js +3 -3
  209. package/dist/lib/exe-daemon.js +97 -43
  210. package/dist/lib/hybrid-search.js +7 -7
  211. package/dist/lib/identity.js +3 -3
  212. package/dist/lib/keychain.js +1 -1
  213. package/dist/lib/license.js +2 -2
  214. package/dist/lib/messaging.js +12 -12
  215. package/dist/lib/reminders.js +4 -4
  216. package/dist/lib/schedules.js +7 -7
  217. package/dist/lib/session-registry.js +5 -5
  218. package/dist/lib/session-wrappers.js +1 -1
  219. package/dist/lib/skill-learning.js +5 -5
  220. package/dist/lib/store.js +6 -6
  221. package/dist/lib/task-router.js +4 -4
  222. package/dist/lib/tasks.js +12 -12
  223. package/dist/lib/tmux-routing.js +11 -11
  224. package/dist/lib/token-spend.js +4 -4
  225. package/dist/lib/ws-client.js +1 -1
  226. package/dist/{license-gate-7QVCYARF.js → license-gate-67W2K667.js} +3 -3
  227. package/dist/mcp/register-tools.js +64 -64
  228. package/dist/mcp/server.js +86 -65
  229. package/dist/mcp/tools/complete-reminder.js +5 -5
  230. package/dist/mcp/tools/create-reminder.js +5 -5
  231. package/dist/mcp/tools/create-task.js +14 -14
  232. package/dist/mcp/tools/deactivate-behavior.js +6 -6
  233. package/dist/mcp/tools/list-reminders.js +5 -5
  234. package/dist/mcp/tools/list-tasks.js +14 -14
  235. package/dist/mcp/tools/send-message.js +14 -14
  236. package/dist/mcp/tools/update-task.js +13 -13
  237. package/dist/{mcp-http-config-YPF4WGU5.js → mcp-http-config-ZKOV5TEB.js} +4 -4
  238. package/dist/{memory-cards-XHZEOX7Q.js → memory-cards-P4ELKIBQ.js} +3 -3
  239. package/dist/{memory-graph-extractor-J3K7B4GC.js → memory-graph-extractor-LTOZ7QRR.js} +4 -4
  240. package/dist/{memory-poisoning-defense-I76FGNHK.js → memory-poisoning-defense-RNLXBWNU.js} +3 -3
  241. package/dist/{memory-queue-WEVFXPZO.js → memory-queue-PQRE4A62.js} +2 -2
  242. package/dist/{memory-queue-client-5XBHYAQR.js → memory-queue-client-MGXFQ62G.js} +5 -5
  243. package/dist/{memory-reflection-YJGI6IDI.js → memory-reflection-RIGWBNZJ.js} +3 -3
  244. package/dist/{notifications-H4F77BYT.js → notifications-TNCGZ5W2.js} +11 -11
  245. package/dist/{orchestration-events-LXVPJL6S.js → orchestration-events-TMN37OEJ.js} +4 -4
  246. package/dist/{orchestration-phase-HXRKMZXM.js → orchestration-phase-7VYG3L7X.js} +2 -2
  247. package/dist/{orchestrator-HXUZ6LYM.js → orchestrator-3I2ZWCBE.js} +13 -13
  248. package/dist/{pipeline-router-QRJQWMFF.js → pipeline-router-IWKIZSDC.js} +4 -4
  249. package/dist/{plan-limits-NFQVRHS5.js → plan-limits-4EPTLSIU.js} +5 -5
  250. package/dist/{prediction-log-C2BD3AHR.js → prediction-log-2Z6XD4EZ.js} +1 -1
  251. package/dist/{project-boot-JIGOSGCN.js → project-boot-6KWZPQNQ.js} +1 -1
  252. package/dist/{projection-worker-JZQTL4NU.js → projection-worker-5CSBJILA.js} +3 -3
  253. package/dist/{push-notifications-3GNJ5SZS.js → push-notifications-WR6QLWR3.js} +2 -2
  254. package/dist/{reranker-U6DEAT4S.js → reranker-2IHJEYIB.js} +2 -2
  255. package/dist/{review-polling-W2S3XAAU.js → review-polling-L5P2KMBI.js} +12 -12
  256. package/dist/runtime/index.js +14 -14
  257. package/dist/{session-events-MNWHGZY5.js → session-events-5FHQPX6H.js} +12 -12
  258. package/dist/{session-kill-telemetry-JHSI7D3F.js → session-kill-telemetry-GKNTJ6BY.js} +4 -4
  259. package/dist/{session-scope-SMT225X3.js → session-scope-DWIP4IKM.js} +11 -11
  260. package/dist/{setup-wizard-RBUTEZB2.js → setup-wizard-UHXMO2FP.js} +3 -3
  261. package/dist/{shard-manager-ON2WWCRM.js → shard-manager-PWSOXHZ4.js} +2 -2
  262. package/dist/{skill-refinement-LKJHUW2U.js → skill-refinement-X2MCBDTB.js} +3 -3
  263. package/dist/{stack-update-ZIMV4OEQ.js → stack-update-WFO774SS.js} +3 -3
  264. package/dist/{steward-gate-6IKH335D.js → steward-gate-PR2N5XHY.js} +4 -4
  265. package/dist/{task-enforcement-UIEWTA6H.js → task-enforcement-AATKSKSX.js} +11 -11
  266. package/dist/{task-scope-DNQURKOQ.js → task-scope-C24XH5SU.js} +11 -11
  267. package/dist/{tasks-crud-CLAYZZ4O.js → tasks-crud-3FBWU6GS.js} +11 -11
  268. package/dist/{tasks-review-OHR2P4QE.js → tasks-review-PLWP7Y6K.js} +11 -11
  269. package/dist/{telemetry-upload-APVDPCEV.js → telemetry-upload-SQOU3PMH.js} +7 -7
  270. package/dist/{token-budget-6IQNYKLR.js → token-budget-GL3TMPSU.js} +3 -3
  271. package/dist/{tool-capability-index-UUNF7VPA.js → tool-capability-index-H3YVB4WH.js} +1 -1
  272. package/dist/{tool-telemetry-SJSIL5M5.js → tool-telemetry-25KPRGFS.js} +1 -1
  273. package/dist/tui/App.js +25 -25
  274. package/dist/{tui-data-L6XG4Z52.js → tui-data-Y4U6LD4V.js} +11 -11
  275. package/dist/{worker-gate-GFKXZ6V5.js → worker-gate-NFZWLPCT.js} +2 -2
  276. package/dist/{workflow-engine-6HTKI2ZE.js → workflow-engine-BGLW3NCF.js} +2 -2
  277. package/dist/{worktree-BO7QQ32T.js → worktree-DJB52IZE.js} +5 -5
  278. package/package.json +2 -2
  279. /package/dist/{chunk-DKRTWILB.js → chunk-5CDLCKFP.js} +0 -0
  280. /package/dist/{chunk-EGWPJQRQ.js → chunk-73AHWU3R.js} +0 -0
  281. /package/dist/{chunk-IW53DAYO.js → chunk-HBVVFXTS.js} +0 -0
  282. /package/dist/{chunk-Z3ZCLTP7.js → chunk-OAOBUDO3.js} +0 -0
  283. /package/dist/{chunk-WWPX2LLP.js → chunk-P6346JIK.js} +0 -0
  284. /package/dist/{chunk-EEAKFEEA.js → chunk-TPOWVHXP.js} +0 -0
  285. /package/dist/{chunk-7EZCYO76.js → chunk-V32QD5JJ.js} +0 -0
  286. /package/dist/{chunk-3JP3FY33.js → chunk-VITYTNHD.js} +0 -0
  287. /package/dist/{core-memory-R7QBLN4C.js → core-memory-GS3UTWJA.js} +0 -0
  288. /package/dist/{entity-boost-7MB2IYAE.js → entity-boost-BQEHHM3I.js} +0 -0
  289. /package/dist/{message-queue-client-FUKX43JD.js → message-queue-client-NPOYVISO.js} +0 -0
  290. /package/dist/{oauth-server-CCZPDTZJ.js → oauth-server-TVI5S5GG.js} +0 -0
  291. /package/dist/{webhook-pipe-4WPFGGFD.js → webhook-pipe-GB7YZIKE.js} +0 -0
  292. /package/dist/{wiki-acl-XCT6QQGP.js → wiki-acl-WZ4YRL3B.js} +0 -0
  293. /package/dist/{wiki-client-KE622HKY.js → wiki-client-WRO5PRMD.js} +0 -0
@@ -1,11 +1,11 @@
1
1
  import {
2
2
  ingest
3
- } from "./chunk-OSMMWGJ2.js";
3
+ } from "./chunk-AQSGZ3DL.js";
4
4
  import {
5
5
  listWorkflowDefinitions,
6
6
  runWorkflow,
7
7
  startWorkflow
8
- } from "./chunk-YKIPAQZG.js";
8
+ } from "./chunk-TCUOOFBS.js";
9
9
  import {
10
10
  initCRMBridge
11
11
  } from "./chunk-ONKIWA3R.js";
@@ -1,7 +1,7 @@
1
1
  // src/lib/keychain.ts
2
2
  import { readFile, writeFile, unlink, mkdir, chmod, rename, copyFile } from "fs/promises";
3
3
  import { existsSync, statSync, writeFileSync, readFileSync } from "fs";
4
- import { execSync } from "child_process";
4
+ import { execSync, execFileSync, spawnSync } from "child_process";
5
5
  import crypto from "crypto";
6
6
  import path from "path";
7
7
  import os from "os";
@@ -108,17 +108,18 @@ function macKeychainSet(value, service = SERVICE) {
108
108
  if (!nativeKeychainAllowed()) return false;
109
109
  if (process.platform !== "darwin") return false;
110
110
  try {
111
+ process.stderr.write("[exe-os] Storing encryption key in macOS Keychain. You may see a system prompt \u2014 please allow it.\n");
111
112
  try {
112
- execSync(
113
- `security delete-generic-password -s "${service}" -a "${ACCOUNT}" 2>/dev/null`,
114
- { timeout: 5e3 }
115
- );
113
+ execFileSync("security", ["delete-generic-password", "-s", service, "-a", ACCOUNT], {
114
+ timeout: 5e3,
115
+ stdio: ["pipe", "pipe", "pipe"]
116
+ });
116
117
  } catch {
117
118
  }
118
- execSync(
119
- `security add-generic-password -s "${service}" -a "${ACCOUNT}" -w "${value}"`,
120
- { timeout: 5e3 }
121
- );
119
+ execFileSync("security", ["add-generic-password", "-s", service, "-a", ACCOUNT, "-w", value], {
120
+ timeout: 5e3,
121
+ stdio: ["pipe", "pipe", "pipe"]
122
+ });
122
123
  return true;
123
124
  } catch {
124
125
  return false;
@@ -151,11 +152,20 @@ function linuxSecretGet(service = SERVICE) {
151
152
  function linuxSecretSet(value, service = SERVICE) {
152
153
  if (!linuxSecretAvailable()) return false;
153
154
  try {
154
- execSync(
155
- `echo -n "${value}" | secret-tool store --label="exe-os master key" service "${service}" account "${ACCOUNT}" 2>/dev/null`,
156
- { timeout: 5e3 }
157
- );
158
- return true;
155
+ const result = spawnSync("secret-tool", [
156
+ "store",
157
+ "--label",
158
+ "exe-os master key",
159
+ "service",
160
+ service,
161
+ "account",
162
+ ACCOUNT
163
+ ], {
164
+ input: value,
165
+ stdio: ["pipe", "pipe", "pipe"],
166
+ timeout: 5e3
167
+ });
168
+ return result.status === 0;
159
169
  } catch {
160
170
  return false;
161
171
  }
@@ -310,7 +320,7 @@ async function getMasterKey() {
310
320
  const decrypted = decryptWithMachineKey(content, machineKey);
311
321
  if (!decrypted) {
312
322
  process.stderr.write(
313
- "[keychain] Key decryption failed \u2014 machine may have changed.\n Use your 24-word recovery phrase during setup: exe-os setup\n"
323
+ "[keychain] Your computer's hostname or username appears to have changed.\n Use your 24-word recovery phrase to restore: exe-os setup (option 2)\n"
314
324
  );
315
325
  return null;
316
326
  }
@@ -506,7 +516,7 @@ async function loadBip39() {
506
516
  return await import("bip39");
507
517
  } catch {
508
518
  throw new Error(
509
- "bip39 package not found. Run: npm install -g bip39\nOr reinstall exe-os: npm install -g @askexenow/exe-os"
519
+ "bip39 package not found. Reinstall exe-os: npm install -g @askexenow/exe-os@latest"
510
520
  );
511
521
  }
512
522
  }
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  getMasterKey,
3
3
  setMasterKey
4
- } from "./chunk-7NNXBDOO.js";
4
+ } from "./chunk-KDJRFJDL.js";
5
5
  import {
6
6
  LEGACY_LANCE_PATH,
7
7
  MODELS_DIR,
8
8
  loadConfig,
9
9
  saveConfig
10
- } from "./chunk-TNTFEWU5.js";
10
+ } from "./chunk-XBXKLACW.js";
11
11
  import {
12
12
  atomicWriteJsonSync,
13
13
  atomicWriteSync
@@ -380,7 +380,7 @@ async function runSetupWizard(opts = {}) {
380
380
  "Setup cancelled: recovery phrase was not confirmed. Save the 24-word phrase before continuing \u2014 it is required to recover encrypted memories."
381
381
  );
382
382
  }
383
- const { markKeyBackupConfirmed } = await import("./key-backup-status-TVFMMWTT.js");
383
+ const { markKeyBackupConfirmed } = await import("./key-backup-status-DRZO77KR.js");
384
384
  markKeyBackupConfirmed("setup-wizard");
385
385
  }
386
386
  state.completedSteps.push(1);
@@ -534,7 +534,7 @@ async function runSetupWizard(opts = {}) {
534
534
  if (cloudConfig) {
535
535
  config.cloud = cloudConfig;
536
536
  }
537
- const { applyDefaultOrchestrationPhase } = await import("./orchestration-phase-HXRKMZXM.js");
537
+ const { applyDefaultOrchestrationPhase } = await import("./orchestration-phase-7VYG3L7X.js");
538
538
  applyDefaultOrchestrationPhase(config);
539
539
  await saveConfig(config);
540
540
  log("");
@@ -828,6 +828,7 @@ async function runSetupWizard(opts = {}) {
828
828
  } catch {
829
829
  isLicensed = true;
830
830
  log("Couldn't reach the license server \u2014 key saved, specialists enabled.");
831
+ log(" Your key will be re-validated when connected.");
831
832
  }
832
833
  }
833
834
  }
@@ -862,7 +863,7 @@ async function runSetupWizard(opts = {}) {
862
863
  log(" Phase 3: Parallel org \u2014 specialists execute in parallel with reviews");
863
864
  log("");
864
865
  const unlockExecutives = (await askOrEnv("Unlock Phase 2 executives now? (y/N): ", void 0, "n")).toLowerCase() === "y";
865
- const { setOrchestrationPhase } = await import("./orchestration-phase-HXRKMZXM.js");
866
+ const { setOrchestrationPhase } = await import("./orchestration-phase-7VYG3L7X.js");
866
867
  if (!unlockExecutives) {
867
868
  await setOrchestrationPhase("phase_1_coo", "setup-wizard");
868
869
  log("");
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  initStore
3
- } from "./chunk-HTCBLSIB.js";
3
+ } from "./chunk-PQV5FL3N.js";
4
4
  import {
5
5
  getClient,
6
6
  isInitialized
7
- } from "./chunk-UJOSFVWG.js";
7
+ } from "./chunk-IYHYMEEV.js";
8
8
 
9
9
  // src/lib/schedules.ts
10
10
  import crypto from "crypto";
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  vectorToBlob
3
- } from "./chunk-HTCBLSIB.js";
3
+ } from "./chunk-PQV5FL3N.js";
4
4
  import {
5
5
  extractKeywords,
6
6
  keywordsToString
7
7
  } from "./chunk-CHCA3ZM2.js";
8
8
  import {
9
9
  isCoordinatorName
10
- } from "./chunk-UJOSFVWG.js";
10
+ } from "./chunk-IYHYMEEV.js";
11
11
 
12
12
  // src/lib/consolidation.ts
13
13
  import { randomUUID } from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  listReminders
3
- } from "./chunk-R2E4TV5V.js";
3
+ } from "./chunk-7ZOFRNMG.js";
4
4
 
5
5
  // src/mcp/tools/list-reminders.ts
6
6
  import { z } from "zod";
@@ -2,7 +2,7 @@ import {
2
2
  connectEmbedDaemon,
3
3
  disconnectClient,
4
4
  embedViaClient
5
- } from "./chunk-L24HYX62.js";
5
+ } from "./chunk-2L6GV2VS.js";
6
6
  import {
7
7
  EMBEDDING_DIM
8
8
  } from "./chunk-FXU7JOXK.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  processCRMEvent
3
- } from "./chunk-Z3ZCLTP7.js";
3
+ } from "./chunk-OAOBUDO3.js";
4
4
 
5
5
  // src/gateway/adapters/crm-webhook.ts
6
6
  function parseTwentyWebhook(payload) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  getClient
3
- } from "./chunk-UJOSFVWG.js";
3
+ } from "./chunk-IYHYMEEV.js";
4
4
 
5
5
  // src/lib/token-spend.ts
6
6
  import { readdir, stat } from "fs/promises";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  clean,
3
3
  stableId
4
- } from "./chunk-WWPX2LLP.js";
4
+ } from "./chunk-P6346JIK.js";
5
5
 
6
6
  // src/lib/reflection-checkpoints.ts
7
7
  function parsePayload(payload) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  ensureWorktree
3
- } from "./chunk-I2CDSGQW.js";
3
+ } from "./chunk-SBUSQBPP.js";
4
4
  import {
5
5
  queueIntercom
6
6
  } from "./chunk-QI4IXJN7.js";
@@ -10,7 +10,7 @@ import {
10
10
  } from "./chunk-4JERP7NT.js";
11
11
  import {
12
12
  registerSession
13
- } from "./chunk-G4LLKD4Z.js";
13
+ } from "./chunk-QWRRM2BE.js";
14
14
  import {
15
15
  getTransport
16
16
  } from "./chunk-MVW62NIZ.js";
@@ -19,18 +19,18 @@ import {
19
19
  } from "./chunk-CX6GL3ZJ.js";
20
20
  import {
21
21
  recordOrchestrationEventBestEffort
22
- } from "./chunk-CTFKTUYN.js";
22
+ } from "./chunk-2OFB7NQW.js";
23
23
  import {
24
24
  getAgentRuntime,
25
25
  normalizeCcModelName
26
- } from "./chunk-GVP5U4WL.js";
26
+ } from "./chunk-EEAY2YNU.js";
27
27
  import {
28
28
  RUNTIME_TABLE
29
29
  } from "./chunk-NGP6LSV2.js";
30
30
  import {
31
31
  PlanLimitError,
32
32
  assertEmployeeLimitSync
33
- } from "./chunk-V3QAAU2U.js";
33
+ } from "./chunk-4E2XAON5.js";
34
34
  import {
35
35
  getSessionKey
36
36
  } from "./chunk-CVYC6DUW.js";
@@ -45,7 +45,7 @@ import {
45
45
  } from "./chunk-MP2AFCGL.js";
46
46
  import {
47
47
  ensureAgentSymlink
48
- } from "./chunk-RMPAMMYW.js";
48
+ } from "./chunk-WUHYKL36.js";
49
49
  import {
50
50
  expandDualPrefixTools
51
51
  } from "./chunk-HYZV25LY.js";
@@ -57,13 +57,13 @@ import {
57
57
  isCoordinatorName,
58
58
  loadEmployees,
59
59
  loadEmployeesSync
60
- } from "./chunk-UJOSFVWG.js";
60
+ } from "./chunk-IYHYMEEV.js";
61
61
  import {
62
62
  loadDeviceId
63
- } from "./chunk-D4IVTUNN.js";
63
+ } from "./chunk-OZCZNEYI.js";
64
64
  import {
65
65
  EXE_AI_DIR
66
- } from "./chunk-TNTFEWU5.js";
66
+ } from "./chunk-XBXKLACW.js";
67
67
  import {
68
68
  atomicWriteJsonSync,
69
69
  atomicWriteSync
@@ -503,7 +503,7 @@ async function createTaskCore(input) {
503
503
  if (isCoordinatorSession) {
504
504
  earlySessionScope = resolved;
505
505
  } else {
506
- const { getSessionProject } = await import("./session-scope-SMT225X3.js");
506
+ const { getSessionProject } = await import("./session-scope-DWIP4IKM.js");
507
507
  const sessionProject = getSessionProject(resolved);
508
508
  if (sessionProject && sessionProject !== input.projectName) {
509
509
  scopeMismatchWarning = `session/project mismatch: session "${resolved}" owns "${sessionProject}" but task targets "${input.projectName}". Routed to default scope.`;
@@ -761,7 +761,7 @@ async function queryTaskRows(opts) {
761
761
  }
762
762
  if (opts.founderId !== null) {
763
763
  try {
764
- const { founderScopeFilter } = await import("./founder-context-3N6BMG7B.js");
764
+ const { founderScopeFilter } = await import("./founder-context-ZNGQ5NGW.js");
765
765
  const founderFilter = founderScopeFilter(opts.founderId);
766
766
  const cleaned = founderFilter.sql.replace(/^\s*AND\s+/, "");
767
767
  conditions.push(cleaned);
@@ -970,7 +970,7 @@ async function updateTaskStatus(input) {
970
970
  } catch {
971
971
  }
972
972
  try {
973
- const { writeNotification: writeNotification2 } = await import("./notifications-H4F77BYT.js");
973
+ const { writeNotification: writeNotification2 } = await import("./notifications-TNCGZ5W2.js");
974
974
  await writeNotification2({
975
975
  agentId: reviewer,
976
976
  agentRole: isCoordinatorName(reviewer) ? "COO" : "manager",
@@ -1309,7 +1309,7 @@ ${input.result ?? ""}`;
1309
1309
  args: [taskId]
1310
1310
  });
1311
1311
  let merged = { assertions: [], resolved: [] };
1312
- if (existing.rows.length > 0 && existing.rows[0].assertions) {
1312
+ if (existing.rows.length > 0 && existing.rows[0]?.assertions) {
1313
1313
  try {
1314
1314
  const prev = JSON.parse(String(existing.rows[0].assertions));
1315
1315
  merged.assertions = prev.assertions ?? [];
@@ -1376,7 +1376,7 @@ ${input.result ?? ""}`;
1376
1376
  }
1377
1377
  if (shouldWriteCompletionMemory && input.result) {
1378
1378
  try {
1379
- const { writeMemoryViaDaemon } = await import("./memory-queue-client-5XBHYAQR.js");
1379
+ const { writeMemoryViaDaemon } = await import("./memory-queue-client-MGXFQ62G.js");
1380
1380
  await writeMemoryViaDaemon({
1381
1381
  raw_text: input.result,
1382
1382
  agent_id: String(row.assigned_to),
@@ -1479,7 +1479,7 @@ ${input.result ?? ""}`;
1479
1479
  }
1480
1480
  if (input.status === "done" || input.status === "needs_review") {
1481
1481
  try {
1482
- const { incrementSkillSuccess } = await import("./skill-refinement-LKJHUW2U.js");
1482
+ const { incrementSkillSuccess } = await import("./skill-refinement-X2MCBDTB.js");
1483
1483
  await incrementSkillSuccess(
1484
1484
  String(row.assigned_to),
1485
1485
  row.project_name ? String(row.project_name) : null
@@ -2913,7 +2913,7 @@ async function verifyPaneAtCapacity(sessionName) {
2913
2913
  reason: `capture-pane failed: ${err instanceof Error ? err.message : String(err)}`
2914
2914
  };
2915
2915
  }
2916
- const { isAtCapacity } = await import("./capacity-monitor-HZPAFQZH.js");
2916
+ const { isAtCapacity } = await import("./capacity-monitor-GGTPFYQG.js");
2917
2917
  if (!isAtCapacity(pane)) {
2918
2918
  return {
2919
2919
  atCapacity: false,
@@ -1,13 +1,13 @@
1
1
  import {
2
2
  deactivateBehavior
3
- } from "./chunk-7DNX45WB.js";
3
+ } from "./chunk-QHFTK5EF.js";
4
4
  import {
5
5
  getActiveAgent
6
- } from "./chunk-DLXTKVBO.js";
6
+ } from "./chunk-DUBO7325.js";
7
7
  import {
8
8
  canCoordinate,
9
9
  getClient
10
- } from "./chunk-UJOSFVWG.js";
10
+ } from "./chunk-IYHYMEEV.js";
11
11
 
12
12
  // src/mcp/tools/deactivate-behavior.ts
13
13
  import { z } from "zod";
@@ -24,7 +24,7 @@ function registerDeactivateBehavior(server) {
24
24
  async ({ behavior_id }) => {
25
25
  const caller = getActiveAgent();
26
26
  try {
27
- const { StewardGate } = await import("./steward-gate-6IKH335D.js");
27
+ const { StewardGate } = await import("./steward-gate-PR2N5XHY.js");
28
28
  const steward = new StewardGate();
29
29
  const gateDecision = await steward.checkAuthority(caller.agentId || "unknown", "deactivate_behavior", behavior_id);
30
30
  if (!gateDecision.allowed) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  isCoordinatorRole
3
- } from "./chunk-UJOSFVWG.js";
3
+ } from "./chunk-IYHYMEEV.js";
4
4
 
5
5
  // src/lib/task-router.ts
6
6
  import { randomUUID } from "crypto";
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  updateTask
3
- } from "./chunk-BZAQ4UG7.js";
3
+ } from "./chunk-V5QHETEF.js";
4
4
  import {
5
5
  TASK_ALREADY_CLAIMED_PREFIX
6
- } from "./chunk-UBMGUX6T.js";
6
+ } from "./chunk-M6W3HYEK.js";
7
7
 
8
8
  // src/mcp/tools/update-task.ts
9
9
  import { z } from "zod";
@@ -39,7 +39,7 @@ function registerUpdateTask(server) {
39
39
  const status = rawStatus;
40
40
  let callerAgentId;
41
41
  try {
42
- const { getActiveAgent: getAgent } = await import("./active-agent-GJDG4CAW.js");
42
+ const { getActiveAgent: getAgent } = await import("./active-agent-QFQKXG3F.js");
43
43
  callerAgentId = getAgent().agentId;
44
44
  } catch {
45
45
  }
@@ -1,22 +1,23 @@
1
1
  import {
2
2
  extractMemoryGraph
3
- } from "./chunk-36DAY227.js";
3
+ } from "./chunk-XUBNHBQE.js";
4
4
  import {
5
5
  flushBatch,
6
6
  writeMemory
7
- } from "./chunk-HTCBLSIB.js";
7
+ } from "./chunk-PQV5FL3N.js";
8
8
  import {
9
9
  extractKeywords
10
10
  } from "./chunk-CHCA3ZM2.js";
11
11
  import {
12
12
  getActiveAgent
13
- } from "./chunk-DLXTKVBO.js";
13
+ } from "./chunk-DUBO7325.js";
14
14
 
15
15
  // src/mcp/tools/import-conversations.ts
16
16
  import { z } from "zod";
17
17
  import crypto from "crypto";
18
18
  import { readdir, readFile, stat } from "fs/promises";
19
- import path from "path";
19
+ import path, { resolve, normalize } from "path";
20
+ import os from "os";
20
21
 
21
22
  // src/lib/conversation-parser.ts
22
23
  function detectFormat(content, filePath) {
@@ -231,6 +232,27 @@ function registerImportConversations(server) {
231
232
  const { agentId: currentAgentId, agentRole } = getActiveAgent();
232
233
  const agentId = overrideAgentId ?? currentAgentId;
233
234
  const projectName = project_name ?? "imported";
235
+ const resolvedPath = resolve(normalize(inputPath));
236
+ const home = process.env.HOME || os.homedir();
237
+ const blocked = ["/etc", "/root", "/var", "/usr", "/sys", "/proc"];
238
+ const sensitiveHome = [".ssh", ".gnupg", ".aws", ".config/gcloud"];
239
+ for (const dir of blocked) {
240
+ if (resolvedPath.startsWith(dir + "/") || resolvedPath === dir) {
241
+ return {
242
+ content: [{ type: "text", text: `Access denied: cannot read files from ${dir}` }],
243
+ isError: true
244
+ };
245
+ }
246
+ }
247
+ for (const rel of sensitiveHome) {
248
+ const full = resolve(home, rel);
249
+ if (resolvedPath.startsWith(full + "/") || resolvedPath === full) {
250
+ return {
251
+ content: [{ type: "text", text: `Access denied: cannot read files from ~/${rel}` }],
252
+ isError: true
253
+ };
254
+ }
255
+ }
234
256
  let files;
235
257
  try {
236
258
  files = await readInputFiles(inputPath);
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  completeReminder
3
- } from "./chunk-R2E4TV5V.js";
3
+ } from "./chunk-7ZOFRNMG.js";
4
4
 
5
5
  // src/mcp/tools/complete-reminder.ts
6
6
  import { z } from "zod";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  enqueueMemory
3
- } from "./chunk-AZSCW64F.js";
3
+ } from "./chunk-XIQZTFQQ.js";
4
4
  import {
5
5
  isClientConnected,
6
6
  sendDaemonRequest
7
- } from "./chunk-L24HYX62.js";
7
+ } from "./chunk-2L6GV2VS.js";
8
8
 
9
9
  // src/lib/memory-queue-client.ts
10
10
  async function writeMemoryViaDaemon(entry) {
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-XBXKLACW.js";
4
4
 
5
5
  // src/lib/license.ts
6
6
  import { readFileSync, writeFileSync, existsSync, mkdirSync, statSync } from "fs";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  loadEmployeesSync
3
- } from "./chunk-UJOSFVWG.js";
3
+ } from "./chunk-IYHYMEEV.js";
4
4
 
5
5
  // src/adapters/mcp-http-config.ts
6
6
  import { chmodSync, existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  storeBehavior
3
- } from "./chunk-7DNX45WB.js";
3
+ } from "./chunk-QHFTK5EF.js";
4
4
  import {
5
5
  getClient
6
- } from "./chunk-UJOSFVWG.js";
6
+ } from "./chunk-IYHYMEEV.js";
7
7
  import {
8
8
  loadConfig
9
- } from "./chunk-TNTFEWU5.js";
9
+ } from "./chunk-XBXKLACW.js";
10
10
 
11
11
  // src/lib/skill-learning.ts
12
12
  import crypto from "crypto";
@@ -6,7 +6,7 @@ import {
6
6
  findScopedDuplicate,
7
7
  governMemoryRecord,
8
8
  schedulePostWriteMemoryHygiene
9
- } from "./chunk-IW53DAYO.js";
9
+ } from "./chunk-HBVVFXTS.js";
10
10
  import {
11
11
  orgBus
12
12
  } from "./chunk-MP2AFCGL.js";
@@ -15,16 +15,16 @@ import {
15
15
  ensureSchema,
16
16
  getClient,
17
17
  initTurso
18
- } from "./chunk-UJOSFVWG.js";
18
+ } from "./chunk-IYHYMEEV.js";
19
19
  import {
20
20
  EMBEDDING_DIM
21
21
  } from "./chunk-FXU7JOXK.js";
22
22
  import {
23
23
  getMasterKey
24
- } from "./chunk-7NNXBDOO.js";
24
+ } from "./chunk-KDJRFJDL.js";
25
25
  import {
26
26
  loadConfig
27
- } from "./chunk-TNTFEWU5.js";
27
+ } from "./chunk-XBXKLACW.js";
28
28
 
29
29
  // src/lib/store.ts
30
30
  var _debugStore = process.env.EXE_DEBUG === "1";
@@ -65,7 +65,7 @@ function recordShardFailure(project, error) {
65
65
  `[store] Shard circuit OPEN for "${project}" after ${state.failures} consecutive failures. Will retry in ${SHARD_CB_COOLDOWN_MS / 6e4}min. Last error: ${error}
66
66
  `
67
67
  );
68
- void import("./orchestration-events-LXVPJL6S.js").then(({ recordOrchestrationEventBestEffort }) => {
68
+ void import("./orchestration-events-TMN37OEJ.js").then(({ recordOrchestrationEventBestEffort }) => {
69
69
  recordOrchestrationEventBestEffort({
70
70
  eventType: "shard.circuit_open",
71
71
  source: "store.recordShardFailure",
@@ -149,7 +149,7 @@ async function initStore(options) {
149
149
  if (!options?.lightweight) {
150
150
  try {
151
151
  if (process.env.EXE_DISABLE_SHARDING !== "1") {
152
- const { initShardManager } = await import("./shard-manager-ON2WWCRM.js");
152
+ const { initShardManager } = await import("./shard-manager-PWSOXHZ4.js");
153
153
  initShardManager(hexKey);
154
154
  }
155
155
  } catch (e) {
@@ -162,7 +162,7 @@ async function initStore(options) {
162
162
  );
163
163
  _nextVersion = (Number(vResult.rows[0]?.max_v) || 0) + 1;
164
164
  try {
165
- const { loadGlobalProcedures } = await import("./global-procedures-NY3W7L5Q.js");
165
+ const { loadGlobalProcedures } = await import("./global-procedures-OC5C7BWJ.js");
166
166
  await loadGlobalProcedures();
167
167
  } catch (e) {
168
168
  logStoreWarn("catch", e);
@@ -290,7 +290,7 @@ async function writeMemory(record) {
290
290
  founder_id: record.founder_id ?? null
291
291
  };
292
292
  try {
293
- const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-I76FGNHK.js");
293
+ const { checkMemoryPoisoning } = await import("./memory-poisoning-defense-RNLXBWNU.js");
294
294
  const poisonResult = await checkMemoryPoisoning({
295
295
  memoryId: dbRow.id,
296
296
  vector: Array.isArray(dbRow.vector) ? dbRow.vector : void 0,
@@ -314,10 +314,10 @@ async function writeMemory(record) {
314
314
  timestamp: record.timestamp
315
315
  });
316
316
  const MAX_PENDING = 1e3;
317
- if (_pendingRecords.length > MAX_PENDING) {
318
- const dropped = _pendingRecords.length - MAX_PENDING;
319
- _pendingRecords = _pendingRecords.slice(-MAX_PENDING);
320
- console.warn(`[store] Dropped ${dropped} oldest pending records (overflow)`);
317
+ if (_pendingRecords.length >= MAX_PENDING) {
318
+ _pendingRecords.shift();
319
+ process.stderr.write(`[exe-os] \u26A0 Memory buffer full (${MAX_PENDING}) \u2014 oldest record dropped. This indicates sustained high write volume.
320
+ `);
321
321
  }
322
322
  if (_flushTimer === null) {
323
323
  _flushTimer = setInterval(() => {
@@ -478,19 +478,19 @@ async function flushBatch() {
478
478
  }
479
479
  _nextVersion = baseVersion;
480
480
  try {
481
- const { insertMemoryCardsForBatch } = await import("./memory-cards-XHZEOX7Q.js");
481
+ const { insertMemoryCardsForBatch } = await import("./memory-cards-P4ELKIBQ.js");
482
482
  await insertMemoryCardsForBatch(batch);
483
483
  } catch (e) {
484
484
  logStoreWarn("catch", e);
485
485
  }
486
486
  try {
487
- const { insertOntologyForBatch } = await import("./agentic-ontology-ASORFII6.js");
487
+ const { insertOntologyForBatch } = await import("./agentic-ontology-GBRFTYFS.js");
488
488
  await insertOntologyForBatch(batch);
489
489
  } catch (e) {
490
490
  logStoreWarn("catch", e);
491
491
  }
492
492
  try {
493
- const { extractGraphForBatch } = await import("./memory-graph-extractor-J3K7B4GC.js");
493
+ const { extractGraphForBatch } = await import("./memory-graph-extractor-LTOZ7QRR.js");
494
494
  await extractGraphForBatch(batch);
495
495
  } catch (e) {
496
496
  logStoreWarn("catch", e);
@@ -498,7 +498,7 @@ async function flushBatch() {
498
498
  schedulePostWriteMemoryHygiene(batch.map((row) => row.id));
499
499
  _pendingRecords.splice(0, batch.length);
500
500
  try {
501
- const { isShardingEnabled, getReadyShardClient } = await import("./shard-manager-ON2WWCRM.js");
501
+ const { isShardingEnabled, getReadyShardClient } = await import("./shard-manager-PWSOXHZ4.js");
502
502
  if (process.env.EXE_DISABLE_SHARDING !== "1" && isShardingEnabled()) {
503
503
  const byProject = /* @__PURE__ */ new Map();
504
504
  let skippedUnknown = 0;
@@ -575,7 +575,7 @@ function buildRawVisibilityFilter(options, columnPrefix) {
575
575
  async function searchMemories(queryVector, agentId, options) {
576
576
  let client;
577
577
  try {
578
- const { isShardingEnabled, shardExists, getReadyShardClient } = await import("./shard-manager-ON2WWCRM.js");
578
+ const { isShardingEnabled, shardExists, getReadyShardClient } = await import("./shard-manager-PWSOXHZ4.js");
579
579
  if (isShardingEnabled() && options?.projectName && shardExists(options.projectName)) {
580
580
  client = await getReadyShardClient(options.projectName);
581
581
  } else {
@@ -603,7 +603,7 @@ async function searchMemories(queryVector, agentId, options) {
603
603
  AND COALESCE(confidence, 0.7) >= 0.3`;
604
604
  const args = [agentId];
605
605
  try {
606
- const { founderScopeFilter } = await import("./founder-context-3N6BMG7B.js");
606
+ const { founderScopeFilter } = await import("./founder-context-ZNGQ5NGW.js");
607
607
  const founderFilter = founderScopeFilter(options?.founderId);
608
608
  sql += founderFilter.sql;
609
609
  args.push(...founderFilter.args.filter((a) => a !== null));
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-XBXKLACW.js";
4
4
 
5
5
  // src/lib/db-backup.ts
6
6
  import { copyFileSync, existsSync, mkdirSync, readdirSync, unlinkSync, statSync } from "fs";