@askexenow/exe-os 0.9.231 → 0.9.233

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 (374) hide show
  1. package/dist/{active-agent-GJDG4CAW.js → active-agent-JD6BCCFZ.js} +5 -5
  2. package/dist/{active-agent-WOP3ZHLN.js → active-agent-RCXBLWQS.js} +5 -5
  3. package/dist/{agent-context-ZPDQOAD2.js → agent-context-AZTTMUHP.js} +1 -1
  4. package/dist/{agent-heartbeat-AWTVGE4C.js → agent-heartbeat-I5UPGXAU.js} +1 -1
  5. package/dist/{agent-loop-7UM2ENGU.js → agent-loop-NUIWAL3Z.js} +1 -1
  6. package/dist/{agentic-ontology-ASORFII6.js → agentic-ontology-PAYLA3Q6.js} +2 -2
  7. package/dist/{asana-JN2UF47A.js → asana-MRQ2OQMJ.js} +1 -1
  8. package/dist/{backfill-metadata-7WHAJKVL.js → backfill-metadata-DQ7CJSYU.js} +7 -7
  9. package/dist/{background-jobs-VTOMOTNA.js → background-jobs-RWL46VRD.js} +3 -3
  10. package/dist/{bash-XA65M6T6.js → bash-HOHKSOU3.js} +1 -1
  11. package/dist/{behaviors-36T3O2DC.js → behaviors-I7JQLV6G.js} +5 -5
  12. package/dist/bin/age-ontology-load.js +3 -3
  13. package/dist/bin/agentic-ontology-backfill.js +9 -9
  14. package/dist/bin/agentic-reflection-backfill.js +10 -10
  15. package/dist/bin/agentic-semantic-label.js +9 -9
  16. package/dist/bin/backfill-conversations.js +9 -9
  17. package/dist/bin/backfill-responses.js +9 -9
  18. package/dist/bin/backfill-vectors.js +11 -11
  19. package/dist/bin/bulk-sync-postgres.js +10 -10
  20. package/dist/bin/cc-doctor.js +4 -4
  21. package/dist/bin/cleanup-stale-review-tasks.js +13 -13
  22. package/dist/bin/cli.js +24 -21
  23. package/dist/bin/deferred-daemon-restart.js +1 -1
  24. package/dist/bin/exe-agent-config.js +5 -5
  25. package/dist/bin/exe-agent.js +6 -6
  26. package/dist/bin/exe-assign.js +11 -11
  27. package/dist/bin/exe-boot.js +25 -25
  28. package/dist/bin/exe-call.js +6 -6
  29. package/dist/bin/exe-cloud.js +9 -9
  30. package/dist/bin/exe-dispatch.js +13 -13
  31. package/dist/bin/exe-doctor.js +2 -2
  32. package/dist/bin/exe-export-behaviors.js +10 -10
  33. package/dist/bin/exe-forget.js +9 -9
  34. package/dist/bin/exe-gateway.js +18 -18
  35. package/dist/bin/exe-healthcheck.js +4 -4
  36. package/dist/bin/exe-heartbeat.js +14 -14
  37. package/dist/bin/exe-kill.js +17 -17
  38. package/dist/bin/exe-launch-agent.js +21 -21
  39. package/dist/bin/exe-new-employee.js +10 -10
  40. package/dist/bin/exe-pending-messages.js +14 -14
  41. package/dist/bin/exe-pending-notifications.js +13 -13
  42. package/dist/bin/exe-pending-reviews.js +14 -14
  43. package/dist/bin/exe-rename.js +6 -6
  44. package/dist/bin/exe-review.js +16 -16
  45. package/dist/bin/exe-search.js +8 -8
  46. package/dist/bin/exe-session-cleanup.js +19 -19
  47. package/dist/bin/exe-settings.js +8 -8
  48. package/dist/bin/exe-start-codex.js +15 -15
  49. package/dist/bin/exe-start-opencode.js +11 -11
  50. package/dist/bin/exe-status.js +14 -14
  51. package/dist/bin/exe-support.js +4 -4
  52. package/dist/bin/exe-team.js +5 -5
  53. package/dist/bin/git-sweep.js +13 -13
  54. package/dist/bin/graph-backfill.js +8 -8
  55. package/dist/bin/graph-export.js +8 -8
  56. package/dist/bin/graph-layer-benchmark.js +1 -1
  57. package/dist/bin/import-history.js +10 -10
  58. package/dist/bin/install.js +40 -24
  59. package/dist/bin/intercom-check.js +6 -6
  60. package/dist/bin/list-providers.js +1 -1
  61. package/dist/bin/mcp-sessions.js +3 -3
  62. package/dist/bin/orchestration-metrics.js +6 -6
  63. package/dist/bin/postgres-agentic-reflection-backfill.js +5 -5
  64. package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
  65. package/dist/bin/pre-publish.js +1 -1
  66. package/dist/bin/registry-proxy.js +1 -1
  67. package/dist/bin/scan-tasks.js +13 -13
  68. package/dist/bin/setup.js +4 -4
  69. package/dist/bin/shard-migrate.js +8 -8
  70. package/dist/bin/stack-update.js +4 -4
  71. package/dist/bin/update.js +3 -12
  72. package/dist/bin/verify-stack.js +1 -1
  73. package/dist/bin/vps-backup.js +1 -1
  74. package/dist/bin/vps-health-gate.js +2 -2
  75. package/dist/{branding-I2TDZFUH.js → branding-I7YYX4FM.js} +2 -2
  76. package/dist/{browser-sanitizer-MRSSEJZE.js → browser-sanitizer-Q3GWRYKI.js} +1 -1
  77. package/dist/{browser-session-store-RF45DSJR.js → browser-session-store-TSD4PCY7.js} +1 -1
  78. package/dist/{capacity-monitor-PRUTCTKE.js → capacity-monitor-4EFUNBHQ.js} +14 -14
  79. package/dist/{catchup-brief-E2UK24I7.js → catchup-brief-AREGE4U6.js} +16 -16
  80. package/dist/{chunk-PW2YH2ZR.js → chunk-2EBKU2XN.js} +1 -1
  81. package/dist/{chunk-Q7RGLXQO.js → chunk-2ORPA23Y.js} +1 -1
  82. package/dist/{chunk-7DNX45WB.js → chunk-2QRT6G4V.js} +1 -1
  83. package/dist/{chunk-UKCXMU5W.js → chunk-35AKID7J.js} +6 -6
  84. package/dist/{chunk-6YZ4MT2L.js → chunk-3HH4YLLN.js} +7 -7
  85. package/dist/{chunk-LRRMS5OF.js → chunk-3L4A54VE.js} +11 -11
  86. package/dist/{chunk-OE6SYHTC.js → chunk-4DIB3GXJ.js} +1 -1
  87. package/dist/{chunk-3MK3R5E6.js → chunk-4TKI4VW7.js} +4 -4
  88. package/dist/{chunk-FIPU4BDF.js → chunk-5NIUTWV4.js} +1 -1
  89. package/dist/{chunk-J5VSABXD.js → chunk-5O5NXKDM.js} +2 -2
  90. package/dist/{chunk-JBKA7F5V.js → chunk-5SYO2FD7.js} +471 -446
  91. package/dist/{chunk-3EFVHTTG.js → chunk-5UH67CWJ.js} +1 -1
  92. package/dist/{chunk-GKM7RYN3.js → chunk-6HYAEYQ3.js} +7 -6
  93. package/dist/{chunk-GVP5U4WL.js → chunk-6OJJF4WP.js} +1 -1
  94. package/dist/{chunk-JGZS4U4X.js → chunk-AVICWQYY.js} +1 -1
  95. package/dist/{chunk-GTTLP5WK.js → chunk-B4KT7ZX4.js} +117 -109
  96. package/dist/{chunk-X3AVWFWW.js → chunk-BRFH5X7G.js} +1 -1
  97. package/dist/{chunk-Q5GUJUDW.js → chunk-BWHBPDYB.js} +1 -1
  98. package/dist/{chunk-ETSREHYC.js → chunk-BZWKTFEB.js} +2 -2
  99. package/dist/{chunk-NXF7NZEA.js → chunk-C2D37S73.js} +7 -7
  100. package/dist/{chunk-2V5UDX2O.js → chunk-C36GJWKH.js} +3 -3
  101. package/dist/{chunk-2EHYQKJR.js → chunk-CGBH7RVU.js} +5 -5
  102. package/dist/{chunk-26PUEPOY.js → chunk-CKTFH5RQ.js} +3 -3
  103. package/dist/{chunk-UV4ZHXUP.js → chunk-CNCTKOX2.js} +1 -1
  104. package/dist/{chunk-D4IVTUNN.js → chunk-D5C56WO3.js} +1 -1
  105. package/dist/{chunk-I2CDSGQW.js → chunk-DIO7YUAT.js} +1 -1
  106. package/dist/{chunk-A2G6WCUO.js → chunk-EMOIEQ4A.js} +1 -1
  107. package/dist/{chunk-HQMEOIUJ.js → chunk-EPWDTS2Q.js} +1 -1
  108. package/dist/{chunk-6MP5NOOR.js → chunk-ESKBZN4Q.js} +1 -1
  109. package/dist/{chunk-3CLQFRM6.js → chunk-F4CQKTVZ.js} +26 -4
  110. package/dist/{chunk-GFCQJZTO.js → chunk-F4TCKCKK.js} +2 -2
  111. package/dist/{chunk-I32QME33.js → chunk-FOP5EAJZ.js} +10 -10
  112. package/dist/{chunk-N4C2RMEO.js → chunk-G5WLNJSC.js} +2 -2
  113. package/dist/{chunk-2VZ6SY2R.js → chunk-GBCZXOWU.js} +7 -3
  114. package/dist/{chunk-5X3ISBHJ.js → chunk-GQHV2QYL.js} +11 -11
  115. package/dist/{chunk-QYUWMF3P.js → chunk-HBJZ5QZI.js} +1 -1
  116. package/dist/{chunk-WUFPA6LR.js → chunk-HIWXAE6E.js} +2 -2
  117. package/dist/{chunk-CHT3THVG.js → chunk-J2QQMTCD.js} +1 -1
  118. package/dist/{chunk-G4LLKD4Z.js → chunk-J5MOKLCJ.js} +1 -1
  119. package/dist/{chunk-B5AEHLZQ.js → chunk-JFUVMMBE.js} +3 -3
  120. package/dist/{chunk-YADYM2DE.js → chunk-JL3K5OTS.js} +1 -1
  121. package/dist/{chunk-GGV3PFUW.js → chunk-JZMVLAZ2.js} +1 -1
  122. package/dist/{chunk-7NNXBDOO.js → chunk-KDJRFJDL.js} +26 -16
  123. package/dist/{chunk-R2E4TV5V.js → chunk-L6LDDOYW.js} +1 -1
  124. package/dist/{chunk-5HF7X4WH.js → chunk-LEK3ANCA.js} +19 -19
  125. package/dist/{chunk-UILBQ5PU.js → chunk-LQZULPXV.js} +2 -2
  126. package/dist/{chunk-MKVFPQH2.js → chunk-LWQ3PFSR.js} +2 -2
  127. package/dist/{chunk-ZVSG2KKG.js → chunk-MBHZDXGN.js} +1 -1
  128. package/dist/{chunk-HO5SBL4B.js → chunk-MDE2ZNWZ.js} +2 -2
  129. package/dist/chunk-MLKGABMK.js +9 -0
  130. package/dist/{chunk-SJI7LQUK.js → chunk-MOMOSSS3.js} +3 -3
  131. package/dist/{chunk-SSMXRAE2.js → chunk-O4MTX7JR.js} +3 -3
  132. package/dist/{chunk-WEMIJFOX.js → chunk-OHCRCEPG.js} +26 -12
  133. package/dist/{chunk-Z3TT2SVJ.js → chunk-OMHTKVHC.js} +1 -1
  134. package/dist/{chunk-WA67SFFZ.js → chunk-PJPPO6EF.js} +1 -1
  135. package/dist/{chunk-FF62UWIJ.js → chunk-Q4GHOMRW.js} +1 -1
  136. package/dist/{chunk-J5WI42RB.js → chunk-QRHVGJOB.js} +19 -19
  137. package/dist/{chunk-ADJXHBEU.js → chunk-QUTBXURR.js} +1 -1
  138. package/dist/{chunk-2AWEIMVH.js → chunk-RJAKV7GY.js} +1 -1
  139. package/dist/{chunk-OHPRXEUA.js → chunk-SL7SYDNI.js} +1 -1
  140. package/dist/{chunk-JZ2JEXEM.js → chunk-TFYTFEPR.js} +2 -2
  141. package/dist/{chunk-TNTFEWU5.js → chunk-TRZ5KA2R.js} +10 -5
  142. package/dist/{chunk-YZKJLGWL.js → chunk-UODVZGBQ.js} +1 -1
  143. package/dist/{chunk-AZSCW64F.js → chunk-UPMHG7ET.js} +1 -1
  144. package/dist/{chunk-DGOGCPYU.js → chunk-UWQ3XCDG.js} +2 -2
  145. package/dist/{chunk-NRFVWJHP.js → chunk-UZIJDYDA.js} +2 -2
  146. package/dist/{chunk-L24HYX62.js → chunk-VHKL4S4T.js} +2 -2
  147. package/dist/{chunk-IQT43SDJ.js → chunk-VI2FJY2M.js} +4 -4
  148. package/dist/{chunk-QHIGMP2M.js → chunk-VJ6HKJMQ.js} +1 -1
  149. package/dist/{chunk-UJOSFVWG.js → chunk-VTLUUTWI.js} +10 -9
  150. package/dist/{chunk-V3QAAU2U.js → chunk-VXVI75ED.js} +3 -3
  151. package/dist/{chunk-VW6UDG7E.js → chunk-WD7JP4LN.js} +2 -2
  152. package/dist/{chunk-F2UFRUVY.js → chunk-WDSSDXXM.js} +3 -3
  153. package/dist/{chunk-RMPAMMYW.js → chunk-WJH6IM7Q.js} +1 -1
  154. package/dist/{chunk-2RS2DR47.js → chunk-WJV6N65Y.js} +2 -2
  155. package/dist/{chunk-EOVABUV3.js → chunk-WKVBGGSZ.js} +2 -2
  156. package/dist/{chunk-OI6MVDSY.js → chunk-XPRYBSMJ.js} +1 -1
  157. package/dist/{chunk-36DAY227.js → chunk-Y2PQS2GI.js} +2 -2
  158. package/dist/{chunk-EHKIJPVX.js → chunk-YVN2WG5T.js} +1 -1
  159. package/dist/{chunk-CTFKTUYN.js → chunk-YXRY4LH2.js} +1 -1
  160. package/dist/{chunk-ECQBG62Y.js → chunk-Z7A6DTIN.js} +1 -1
  161. package/dist/{chunk-XWOXF4NK.js → chunk-ZEYDN4ER.js} +1 -1
  162. package/dist/{chunk-DLXTKVBO.js → chunk-ZOPLM7G3.js} +2 -2
  163. package/dist/{co-activation-AJZTQHI3.js → co-activation-XS7CDNIK.js} +4 -4
  164. package/dist/{co-occurrence-FGEJIMMV.js → co-occurrence-R5D6WB4A.js} +4 -4
  165. package/dist/{code-context-index-KHUYATRB.js → code-context-index-FCQOPUEA.js} +5 -5
  166. package/dist/{content-extractor-CUJOBFBU.js → content-extractor-SPSH5X33.js} +1 -1
  167. package/dist/{conversation-entity-extractor-TW4W57K4.js → conversation-entity-extractor-EYSI4DKM.js} +1 -1
  168. package/dist/{conversation-wiki-populator-GNFRTS7X.js → conversation-wiki-populator-YU35LNRK.js} +2 -2
  169. package/dist/{core-memory-6JYJS3A3.js → core-memory-2BTZ2RKT.js} +1 -1
  170. package/dist/{crdt-sync-K25AKQAD.js → crdt-sync-NEINCZF7.js} +2 -2
  171. package/dist/{crm-bridge-NG5WJMGF.js → crm-bridge-BVTB6LZK.js} +1 -1
  172. package/dist/{crm-webhook-ZL2YFSFK.js → crm-webhook-RMHBLDL4.js} +3 -3
  173. package/dist/{cto-delegation-gate-VRGO7IQ2.js → cto-delegation-gate-D3TEAQGU.js} +12 -12
  174. package/dist/{daemon-auth-WFQMMNSD.js → daemon-auth-2IZACWSG.js} +3 -3
  175. package/dist/{daemon-orchestration-5TO3CHJQ.js → daemon-orchestration-Y7SJSLBI.js} +15 -15
  176. package/dist/{daemon-protocol-4FUHT5NH.js → daemon-protocol-XW2OLNBS.js} +1 -1
  177. package/dist/{db-backup-MSQKO6M5.js → db-backup-C44Q44WQ.js} +3 -3
  178. package/dist/{devtools-J4QYYO7U.js → devtools-5PEATRYE.js} +1 -1
  179. package/dist/{discord-7UHIZNJ3.js → discord-LMZKIYWB.js} +1 -1
  180. package/dist/{dispatch-ack-RMVFHO4I.js → dispatch-ack-JYCKAWKZ.js} +1 -1
  181. package/dist/dreaming-YKXGUTVR.js +12 -0
  182. package/dist/{email-T6PQUUY6.js → email-UENAIKRN.js} +1 -1
  183. package/dist/{entity-boost-7MB2IYAE.js → entity-boost-T5IYWWDZ.js} +2 -2
  184. package/dist/{exe-drift-2KHRPBUK.js → exe-drift-B5ZMICND.js} +5 -5
  185. package/dist/{exe-export-DC4MYDXH.js → exe-export-4A74HNYL.js} +8 -8
  186. package/dist/{exe-import-KTTZOAAA.js → exe-import-UZSWB6RS.js} +8 -8
  187. package/dist/{exe-key-A6WNNU4Q.js → exe-key-VRUDYTN5.js} +5 -5
  188. package/dist/{exe-org-JRBBON5H.js → exe-org-3FNET2J7.js} +3 -3
  189. package/dist/{exe-snapshot-NJ6BFROA.js → exe-snapshot-EMYU745D.js} +9 -9
  190. package/dist/{factory-UQSRMKJW.js → factory-CTFAGZUA.js} +1 -1
  191. package/dist/fast-db-init-IXMJATO6.js +7 -0
  192. package/dist/{file-edit-YORRFENG.js → file-edit-AZAJPCA3.js} +1 -1
  193. package/dist/{file-read-RMQFDE5L.js → file-read-VACF23NC.js} +1 -1
  194. package/dist/{file-write-VO4MQW5Y.js → file-write-B2RPT5U7.js} +1 -1
  195. package/dist/{founder-context-3N6BMG7B.js → founder-context-BQ5NBDUV.js} +3 -3
  196. package/dist/gateway/index.js +10 -10
  197. package/dist/{gateway-client-V7NH35Q2.js → gateway-client-YGSA5QMC.js} +2 -2
  198. package/dist/{git-staleness-JW57ZGEJ.js → git-staleness-DFHISHY2.js} +4 -4
  199. package/dist/{git-task-sweep-WJAABZK5.js → git-task-sweep-5MTDROCJ.js} +13 -13
  200. package/dist/{glob-2LXRC3F5.js → glob-7PWH7WKL.js} +1 -1
  201. package/dist/{global-procedures-NY3W7L5Q.js → global-procedures-45Z53UIF.js} +5 -5
  202. package/dist/{graph-auto-extract-5GZ34NXS.js → graph-auto-extract-I37N7WQN.js} +4 -4
  203. package/dist/{graph-query-YZ4RZEIL.js → graph-query-UTLL5MKN.js} +1 -1
  204. package/dist/{graph-rag-S5SBJW5J.js → graph-rag-G3EG5Q6L.js} +1 -1
  205. package/dist/{grep-OY7KCRLQ.js → grep-HWIDXHRC.js} +1 -1
  206. package/dist/{hook-integrity-OKSYTGVP.js → hook-integrity-SB53Y7UK.js} +2 -2
  207. package/dist/hooks/bug-report-worker.js +14 -14
  208. package/dist/hooks/codex-stop-task-finalizer.js +15 -15
  209. package/dist/hooks/commit-complete.js +16 -16
  210. package/dist/hooks/error-recall.js +10 -10
  211. package/dist/hooks/exe-heartbeat-hook.js +6 -6
  212. package/dist/hooks/ingest-worker.js +6 -6
  213. package/dist/hooks/ingest.js +15 -15
  214. package/dist/hooks/instructions-loaded.js +7 -7
  215. package/dist/hooks/manifest.json +20 -20
  216. package/dist/hooks/notification.js +7 -7
  217. package/dist/hooks/post-compact.js +15 -15
  218. package/dist/hooks/post-tool-combined.js +7 -7
  219. package/dist/hooks/pre-compact.js +20 -20
  220. package/dist/hooks/pre-tool-use.js +20 -20
  221. package/dist/hooks/prompt-submit.js +31 -31
  222. package/dist/hooks/session-end.js +27 -27
  223. package/dist/hooks/session-start.js +18 -18
  224. package/dist/hooks/stop.js +22 -22
  225. package/dist/hooks/subagent-stop.js +15 -15
  226. package/dist/hooks/summary-worker.js +23 -23
  227. package/dist/{hooks-RPTZV5KX.js → hooks-LDCFYHDF.js} +1 -1
  228. package/dist/{imessage-CE5USLTI.js → imessage-6UOZB5VN.js} +1 -1
  229. package/dist/index.js +21 -21
  230. package/dist/{installer-UAMA6ZVH.js → installer-3MSU3GSG.js} +7 -7
  231. package/dist/{installer-GMIVB2JS.js → installer-OSIEPXXH.js} +7 -7
  232. package/dist/{installer-OBYQ6O3C.js → installer-SCPRAYJN.js} +7 -7
  233. package/dist/{intercom-queue-USIXVVJQ.js → intercom-queue-RNM6EPGA.js} +1 -1
  234. package/dist/{key-backup-status-TVFMMWTT.js → key-backup-status-OZ2CXUDW.js} +2 -2
  235. package/dist/{keyword-extractor-OGQRRVTB.js → keyword-extractor-UJHFWVZE.js} +1 -1
  236. package/dist/lib/agent-config.js +3 -3
  237. package/dist/lib/cloud-sync.js +9 -7
  238. package/dist/lib/cloudflare-dns.js +1 -1
  239. package/dist/lib/config.js +2 -2
  240. package/dist/lib/consolidation.js +8 -8
  241. package/dist/lib/crypto.js +1 -1
  242. package/dist/lib/database.js +4 -4
  243. package/dist/lib/db-daemon-client.js +4 -4
  244. package/dist/lib/db.js +4 -4
  245. package/dist/lib/device-registry.js +2 -2
  246. package/dist/lib/embedder.js +5 -5
  247. package/dist/lib/employee-templates.js +6 -6
  248. package/dist/lib/employees.js +4 -4
  249. package/dist/lib/error-detector.js +1 -1
  250. package/dist/lib/exe-daemon-client.js +4 -4
  251. package/dist/lib/exe-daemon.js +53 -53
  252. package/dist/lib/file-grep.js +1 -1
  253. package/dist/lib/hybrid-search.js +8 -8
  254. package/dist/lib/identity-templates.js +1 -1
  255. package/dist/lib/identity.js +4 -4
  256. package/dist/lib/keychain.js +2 -2
  257. package/dist/lib/license.js +3 -3
  258. package/dist/lib/messaging.js +13 -13
  259. package/dist/lib/post-tool-memory.js +1 -1
  260. package/dist/lib/registry-proxy.js +1 -1
  261. package/dist/lib/reminders.js +5 -5
  262. package/dist/lib/runtime-table.js +1 -1
  263. package/dist/lib/schedules.js +8 -8
  264. package/dist/lib/session-registry.js +6 -6
  265. package/dist/lib/session-wrappers.js +2 -2
  266. package/dist/lib/skill-learning.js +6 -6
  267. package/dist/lib/status-brief.js +1 -1
  268. package/dist/lib/store.js +7 -7
  269. package/dist/lib/task-router.js +5 -5
  270. package/dist/lib/tasks.js +13 -13
  271. package/dist/lib/tmux-routing.js +12 -12
  272. package/dist/lib/tmux-status.js +1 -1
  273. package/dist/lib/tmux-transport.js +1 -1
  274. package/dist/lib/token-spend.js +5 -5
  275. package/dist/lib/transport.js +1 -1
  276. package/dist/lib/ws-auth.js +1 -1
  277. package/dist/lib/ws-client.js +2 -2
  278. package/dist/{license-gate-7QVCYARF.js → license-gate-XJDIL6OZ.js} +4 -4
  279. package/dist/mcp/register-tools.js +65 -65
  280. package/dist/mcp/server.js +89 -68
  281. package/dist/mcp/tools/complete-reminder.js +6 -6
  282. package/dist/mcp/tools/create-reminder.js +6 -6
  283. package/dist/mcp/tools/create-task.js +15 -15
  284. package/dist/mcp/tools/deactivate-behavior.js +7 -7
  285. package/dist/mcp/tools/list-reminders.js +6 -6
  286. package/dist/mcp/tools/list-tasks.js +15 -15
  287. package/dist/mcp/tools/send-message.js +15 -15
  288. package/dist/mcp/tools/update-task.js +14 -14
  289. package/dist/{mcp-diagnostics-5T5OZ52S.js → mcp-diagnostics-TSBY62UQ.js} +1 -1
  290. package/dist/{mcp-disconnect-tracker-VINUVEZJ.js → mcp-disconnect-tracker-MB23DRS6.js} +1 -1
  291. package/dist/{mcp-http-config-YPF4WGU5.js → mcp-http-config-KBPJ4QNG.js} +5 -5
  292. package/dist/{memory-cards-XHZEOX7Q.js → memory-cards-ICBAONHA.js} +4 -4
  293. package/dist/{memory-graph-extractor-J3K7B4GC.js → memory-graph-extractor-B33AXVOW.js} +5 -5
  294. package/dist/{memory-poisoning-defense-I76FGNHK.js → memory-poisoning-defense-KNQGXMQ2.js} +4 -4
  295. package/dist/{memory-queue-WEVFXPZO.js → memory-queue-FTNBWLS4.js} +3 -3
  296. package/dist/{memory-queue-client-5XBHYAQR.js → memory-queue-client-DHSHEIHQ.js} +6 -6
  297. package/dist/{memory-reflection-YJGI6IDI.js → memory-reflection-H6WTTBDO.js} +4 -4
  298. package/dist/{message-queue-client-FUKX43JD.js → message-queue-client-KAJN6TIJ.js} +1 -1
  299. package/dist/{notifications-MEW6QY57.js → notifications-A3OLWT3R.js} +12 -12
  300. package/dist/{oauth-server-CCZPDTZJ.js → oauth-server-QEXRSXEP.js} +1 -1
  301. package/dist/{orchestration-events-LXVPJL6S.js → orchestration-events-CLOS2654.js} +5 -5
  302. package/dist/{orchestration-phase-HXRKMZXM.js → orchestration-phase-SGA7PJ5G.js} +3 -3
  303. package/dist/{orchestrator-HGTR4YIR.js → orchestrator-H7PCVWFN.js} +14 -14
  304. package/dist/{permission-presets-UPVLJWZD.js → permission-presets-E3DZK46K.js} +1 -1
  305. package/dist/{permissions-C4EMHPDD.js → permissions-6MCWUDCD.js} +1 -1
  306. package/dist/{pg-ssl-GD3332YS.js → pg-ssl-7JXQFL4I.js} +1 -1
  307. package/dist/pipeline-router-EXS46KX2.js +12 -0
  308. package/dist/{plan-limits-NFQVRHS5.js → plan-limits-4JH2GWCP.js} +6 -6
  309. package/dist/{prediction-log-C2BD3AHR.js → prediction-log-OMWHW7FL.js} +2 -2
  310. package/dist/{preferences-5ARPMYE7.js → preferences-ERXO6SMJ.js} +1 -1
  311. package/dist/{preflight-TZOGLBZU.js → preflight-EAH2MI76.js} +1 -1
  312. package/dist/{project-boot-JIGOSGCN.js → project-boot-2NFMLUZ3.js} +2 -2
  313. package/dist/{project-name-4SKOH2UO.js → project-name-EWG5KAZP.js} +1 -1
  314. package/dist/{projection-worker-JZQTL4NU.js → projection-worker-B4TWS2FX.js} +5 -5
  315. package/dist/{push-notifications-3GNJ5SZS.js → push-notifications-E2XXEWJZ.js} +3 -3
  316. package/dist/{reranker-67X4YJEW.js → reranker-7IPGFTAV.js} +3 -3
  317. package/dist/{review-gate-I66GDXNR.js → review-gate-IUNS6GQU.js} +1 -1
  318. package/dist/{review-polling-ILAI4FDS.js → review-polling-CFLEDNJ6.js} +13 -13
  319. package/dist/runtime/index.js +15 -15
  320. package/dist/{self-query-router-QMK5ZSZR.js → self-query-router-PYVVFXJT.js} +1 -1
  321. package/dist/{session-events-Y2YPBY3Q.js → session-events-DLHFZHDF.js} +13 -13
  322. package/dist/{session-kill-telemetry-JHSI7D3F.js → session-kill-telemetry-6FDEUGO5.js} +5 -5
  323. package/dist/{session-scope-CUDNSN62.js → session-scope-EHSZJLAT.js} +12 -12
  324. package/dist/setup-wizard-5O5OQOXH.js +12 -0
  325. package/dist/{shard-manager-ON2WWCRM.js → shard-manager-G6MHCO7X.js} +3 -3
  326. package/dist/{signal-KF2LIO7Y.js → signal-7UIRTYGZ.js} +1 -1
  327. package/dist/{signal-paths-5ZTWCBUX.js → signal-paths-4GOIRLGH.js} +1 -1
  328. package/dist/{skill-refinement-YCCQ5W7C.js → skill-refinement-ALEPGNC6.js} +4 -4
  329. package/dist/{slack-JRDUD5Z7.js → slack-GCOYBZUK.js} +1 -1
  330. package/dist/{stack-update-ZIMV4OEQ.js → stack-update-NO5MNARG.js} +4 -4
  331. package/dist/steward-gate-H2VKZNW2.js +12 -0
  332. package/dist/{support-outbox-HIJVUDA2.js → support-outbox-KEJ73I3F.js} +1 -1
  333. package/dist/{task-enforcement-MGHY6IJV.js → task-enforcement-YXMYVVLM.js} +12 -12
  334. package/dist/{task-scanner-5OQBNC2N.js → task-scanner-QEM5CO2Y.js} +1 -1
  335. package/dist/{task-scope-N6GNTTVY.js → task-scope-7TDJLRUR.js} +12 -12
  336. package/dist/{tasks-crud-2FX6NTL2.js → tasks-crud-CHPEFXSN.js} +12 -12
  337. package/dist/{tasks-review-5NFMLQJG.js → tasks-review-OID7RS2I.js} +12 -12
  338. package/dist/{telegram-COCYUCT7.js → telegram-RGVD4LUY.js} +1 -1
  339. package/dist/{telemetry-QKWQKAUC.js → telemetry-43X3GT3R.js} +1 -1
  340. package/dist/{telemetry-upload-APVDPCEV.js → telemetry-upload-ZBGLL62D.js} +8 -8
  341. package/dist/{token-budget-6IQNYKLR.js → token-budget-OQ6XR5EK.js} +4 -4
  342. package/dist/{tool-capability-index-UUNF7VPA.js → tool-capability-index-WIV4K3FB.js} +2 -2
  343. package/dist/{tool-gates-RNWEH5IK.js → tool-gates-3IC7DK4R.js} +1 -1
  344. package/dist/{tool-gates-6A6LE4DZ.js → tool-gates-GXSYBVK4.js} +1 -1
  345. package/dist/{tool-registry-KL24CAFR.js → tool-registry-5XN3FUYL.js} +1 -1
  346. package/dist/{tool-telemetry-SJSIL5M5.js → tool-telemetry-NKCCCPQJ.js} +2 -2
  347. package/dist/tui/App.js +44 -44
  348. package/dist/{tui-data-DT4WV54Q.js → tui-data-MVYA3OR6.js} +12 -12
  349. package/dist/{typed-messages-53Q7L3LB.js → typed-messages-TKDGVPHS.js} +1 -1
  350. package/dist/{update-check-5IL5I3E2.js → update-check-MKHO7H6B.js} +1 -1
  351. package/dist/{webhook-VXGIH7PN.js → webhook-LCW7UP4L.js} +1 -1
  352. package/dist/{webhook-pipe-4WPFGGFD.js → webhook-pipe-LY4XEDL7.js} +1 -1
  353. package/dist/{whatsapp-PSMKCDS7.js → whatsapp-SILL4V64.js} +1 -1
  354. package/dist/{whatsapp-accounts-4OKWFRWL.js → whatsapp-accounts-BWRZUY23.js} +1 -1
  355. package/dist/{whatsapp-config-ZG5LX4O4.js → whatsapp-config-W63RQ3AU.js} +1 -1
  356. package/dist/{wiki-acl-XCT6QQGP.js → wiki-acl-RMP5KXYK.js} +1 -1
  357. package/dist/{wiki-client-KE622HKY.js → wiki-client-MAFYBXCQ.js} +1 -1
  358. package/dist/{worker-gate-SN6WCY4Q.js → worker-gate-42USIUF6.js} +3 -3
  359. package/dist/{workflow-engine-2RQLJXDG.js → workflow-engine-6UBYDBVR.js} +3 -3
  360. package/dist/{working-memory-Z3EB3FW6.js → working-memory-PKUUMWZK.js} +1 -1
  361. package/dist/{worktree-BO7QQ32T.js → worktree-Q6Y5IHSI.js} +6 -6
  362. package/package.json +2 -2
  363. package/dist/chunk-R5U7XKVJ.js +0 -16
  364. package/dist/dreaming-UL7T5ZXA.js +0 -12
  365. package/dist/fast-db-init-QYMFD4FX.js +0 -7
  366. package/dist/pipeline-router-7VGJ7635.js +0 -12
  367. package/dist/setup-wizard-RBUTEZB2.js +0 -12
  368. package/dist/steward-gate-6IKH335D.js +0 -12
  369. /package/dist/{chunk-7EZCYO76.js → chunk-ARETQ22D.js} +0 -0
  370. /package/dist/{chunk-EEAKFEEA.js → chunk-FUVINDE3.js} +0 -0
  371. /package/dist/{chunk-3JP3FY33.js → chunk-HTUJBTBM.js} +0 -0
  372. /package/dist/{chunk-IW53DAYO.js → chunk-N345XXAA.js} +0 -0
  373. /package/dist/{chunk-WWPX2LLP.js → chunk-SDKRRTP6.js} +0 -0
  374. /package/dist/{chunk-EGWPJQRQ.js → chunk-SNYDRHV3.js} +0 -0
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.js";
4
4
 
