@askexenow/exe-os 0.9.221 → 0.9.223

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 (363) hide show
  1. package/deploy/compose/.env.example +14 -0
  2. package/deploy/compose/docker-compose.yml +181 -1
  3. package/deploy/compose/init-db.sql +1 -0
  4. package/deploy/compose/uptime-check.sh +4 -1
  5. package/deploy/stack-manifests/v0.9.json +47 -31
  6. package/dist/{active-agent-YNZ7YA74.js → active-agent-NF634PI4.js} +3 -3
  7. package/dist/{active-agent-JYQI3DAH.js → active-agent-TUL7H4GZ.js} +3 -3
  8. package/dist/{agent-context-AZTTMUHP.js → agent-context-ZPDQOAD2.js} +1 -1
  9. package/dist/{agent-heartbeat-I5UPGXAU.js → agent-heartbeat-AWTVGE4C.js} +1 -1
  10. package/dist/{agent-loop-NUIWAL3Z.js → agent-loop-7UM2ENGU.js} +1 -1
  11. package/dist/{agentic-ontology-6JMLSYYU.js → agentic-ontology-P7MGRCYI.js} +2 -2
  12. package/dist/{asana-MRQ2OQMJ.js → asana-JN2UF47A.js} +1 -1
  13. package/dist/{backfill-metadata-AGHTEOOS.js → backfill-metadata-7FRRZWPE.js} +4 -4
  14. package/dist/{background-jobs-Q4S27FCN.js → background-jobs-ZX3RLNWC.js} +1 -1
  15. package/dist/{bash-HOHKSOU3.js → bash-XA65M6T6.js} +1 -1
  16. package/dist/{behaviors-TT72JVF4.js → behaviors-FZG4PQ5L.js} +3 -3
  17. package/dist/bin/age-ontology-load.js +1 -1
  18. package/dist/bin/agentic-ontology-backfill.js +5 -5
  19. package/dist/bin/agentic-reflection-backfill.js +6 -6
  20. package/dist/bin/agentic-semantic-label.js +5 -5
  21. package/dist/bin/backfill-conversations.js +4 -4
  22. package/dist/bin/backfill-responses.js +4 -4
  23. package/dist/bin/backfill-vectors.js +5 -5
  24. package/dist/bin/bulk-sync-postgres.js +6 -6
  25. package/dist/bin/cc-doctor.js +1 -1
  26. package/dist/bin/cleanup-stale-review-tasks.js +10 -9
  27. package/dist/bin/cli.js +28 -39
  28. package/dist/bin/deferred-daemon-restart.js +1 -1
  29. package/dist/bin/exe-agent-config.js +2 -2
  30. package/dist/bin/exe-agent.js +12 -12
  31. package/dist/bin/exe-assign.js +6 -6
  32. package/dist/bin/exe-boot.js +22 -21
  33. package/dist/bin/exe-call.js +5 -5
  34. package/dist/bin/exe-cloud.js +5 -5
  35. package/dist/bin/exe-dispatch.js +10 -9
  36. package/dist/bin/exe-doctor.js +2 -2
  37. package/dist/bin/exe-export-behaviors.js +7 -7
  38. package/dist/bin/exe-forget.js +6 -6
  39. package/dist/bin/exe-gateway.js +33 -15
  40. package/dist/bin/exe-healthcheck.js +1 -1
  41. package/dist/bin/exe-heartbeat.js +11 -10
  42. package/dist/bin/exe-kill.js +13 -12
  43. package/dist/bin/exe-launch-agent.js +18 -17
  44. package/dist/bin/exe-new-employee.js +7 -7
  45. package/dist/bin/exe-pending-messages.js +11 -10
  46. package/dist/bin/exe-pending-notifications.js +10 -9
  47. package/dist/bin/exe-pending-reviews.js +11 -10
  48. package/dist/bin/exe-rename.js +5 -5
  49. package/dist/bin/exe-review.js +12 -11
  50. package/dist/bin/exe-search.js +5 -5
  51. package/dist/bin/exe-session-cleanup.js +15 -14
  52. package/dist/bin/exe-settings.js +4 -4
  53. package/dist/bin/exe-start-codex.js +12 -12
  54. package/dist/bin/exe-start-opencode.js +8 -8
  55. package/dist/bin/exe-status.js +11 -10
  56. package/dist/bin/exe-support.js +2 -2
  57. package/dist/bin/exe-team.js +3 -3
  58. package/dist/bin/git-sweep.js +10 -9
  59. package/dist/bin/graph-backfill.js +4 -4
  60. package/dist/bin/graph-export.js +5 -5
  61. package/dist/bin/graph-layer-benchmark.js +1 -1
  62. package/dist/bin/import-history.js +58 -146
  63. package/dist/bin/install.js +6 -6
  64. package/dist/bin/intercom-check.js +6 -6
  65. package/dist/bin/list-providers.js +1 -1
  66. package/dist/bin/mcp-sessions.js +3 -3
  67. package/dist/bin/orchestration-metrics.js +4 -4
  68. package/dist/bin/postgres-agentic-reflection-backfill.js +3 -3
  69. package/dist/bin/postgres-agentic-semantic-backfill.js +2 -2
  70. package/dist/bin/pre-publish.js +2 -2
  71. package/dist/bin/registry-proxy.js +1 -1
  72. package/dist/bin/scan-tasks.js +10 -9
  73. package/dist/bin/setup.js +2 -2
  74. package/dist/bin/shard-migrate.js +4 -4
  75. package/dist/bin/stack-update.js +27 -12
  76. package/dist/bin/update.js +1 -1
  77. package/dist/bin/verify-stack.js +1 -1
  78. package/dist/bin/vps-backup.js +1 -1
  79. package/dist/bin/vps-health-gate.js +2 -2
  80. package/dist/{branding-23ZRRPCE.js → branding-Q6HNW3JX.js} +1 -1
  81. package/dist/{browser-sanitizer-Q3GWRYKI.js → browser-sanitizer-MRSSEJZE.js} +1 -1
  82. package/dist/{browser-session-store-TSD4PCY7.js → browser-session-store-RF45DSJR.js} +1 -1
  83. package/dist/{capacity-monitor-BOAVNFBX.js → capacity-monitor-IBYKMAVH.js} +11 -10
  84. package/dist/{catchup-brief-H6GBODF6.js → catchup-brief-RTRHFLJZ.js} +12 -11
  85. package/dist/{chunk-BRGUJ76G.js → chunk-2FYYLSWG.js} +1 -1
  86. package/dist/{chunk-EM7QXDC2.js → chunk-3J3JKVFN.js} +23 -12
  87. package/dist/{chunk-X4L6SQU5.js → chunk-3NIN4W45.js} +5 -5
  88. package/dist/{chunk-OFPDYF24.js → chunk-42HQP6ZW.js} +2 -2
  89. package/dist/{chunk-GM2SXBIN.js → chunk-4575CYN6.js} +8 -8
  90. package/dist/chunk-4JERP7NT.js +132 -0
  91. package/dist/{chunk-3GUGE4K2.js → chunk-4O6R65NR.js} +2 -2
  92. package/dist/{chunk-YUHKC2X2.js → chunk-54Z2EZTF.js} +126 -17
  93. package/dist/{chunk-RUM6GJKH.js → chunk-5QADKW44.js} +1 -1
  94. package/dist/{chunk-X3ZMMUTS.js → chunk-6QDIJSBI.js} +1 -1
  95. package/dist/{chunk-F65CKSBB.js → chunk-6QNXRIHP.js} +27 -6
  96. package/dist/chunk-7BUFHIKO.js +240 -0
  97. package/dist/{chunk-A77WVNU2.js → chunk-7ZWG5ONF.js} +25 -0
  98. package/dist/{chunk-WSZS2KVV.js → chunk-AQX4SHLQ.js} +2 -2
  99. package/dist/{chunk-2H2XQJ62.js → chunk-BADYJIS4.js} +2 -2
  100. package/dist/{chunk-G3RJSRAS.js → chunk-BDH6Q75H.js} +7 -204
  101. package/dist/{chunk-3YVPPYKT.js → chunk-CROP7HD6.js} +1373 -645
  102. package/dist/{chunk-UCHIXGLP.js → chunk-EOUZLIWS.js} +14 -4
  103. package/dist/{chunk-NERANZPH.js → chunk-EZXCTIUM.js} +1 -1
  104. package/dist/{chunk-OV2DYWB6.js → chunk-FAZVUO2W.js} +1 -1
  105. package/dist/{chunk-GKEEC3P7.js → chunk-FCKA6FWL.js} +1 -1
  106. package/dist/chunk-ICW5E3O4.js +356 -0
  107. package/dist/{chunk-P5IPATUA.js → chunk-IRL2MCW2.js} +10 -10
  108. package/dist/{chunk-FSIPRNGL.js → chunk-IZIUYTSI.js} +1 -1
  109. package/dist/{chunk-HR4WG32E.js → chunk-JDXJPXLD.js} +1 -1
  110. package/dist/{chunk-BPV3F7M6.js → chunk-KWGBH5XQ.js} +1 -1
  111. package/dist/{chunk-6MMKWEGK.js → chunk-LE3GKEP7.js} +2 -2
  112. package/dist/{chunk-ILAG5VBR.js → chunk-LIZOAH4T.js} +9 -9
  113. package/dist/{chunk-XFLVRS2F.js → chunk-LK5IORH7.js} +1 -1
  114. package/dist/{chunk-A74RTD5M.js → chunk-MDTZUGFI.js} +1 -1
  115. package/dist/{chunk-EFDIUJWC.js → chunk-NHJOM56T.js} +1 -1
  116. package/dist/{chunk-OQUWRF5K.js → chunk-NHYOCM7L.js} +1 -1
  117. package/dist/{chunk-7FEIB32Y.js → chunk-NQWX3B6R.js} +1 -1
  118. package/dist/{chunk-UTQTHZ4H.js → chunk-OMUZZW7Q.js} +2 -2
  119. package/dist/{chunk-QIWMGZOK.js → chunk-PGZ24622.js} +2 -2
  120. package/dist/{chunk-DBZI5HYX.js → chunk-Q7ZZYBUH.js} +3 -3
  121. package/dist/{chunk-44PHDWBT.js → chunk-QUAXNUXL.js} +2 -2
  122. package/dist/chunk-R5U7XKVJ.js +16 -0
  123. package/dist/{chunk-5Y5I65H6.js → chunk-R75UC6KC.js} +2 -2
  124. package/dist/{chunk-SQBRX5GZ.js → chunk-RATJJGDM.js} +10 -10
  125. package/dist/{chunk-BXQCL72Y.js → chunk-RVEQOJVJ.js} +1 -1
  126. package/dist/{chunk-J3GQXXQR.js → chunk-RZ7SZWTG.js} +1 -1
  127. package/dist/{chunk-GUY5C7LF.js → chunk-S4YT7LGK.js} +1 -1
  128. package/dist/{chunk-7TKOVU64.js → chunk-SCMUOBNL.js} +1 -1
  129. package/dist/chunk-SEFINWMR.js +204 -0
  130. package/dist/{chunk-YKTV34T6.js → chunk-SHLNNRLY.js} +9 -5
  131. package/dist/{chunk-DANQ4YE4.js → chunk-UEXY4US3.js} +2 -2
  132. package/dist/{chunk-OMJW5FZ5.js → chunk-UQVXNURS.js} +4 -4
  133. package/dist/{chunk-XISG35R2.js → chunk-URSCMNKB.js} +2 -2
  134. package/dist/{chunk-LVAFZMP3.js → chunk-V5UNVSOD.js} +7 -7
  135. package/dist/{chunk-MSSB6VBT.js → chunk-VWS67HEU.js} +1 -1
  136. package/dist/{chunk-RA3NCLXH.js → chunk-W6LZG2XO.js} +9 -9
  137. package/dist/{chunk-X6UJ4CLH.js → chunk-WCZWSW6V.js} +3 -3
  138. package/dist/{chunk-NLEWVXX4.js → chunk-WP4O5ZWY.js} +4 -4
  139. package/dist/{chunk-NJR54FIF.js → chunk-WVAVK3OZ.js} +27 -17
  140. package/dist/{chunk-UVUA2DQM.js → chunk-XGOYEQMQ.js} +11 -13
  141. package/dist/{chunk-LZL5MGMH.js → chunk-XKRLW4ED.js} +1 -1
  142. package/dist/{chunk-IC6NXF2N.js → chunk-XQNZIUHH.js} +1 -1
  143. package/dist/{chunk-4DCP2XYD.js → chunk-XTASOUHG.js} +12 -3
  144. package/dist/{chunk-2ZYEO7U7.js → chunk-Y7ZGM7DX.js} +12 -0
  145. package/dist/{chunk-QJ2MGXFX.js → chunk-YEGTXBAG.js} +21 -6
  146. package/dist/chunk-YIG54RR5.js +320 -0
  147. package/dist/{chunk-MPWYUOB7.js → chunk-YIXTDB5E.js} +1 -1
  148. package/dist/{chunk-NIXZDSJF.js → chunk-ZQSEW7MH.js} +1 -1
  149. package/dist/co-activation-2KP5W2SU.js +71 -0
  150. package/dist/{co-occurrence-VWWDUBWI.js → co-occurrence-4VXFRV2N.js} +2 -2
  151. package/dist/{code-context-index-DOKQN2Q5.js → code-context-index-3FHYHWV3.js} +1 -1
  152. package/dist/{content-extractor-SPSH5X33.js → content-extractor-CUJOBFBU.js} +1 -1
  153. package/dist/{conversation-entity-extractor-EYSI4DKM.js → conversation-entity-extractor-TW4W57K4.js} +1 -1
  154. package/dist/{conversation-wiki-populator-LW3EF62R.js → conversation-wiki-populator-MTRQYBQZ.js} +2 -2
  155. package/dist/{core-memory-XQKOWOID.js → core-memory-LPWJLK3R.js} +1 -1
  156. package/dist/{crdt-sync-RCMMFHSQ.js → crdt-sync-HIL66PCO.js} +2 -2
  157. package/dist/{crm-bridge-BVTB6LZK.js → crm-bridge-NG5WJMGF.js} +1 -1
  158. package/dist/{crm-webhook-YQULRX7T.js → crm-webhook-4LLCWEA6.js} +3 -3
  159. package/dist/{cto-delegation-gate-YQ443YVD.js → cto-delegation-gate-YQJSUAK3.js} +9 -8
  160. package/dist/{daemon-auth-PQFXH3J2.js → daemon-auth-6QSCVMPV.js} +1 -1
  161. package/dist/{daemon-orchestration-KCIQTAGO.js → daemon-orchestration-276LVR7V.js} +12 -11
  162. package/dist/{daemon-protocol-XW2OLNBS.js → daemon-protocol-4FUHT5NH.js} +1 -1
  163. package/dist/{db-backup-YSZLJSVY.js → db-backup-XGB725XE.js} +1 -1
  164. package/dist/{devtools-5PEATRYE.js → devtools-J4QYYO7U.js} +1 -1
  165. package/dist/{discord-LMZKIYWB.js → discord-7UHIZNJ3.js} +1 -1
  166. package/dist/{dispatch-ack-JYCKAWKZ.js → dispatch-ack-RMVFHO4I.js} +1 -1
  167. package/dist/{email-UENAIKRN.js → email-T6PQUUY6.js} +1 -1
  168. package/dist/{entity-boost-TM7ETI64.js → entity-boost-6PC4KAGM.js} +2 -2
  169. package/dist/{exe-drift-TFXY2LTU.js → exe-drift-R5E55SYH.js} +3 -3
  170. package/dist/{exe-export-Q357HALA.js → exe-export-HOKVU5LM.js} +6 -6
  171. package/dist/{exe-import-2BPJMJ6Z.js → exe-import-NFXAODDR.js} +6 -6
  172. package/dist/{exe-key-DVU3FQ3N.js → exe-key-7J7D4KN4.js} +2 -2
  173. package/dist/{exe-org-G7IUSBCY.js → exe-org-DR7IKYC5.js} +1 -1
  174. package/dist/exe-snapshot-ROORCYQF.js +145 -0
  175. package/dist/{factory-CTFAGZUA.js → factory-UQSRMKJW.js} +1 -1
  176. package/dist/fast-db-init-5JG2PV6P.js +7 -0
  177. package/dist/{file-edit-AZAJPCA3.js → file-edit-YORRFENG.js} +1 -1
  178. package/dist/{file-read-VACF23NC.js → file-read-RMQFDE5L.js} +1 -1
  179. package/dist/{file-write-B2RPT5U7.js → file-write-VO4MQW5Y.js} +1 -1
  180. package/dist/founder-context-DYPGK265.js +96 -0
  181. package/dist/gateway/index.js +14 -13
  182. package/dist/{gateway-client-5EUMMEZZ.js → gateway-client-4GDNTHMN.js} +2 -2
  183. package/dist/{git-staleness-WTLCKKNF.js → git-staleness-3J224RTO.js} +2 -2
  184. package/dist/{git-task-sweep-FUOVATSV.js → git-task-sweep-I5SOQ2IR.js} +10 -9
  185. package/dist/{glob-7PWH7WKL.js → glob-2LXRC3F5.js} +1 -1
  186. package/dist/{global-procedures-S6ZVVLBM.js → global-procedures-2LMTOBN5.js} +4 -4
  187. package/dist/{graph-auto-extract-ZJ7LNTSH.js → graph-auto-extract-TXT6OWUX.js} +2 -2
  188. package/dist/{graph-query-UTLL5MKN.js → graph-query-YZ4RZEIL.js} +1 -1
  189. package/dist/{graph-rag-G3EG5Q6L.js → graph-rag-S5SBJW5J.js} +1 -1
  190. package/dist/{grep-HWIDXHRC.js → grep-OY7KCRLQ.js} +1 -1
  191. package/dist/{hook-integrity-MCY73ZZL.js → hook-integrity-WNIRU724.js} +2 -2
  192. package/dist/hooks/bug-report-worker.js +11 -10
  193. package/dist/hooks/codex-stop-task-finalizer.js +12 -11
  194. package/dist/hooks/commit-complete.js +13 -12
  195. package/dist/hooks/error-recall.js +7 -7
  196. package/dist/hooks/exe-heartbeat-hook.js +4 -4
  197. package/dist/hooks/ingest-worker.js +1 -1
  198. package/dist/hooks/ingest.js +13 -13
  199. package/dist/hooks/instructions-loaded.js +5 -5
  200. package/dist/hooks/manifest.json +20 -20
  201. package/dist/hooks/notification.js +5 -5
  202. package/dist/hooks/post-compact.js +12 -11
  203. package/dist/hooks/post-tool-combined.js +7 -7
  204. package/dist/hooks/pre-compact.js +13 -12
  205. package/dist/hooks/pre-tool-use.js +17 -16
  206. package/dist/hooks/prompt-submit.js +47 -26
  207. package/dist/hooks/session-end.js +33 -18
  208. package/dist/hooks/session-start.js +24 -17
  209. package/dist/hooks/stop.js +19 -18
  210. package/dist/hooks/subagent-stop.js +12 -11
  211. package/dist/hooks/summary-worker.js +15 -14
  212. package/dist/{hooks-LDCFYHDF.js → hooks-RPTZV5KX.js} +1 -1
  213. package/dist/{imessage-6UOZB5VN.js → imessage-CE5USLTI.js} +1 -1
  214. package/dist/index.js +21 -19
  215. package/dist/{installer-42KVGDGD.js → installer-3SDM4RZL.js} +6 -6
  216. package/dist/{installer-VH4GYJQO.js → installer-DWHZZ26E.js} +5 -5
  217. package/dist/{installer-KZVGXCRL.js → installer-MKJZ7LAY.js} +8 -8
  218. package/dist/{intercom-queue-RNM6EPGA.js → intercom-queue-USIXVVJQ.js} +1 -1
  219. package/dist/{key-backup-status-JTPVS5K2.js → key-backup-status-PSBX547O.js} +1 -1
  220. package/dist/{keyword-extractor-UJHFWVZE.js → keyword-extractor-OGQRRVTB.js} +1 -1
  221. package/dist/lib/agent-config.js +1 -1
  222. package/dist/lib/cloud-sync.js +4 -4
  223. package/dist/lib/cloudflare-dns.js +1 -1
  224. package/dist/lib/config.js +1 -1
  225. package/dist/lib/consolidation.js +5 -5
  226. package/dist/lib/crypto.js +1 -1
  227. package/dist/lib/database.js +2 -2
  228. package/dist/lib/db-daemon-client.js +1 -1
  229. package/dist/lib/db.js +2 -2
  230. package/dist/lib/device-registry.js +1 -1
  231. package/dist/lib/embedder.js +2 -2
  232. package/dist/lib/employee-templates.js +5 -5
  233. package/dist/lib/employees.js +2 -2
  234. package/dist/lib/error-detector.js +1 -1
  235. package/dist/lib/exe-daemon-client.js +1 -1
  236. package/dist/lib/exe-daemon.js +154 -110
  237. package/dist/lib/file-grep.js +1 -1
  238. package/dist/lib/hybrid-search.js +5 -5
  239. package/dist/lib/identity-templates.js +1 -1
  240. package/dist/lib/identity.js +2 -2
  241. package/dist/lib/keychain.js +1 -1
  242. package/dist/lib/license.js +1 -1
  243. package/dist/lib/messaging.js +14 -9
  244. package/dist/lib/post-tool-memory.js +1 -1
  245. package/dist/lib/registry-proxy.js +1 -1
  246. package/dist/lib/reminders.js +3 -3
  247. package/dist/lib/runtime-table.js +1 -1
  248. package/dist/lib/schedules.js +5 -5
  249. package/dist/lib/session-registry.js +4 -4
  250. package/dist/lib/session-wrappers.js +1 -1
  251. package/dist/lib/skill-learning.js +4 -4
  252. package/dist/lib/status-brief.js +1 -1
  253. package/dist/lib/store.js +4 -4
  254. package/dist/lib/task-router.js +3 -3
  255. package/dist/lib/tasks.js +10 -9
  256. package/dist/lib/tmux-routing.js +9 -8
  257. package/dist/lib/tmux-status.js +1 -1
  258. package/dist/lib/tmux-transport.js +1 -1
  259. package/dist/lib/token-spend.js +3 -3
  260. package/dist/lib/transport.js +1 -1
  261. package/dist/lib/ws-auth.js +1 -1
  262. package/dist/lib/ws-client.js +2 -2
  263. package/dist/{license-gate-GJYKYTFK.js → license-gate-7MTUBAQ6.js} +1 -1
  264. package/dist/mcp/register-tools.js +56 -54
  265. package/dist/mcp/server.js +62 -60
  266. package/dist/mcp/tools/complete-reminder.js +4 -4
  267. package/dist/mcp/tools/create-reminder.js +4 -4
  268. package/dist/mcp/tools/create-task.js +12 -11
  269. package/dist/mcp/tools/deactivate-behavior.js +5 -5
  270. package/dist/mcp/tools/list-reminders.js +4 -4
  271. package/dist/mcp/tools/list-tasks.js +12 -11
  272. package/dist/mcp/tools/send-message.js +12 -11
  273. package/dist/mcp/tools/update-task.js +11 -10
  274. package/dist/{mcp-diagnostics-TSBY62UQ.js → mcp-diagnostics-5T5OZ52S.js} +1 -1
  275. package/dist/{mcp-disconnect-tracker-MB23DRS6.js → mcp-disconnect-tracker-VINUVEZJ.js} +1 -1
  276. package/dist/{mcp-http-config-QFVZZ4P6.js → mcp-http-config-P4ED3ADS.js} +3 -3
  277. package/dist/{memory-cards-7TZMVN4S.js → memory-cards-5RZVQM2I.js} +2 -2
  278. package/dist/{memory-graph-extractor-ZENXY3L6.js → memory-graph-extractor-BZ2BTA7T.js} +3 -3
  279. package/dist/{memory-poisoning-defense-T6AN332J.js → memory-poisoning-defense-OD6KTJMG.js} +2 -2
  280. package/dist/{memory-queue-WM4BXLSR.js → memory-queue-EFSUQITE.js} +1 -1
  281. package/dist/{memory-queue-client-BKEAVZHZ.js → memory-queue-client-3RRVVVSZ.js} +1 -1
  282. package/dist/{memory-reflection-5AYMWWGN.js → memory-reflection-P4QTHETK.js} +2 -2
  283. package/dist/{message-queue-client-TFMDQXJ7.js → message-queue-client-P2LRY5EG.js} +1 -1
  284. package/dist/{notifications-WDAAZ6FP.js → notifications-NG34NWED.js} +9 -8
  285. package/dist/{oauth-server-ZD2RNARD.js → oauth-server-2QW23H7W.js} +1 -1
  286. package/dist/{orchestration-events-IDQXVP34.js → orchestration-events-RLPF6IBF.js} +3 -3
  287. package/dist/{orchestration-phase-VFGBKPDJ.js → orchestration-phase-ZMMLNZAY.js} +1 -1
  288. package/dist/{orchestrator-CZYRJJDL.js → orchestrator-YJ3PGBOD.js} +11 -10
  289. package/dist/{permission-presets-E3DZK46K.js → permission-presets-UPVLJWZD.js} +1 -1
  290. package/dist/{permissions-6MCWUDCD.js → permissions-C4EMHPDD.js} +1 -1
  291. package/dist/{pg-ssl-7JXQFL4I.js → pg-ssl-GD3332YS.js} +1 -1
  292. package/dist/pipeline-router-CY3LSIRX.js +12 -0
  293. package/dist/{plan-limits-WAZUVFZQ.js → plan-limits-5GXDFRB4.js} +3 -3
  294. package/dist/prediction-log-4OYMLWU6.js +120 -0
  295. package/dist/{preferences-ERXO6SMJ.js → preferences-5ARPMYE7.js} +1 -1
  296. package/dist/{preflight-EAH2MI76.js → preflight-TZOGLBZU.js} +1 -1
  297. package/dist/project-boot-SC7HKBDP.js +254 -0
  298. package/dist/{project-name-EWG5KAZP.js → project-name-4SKOH2UO.js} +1 -1
  299. package/dist/{projection-worker-4DV5SIDZ.js → projection-worker-J5PU23LF.js} +4 -4
  300. package/dist/{push-notifications-ONUX3NPQ.js → push-notifications-IR3Z7WAT.js} +1 -1
  301. package/dist/{reranker-EZRCPPL4.js → reranker-CS5E6JV5.js} +2 -2
  302. package/dist/{review-gate-IUNS6GQU.js → review-gate-I66GDXNR.js} +1 -1
  303. package/dist/{review-polling-W32O7SNH.js → review-polling-ECLNAOPO.js} +10 -9
  304. package/dist/runtime/index.js +16 -15
  305. package/dist/{self-query-router-O7KJIZRX.js → self-query-router-QMK5ZSZR.js} +2 -2
  306. package/dist/{session-events-AKRECMTQ.js → session-events-DLNLSVQG.js} +10 -9
  307. package/dist/{session-kill-telemetry-SXLEJ2PW.js → session-kill-telemetry-Q652SZMP.js} +3 -3
  308. package/dist/{session-scope-QCZEPEZ7.js → session-scope-SLSSSLWY.js} +9 -8
  309. package/dist/{setup-wizard-HOFPOKHS.js → setup-wizard-AQNXSEHR.js} +2 -2
  310. package/dist/{shard-manager-DAJVON2Q.js → shard-manager-67Y6WYV4.js} +1 -1
  311. package/dist/{signal-7UIRTYGZ.js → signal-KF2LIO7Y.js} +1 -1
  312. package/dist/{signal-paths-4GOIRLGH.js → signal-paths-5ZTWCBUX.js} +1 -1
  313. package/dist/{skill-refinement-OIPE7QNX.js → skill-refinement-IFDXNWHB.js} +2 -2
  314. package/dist/{slack-GCOYBZUK.js → slack-JRDUD5Z7.js} +1 -1
  315. package/dist/{stack-update-SASYGDOB.js → stack-update-WLDGSSKX.js} +2 -2
  316. package/dist/steward-gate-GBSJUVA4.js +12 -0
  317. package/dist/{support-outbox-KEJ73I3F.js → support-outbox-HIJVUDA2.js} +1 -1
  318. package/dist/{task-enforcement-PYP4NBI2.js → task-enforcement-U73WYF74.js} +9 -8
  319. package/dist/{task-scanner-QEM5CO2Y.js → task-scanner-5OQBNC2N.js} +1 -1
  320. package/dist/{task-scope-IAIAQNYB.js → task-scope-5UIGPI32.js} +9 -8
  321. package/dist/{tasks-crud-M7YVS5F3.js → tasks-crud-NV7ZDD5K.js} +11 -8
  322. package/dist/{tasks-review-HNNUT3QB.js → tasks-review-FNQ5CKSR.js} +9 -8
  323. package/dist/{telegram-RGVD4LUY.js → telegram-COCYUCT7.js} +1 -1
  324. package/dist/{telemetry-43X3GT3R.js → telemetry-QKWQKAUC.js} +1 -1
  325. package/dist/{telemetry-upload-5OOAFOOI.js → telemetry-upload-IDRZ2K3N.js} +4 -4
  326. package/dist/{token-budget-D5LTVJNN.js → token-budget-WX3A2WFK.js} +2 -2
  327. package/dist/{tool-capability-index-YRJJEBIK.js → tool-capability-index-3UK7U6I3.js} +2 -2
  328. package/dist/{tool-gates-GXSYBVK4.js → tool-gates-6A6LE4DZ.js} +1 -1
  329. package/dist/{tool-gates-3IC7DK4R.js → tool-gates-RNWEH5IK.js} +1 -1
  330. package/dist/{tool-registry-5XN3FUYL.js → tool-registry-KL24CAFR.js} +1 -1
  331. package/dist/{tool-telemetry-A47IJB4I.js → tool-telemetry-ALXQYA2T.js} +2 -2
  332. package/dist/tui/App.js +42 -41
  333. package/dist/{tui-data-UCFTP4HZ.js → tui-data-736BUT73.js} +9 -8
  334. package/dist/typed-messages-53Q7L3LB.js +17 -0
  335. package/dist/{update-check-MKHO7H6B.js → update-check-5IL5I3E2.js} +1 -1
  336. package/dist/{webhook-LCW7UP4L.js → webhook-VXGIH7PN.js} +1 -1
  337. package/dist/{webhook-pipe-TSOX5K7U.js → webhook-pipe-6JPL3ERE.js} +1 -1
  338. package/dist/{whatsapp-SILL4V64.js → whatsapp-PSMKCDS7.js} +1 -1
  339. package/dist/{whatsapp-accounts-BWRZUY23.js → whatsapp-accounts-4OKWFRWL.js} +1 -1
  340. package/dist/whatsapp-config-ZG5LX4O4.js +125 -0
  341. package/dist/{wiki-acl-GVQMBGRQ.js → wiki-acl-J4JUCIMM.js} +1 -1
  342. package/dist/{wiki-client-2JLYCEWY.js → wiki-client-P55NUEDE.js} +1 -1
  343. package/dist/{worker-gate-WES7AMDA.js → worker-gate-OUWXNCOL.js} +2 -2
  344. package/dist/{workflow-engine-ZHWSK4BG.js → workflow-engine-POQYTSEY.js} +3 -3
  345. package/dist/{working-memory-PKUUMWZK.js → working-memory-Z3EB3FW6.js} +1 -1
  346. package/dist/{worktree-EO73ZMHX.js → worktree-KSSLSL2A.js} +4 -4
  347. package/package.json +1 -1
  348. package/release-notes.json +81 -64
  349. package/dist/bin/daily-summary.js +0 -0
  350. package/dist/chunk-MLKGABMK.js +0 -9
  351. package/dist/chunk-Q2G5C3HV.js +0 -217
  352. package/dist/chunk-SVBCHRGC.js +0 -225
  353. package/dist/fast-db-init-WF6BDZ46.js +0 -7
  354. package/dist/import-conversations-O3BGXQQH.js +0 -23
  355. /package/dist/{chunk-UHMLXFZC.js → chunk-4FL6DXQL.js} +0 -0
  356. /package/dist/{chunk-OUHHUKPC.js → chunk-F2DMSZZO.js} +0 -0
  357. /package/dist/{chunk-QBPEJKJ2.js → chunk-FBKFVRZJ.js} +0 -0
  358. /package/dist/{chunk-T6UW3VZN.js → chunk-IUULX7UR.js} +0 -0
  359. /package/dist/{chunk-IENYOYZ6.js → chunk-R4PJKJXP.js} +0 -0
  360. /package/dist/{chunk-WRU72I4S.js → chunk-TLM2DDBX.js} +0 -0
  361. /package/dist/{chunk-I7K6NY34.js → chunk-UQ7FYRDW.js} +0 -0
  362. /package/dist/{chunk-ED4MQPBW.js → chunk-VI6SWSZU.js} +0 -0
  363. /package/dist/{chunk-MLCYKSTC.js → chunk-WYIJ4BH7.js} +0 -0
@@ -64,6 +64,20 @@ API_ROUTER_KEY=CHANGEME_API_ROUTER_KEY
64
64
  # ANTHROPIC_API_KEY=CHANGEME_ANTHROPIC_API_KEY
65
65
  GATEWAY_HTTP_HOST_PORT=3100
66
66
  GATEWAY_WS_HOST_PORT=3101
67
+ # GoTrue SSO — enable for unified auth across all services
68
+ GATEWAY_GOTRUE_URL=http://gotrue:9999
69
+ # Error forwarding to exe-monitor-hub (strongly recommended for production)
70
+ ERROR_REPORTING_ENABLED=true
71
+ MONITOR_ERROR_URL=http://exe-monitor-hub:8090/api/exe-monitor/errors
72
+
73
+ # --- ERP (optional — Exe ERP, Frappe/ERPNext fork) ---
74
+ ERP_IMAGE_TAG=update.askexe.com/askexe/exe-erp:v0.1.0
75
+ ERP_ADMIN_PASSWORD=CHANGEME_ERP_ADMIN_PASSWORD
76
+ ERP_SITE_NAME=erp.askexe.com
77
+ ERP_API_PORT=8069
78
+ ERP_WS_PORT=9069
79
+ # ERP_SENTRY_DSN=
80
+ # MONITOR_API_KEY= # shared with gateway error forwarding
67
81
 