5
5
  // src/lib/background-jobs.ts
6
6
  import { existsSync, mkdirSync, readFileSync, writeFileSync, unlinkSync } from "fs";
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  getIdentity,
3
3
  loadEmployeesSync
4
- } from "./chunk-UJOSFVWG.js";
4
+ } from "./chunk-VTLUUTWI.js";
5
5
 
6
6
  // src/lib/drift-probes.ts
7
7
  var DRIFT_THRESHOLD = 80;
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  enqueueMemory
3
- } from "./chunk-AZSCW64F.js";
3
+ } from "./chunk-UPMHG7ET.js";
4
4
  import {
5
5
  isClientConnected,
6
6
  sendDaemonRequest
7
- } from "./chunk-L24HYX62.js";
7
+ } from "./chunk-VHKL4S4T.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
  getClient
3
- } from "./chunk-UJOSFVWG.js";
3
+ } from "./chunk-VTLUUTWI.js";
4
4
 
5
5
  // src/lib/pipeline-router.ts
6
6
  import crypto from "crypto";
@@ -82,7 +82,7 @@ async function sinkMemory(msg, agentResponse, agentName) {
82
82
  }
83
83
  async function sinkCRM(msg, agentResponse, agentName) {
84
84
  try {
85
- const { isCRMBridgeEnabled, pushConversationToCRM, pushInboundMessageToCRM } = await import("./crm-bridge-NG5WJMGF.js");
85
+ const { isCRMBridgeEnabled, pushConversationToCRM, pushInboundMessageToCRM } = await import("./crm-bridge-BVTB6LZK.js");
86
86
  if (!isCRMBridgeEnabled()) return false;
87
87
  if (agentResponse) {
88
88
  await pushConversationToCRM({
@@ -116,12 +116,12 @@ async function sinkCRM(msg, agentResponse, agentName) {
116
116
  }
117
117
  async function sinkWiki(msg, agentResponse) {
118
118
  try {
119
- const { createWikiClient } = await import("./wiki-client-KE622HKY.js");
119
+ const { createWikiClient } = await import("./wiki-client-MAFYBXCQ.js");
120
120
  const client = await createWikiClient();
121
121
  if (!client) return false;
122
122
  const content = msg.text ?? "";
123
123
  if (content.length < 50) return false;
124
- const { chatInWorkspace } = await import("./wiki-client-KE622HKY.js");
124
+ const { chatInWorkspace } = await import("./wiki-client-MAFYBXCQ.js");
125
125
  const ingestText = [
126
126
  `[${msg.platform}] Message from ${msg.senderName ?? msg.senderId} (${msg.timestamp}):`,
127
127
  content,
@@ -140,8 +140,8 @@ Agent response: ${agentResponse}` : ""
140
140
  }
141
141
  async function sinkEntityExtraction(msg, agentResponse, agentName) {
142
142
  try {
143
- const { extractFromConversation } = await import("./conversation-entity-extractor-TW4W57K4.js");
144
- const { storeExtraction } = await import("./graph-rag-S5SBJW5J.js");
143
+ const { extractFromConversation } = await import("./conversation-entity-extractor-EYSI4DKM.js");
144
+ const { storeExtraction } = await import("./graph-rag-G3EG5Q6L.js");
145
145
  if ((msg.text?.length ?? 0) < 20) return false;
146
146
  if (msg.isHistorical) return false;
147
147
  const extraction = await extractFromConversation(msg, agentResponse, agentName);
@@ -149,7 +149,7 @@ async function sinkEntityExtraction(msg, agentResponse, agentName) {
149
149
  const client = getClient();
150
150
  const memoryId = `conv:${msg.messageId}`;
151
151
  await storeExtraction(client, extraction, memoryId, msg.timestamp);
152
- import("./conversation-wiki-populator-GNFRTS7X.js").then(
152
+ import("./conversation-wiki-populator-YU35LNRK.js").then(
153
153
  ({ populateWikiFromExtraction }) => populateWikiFromExtraction(extraction, msg, agentResponse, agentName)
154
154
  ).catch((err) => {
155
155
  process.stderr.write(
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  routeTask
3
- } from "./chunk-Z3TT2SVJ.js";
3
+ } from "./chunk-OMHTKVHC.js";
4
4
  import {
5
5
  createTaskCore,
6
6
  employeeSessionName,
@@ -9,11 +9,11 @@ import {
9
9
  isEmployeeAlive,
10
10
  sessionScopeFilter,
11
11
  updateTaskStatus
12
- } from "./chunk-J5WI42RB.js";
12
+ } from "./chunk-QRHVGJOB.js";
13
13
  import {
14
14
  DEFAULT_COORDINATOR_TEMPLATE_NAME,
15
15
  getCoordinatorName
16
- } from "./chunk-UJOSFVWG.js";
16
+ } from "./chunk-VTLUUTWI.js";
17
17
 
18
18
  // src/runtime/orchestrator.ts
19
19
  var STALE_THRESHOLD_MS = 2 * 60 * 60 * 1e3;
@@ -1,24 +1,24 @@
1
1
  import {
2
2
  recordSessionKill
3
- } from "./chunk-FIPU4BDF.js";
3
+ } from "./chunk-5NIUTWV4.js";
4
4
  import {
5
5
  sessionScopeFilter,
6
6
  verifyPaneAtCapacity,
7
7
  writeNotification
8
- } from "./chunk-J5WI42RB.js";
8
+ } from "./chunk-QRHVGJOB.js";
9
9
  import {
10
10
  listSessions
11
- } from "./chunk-G4LLKD4Z.js";
11
+ } from "./chunk-J5MOKLCJ.js";
12
12
  import {
13
13
  getTransport
14
14
  } from "./chunk-MVW62NIZ.js";
15
15
  import {
16
16
  recordOrchestrationEventBestEffort
17
- } from "./chunk-CTFKTUYN.js";
17
+ } from "./chunk-YXRY4LH2.js";
18
18
  import {
19
19
  getClient,
20
20
  isCoordinatorName
21
- } from "./chunk-UJOSFVWG.js";
21
+ } from "./chunk-VTLUUTWI.js";
22
22
 
23
23
  // src/lib/capacity-monitor.ts
24
24
  var CAPACITY_PATTERNS = [
@@ -1,12 +1,12 @@
1
1
  import {
2
2
  storeBehavior
3
- } from "./chunk-7DNX45WB.js";
3
+ } from "./chunk-2QRT6G4V.js";
4
4
  import {
5
5
  getClient
6
- } from "./chunk-UJOSFVWG.js";
6
+ } from "./chunk-VTLUUTWI.js";
7
7
  import {
8
8
  loadConfig
9
- } from "./chunk-TNTFEWU5.js";
9
+ } from "./chunk-TRZ5KA2R.js";
10
10
 
11
11
  // src/lib/skill-learning.ts
12
12
  import crypto from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  listReminders
3
- } from "./chunk-R2E4TV5V.js";
3
+ } from "./chunk-L6LDDOYW.js";
4
4
 
5
5
  // src/mcp/tools/list-reminders.ts
6
6
  import { z } from "zod";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.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
  recordOrchestrationEventBestEffort
3
- } from "./chunk-CTFKTUYN.js";
3
+ } from "./chunk-YXRY4LH2.js";
4
4
 
5
5
  // src/lib/worktree.ts
6
6
  import { execSync } from "child_process";
@@ -8,7 +8,7 @@ async function fastDbInit() {
8
8
  if (!forceDirect) {
9
9
  try {
10
10
  const { connectEmbedDaemon, sendDaemonRequest, isClientConnected, disconnectClient } = await import("./lib/exe-daemon-client.js");
11
- const { deserializeResultSet } = await import("./daemon-protocol-4FUHT5NH.js");
11
+ const { deserializeResultSet } = await import("./daemon-protocol-XW2OLNBS.js");
12
12
  await Promise.race([
13
13
  connectEmbedDaemon(),
14
14
  new Promise((_, reject) => setTimeout(() => reject(new Error("Daemon socket timeout (2s)")), 2e3))
@@ -2,7 +2,7 @@ import {
2
2
  connectEmbedDaemon,
3
3
  disconnectClient,
4
4
  embedViaClient
5
- } from "./chunk-L24HYX62.js";
5
+ } from "./chunk-VHKL4S4T.js";
6
6
  import {
7
7
  EMBEDDING_DIM
8
8
  } from "./chunk-FXU7JOXK.js";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  loadConfigSync
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.js";
4
4
 
5
5
  // src/lib/push-notifications.ts
6
6
  import { execSync } from "child_process";
@@ -1,22 +1,23 @@
1
1
  import {
2
2
  extractMemoryGraph
3
- } from "./chunk-36DAY227.js";
3
+ } from "./chunk-Y2PQS2GI.js";
4
4
  import {
5
5
  flushBatch,
6
6
  writeMemory
7
- } from "./chunk-5HF7X4WH.js";
7
+ } from "./chunk-LEK3ANCA.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-ZOPLM7G3.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
  loadLicense
3
- } from "./chunk-D4IVTUNN.js";
3
+ } from "./chunk-D5C56WO3.js";
4
4
 
5
5
  // src/lib/stack-update.ts
6
6
  import { execFileSync, spawnSync } from "child_process";
@@ -565,7 +565,7 @@ async function runStackUpdate(options) {
565
565
  warnLegacyDaemonVolume();
566
566
  if (!options.dryRun) {
567
567
  try {
568
- const { runPreflight } = await import("./preflight-TZOGLBZU.js");
568
+ const { runPreflight } = await import("./preflight-EAH2MI76.js");
569
569
  const preflightReport = runPreflight({
570
570
  composeFile: options.composeFile,
571
571
  envFile: options.envFile
@@ -1,9 +1,9 @@
1
1
  import {
2
2
  recordSessionKill
3
- } from "./chunk-FIPU4BDF.js";
3
+ } from "./chunk-5NIUTWV4.js";
4
4
  import {
5
5
  updateTask
6
- } from "./chunk-5X3ISBHJ.js";
6
+ } from "./chunk-GQHV2QYL.js";
7
7
  import {
8
8
  ensureEmployee,
9
9
  extractRootExe,
@@ -14,13 +14,13 @@ import {
14
14
  sessionScopeFilter,
15
15
  strictSessionScopeFilter,
16
16
  writeNotification
17
- } from "./chunk-J5WI42RB.js";
17
+ } from "./chunk-QRHVGJOB.js";
18
18
  import {
19
19
  queueIntercom
20
20
  } from "./chunk-QI4IXJN7.js";
21
21
  import {
22
22
  listSessions
23
- } from "./chunk-G4LLKD4Z.js";
23
+ } from "./chunk-J5MOKLCJ.js";
24
24
  import {
25
25
  getTransport
26
26
  } from "./chunk-MVW62NIZ.js";
@@ -30,18 +30,18 @@ import {
30
30
  } from "./chunk-CX6GL3ZJ.js";
31
31
  import {
32
32
  recordOrchestrationEventBestEffort
33
- } from "./chunk-CTFKTUYN.js";
33
+ } from "./chunk-YXRY4LH2.js";
34
34
  import {
35
35
  getAgentRuntime
36
- } from "./chunk-GVP5U4WL.js";
36
+ } from "./chunk-6OJJF4WP.js";
37
37
  import {
38
38
  baseAgentName,
39
39
  isCoordinatorName,
40
40
  shouldAutoInstance
41
- } from "./chunk-UJOSFVWG.js";
41
+ } from "./chunk-VTLUUTWI.js";
42
42
  import {
43
43
  loadConfigSync
44
- } from "./chunk-TNTFEWU5.js";
44
+ } from "./chunk-TRZ5KA2R.js";
45
45
 
46
46
  // src/lib/daemon-orchestration.ts
47
47
  import { execSync } from "child_process";
@@ -1655,7 +1655,7 @@ async function reapOrphanedWorktrees(deps, nowMs = Date.now()) {
1655
1655
  }
1656
1656
  async function createWorktreeReaperRealDeps() {
1657
1657
  const { getPaneCwdAsync } = await import("./lib/tmux-status.js");
1658
- const { getGitRoot, isWorktreeDirty: isDirty } = await import("./worktree-BO7QQ32T.js");
1658
+ const { getGitRoot, isWorktreeDirty: isDirty } = await import("./worktree-Q6Y5IHSI.js");
1659
1659
  const { statSync: statSync2 } = await import("fs");
1660
1660
  const { basename } = await import("path");
1661
1661
  const { promisify } = await import("util");
@@ -1796,7 +1796,7 @@ async function gcStaleCheckpoints() {
1796
1796
  }
1797
1797
  async function pollTaskGroupBarriers() {
1798
1798
  try {
1799
- const { checkAndFireBarriers } = await import("./tasks-crud-2FX6NTL2.js");
1799
+ const { checkAndFireBarriers } = await import("./tasks-crud-CHPEFXSN.js");
1800
1800
  const firedGroupIds = await checkAndFireBarriers();
1801
1801
  if (firedGroupIds.length === 0) return 0;
1802
1802
  const { getClient } = await import("./lib/database.js");
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.js";
4
4
 
5
5
  // src/lib/worker-gate.ts
6
6
  import { readdirSync, writeFileSync, unlinkSync, mkdirSync, existsSync, readFileSync } from "fs";
@@ -111,7 +111,7 @@ function releaseBackfillLock() {
111
111
  }
112
112
  async function getTaskAwareCapacity() {
113
113
  const { getClient } = await import("./lib/database.js");
114
- const { sessionScopeFilter } = await import("./task-scope-N6GNTTVY.js");
114
+ const { sessionScopeFilter } = await import("./task-scope-7TDJLRUR.js");
115
115
  const client = getClient();
116
116
  const scope = sessionScopeFilter();
117
117
  const result = await client.execute({
@@ -98,18 +98,22 @@ function ensurePath(home, binDir) {
98
98
  if (process.env.PATH?.split(path.delimiter).includes(binDir)) {
99
99
  return false;
100
100
  }
101
- const exportLine = `
101
+ const shell = process.env.SHELL ?? "/bin/bash";
102
+ const isFish = shell.includes("fish");
103
+ const exportLine = isFish ? `
104
+ # exe-os session commands
105
+ set -gx PATH ${binDir} $PATH
106
+ ` : `
102
107
  # exe-os session commands
103
108
  export PATH="${binDir}:$PATH"
104
109
  `;
105
- const shell = process.env.SHELL ?? "/bin/bash";
106
110
  const profilePaths = [];
107
111
  if (shell.includes("zsh")) {
108
112
  profilePaths.push(path.join(home, ".zshrc"));
109
113
  } else if (shell.includes("bash")) {
110
114
  profilePaths.push(path.join(home, ".bashrc"));
111
115
  profilePaths.push(path.join(home, ".bash_profile"));
112
- } else if (shell.includes("fish")) {
116
+ } else if (isFish) {
113
117
  profilePaths.push(path.join(home, ".config", "fish", "config.fish"));
114
118
  } else {
115
119
  profilePaths.push(path.join(home, ".profile"));
@@ -11,16 +11,16 @@ import {
11
11
  sessionScopeFilter,
12
12
  updateTaskStatus,
13
13
  writeNotification
14
- } from "./chunk-J5WI42RB.js";
14
+ } from "./chunk-QRHVGJOB.js";
15
15
  import {
16
16
  getTransport
17
17
  } from "./chunk-MVW62NIZ.js";
18
18
  import {
19
19
  recordOrchestrationEventBestEffort
20
- } from "./chunk-CTFKTUYN.js";
20
+ } from "./chunk-YXRY4LH2.js";
21
21
  import {
22
22
  getAgentRuntime
23
- } from "./chunk-GVP5U4WL.js";
23
+ } from "./chunk-6OJJF4WP.js";
24
24
  import {
25
25
  getSessionKey
26
26
  } from "./chunk-CVYC6DUW.js";
@@ -33,10 +33,10 @@ import {
33
33
  isCoordinatorName,
34
34
  isMultiInstance,
35
35
  shouldAutoInstance
36
- } from "./chunk-UJOSFVWG.js";
36
+ } from "./chunk-VTLUUTWI.js";
37
37
  import {
38
38
  EXE_AI_DIR
39
- } from "./chunk-TNTFEWU5.js";
39
+ } from "./chunk-TRZ5KA2R.js";
40
40
 
41
41
  // src/lib/tasks.ts
42
42
  import path2 from "path";
@@ -75,7 +75,7 @@ async function cascadeUnblock(taskId, baseDir, now) {
75
75
  }
76
76
  if (unblockedRows.rows.length > 0 && !process.env.VITEST) {
77
77
  try {
78
- const { queueIntercom } = await import("./intercom-queue-USIXVVJQ.js");
78
+ const { queueIntercom } = await import("./intercom-queue-RNM6EPGA.js");
79
79
  const dispatched = /* @__PURE__ */ new Set();
80
80
  for (const ur of unblockedRows.rows) {
81
81
  const assignee = String(ur.assigned_to);
@@ -159,7 +159,7 @@ async function dispatchTaskToEmployee(input) {
159
159
  let crossProject = false;
160
160
  if (input.projectName) {
161
161
  try {
162
- const { assertSessionScope } = await import("./session-scope-CUDNSN62.js");
162
+ const { assertSessionScope } = await import("./session-scope-EHSZJLAT.js");
163
163
  const check = assertSessionScope("dispatch_task", input.projectName);
164
164
  if (check.reason === "cross_session_denied") {
165
165
  crossProject = true;
@@ -460,7 +460,7 @@ async function updateTask(input) {
460
460
  try {
461
461
  process.stderr.write(`[tasks] EVENT: tmux delivery failed for reviewer="${reviewer}". Queueing for daemon delivery.
462
462
  `);
463
- const { queueIntercom } = await import("./intercom-queue-USIXVVJQ.js");
463
+ const { queueIntercom } = await import("./intercom-queue-RNM6EPGA.js");
464
464
  const { resolveExeSession: resolveExeSession2 } = await import("./lib/tmux-routing.js");
465
465
  const exeSession = row.session_scope ? String(row.session_scope) : resolveExeSession2();
466
466
  if (exeSession) {
@@ -473,7 +473,7 @@ async function updateTask(input) {
473
473
  }
474
474
  }
475
475
  try {
476
- const { pushNotifyAsync } = await import("./push-notifications-3GNJ5SZS.js");
476
+ const { pushNotifyAsync } = await import("./push-notifications-E2XXEWJZ.js");
477
477
  pushNotifyAsync({
478
478
  event: "review_ready",
479
479
  title: `Review ready: ${taskTitle.slice(0, 50)}`,
@@ -485,7 +485,7 @@ async function updateTask(input) {
485
485
  }
486
486
  if (!isCoordinator) {
487
487
  try {
488
- const { pushNotifyAsync } = await import("./push-notifications-3GNJ5SZS.js");
488
+ const { pushNotifyAsync } = await import("./push-notifications-E2XXEWJZ.js");
489
489
  const event = input.status === "needs_review" ? "review_ready" : "task_complete";
490
490
  pushNotifyAsync({
491
491
  event,
@@ -500,7 +500,7 @@ async function updateTask(input) {
500
500
  await markTaskNotificationsRead(taskFile);
501
501
  if (input.status === "needs_review" && !isCoordinator) {
502
502
  try {
503
- const { writeNotification: writeNotification2 } = await import("./notifications-MEW6QY57.js");
503
+ const { writeNotification: writeNotification2 } = await import("./notifications-A3OLWT3R.js");
504
504
  await writeNotification2({
505
505
  agentId: String(row.assigned_to),
506
506
  agentRole: String(row.assigned_to),
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  MODELS_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.js";
4
4
 
5
5
  // src/lib/reranker.ts
6
6
  import path from "path";
@@ -1,10 +1,10 @@
1
1
  import {
2
2
  initStore
3
- } from "./chunk-5HF7X4WH.js";
3
+ } from "./chunk-LEK3ANCA.js";
4
4
  import {
5
5
  getClient,
6
6
  isInitialized
7
- } from "./chunk-UJOSFVWG.js";
7
+ } from "./chunk-VTLUUTWI.js";
8
8
 
9
9
  // src/lib/schedules.ts
10
10
  import crypto from "crypto";
@@ -2,7 +2,7 @@ import {
2
2
  getClient,
3
3
  isCoordinatorName,
4
4
  loadEmployeesSync
5
- } from "./chunk-UJOSFVWG.js";
5
+ } from "./chunk-VTLUUTWI.js";
6
6
 
7
7
  // src/lib/steward-gate.ts
8
8
  import crypto from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  recordOrchestrationEventBestEffort
3
- } from "./chunk-CTFKTUYN.js";
3
+ } from "./chunk-YXRY4LH2.js";
4
4
 
5
5
  // src/lib/session-registry.ts
6
6
  import { readFileSync, writeFileSync, mkdirSync, existsSync } from "fs";
@@ -4,17 +4,17 @@ import {
4
4
  resolveExeSession,
5
5
  sendIntercom,
6
6
  strictSessionScopeFilter
7
- } from "./chunk-J5WI42RB.js";
7
+ } from "./chunk-QRHVGJOB.js";
8
8
  import {
9
9
  parseMessage,
10
10
  serializeMessage
11
11
  } from "./chunk-4JERP7NT.js";
12
12
  import {
13
13
  recordOrchestrationEventBestEffort
14
- } from "./chunk-CTFKTUYN.js";
14
+ } from "./chunk-YXRY4LH2.js";
15
15
  import {
16
16
  getClient
17
- } from "./chunk-UJOSFVWG.js";
17
+ } from "./chunk-VTLUUTWI.js";
18
18
 
19
19
  // src/lib/messaging.ts
20
20
  import crypto from "crypto";
@@ -1,6 +1,6 @@
1
1
  import {
2
2
  EXE_AI_DIR
3
- } from "./chunk-TNTFEWU5.js";
3
+ } from "./chunk-TRZ5KA2R.js";
4
4
  import {
5
5
  enforcePrivateFileSync,
6
6
  ensurePrivateDirSync
@@ -1,7 +1,7 @@
1
1
  import {
2
2
  checkLicense,
3
3
  loadLicense
4
- } from "./chunk-D4IVTUNN.js";
4
+ } from "./chunk-D5C56WO3.js";
5
5
 
6
6
  // src/lib/license-gate.ts
7
7
  var _cachedLicense = null;
@@ -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,6 +1,6 @@
1
1
  import {
2
2
  getClient
3
- } from "./chunk-UJOSFVWG.js";
3
+ } from "./chunk-VTLUUTWI.js";
4
4
 
5
5
  // src/lib/reminders.ts
6
6
  import crypto from "crypto";