68
82
  # --- Monitoring agent (standard for managed customer VPSs) ---
69
83
  MONITOR_AGENT_IMAGE_TAG=ghcr.io/askexe/exe-monitor-agent:v0.9.4
@@ -1,6 +1,6 @@
1
1
  # exe-os VPS stack — full production compose
2
2
  #
3
- # Services: exe-db (postgres) + clickhouse + redis + exe-crm + exe-wiki + exe-os + exe-gateway
3
+ # Services: exe-db (postgres) + clickhouse + redis + exe-crm + exe-wiki + exe-os + exe-gateway + exe-erp
4
4
  # ONE postgres (exe-db) — all services connect to it via DATABASE_URL.
5
5
  # Standard for managed customer VPSs: exe-monitor-agent reports fleet health to monitor.askexe.com.
6
6
  # All image tags pinned per-client via .env (no :latest). Healthchecks on every service.
@@ -404,6 +404,8 @@ services:
404
404
  API_ROUTER_KEY: ${API_ROUTER_KEY:-}
405
405
  EXED_MCP_URL: http://exe-os:48739/mcp
406
406
  EXED_MCP_TOKEN: ${EXED_MCP_TOKEN:?EXED_MCP_TOKEN is required}
407
+ ERROR_REPORTING_ENABLED: "true"
408
+ MONITOR_ERROR_URL: http://exe-monitor-hub:8090/api/exe-monitor/errors
407
409
  EXE_DAEMON_TOKEN: ${EXED_MCP_TOKEN:?EXED_MCP_TOKEN is required}
408
410
  BYOK_ENABLED: ${BYOK_ENABLED:-false}
409
411
  ANTHROPIC_API_KEY: ${ANTHROPIC_API_KEY:-}
@@ -525,6 +527,182 @@ services:
525
527
  driver: json-file
526
528
  options: { max-size: "10m", max-file: "3" }
527
529
 
530
+ # ------------------------------------------------------------------
531
+ # ERP — Exe ERP (Frappe/ERPNext fork)
532
+ # ------------------------------------------------------------------
533
+ # Uses its OWN database (exe_erp) on the same PostgreSQL server.
534
+ # Redis dbs 3/4/5 (cache/queue/socketio). GoTrue SSO shared.
535
+ # 4 services: gunicorn API, websocket, RQ worker, scheduler.
536
+
537
+ exe-erp:
538
+ image: ${ERP_IMAGE_TAG:-update.askexe.com/askexe/exe-erp:v0.1.0}
539
+ container_name: exe-erp
540
+ restart: unless-stopped
541
+ entrypoint: ["/usr/local/bin/entrypoint.sh"]
542
+ command:
543
+ - gunicorn
544
+ - --bind=0.0.0.0:8000
545
+ - --workers=8
546
+ - --worker-class=gthread
547
+ - --threads=4
548
+ - --timeout=120
549
+ - --graceful-timeout=30
550
+ - --worker-tmp-dir=/dev/shm
551
+ - wsgi:application
552
+ depends_on:
553
+ exe-db:
554
+ condition: service_healthy
555
+ redis:
556
+ condition: service_healthy
557
+ gotrue:
558
+ condition: service_healthy
559
+ env_file:
560
+ - path: .env
561
+ required: false
562
+ environment:
563
+ DB_HOST: exe-db
564
+ DB_PORT: "5432"
565
+ DB_TYPE: postgres
566
+ DB_NAME: exe_erp
567
+ DB_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}
568
+ ADMIN_PASSWORD: ${ERP_ADMIN_PASSWORD:-admin}
569
+ REDIS_CACHE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/3
570
+ REDIS_QUEUE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/4
571
+ REDIS_SOCKETIO: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/5
572
+ SITE_NAME: ${ERP_SITE_NAME:-erp.askexe.com}
573
+ # Bridge: cross-database connection to exedb for raw.raw_events
574
+ EXE_BRIDGE_DATABASE_URL: postgres://${POSTGRES_USER:-exe}:${POSTGRES_PASSWORD}@exe-db:5432/${POSTGRES_DB:-exedb}?sslmode=disable
575
+ # Monitor: error forwarding
576
+ MONITOR_ERROR_URL: http://exe-monitor-hub:8090/api/exe-monitor/errors
577
+ MONITOR_API_KEY: ${MONITOR_API_KEY:-}
578
+ # GoTrue SSO: single sign-on across CRM + Wiki + ERP
579
+ GOTRUE_URL: http://gotrue:9999
580
+ EXE_ADMIN_TOKEN: ${EXE_ADMIN_TOKEN:-}
581
+ # Sentry (optional)
582
+ FRAPPE_SENTRY_DSN: ${ERP_SENTRY_DSN:-}
583
+ ports:
584
+ - "${ERP_API_PORT:-8069}:8000"
585
+ volumes:
586
+ - erp_sites:/home/frappe/frappe-bench/sites
587
+ networks:
588
+ backend:
589
+ ipv4_address: 10.42.0.26
590
+ frontend:
591
+ ipv4_address: 10.43.0.26
592
+ healthcheck:
593
+ test: ["CMD-SHELL", "curl -sf http://localhost:8000/api/method/ping || exit 1"]
594
+ interval: 30s
595
+ timeout: 10s
596
+ start_period: 60s
597
+ retries: 5
598
+ deploy:
599
+ resources:
600
+ limits:
601
+ memory: 2G
602
+ logging:
603
+ driver: json-file
604
+ options: { max-size: "10m", max-file: "3" }
605
+
606
+ exe-erp-websocket:
607
+ image: ${ERP_IMAGE_TAG:-update.askexe.com/askexe/exe-erp:v0.1.0}
608
+ container_name: exe-erp-websocket
609
+ restart: unless-stopped
610
+ entrypoint: []
611
+ command: ["node", "/home/frappe/frappe-bench/apps/frappe/socketio.js"]
612
+ depends_on:
613
+ exe-erp:
614
+ condition: service_healthy
615
+ env_file:
616
+ - path: .env
617
+ required: false
618
+ environment:
619
+ REDIS_SOCKETIO: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/5
620
+ SITE_NAME: ${ERP_SITE_NAME:-erp.askexe.com}
621
+ ports:
622
+ - "${ERP_WS_PORT:-9069}:9000"
623
+ volumes:
624
+ - erp_sites:/home/frappe/frappe-bench/sites
625
+ networks:
626
+ backend:
627
+ ipv4_address: 10.42.0.27
628
+ deploy:
629
+ resources:
630
+ limits:
631
+ memory: 512M
632
+ logging:
633
+ driver: json-file
634
+ options: { max-size: "10m", max-file: "3" }
635
+
636
+ exe-erp-queue:
637
+ image: ${ERP_IMAGE_TAG:-update.askexe.com/askexe/exe-erp:v0.1.0}
638
+ container_name: exe-erp-queue
639
+ restart: unless-stopped
640
+ entrypoint: []
641
+ command: ["bench", "worker", "--queue=default,short,long"]
642
+ depends_on:
643
+ exe-erp:
644
+ condition: service_healthy
645
+ env_file:
646
+ - path: .env
647
+ required: false
648
+ environment:
649
+ DB_HOST: exe-db
650
+ DB_PORT: "5432"
651
+ DB_TYPE: postgres
652
+ DB_NAME: exe_erp
653
+ DB_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}
654
+ REDIS_CACHE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/3
655
+ REDIS_QUEUE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/4
656
+ REDIS_SOCKETIO: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/5
657
+ SITE_NAME: ${ERP_SITE_NAME:-erp.askexe.com}
658
+ volumes:
659
+ - erp_sites:/home/frappe/frappe-bench/sites
660
+ networks:
661
+ backend:
662
+ ipv4_address: 10.42.0.28
663
+ deploy:
664
+ resources:
665
+ limits:
666
+ memory: 1G
667
+ logging:
668
+ driver: json-file
669
+ options: { max-size: "10m", max-file: "3" }
670
+
671
+ exe-erp-scheduler:
672
+ image: ${ERP_IMAGE_TAG:-update.askexe.com/askexe/exe-erp:v0.1.0}
673
+ container_name: exe-erp-scheduler
674
+ restart: unless-stopped
675
+ entrypoint: []
676
+ command: ["bench", "schedule"]
677
+ depends_on:
678
+ exe-erp:
679
+ condition: service_healthy
680
+ env_file:
681
+ - path: .env
682
+ required: false
683
+ environment:
684
+ DB_HOST: exe-db
685
+ DB_PORT: "5432"
686
+ DB_TYPE: postgres
687
+ DB_NAME: exe_erp
688
+ DB_PASSWORD: ${POSTGRES_PASSWORD:?POSTGRES_PASSWORD is required}
689
+ REDIS_CACHE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/3
690
+ REDIS_QUEUE: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/4
691
+ REDIS_SOCKETIO: redis://:${REDIS_PASSWORD:?REDIS_PASSWORD is required}@redis:6379/5
692
+ SITE_NAME: ${ERP_SITE_NAME:-erp.askexe.com}
693
+ volumes:
694
+ - erp_sites:/home/frappe/frappe-bench/sites
695
+ networks:
696
+ backend:
697
+ ipv4_address: 10.42.0.29
698
+ deploy:
699
+ resources:
700
+ limits:
701
+ memory: 512M
702
+ logging:
703
+ driver: json-file
704
+ options: { max-size: "10m", max-file: "3" }
705
+
528
706
  # ------------------------------------------------------------------
529
707
  # Volumes
530
708
  # ------------------------------------------------------------------
@@ -554,6 +732,8 @@ volumes:
554
732
  driver: local
555
733
  monitor_hub_data:
556
734
  driver: local
735
+ erp_sites:
736
+ driver: local
557
737
 
558
738
  # ------------------------------------------------------------------
559
739
  # Networks
@@ -39,6 +39,7 @@ CREATE SCHEMA IF NOT EXISTS wiki;
39
39
  CREATE SCHEMA IF NOT EXISTS crm;
40
40
  CREATE SCHEMA IF NOT EXISTS auth;
41
41
  CREATE SCHEMA IF NOT EXISTS billing;
42
+ CREATE SCHEMA IF NOT EXISTS erp;
42
43
 
43
44
  -- Grant exe full access to all schemas
44
45
  DO $$ DECLARE s text; BEGIN
@@ -120,7 +120,10 @@ fi
120
120
 
121
121
  # --- Write JSONL ---
122
122
  # Single-line JSON — no jq dependency required
123
- ENTRY="{\"ts\":\"${NOW}\",\"overall\":\"${overall}\",\"crm\":\"${crm_status}\",\"gateway\":\"${gateway_status}\",\"whatsapp\":\"${whatsapp_status}\",\"postgres\":\"${postgres_status}\"}"
123
+ ENTRY=$(cat <<JSONEOF
124
+ {"ts":"${NOW}","overall":"${overall}","crm":"${crm_status}","gateway":"${gateway_status}","whatsapp":"${whatsapp_status}","postgres":"${postgres_status}"}
125
+ JSONEOF
126
+ )
124
127
 
125
128
  echo "$ENTRY" >> "$OUTFILE"
126
129
 
@@ -615,32 +615,36 @@
615
615
  }
616
616
  }
617
617
  },
618
- "0.9.12": {
619
- "version": "0.9.12",
620
- "releasedAt": "2026-06-03T00:00:00Z",
621
- "notes": "14 bug fixes: daemon stability (async event loop), SQL guard, secret redaction, working memory, reactivate_behavior, CRM bridge fix, credential broker, gateway healthcheck fix.",
622
- "npmVersion": "0.9.217",
618
+ "0.9.11": {
619
+ "version": "0.9.11",
620
+ "releasedAt": "2026-06-02T00:00:00Z",
621
+ "notes": "HYGO deployment: encrypted R2 backups (daily + pre-update), ambassador pipeline, asana webhook, VPS guardrails (WA guard, disk monitor, env versioning, health gate), daemon perf (async pane capture, reconnect jitter), graceful idle shutdown, retrieval architecture procedure, conversation import tool. Registry consolidated to update.askexe.com.",
622
+ "npmVersion": "0.9.158",
623
623
  "breakingChanges": [],
624
624
  "services": {
625
625
  "crm": {
626
- "image": "update.askexe.com/askexe/exe-crm:v0.9.44",
626
+ "image": "update.askexe.com/askexe/exe-crm:v0.9.15",
627
627
  "env": "CRM_IMAGE_TAG",
628
- "composeService": "exe-crm"
628
+ "composeService": "exe-crm",
629
+ "healthUrl": "http://127.0.0.1:3000/healthz"
629
630
  },
630
631
  "wiki": {
631
- "image": "update.askexe.com/askexe/exe-wiki:v0.9.19",
632
+ "image": "update.askexe.com/askexe/exe-wiki:v0.9.11",
632
633
  "env": "WIKI_IMAGE_TAG",
633
- "composeService": "exe-wiki"
634
+ "composeService": "exe-wiki",
635
+ "healthUrl": "http://127.0.0.1:3001/api/ping"
634
636
  },
635
637
  "exe-os": {
636
- "image": "update.askexe.com/askexe/exe-os:v0.9.217",
638
+ "image": "update.askexe.com/askexe/exe-os:v0.9.159",
637
639
  "env": "EXE_OS_IMAGE_TAG",
638
- "composeService": "exe-os"
640
+ "composeService": "exe-os",
641
+ "healthUrl": "http://127.0.0.1:8765/health"
639
642
  },
640
643
  "gateway": {
641
- "image": "update.askexe.com/askexe/exe-gateway:v0.9.9",
644
+ "image": "update.askexe.com/askexe/exe-gateway:v0.9.8",
642
645
  "env": "GATEWAY_IMAGE_TAG",
643
- "composeService": "exe-gateway"
646
+ "composeService": "exe-gateway",
647
+ "healthUrl": "http://127.0.0.1:3100/health"
644
648
  },
645
649
  "monitorAgent": {
646
650
  "image": "update.askexe.com/askexe/exe-monitor-agent:v0.9.4",
@@ -650,41 +654,49 @@
650
654
  "monitorHub": {
651
655
  "image": "update.askexe.com/askexe/exe-monitor-hub:v0.9.4",
652
656
  "env": "MONITOR_HUB_IMAGE_TAG",
653
- "composeService": "exe-monitor-hub"
657
+ "composeService": "exe-monitor-hub",
658
+ "healthUrl": "http://127.0.0.1:8090/api/health"
654
659
  },
655
660
  "erp": {
656
661
  "image": "update.askexe.com/askexe/exe-erp:v0.1.0",
657
662
  "env": "ERP_IMAGE_TAG",
658
- "composeService": "exe-erp"
663
+ "composeService": "exe-erp",
664
+ "healthUrl": "http://127.0.0.1:8069/api/method/ping",
665
+ "deploymentScope": "customer",
666
+ "required": false
659
667
  }
660
668
  }
661
669
  },
662
- "0.9.11": {
663
- "version": "0.9.11",
664
- "releasedAt": "2026-06-02T00:00:00Z",
665
- "notes": "HYGO deployment: encrypted R2 backups (daily + pre-update), ambassador pipeline, asana webhook, VPS guardrails (WA guard, disk monitor, env versioning, health gate), daemon perf (async pane capture, reconnect jitter), graceful idle shutdown, retrieval architecture procedure, conversation import tool. Registry consolidated to update.askexe.com.",
666
- "npmVersion": "0.9.158",
670
+ "0.9.12": {
671
+ "version": "0.9.12",
672
+ "releasedAt": "2026-06-03T00:00:00Z",
673
+ "notes": "14 bug fixes: daemon stability (async event loop), SQL guard, secret redaction, working memory, reactivate_behavior, CRM bridge fix, credential broker, gateway healthcheck fix.",
674
+ "npmVersion": "0.9.217",
667
675
  "breakingChanges": [],
668
676
  "services": {
669
677
  "crm": {
670
- "image": "update.askexe.com/askexe/exe-crm:v0.9.15",
678
+ "image": "update.askexe.com/askexe/exe-crm:v0.9.44",
671
679
  "env": "CRM_IMAGE_TAG",
672
- "composeService": "exe-crm"
680
+ "composeService": "exe-crm",
681
+ "healthUrl": "http://127.0.0.1:3000/healthz"
673
682
  },
674
683
  "wiki": {
675
- "image": "update.askexe.com/askexe/exe-wiki:v0.9.11",
684
+ "image": "update.askexe.com/askexe/exe-wiki:v0.9.19",
676
685
  "env": "WIKI_IMAGE_TAG",
677
- "composeService": "exe-wiki"
686
+ "composeService": "exe-wiki",
687
+ "healthUrl": "http://127.0.0.1:3001/api/ping"
678
688
  },
679
689
  "exe-os": {
680
- "image": "update.askexe.com/askexe/exe-os:v0.9.159",
690
+ "image": "update.askexe.com/askexe/exe-os:v0.9.217",
681
691
  "env": "EXE_OS_IMAGE_TAG",
682
- "composeService": "exe-os"
692
+ "composeService": "exe-os",
693
+ "healthUrl": "http://127.0.0.1:8765/health"
683
694
  },
684
695
  "gateway": {
685
- "image": "update.askexe.com/askexe/exe-gateway:v0.9.8",
696
+ "image": "update.askexe.com/askexe/exe-gateway:v0.9.9",
686
697
  "env": "GATEWAY_IMAGE_TAG",
687
- "composeService": "exe-gateway"
698
+ "composeService": "exe-gateway",
699
+ "healthUrl": "http://127.0.0.1:3100/health"
688
700
  },
689
701
  "monitorAgent": {
690
702
  "image": "update.askexe.com/askexe/exe-monitor-agent:v0.9.4",
@@ -694,14 +706,18 @@
694
706
  "monitorHub": {
695
707
  "image": "update.askexe.com/askexe/exe-monitor-hub:v0.9.4",
696
708
  "env": "MONITOR_HUB_IMAGE_TAG",
697
- "composeService": "exe-monitor-hub"
709
+ "composeService": "exe-monitor-hub",
710
+ "healthUrl": "http://127.0.0.1:8090/api/health"
698
711
  },
699
712
  "erp": {
700
713
  "image": "update.askexe.com/askexe/exe-erp:v0.1.0",
701
714
  "env": "ERP_IMAGE_TAG",
702
- "composeService": "exe-erp"
715
+ "composeService": "exe-erp",
716
+ "healthUrl": "http://127.0.0.1:8069/api/method/ping",
717
+ "deploymentScope": "customer",
718
+ "required": false
703
719
  }
704
720
  }
705
721
  }
706
722
  }
707
- }
723
+ }
@@ -5,15 +5,15 @@ import {
5
5
  getAllActiveAgents,
6
6
  resolveActiveAgentFromTmuxSession,
7
7
  writeActiveAgent
8
- } from "./chunk-EFDIUJWC.js";
8
+ } from "./chunk-NHJOM56T.js";
9
9
  import "./chunk-CVYC6DUW.js";
10
10
  import "./chunk-GJV3WDWM.js";
11
- import "./chunk-A77WVNU2.js";
11
+ import "./chunk-7ZWG5ONF.js";
12
12
  import "./chunk-OSYUNKBM.js";
13
13
  import "./chunk-FXU7JOXK.js";
14
14
  import "./chunk-WXW3XGWX.js";
15
15
  import "./chunk-LYH5HE24.js";
16
- import "./chunk-MLKGABMK.js";
16
+ import "./chunk-R5U7XKVJ.js";
17
17
  export {
18
18
  cleanupSessionMarkers,
19
19
  clearActiveAgent,
@@ -6,15 +6,15 @@ import {
6
6
  getAllActiveAgents,
7
7
  resolveActiveAgentFromTmuxSession,
8
8
  writeActiveAgent
9
- } from "./chunk-EFDIUJWC.js";
9
+ } from "./chunk-NHJOM56T.js";
10
10
  import "./chunk-CVYC6DUW.js";
11
11
  import "./chunk-GJV3WDWM.js";
12
- import "./chunk-A77WVNU2.js";
12
+ import "./chunk-7ZWG5ONF.js";
13
13
  import "./chunk-OSYUNKBM.js";
14
14
  import "./chunk-FXU7JOXK.js";
15
15
  import "./chunk-WXW3XGWX.js";
16
16
  import "./chunk-LYH5HE24.js";
17
- import "./chunk-MLKGABMK.js";
17
+ import "./chunk-R5U7XKVJ.js";
18
18
  export {
19
19
  cleanupSessionMarkers,
20
20
  clearActiveAgent,
@@ -2,7 +2,7 @@ import {
2
2
  getAgentContext,
3
3
  runWithAgent
4
4
  } from "./chunk-GJV3WDWM.js";
5
- import "./chunk-MLKGABMK.js";
5
+ import "./chunk-R5U7XKVJ.js";
6
6
  export {
7
7
  getAgentContext,
8
8
  runWithAgent
@@ -1,4 +1,4 @@
1
- import "./chunk-MLKGABMK.js";
1
+ import "./chunk-R5U7XKVJ.js";
2
2
 
3
3
  // src/lib/agent-heartbeat.ts
4
4
  import { existsSync, readFileSync, writeFileSync, mkdirSync } from "fs";
@@ -4,7 +4,7 @@ import {
4
4
  import "./chunk-JQ6TLNIV.js";
5
5
  import "./chunk-PRKVT4KN.js";
6
6
  import "./chunk-HF25XPZE.js";
7
- import "./chunk-MLKGABMK.js";
7
+ import "./chunk-R5U7XKVJ.js";
8
8
  export {
9
9
  agentLoop
10
10
  };
@@ -9,8 +9,8 @@ import {
9
9
  insertOntologyForMemory,
10
10
  ontologyPayload,
11
11
  stableId
12
- } from "./chunk-I7K6NY34.js";
13
- import "./chunk-MLKGABMK.js";
12
+ } from "./chunk-UQ7FYRDW.js";
13
+ import "./chunk-R5U7XKVJ.js";
14
14
  export {
15
15
  clean,
16
16
  extractGoalCandidates,
@@ -1,4 +1,4 @@
1
- import "./chunk-MLKGABMK.js";
1
+ import "./chunk-R5U7XKVJ.js";
2
2
 
3
3
  // src/lib/adapters/asana.ts
4
4
  var ASANA_API_BASE = "https://app.asana.com/api/1.0";
@@ -2,16 +2,16 @@
2
2
  import {
3
3
  disposeStore,
4
4
  initStore
5
- } from "./chunk-NJR54FIF.js";
5
+ } from "./chunk-WVAVK3OZ.js";
6
6
  import "./chunk-CHCA3ZM2.js";
7
- import "./chunk-MLCYKSTC.js";
7
+ import "./chunk-WYIJ4BH7.js";
8
8
  import "./chunk-F7LU65PQ.js";
9
9
  import "./chunk-MP2AFCGL.js";
10
10
  import {
11
11
  getClient,
12
12
  getEmployeeNamesByRole,
13
13
  loadEmployeesSync
14
- } from "./chunk-A77WVNU2.js";
14
+ } from "./chunk-7ZWG5ONF.js";
15
15
  import "./chunk-OSYUNKBM.js";
16
16
  import "./chunk-FXU7JOXK.js";
17
17
  import "./chunk-6D23UNXU.js";
@@ -20,7 +20,7 @@ import "./chunk-LYH5HE24.js";
20
20
  import {
21
21
  isMainModule
22
22
  } from "./chunk-6Y4B3QF6.js";
23
- import "./chunk-MLKGABMK.js";
23
+ import "./chunk-R5U7XKVJ.js";
24
24
 
25
25
  // src/bin/backfill-metadata.ts
26
26
  var VALID_INTENTS = /* @__PURE__ */ new Set(["decision", "question", "correction", "report", "discovery", "implementation"]);
@@ -11,7 +11,7 @@ import {
11
11
  } from "./chunk-54GARVEX.js";
12
12
  import "./chunk-WXW3XGWX.js";
13
13
  import "./chunk-LYH5HE24.js";
14
- import "./chunk-MLKGABMK.js";
14
+ import "./chunk-R5U7XKVJ.js";
15
15
  export {
16
16
  acquireJobLock,
17
17
  cancelBackgroundJob,
@@ -2,7 +2,7 @@ import {
2
2
  BashTool
3
3
  } from "./chunk-5BS5ELMC.js";
4
4
  import "./chunk-AVE2B4DQ.js";
5
- import "./chunk-MLKGABMK.js";
5
+ import "./chunk-R5U7XKVJ.js";
6
6
  export {
7
7
  BashTool
8
8
  };
@@ -6,13 +6,13 @@ import {
6
6
  listSharedSkills,
7
7
  reactivateBehavior,
8
8
  storeBehavior
9
- } from "./chunk-7TKOVU64.js";
10
- import "./chunk-A77WVNU2.js";
9
+ } from "./chunk-SCMUOBNL.js";
10
+ import "./chunk-7ZWG5ONF.js";
11
11
  import "./chunk-OSYUNKBM.js";
12
12
  import "./chunk-FXU7JOXK.js";
13
13
  import "./chunk-WXW3XGWX.js";
14
14
  import "./chunk-LYH5HE24.js";
15
- import "./chunk-MLKGABMK.js";
15
+ import "./chunk-R5U7XKVJ.js";
16
16
  export {
17
17
  deactivateBehavior,
18
18
  listBehaviors,
@@ -8,7 +8,7 @@ import {
8
8
  } from "../chunk-54GARVEX.js";
9
9
  import "../chunk-WXW3XGWX.js";
10
10
  import "../chunk-LYH5HE24.js";
11
- import "../chunk-MLKGABMK.js";
11
+ import "../chunk-R5U7XKVJ.js";
12
12
 
13
13
  // src/bin/age-ontology-load.ts
14
14
  import { Client } from "pg";
@@ -1,7 +1,7 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  insertOntologyForBatch
4
- } from "../chunk-I7K6NY34.js";
4
+ } from "../chunk-UQ7FYRDW.js";
5
5
  import {
6
6
  politeBatchPause,
7
7
  startManagedJob
@@ -9,20 +9,20 @@ import {
9
9
  import {
10
10
  disposeStore,
11
11
  initStore
12
- } from "../chunk-NJR54FIF.js";
12
+ } from "../chunk-WVAVK3OZ.js";
13
13
  import "../chunk-CHCA3ZM2.js";
14
- import "../chunk-MLCYKSTC.js";
14
+ import "../chunk-WYIJ4BH7.js";
15
15
  import "../chunk-F7LU65PQ.js";
16
16
  import "../chunk-MP2AFCGL.js";
17
17
  import {
18
18
  getClient
19
- } from "../chunk-A77WVNU2.js";
19
+ } from "../chunk-7ZWG5ONF.js";
20
20
  import "../chunk-OSYUNKBM.js";
21
21
  import "../chunk-FXU7JOXK.js";
22
22
  import "../chunk-6D23UNXU.js";
23
23
  import "../chunk-WXW3XGWX.js";
24
24
  import "../chunk-LYH5HE24.js";
25
- import "../chunk-MLKGABMK.js";
25
+ import "../chunk-R5U7XKVJ.js";
26
26
 
27
27
  // src/bin/agentic-ontology-backfill.ts
28
28
  var BATCH_SIZE = 500;
@@ -1,25 +1,25 @@
1
1
  #!/usr/bin/env node
2
2
  import {
3
3
  generateReflectionCheckpoints
4
- } from "../chunk-LZL5MGMH.js";
5
- import "../chunk-I7K6NY34.js";
4
+ } from "../chunk-XKRLW4ED.js";
5
+ import "../chunk-UQ7FYRDW.js";
6
6
  import {
7
7
  startManagedJob
8
8
  } from "../chunk-54GARVEX.js";
9
9
  import {
10
10
  initStore
11
- } from "../chunk-NJR54FIF.js";
11
+ } from "../chunk-WVAVK3OZ.js";
12
12
  import "../chunk-CHCA3ZM2.js";
13
- import "../chunk-MLCYKSTC.js";
13
+ import "../chunk-WYIJ4BH7.js";
14
14
  import "../chunk-F7LU65PQ.js";
15
15
  import "../chunk-MP2AFCGL.js";
16
- import "../chunk-A77WVNU2.js";
16
+ import "../chunk-7ZWG5ONF.js";
17
17
  import "../chunk-OSYUNKBM.js";
18
18
  import "../chunk-FXU7JOXK.js";
19
19
  import "../chunk-6D23UNXU.js";
20
20
  import "../chunk-WXW3XGWX.js";
21
21
  import "../chunk-LYH5HE24.js";
22
- import "../chunk-MLKGABMK.js";
22
+ import "../chunk-R5U7XKVJ.js";
23
23
 
24
24
  // src/bin/agentic-reflection-backfill.ts
25
25
  async function main() {
@@ -3,27 +3,27 @@ import {
3
3
  clean,
4
4
  inferSemanticLabel,
5
5
  stableId
6
- } from "../chunk-I7K6NY34.js";
6
+ } from "../chunk-UQ7FYRDW.js";
7
7
  import {
8
8
  politeBatchPause,
9
9
  startManagedJob
10
10
  } from "../chunk-54GARVEX.js";
11
11
  import {
12
12
  initStore
13
- } from "../chunk-NJR54FIF.js";
13
+ } from "../chunk-WVAVK3OZ.js";
14
14
  import "../chunk-CHCA3ZM2.js";
15
- import "../chunk-MLCYKSTC.js";
15
+ import "../chunk-WYIJ4BH7.js";
16
16
  import "../chunk-F7LU65PQ.js";
17
17
  import "../chunk-MP2AFCGL.js";
18
18
  import {
19
19
  getClient
20
- } from "../chunk-A77WVNU2.js";
20
+ } from "../chunk-7ZWG5ONF.js";
21
21
  import "../chunk-OSYUNKBM.js";
22
22
  import "../chunk-FXU7JOXK.js";
23
23
  import "../chunk-6D23UNXU.js";
24
24
  import "../chunk-WXW3XGWX.js";
25
25
  import "../chunk-LYH5HE24.js";
26
- import "../chunk-MLKGABMK.js";
26
+ import "../chunk-R5U7XKVJ.js";
27
27
 
28
28
  // src/lib/agentic-llm-labeler.ts
29
29
  import OpenAI from "openai";