@askexenow/exe-os 0.9.140 → 0.9.142
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.
- package/dist/{active-agent-GFBVE3ES.js → active-agent-OTOFSYIV.js} +6 -4
- package/dist/{active-agent-M3ZT74AM.js → active-agent-PNV6PKJK.js} +6 -4
- package/dist/{agentic-ontology-QRNPGDIM.js → agentic-ontology-GYJZMRNB.js} +1 -1
- package/dist/{backfill-metadata-DI7R3MXV.js → backfill-metadata-EDLDTB2G.js} +9 -11
- package/dist/{background-jobs-LUEOBAVF.js → background-jobs-TBUOKMJR.js} +3 -3
- package/dist/{behaviors-KTEEQ3KG.js → behaviors-GE4RY2HA.js} +5 -6
- package/dist/bin/age-ontology-load.js +3 -3
- package/dist/bin/agentic-ontology-backfill.js +9 -10
- package/dist/bin/agentic-reflection-backfill.js +10 -11
- package/dist/bin/agentic-semantic-label.js +9 -10
- package/dist/bin/backfill-conversations.js +11 -13
- package/dist/bin/backfill-responses.js +11 -13
- package/dist/bin/backfill-vectors.js +11 -12
- package/dist/bin/bulk-sync-postgres.js +10 -11
- package/dist/bin/cc-doctor.js +4 -4
- package/dist/bin/cleanup-stale-review-tasks.js +11 -12
- package/dist/bin/cli.js +18 -18
- package/dist/bin/exe-agent-config.js +6 -4
- package/dist/bin/exe-agent.js +7 -8
- package/dist/bin/exe-assign.js +12 -13
- package/dist/bin/exe-boot.js +23 -25
- package/dist/bin/exe-call.js +8 -9
- package/dist/bin/exe-cloud.js +9 -10
- package/dist/bin/exe-dispatch.js +11 -12
- package/dist/bin/exe-doctor.js +1 -1
- package/dist/bin/exe-export-behaviors.js +10 -11
- package/dist/bin/exe-forget.js +9 -10
- package/dist/bin/exe-gateway.js +9 -10
- package/dist/bin/exe-healthcheck.js +4 -4
- package/dist/bin/exe-heartbeat.js +13 -15
- package/dist/bin/exe-kill.js +9 -10
- package/dist/bin/exe-launch-agent.js +31 -19
- package/dist/bin/exe-new-employee.js +11 -12
- package/dist/bin/exe-pending-messages.js +12 -13
- package/dist/bin/exe-pending-notifications.js +11 -12
- package/dist/bin/exe-pending-reviews.js +11 -12
- package/dist/bin/exe-rename.js +13 -10
- package/dist/bin/exe-review.js +16 -18
- package/dist/bin/exe-search.js +8 -9
- package/dist/bin/exe-session-cleanup.js +16 -17
- package/dist/bin/exe-settings.js +9 -10
- package/dist/bin/exe-start-codex.js +16 -17
- package/dist/bin/exe-start-opencode.js +12 -13
- package/dist/bin/exe-status.js +12 -13
- package/dist/bin/exe-support.js +4 -4
- package/dist/bin/exe-team.js +7 -9
- package/dist/bin/git-sweep.js +11 -12
- package/dist/bin/graph-backfill.js +10 -10
- package/dist/bin/graph-export.js +8 -9
- package/dist/bin/install.js +10 -8
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/postgres-agentic-reflection-backfill.js +5 -5
- package/dist/bin/postgres-agentic-semantic-backfill.js +4 -4
- package/dist/bin/pre-publish.js +1 -1
- package/dist/bin/scan-tasks.js +11 -12
- package/dist/bin/setup.js +4 -4
- package/dist/bin/shard-migrate.js +8 -9
- package/dist/bin/stack-update.js +3 -3
- package/dist/{branding-EKPE6CWW.js → branding-EKI27T6K.js} +2 -2
- package/dist/{capacity-monitor-HGD2C6CP.js → capacity-monitor-D3RGDLMN.js} +12 -13
- package/dist/{catchup-brief-OMDCLETB.js → catchup-brief-LD2QLE2D.js} +14 -15
- package/dist/{chunk-2JAEWE7P.js → chunk-25QUV6FU.js} +6 -6
- package/dist/{chunk-OIUPHIN2.js → chunk-2NWMGMNH.js} +9 -9
- package/dist/{chunk-CLIW2CES.js → chunk-32Z4GK25.js} +8 -10
- package/dist/{chunk-3SPQNGRT.js → chunk-4AZYVT6A.js} +1 -1
- package/dist/{chunk-5K3CCPNX.js → chunk-4CBBN2XD.js} +245 -111
- package/dist/{chunk-3WSH4P4Z.js → chunk-4GA5XZWY.js} +2 -2
- package/dist/{chunk-XUHFQHGZ.js → chunk-4JZNDVZH.js} +37 -4
- package/dist/{chunk-CSVYC6HH.js → chunk-4OHIVMHS.js} +1 -1
- package/dist/{chunk-STVJLWSA.js → chunk-4YSDLTCT.js} +4 -4
- package/dist/{chunk-UEWGUOXB.js → chunk-55LEDLDE.js} +499 -27
- package/dist/{chunk-UOCQQHZT.js → chunk-5PZ3HSGP.js} +87 -48
- package/dist/{chunk-7SVGVGE3.js → chunk-5UCBVXKO.js} +1 -1
- package/dist/{chunk-SQLEKC4E.js → chunk-6EZRMPDA.js} +1 -1
- package/dist/{chunk-35FFFDS2.js → chunk-6V6UTSOP.js} +1 -1
- package/dist/{chunk-LPG22IL5.js → chunk-7BPUBHGW.js} +2 -2
- package/dist/{chunk-4YNGDNDI.js → chunk-7M3DNYMR.js} +4 -4
- package/dist/{chunk-H24OVCAN.js → chunk-AJOZXJLJ.js} +1 -1
- package/dist/{chunk-YWCPAQBH.js → chunk-AOJHEMHE.js} +36 -15
- package/dist/{chunk-YYB6HGEY.js → chunk-BI3GMMTP.js} +1 -1
- package/dist/{chunk-3TTJPQAE.js → chunk-BKEJSHDE.js} +1 -1
- package/dist/{chunk-SCGCHM2H.js → chunk-BSSSCUQJ.js} +3 -3
- package/dist/{chunk-XDJWGR2S.js → chunk-CBSUVFZ7.js} +2 -2
- package/dist/{chunk-54MB5TNF.js → chunk-CHXX73NX.js} +2 -2
- package/dist/{chunk-5LJQSXUG.js → chunk-CK5ZAMWX.js} +3 -3
- package/dist/{chunk-VTZ4QOBS.js → chunk-CQX2WDI5.js} +1 -1
- package/dist/{chunk-7HZFWAIR.js → chunk-DH6N5G4T.js} +1 -1
- package/dist/{chunk-QVVV6DHI.js → chunk-DKWTDULH.js} +2 -2
- package/dist/{chunk-GUDCQBRY.js → chunk-DU4ZN7VF.js} +1 -1
- package/dist/{chunk-PS4UUDIG.js → chunk-DUDPJVAC.js} +5 -7
- package/dist/{chunk-5PB6BRLA.js → chunk-E2KEN3PG.js} +1 -1
- package/dist/{chunk-Q3MIJPXM.js → chunk-EAVACBVO.js} +2 -2
- package/dist/{chunk-FCO2K73K.js → chunk-EENNKZMN.js} +3 -3
- package/dist/{chunk-QUG6EMZQ.js → chunk-EZUWMBWA.js} +1 -1
- package/dist/{chunk-YKOW7KMK.js → chunk-F4OU2ETP.js} +23 -7
- package/dist/chunk-FZ23OZL3.js +78 -0
- package/dist/{chunk-KNEH2MGD.js → chunk-GIGLGGYL.js} +5 -5
- package/dist/{chunk-KNS5ETKF.js → chunk-GLVF7ENO.js} +1 -1
- package/dist/{chunk-D7BPHQGX.js → chunk-GOCW7Z6D.js} +2 -2
- package/dist/chunk-GUMRIUI5.js +63 -0
- package/dist/{chunk-HO4C7QMH.js → chunk-ITJMONDK.js} +1 -1
- package/dist/{chunk-OYBQKDV5.js → chunk-JAFHOB5P.js} +1 -1
- package/dist/{chunk-UE3BYGWY.js → chunk-JMMY24KD.js} +30 -15
- package/dist/{chunk-CYCRC2KN.js → chunk-JSVRX6IW.js} +30 -11
- package/dist/{chunk-ABCDEJUD.js → chunk-KCLL5ECT.js} +1 -1
- package/dist/{chunk-SPMZRVXK.js → chunk-LCZRXRB7.js} +2 -2
- package/dist/{chunk-XNWXVGEA.js → chunk-LD6WE7DK.js} +2 -2
- package/dist/{chunk-6EBG7VWN.js → chunk-LFVL3R6H.js} +2 -2
- package/dist/{chunk-RGKPVKUO.js → chunk-LGPTAJZC.js} +1 -1
- package/dist/{chunk-OX6D5AF3.js → chunk-LNX37VPO.js} +2 -2
- package/dist/{chunk-IU3CXV4S.js → chunk-LR3QFARI.js} +11 -11
- package/dist/{chunk-EWGZPTII.js → chunk-MQB2BE3I.js} +1 -1
- package/dist/{chunk-4ITOWLHX.js → chunk-MRX42FAS.js} +4 -6
- package/dist/{chunk-UCNCSKGH.js → chunk-N5MH3CN2.js} +3 -3
- package/dist/{chunk-QCJ3Y52V.js → chunk-NFX6MDEO.js} +1 -1
- package/dist/{chunk-F6PIXTHZ.js → chunk-NMG76472.js} +5 -7
- package/dist/{chunk-LUOLBU54.js → chunk-NMT6QFEE.js} +1 -1
- package/dist/{chunk-DEHYRM3I.js → chunk-NWUWTV7B.js} +1 -1
- package/dist/{chunk-2XUXMKX5.js → chunk-OC7FNHGA.js} +4 -4
- package/dist/{chunk-SPKE5ANC.js → chunk-OI3REUP5.js} +1 -1
- package/dist/{chunk-FLVDAA3Z.js → chunk-P2YTTKPR.js} +1 -1
- package/dist/{chunk-NX4WEVG6.js → chunk-Q53ZYTIU.js} +12 -8
- package/dist/{chunk-NTIWZFOJ.js → chunk-RZK7BZHP.js} +1 -1
- package/dist/{chunk-5WIEDLGY.js → chunk-S3FDCJNF.js} +6 -6
- package/dist/{chunk-SL47NHTE.js → chunk-SDYBAMPW.js} +2 -2
- package/dist/{chunk-2ZWYALO4.js → chunk-SFURTBMT.js} +1 -1
- package/dist/{chunk-HHV26QTD.js → chunk-SOHGHGWU.js} +5 -6
- package/dist/{chunk-73JE5PVU.js → chunk-TJI7DMBT.js} +7 -7
- package/dist/{chunk-O2RVWP3S.js → chunk-TSPBIMZV.js} +1 -1
- package/dist/{chunk-BZHXUKVC.js → chunk-U3Q3WNGY.js} +2 -2
- package/dist/{chunk-Z6BTUUPK.js → chunk-U7M7ZURS.js} +2 -2
- package/dist/{chunk-34O6PRWE.js → chunk-UB7E2FEB.js} +4 -6
- package/dist/{chunk-POU4ZLBM.js → chunk-UKCSMGNM.js} +2 -2
- package/dist/{chunk-BBVMIH76.js → chunk-UYFPFO6Q.js} +8 -8
- package/dist/{chunk-HIOFKHTO.js → chunk-UYNFWD54.js} +3 -3
- package/dist/{chunk-IG5XFUYJ.js → chunk-VA42PIIY.js} +25 -7
- package/dist/{chunk-DMFM77DV.js → chunk-WZDI6UJ6.js} +1 -1
- package/dist/{chunk-6LKDJ5WX.js → chunk-XOVQ43JR.js} +52 -10
- package/dist/{chunk-762FPANW.js → chunk-XRPIVNFS.js} +1 -1
- package/dist/{code-context-index-PIC37JSG.js → code-context-index-XCX6HB3T.js} +5 -5
- package/dist/{conversation-entity-extractor-HKSNDF4L.js → conversation-entity-extractor-FJNOZ4DO.js} +2 -1
- package/dist/{conversation-wiki-populator-7M5YYPXH.js → conversation-wiki-populator-HAW3EQD5.js} +1 -1
- package/dist/{crdt-sync-MDW6THU7.js → crdt-sync-WXVYQ5ZO.js} +1 -1
- package/dist/{crm-webhook-YZKCH7QB.js → crm-webhook-HGUHXI6W.js} +2 -2
- package/dist/{cto-delegation-gate-7SQNLKN7.js → cto-delegation-gate-RJ5EVOY3.js} +12 -14
- package/dist/{daemon-auth-6XMF4JG5.js → daemon-auth-VXM7MOF4.js} +3 -3
- package/dist/{daemon-orchestration-7YUD2H64.js → daemon-orchestration-3E3BIK7E.js} +14 -15
- package/dist/{db-backup-R4DLUO4C.js → db-backup-YHDR4SXR.js} +3 -3
- package/dist/{entity-boost-YQFREESI.js → entity-boost-27ENEPYC.js} +1 -1
- package/dist/{exe-drift-HKJONDA5.js → exe-drift-DBY7PC3H.js} +5 -7
- package/dist/{exe-export-TSZJEMWC.js → exe-export-FQPQCBDA.js} +9 -11
- package/dist/{exe-import-LAKNLCWI.js → exe-import-7CML2REU.js} +9 -11
- package/dist/{exe-key-ODHZVEGR.js → exe-key-KNR4LT2L.js} +5 -6
- package/dist/{exe-org-EVOEZY6H.js → exe-org-QKK7M6FR.js} +3 -3
- package/dist/{fast-db-init-6SRLEIFS.js → fast-db-init-ADRYLHUA.js} +1 -1
- package/dist/gateway/index.js +9 -10
- package/dist/{gateway-client-VFKE2WJX.js → gateway-client-CJNSI4GG.js} +1 -1
- package/dist/{git-staleness-H774CLPX.js → git-staleness-OL7J5CXL.js} +4 -5
- package/dist/{git-task-sweep-FMRECHV7.js → git-task-sweep-O4OIPQB3.js} +11 -12
- package/dist/{global-procedures-PYYMCJIW.js → global-procedures-L7AN2A5W.js} +6 -7
- package/dist/{graph-query-657O5JYJ.js → graph-query-JBQDJJFP.js} +2 -1
- package/dist/{graph-rag-ZE5N7C65.js → graph-rag-V3JU7GYG.js} +2 -1
- package/dist/{hook-integrity-S5EUKBL6.js → hook-integrity-HESSTSAK.js} +1 -1
- package/dist/hooks/bug-report-worker.js +13 -14
- package/dist/hooks/codex-stop-task-finalizer.js +13 -14
- package/dist/hooks/commit-complete.js +13 -14
- package/dist/hooks/error-recall.js +10 -11
- package/dist/hooks/exe-heartbeat-hook.js +6 -4
- package/dist/hooks/ingest-worker.js +6 -6
- package/dist/hooks/ingest.js +14 -12
- package/dist/hooks/instructions-loaded.js +10 -10
- package/dist/hooks/notification.js +7 -5
- package/dist/hooks/post-compact.js +12 -13
- package/dist/hooks/post-tool-combined.js +5 -5
- package/dist/hooks/pre-compact.js +17 -18
- package/dist/hooks/pre-tool-use.js +34 -17
- package/dist/hooks/prompt-submit.js +22 -23
- package/dist/hooks/session-end.js +21 -22
- package/dist/hooks/session-start.js +8 -8
- package/dist/hooks/stop.js +18 -19
- package/dist/hooks/subagent-stop.js +12 -13
- package/dist/hooks/summary-worker.js +23 -25
- package/dist/index.js +18 -19
- package/dist/{installer-MIBTZDDM.js → installer-4YA7JGL4.js} +9 -7
- package/dist/{installer-3RTZXZ57.js → installer-JF7ARD2O.js} +9 -7
- package/dist/{installer-4G4YDLGY.js → installer-ZF7VAXAE.js} +9 -7
- package/dist/{key-backup-status-6BBOUM2S.js → key-backup-status-M4W77D3P.js} +2 -2
- package/dist/lib/agent-config.js +3 -3
- package/dist/lib/cloud-sync.js +7 -8
- package/dist/lib/config.js +2 -2
- package/dist/lib/consolidation.js +8 -9
- package/dist/lib/database.js +4 -5
- package/dist/lib/db-daemon-client.js +4 -4
- package/dist/lib/db.js +4 -5
- package/dist/lib/device-registry.js +2 -2
- package/dist/lib/embedder.js +5 -5
- package/dist/lib/employee-templates.js +7 -8
- package/dist/lib/employees.js +7 -3
- package/dist/lib/exe-daemon-client.js +4 -4
- package/dist/lib/exe-daemon.js +151 -59
- package/dist/lib/hybrid-search.js +8 -9
- package/dist/lib/identity-templates.js +1 -1
- package/dist/lib/identity.js +6 -6
- package/dist/lib/keychain.js +1 -1
- package/dist/lib/license.js +3 -3
- package/dist/lib/messaging.js +11 -12
- package/dist/lib/reminders.js +5 -6
- package/dist/lib/schedules.js +8 -9
- package/dist/lib/skill-learning.js +6 -7
- package/dist/lib/status-brief.js +1 -1
- package/dist/lib/store.js +7 -8
- package/dist/lib/task-router.js +6 -4
- package/dist/lib/tasks.js +12 -13
- package/dist/lib/tmux-routing.js +10 -11
- package/dist/lib/token-spend.js +5 -6
- package/dist/lib/ws-client.js +1 -1
- package/dist/{license-gate-746LFKMY.js → license-gate-P6NDW4Z3.js} +4 -4
- package/dist/mcp/register-tools.js +64 -65
- package/dist/mcp/server.js +66 -67
- package/dist/mcp/tools/complete-reminder.js +6 -7
- package/dist/mcp/tools/create-reminder.js +6 -7
- package/dist/mcp/tools/create-task.js +14 -15
- package/dist/mcp/tools/deactivate-behavior.js +7 -8
- package/dist/mcp/tools/list-reminders.js +6 -7
- package/dist/mcp/tools/list-tasks.js +14 -15
- package/dist/mcp/tools/send-message.js +13 -14
- package/dist/mcp/tools/update-task.js +13 -14
- package/dist/{mcp-http-config-RD5MJYJD.js → mcp-http-config-TIY7CLWB.js} +6 -4
- package/dist/{memory-cards-CS3QQQST.js → memory-cards-MQBULX5V.js} +4 -5
- package/dist/{memory-poisoning-defense-XPM34UJQ.js → memory-poisoning-defense-EHSL5PZW.js} +4 -5
- package/dist/{memory-queue-B332RRFX.js → memory-queue-6YCGHJLQ.js} +3 -3
- package/dist/memory-queue-client-SZZDOZXE.js +14 -0
- package/dist/{memory-reflection-GH5BOH7A.js → memory-reflection-OTJBCQWK.js} +4 -5
- package/dist/message-queue-client-2YTGEB5H.js +92 -0
- package/dist/{notifications-WWROKWFT.js → notifications-APKWB63A.js} +10 -11
- package/dist/{orchestration-phase-SBCILK4O.js → orchestration-phase-365P32CD.js} +3 -3
- package/dist/{orchestrator-V3EMR3AU.js → orchestrator-W62CLQLP.js} +12 -13
- package/dist/{plan-limits-AMJUHUCR.js → plan-limits-BO2HMJ6S.js} +6 -7
- package/dist/{preferences-MW3BYTQ5.js → preferences-M7KQYRR2.js} +2 -2
- package/dist/{projection-worker-2YXEQRKI.js → projection-worker-6TGUPMLY.js} +3 -3
- package/dist/{push-notifications-NYQZGUJT.js → push-notifications-2SBCAIA2.js} +3 -3
- package/dist/{reranker-ZU3GWEBG.js → reranker-LV5BQIF4.js} +3 -3
- package/dist/runtime/index.js +13 -14
- package/dist/{session-events-RCAUFPNG.js → session-events-SR2WX2X4.js} +11 -12
- package/dist/{session-kill-telemetry-GUN2M2LJ.js → session-kill-telemetry-N2IKZK33.js} +5 -6
- package/dist/{session-scope-NGLL42BM.js → session-scope-S5DODJU4.js} +11 -12
- package/dist/setup-wizard-H4TZHU36.js +12 -0
- package/dist/{shard-manager-CIDCCPJ4.js → shard-manager-3MDFLDOZ.js} +3 -3
- package/dist/{task-enforcement-YMGIERU4.js → task-enforcement-L7EGD6LJ.js} +10 -11
- package/dist/{task-scope-RMJLXJ7S.js → task-scope-QNRAYD7S.js} +10 -11
- package/dist/{tasks-crud-ZRXPR3UB.js → tasks-crud-JHHIROCS.js} +10 -11
- package/dist/{tasks-review-NQUJR52I.js → tasks-review-TXMVOOFN.js} +10 -11
- package/dist/{tool-capability-index-6EKGND6H.js → tool-capability-index-7OF3LF4X.js} +1 -1
- package/dist/{tool-telemetry-4C6LTIPM.js → tool-telemetry-QPGPBV5R.js} +1 -1
- package/dist/tui/App.js +25 -26
- package/dist/{tui-data-A4GTAXBL.js → tui-data-65WM7L5Q.js} +10 -11
- package/dist/{worker-gate-H43H32OF.js → worker-gate-WM2RGEZE.js} +3 -3
- package/dist/{workflow-engine-EPWKDGHR.js → workflow-engine-PK2TC7UE.js} +2 -2
- package/package.json +1 -1
- package/release-notes.json +207 -199
- package/dist/chunk-MQV4UKTS.js +0 -142
- package/dist/chunk-X2IMCCM5.js +0 -49
- package/dist/chunk-ZHJNMC4W.js +0 -292
- package/dist/memory-queue-client-MPJ2B7RU.js +0 -14
- package/dist/setup-wizard-JAFJRWKE.js +0 -12
- /package/dist/{chunk-3RNNTTBH.js → chunk-267IKUT5.js} +0 -0
- /package/dist/{chunk-VEGDNUBO.js → chunk-72O7CSKA.js} +0 -0
- /package/dist/{chunk-ELXPFTBJ.js → chunk-7A2YCQNM.js} +0 -0
- /package/dist/{chunk-NBYMO4RZ.js → chunk-HBV3HSER.js} +0 -0
- /package/dist/{chunk-RCNCUSAF.js → chunk-JZB67O4M.js} +0 -0
- /package/dist/{chunk-OJ6Z2ZS2.js → chunk-NGAZPQQY.js} +0 -0
- /package/dist/{chunk-GSI6OPPH.js → chunk-NSA2JWNP.js} +0 -0
- /package/dist/{chunk-GLGWGMPD.js → chunk-XIIVMIS4.js} +0 -0
- /package/dist/{core-memory-JOTETVSY.js → core-memory-N74JWH4M.js} +0 -0
- /package/dist/{webhook-pipe-AFXVZ6YL.js → webhook-pipe-VOUF2Y43.js} +0 -0
- /package/dist/{wiki-acl-P7WEIMJV.js → wiki-acl-BIEVKTJC.js} +0 -0
- /package/dist/{wiki-client-UFR4R7YH.js → wiki-client-NGWOSMCV.js} +0 -0
package/release-notes.json
CHANGED
|
@@ -1,6 +1,212 @@
|
|
|
1
1
|
{
|
|
2
|
-
"current": "0.9.
|
|
2
|
+
"current": "0.9.142",
|
|
3
3
|
"notes": {
|
|
4
|
+
"0.9.142": {
|
|
5
|
+
"version": "0.9.142",
|
|
6
|
+
"date": "2026-05-26",
|
|
7
|
+
"features": [
|
|
8
|
+
"close_task auto-merges PR + pulls main + builds + prunes + respawns",
|
|
9
|
+
"auto-respawn Tom after close_task if more tasks queued",
|
|
10
|
+
"message WAL fallback — messages survive daemon downtime",
|
|
11
|
+
"entity type hierarchy — subtypes with rollup queries (PG-2)",
|
|
12
|
+
"temporal validity windows for graph queries (PG-3)",
|
|
13
|
+
"backup restore CLI + restoreBackup function",
|
|
14
|
+
"ESLint setup + dependency hygiene + any type reduction",
|
|
15
|
+
"config(action=\"hire\") MCP tool — COO can hire employees directly",
|
|
16
|
+
"GM (General Manager) role template + hiring guidance",
|
|
17
|
+
"merge gate warning in close_task — catches unmerged PRs",
|
|
18
|
+
"behavior hygiene — platform procedure + COO identity + company procedure",
|
|
19
|
+
"MCP auto-reconnect to daemon — survives deploy restarts transparently",
|
|
20
|
+
"event-driven notifications — stop polling managers, let task state drive everything",
|
|
21
|
+
"MCP disconnect tracker + daemon observability",
|
|
22
|
+
"MCP lifecycle logging to file — FULL transparency on every disconnect",
|
|
23
|
+
"automatic P0 bug fixing — daemon auto-dispatch + GitHub Actions fallback",
|
|
24
|
+
"enforce worktrees for engineer sessions — prevent direct main commits",
|
|
25
|
+
"multi-device coordination — routing, handoff, device status",
|
|
26
|
+
"hook tamper protection — SHA-256 manifest + verification before spawn",
|
|
27
|
+
"governed collaborative memory — visibility tags + write governance",
|
|
28
|
+
"cache-sharing protocol — pub/sub memory bus for inter-agent sharing",
|
|
29
|
+
"multi-modal memory — media attachments on memories",
|
|
30
|
+
"comprehensive \"last 20%\" integration tests + audit_trail read path",
|
|
31
|
+
"wire memory poisoning defense into writeMemory() pipeline",
|
|
32
|
+
"memory poisoning defense — trust levels, anomaly detection, quarantine"
|
|
33
|
+
],
|
|
34
|
+
"fixes": [
|
|
35
|
+
"prune old worktree on close_task before respawning fresh",
|
|
36
|
+
"exe-launch-agent resolves multi-instance names — tom2/tom3 no longer rejected",
|
|
37
|
+
"cross-device sync dedup — cooldown key prevents duplicate pushes",
|
|
38
|
+
"merge gate checks branch name not git author — was silently passing",
|
|
39
|
+
"resume_employee uses autoInstance — spawns tom2/tom3 for parallel",
|
|
40
|
+
"security hardening — fail-closed behavior auth gates",
|
|
41
|
+
"send_message intercom uses force:true — bypass 5-min debounce",
|
|
42
|
+
"global session cap 10→50 — match MCP session cap",
|
|
43
|
+
"/exe-call ALWAYS fires + tmux send-keys blocked for ALL agents",
|
|
44
|
+
"SIGTERM graceful shutdown — remove process.exit(0) from initMetrics",
|
|
45
|
+
"stale task escalation — surface alive-but-stalled agents to COO",
|
|
46
|
+
"cloud sync upsert + entity type hierarchy + temporal validity + file_copy security",
|
|
47
|
+
"daemon memory leak + duplicate watchdog + HTTP body limit + WAL flush",
|
|
48
|
+
"heap pressure alarm was false positive — compared heapUsed/heapTotal instead of heapUsed/heapLimit",
|
|
49
|
+
"strengthen scoped SQL audit — cover UPDATE/INSERT, expand exemptions",
|
|
50
|
+
"hard block tmux send-keys for non-coordinator agents",
|
|
51
|
+
"MCP disconnect procedure — explicitly block tmux send-keys workaround",
|
|
52
|
+
"file_copy MCP tool — path boundary enforcement + symlink traversal block",
|
|
53
|
+
"cloud sync task pull uses ON CONFLICT upsert with updated_at guard",
|
|
54
|
+
"multi-instance Tom dispatch — create_task fans out to tom2, tom3",
|
|
55
|
+
"atomic writes for agent-config.json, roster (orchestration + rename)",
|
|
56
|
+
"atomic JSON writes + config.json corruption recovery",
|
|
57
|
+
"boot poll timeout no longer fails dispatch — session exists, task pending",
|
|
58
|
+
"master key clobber guard + COO naming in user-facing strings",
|
|
59
|
+
"MCP port retry + instant embed skip when OOM marker set"
|
|
60
|
+
],
|
|
61
|
+
"security": [
|
|
62
|
+
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
63
|
+
"bump v0.9.139 — 2 CRITICAL security fixes, 14 bug fixes, 6 features, customer config preservation",
|
|
64
|
+
"fix 2 CRITICAL + 1 HIGH from post-fix audit",
|
|
65
|
+
"validate X-Agent-Role against roster — prevent privilege escalation",
|
|
66
|
+
"release: stack v0.9.8 — security hardening + Hygo bug fixes",
|
|
67
|
+
"add webhook HMAC-SHA256 validation + disable query param auth in prod",
|
|
68
|
+
"pin GitHub Actions to SHAs, update jose to 6.2.3",
|
|
69
|
+
"harden support intake against abuse and data leakage",
|
|
70
|
+
"bump to v0.9.22 — Codex MCP parity + customer bug fixes + security audit remediation",
|
|
71
|
+
"audit: pre-hygo exe-gateway security report",
|
|
72
|
+
"add SECURITY.md — trust document for pre-install security evaluation",
|
|
73
|
+
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
74
|
+
],
|
|
75
|
+
"other": [
|
|
76
|
+
"publish v0.9.141",
|
|
77
|
+
"ops: journalctl rotation + certbot expiry alerting",
|
|
78
|
+
"revert: daemon heap back to 33% of RAM — no artificial cap",
|
|
79
|
+
"v0.9.140 publish + heap cap 4GB (was 33% unbounded)",
|
|
80
|
+
"PG-1 cross-repo entity federation design document",
|
|
81
|
+
"add lint step + automated npm publish workflow",
|
|
82
|
+
"audit: scoped SQL + package budget + TUI vendored + TODO classification",
|
|
83
|
+
"add full readiness audit evidence",
|
|
84
|
+
"roadmap: Cross-Repo Ontology — Palantir-level graph (PG-1 through PG-10)",
|
|
85
|
+
"capture mcp restart self-healing roadmap",
|
|
86
|
+
"Enforce chain of command task review parity",
|
|
87
|
+
"document raw SQL fallback in orchestrator auto-approve path",
|
|
88
|
+
"Finalize orchestration rollout fixes",
|
|
89
|
+
"Scope device governance task queries",
|
|
90
|
+
"bump v0.9.138 — 7 critical bug fixes, 10 features, 16 commits",
|
|
91
|
+
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation",
|
|
92
|
+
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
93
|
+
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
94
|
+
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
95
|
+
"release notes for v0.9.134",
|
|
96
|
+
"benchmark score entry for f95b862",
|
|
97
|
+
"add GitHub Actions CI pipeline — build + test on push",
|
|
98
|
+
"gitignore GitHub workflows — add via web UI instead",
|
|
99
|
+
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
100
|
+
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts"
|
|
101
|
+
],
|
|
102
|
+
"migration_notes": [
|
|
103
|
+
"If daemon goes down, agents will now fail instead of silently",
|
|
104
|
+
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
105
|
+
]
|
|
106
|
+
},
|
|
107
|
+
"0.9.141": {
|
|
108
|
+
"version": "0.9.141",
|
|
109
|
+
"date": "2026-05-26",
|
|
110
|
+
"features": [
|
|
111
|
+
"entity type hierarchy — subtypes with rollup queries (PG-2)",
|
|
112
|
+
"temporal validity windows for graph queries (PG-3)",
|
|
113
|
+
"backup restore CLI + restoreBackup function",
|
|
114
|
+
"ESLint setup + dependency hygiene + any type reduction",
|
|
115
|
+
"config(action=\"hire\") MCP tool — COO can hire employees directly",
|
|
116
|
+
"GM (General Manager) role template + hiring guidance",
|
|
117
|
+
"merge gate warning in close_task — catches unmerged PRs",
|
|
118
|
+
"behavior hygiene — platform procedure + COO identity + company procedure",
|
|
119
|
+
"MCP auto-reconnect to daemon — survives deploy restarts transparently",
|
|
120
|
+
"event-driven notifications — stop polling managers, let task state drive everything",
|
|
121
|
+
"MCP disconnect tracker + daemon observability",
|
|
122
|
+
"MCP lifecycle logging to file — FULL transparency on every disconnect",
|
|
123
|
+
"automatic P0 bug fixing — daemon auto-dispatch + GitHub Actions fallback",
|
|
124
|
+
"enforce worktrees for engineer sessions — prevent direct main commits",
|
|
125
|
+
"multi-device coordination — routing, handoff, device status",
|
|
126
|
+
"hook tamper protection — SHA-256 manifest + verification before spawn",
|
|
127
|
+
"governed collaborative memory — visibility tags + write governance",
|
|
128
|
+
"cache-sharing protocol — pub/sub memory bus for inter-agent sharing",
|
|
129
|
+
"multi-modal memory — media attachments on memories",
|
|
130
|
+
"comprehensive \"last 20%\" integration tests + audit_trail read path",
|
|
131
|
+
"wire memory poisoning defense into writeMemory() pipeline",
|
|
132
|
+
"memory poisoning defense — trust levels, anomaly detection, quarantine",
|
|
133
|
+
"VPS Phase 4 — media→R2 bridge + cross-product queries + migration CLI",
|
|
134
|
+
"Palantir typed ontology — schema, validation, temporal edges",
|
|
135
|
+
"R2 media storage client — shared upload/download for all products"
|
|
136
|
+
],
|
|
137
|
+
"fixes": [
|
|
138
|
+
"stale task escalation — surface alive-but-stalled agents to COO",
|
|
139
|
+
"cloud sync upsert + entity type hierarchy + temporal validity + file_copy security",
|
|
140
|
+
"daemon memory leak + duplicate watchdog + HTTP body limit + WAL flush",
|
|
141
|
+
"heap pressure alarm was false positive — compared heapUsed/heapTotal instead of heapUsed/heapLimit",
|
|
142
|
+
"strengthen scoped SQL audit — cover UPDATE/INSERT, expand exemptions",
|
|
143
|
+
"hard block tmux send-keys for non-coordinator agents",
|
|
144
|
+
"MCP disconnect procedure — explicitly block tmux send-keys workaround",
|
|
145
|
+
"file_copy MCP tool — path boundary enforcement + symlink traversal block",
|
|
146
|
+
"cloud sync task pull uses ON CONFLICT upsert with updated_at guard",
|
|
147
|
+
"multi-instance Tom dispatch — create_task fans out to tom2, tom3",
|
|
148
|
+
"atomic writes for agent-config.json, roster (orchestration + rename)",
|
|
149
|
+
"atomic JSON writes + config.json corruption recovery",
|
|
150
|
+
"boot poll timeout no longer fails dispatch — session exists, task pending",
|
|
151
|
+
"master key clobber guard + COO naming in user-facing strings",
|
|
152
|
+
"MCP port retry + instant embed skip when OOM marker set",
|
|
153
|
+
"install.ts uses spawn lock + SIGTERM grace + restart cooldown",
|
|
154
|
+
"daemon restart hardening — OOM guard + 60s cooldown + health check guard",
|
|
155
|
+
"stop daemon crash loop — embed client no longer kills daemon when OOM marker set",
|
|
156
|
+
"support endpoints askexe.com → cloud.askexe.com (bypass CF WAF)",
|
|
157
|
+
"reduce any types 68→52, typed adapter factories + HTTP responses",
|
|
158
|
+
"pg pool limits, queue overflow health log, any reduction 71→68",
|
|
159
|
+
"reduce any types 81→71, tighten lint budget to 72",
|
|
160
|
+
"/exe-afk detects non-tmux sessions, suggests /loop instead",
|
|
161
|
+
"cross-repo boundary — platform procedure + pre-tool-use guard",
|
|
162
|
+
"UNIQUE dedup index + dependency hygiene + ESM import fix"
|
|
163
|
+
],
|
|
164
|
+
"security": [
|
|
165
|
+
"fix shell injection, SSRF, socket leaks, backup validation",
|
|
166
|
+
"bump v0.9.139 — 2 CRITICAL security fixes, 14 bug fixes, 6 features, customer config preservation",
|
|
167
|
+
"fix 2 CRITICAL + 1 HIGH from post-fix audit",
|
|
168
|
+
"validate X-Agent-Role against roster — prevent privilege escalation",
|
|
169
|
+
"release: stack v0.9.8 — security hardening + Hygo bug fixes",
|
|
170
|
+
"add webhook HMAC-SHA256 validation + disable query param auth in prod",
|
|
171
|
+
"pin GitHub Actions to SHAs, update jose to 6.2.3",
|
|
172
|
+
"harden support intake against abuse and data leakage",
|
|
173
|
+
"bump to v0.9.22 — Codex MCP parity + customer bug fixes + security audit remediation",
|
|
174
|
+
"audit: pre-hygo exe-gateway security report",
|
|
175
|
+
"add SECURITY.md — trust document for pre-install security evaluation",
|
|
176
|
+
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
177
|
+
],
|
|
178
|
+
"other": [
|
|
179
|
+
"ops: journalctl rotation + certbot expiry alerting",
|
|
180
|
+
"revert: daemon heap back to 33% of RAM — no artificial cap",
|
|
181
|
+
"v0.9.140 publish + heap cap 4GB (was 33% unbounded)",
|
|
182
|
+
"PG-1 cross-repo entity federation design document",
|
|
183
|
+
"add lint step + automated npm publish workflow",
|
|
184
|
+
"audit: scoped SQL + package budget + TUI vendored + TODO classification",
|
|
185
|
+
"add full readiness audit evidence",
|
|
186
|
+
"roadmap: Cross-Repo Ontology — Palantir-level graph (PG-1 through PG-10)",
|
|
187
|
+
"capture mcp restart self-healing roadmap",
|
|
188
|
+
"Enforce chain of command task review parity",
|
|
189
|
+
"document raw SQL fallback in orchestrator auto-approve path",
|
|
190
|
+
"Finalize orchestration rollout fixes",
|
|
191
|
+
"Scope device governance task queries",
|
|
192
|
+
"bump v0.9.138 — 7 critical bug fixes, 10 features, 16 commits",
|
|
193
|
+
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation",
|
|
194
|
+
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
195
|
+
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
196
|
+
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
197
|
+
"release notes for v0.9.134",
|
|
198
|
+
"benchmark score entry for f95b862",
|
|
199
|
+
"add GitHub Actions CI pipeline — build + test on push",
|
|
200
|
+
"gitignore GitHub workflows — add via web UI instead",
|
|
201
|
+
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
202
|
+
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts",
|
|
203
|
+
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline"
|
|
204
|
+
],
|
|
205
|
+
"migration_notes": [
|
|
206
|
+
"If daemon goes down, agents will now fail instead of silently",
|
|
207
|
+
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
208
|
+
]
|
|
209
|
+
},
|
|
4
210
|
"0.9.140": {
|
|
5
211
|
"version": "0.9.140",
|
|
6
212
|
"date": "2026-05-26",
|
|
@@ -305,204 +511,6 @@
|
|
|
305
511
|
"If daemon goes down, agents will now fail instead of silently",
|
|
306
512
|
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
307
513
|
]
|
|
308
|
-
},
|
|
309
|
-
"0.9.137": {
|
|
310
|
-
"version": "0.9.137",
|
|
311
|
-
"date": "2026-05-21",
|
|
312
|
-
"features": [
|
|
313
|
-
"RecMem lazy consolidation — skip clusters < 3 memories",
|
|
314
|
-
"Memanto typed semantic schema — 13 memory types with kind-aware retrieval",
|
|
315
|
-
"push notifications — Telegram + email on task completion and daemon crash",
|
|
316
|
-
"auto-notify reviewer on task completion + file_copy MCP tool",
|
|
317
|
-
"daemon process monitor — CPU tracking, orphan detection, high-CPU alerting",
|
|
318
|
-
"Hygo integration — workflow engine, Asana connector, wiki ACL, GoTrue auth, unified query",
|
|
319
|
-
"routing audit log + daemon health log — full observability for session routing and daemon lifecycle",
|
|
320
|
-
"proxy unified cloud routes through api router",
|
|
321
|
-
"add typed apiWatchdog config for daemon API auto-recovery",
|
|
322
|
-
"wire reflection layer into production — schema, search, daemon",
|
|
323
|
-
"wire memory cards + reflection into BEAM benchmark harness",
|
|
324
|
-
"standalone harnesses for MemBench, REALTALK, MemoryArena",
|
|
325
|
-
"standalone benchmark harnesses for LongMemEval, LoCoMo, BEAM",
|
|
326
|
-
"multi-product support for bug reports and feature requests",
|
|
327
|
-
"memory reflection layer + sandboxed BEAM benchmark harness",
|
|
328
|
-
"P2 feature batch — orchestration, retrieval, conflict resolution",
|
|
329
|
-
"P1 feature batch — 8 memory & orchestration improvements",
|
|
330
|
-
"separate badge from detail fetch pipeline with badgeInFlight flag",
|
|
331
|
-
"per-agent MCP scoping via set_agent_config",
|
|
332
|
-
"flip MCP default to consolidated (19 tools) — legacy deprecated",
|
|
333
|
-
"behavior audit trail — created_by, device_id, session tracking",
|
|
334
|
-
"detailed filing steps for bugs + feature requests in platform procedures",
|
|
335
|
-
"document five layers — when to use platform/company/identity/behavior/memory",
|
|
336
|
-
"customer-facing support procedures — file bugs, check status, get fixes",
|
|
337
|
-
"add update lifecycle + first install procedures to platform procedures"
|
|
338
|
-
],
|
|
339
|
-
"fixes": [
|
|
340
|
-
"daemon OOM crash — cloud-sync exponential backoff + circuit breaker + heap monitoring",
|
|
341
|
-
"replace hardcoded agent name→role map with dynamic roster lookup",
|
|
342
|
-
"add logging to 45 silent catches — tasks.ts, cloud-sync.ts, exe-daemon.ts",
|
|
343
|
-
"test regressions — backward-compat exports, test fixture schema, config defaults",
|
|
344
|
-
"upgrade commit discipline to p0 — one track = one commit, never batch",
|
|
345
|
-
"use consolidated mcp boot prompt",
|
|
346
|
-
"auto-start agents after spawn — no more idle prompt",
|
|
347
|
-
"move atomic swap from build to deploy — builds never disrupt daemon",
|
|
348
|
-
"disable MCP session TTL — sessions live forever until daemon restart",
|
|
349
|
-
"complete DB safety suite — auto-restore, write drain, pre-restart backup",
|
|
350
|
-
"WAL checkpoint on shutdown + integrity check on startup",
|
|
351
|
-
"warn when caller session unknown in create_task — helps diagnose scope bugs",
|
|
352
|
-
"route all employee spawns through exe-launch-agent for session-aware MCP",
|
|
353
|
-
"4 customer audit bugs — honest feature status, auto-approve disabled, visibility TODO",
|
|
354
|
-
"archive consolidated source memories — stop search inflation",
|
|
355
|
-
"wire Ebbinghaus strength into vector search + type definition",
|
|
356
|
-
"v0.9.133 — session routing, Codex MCP compat, 12 bug fixes from customer audit",
|
|
357
|
-
"bind api router analytics dataset in wrangler",
|
|
358
|
-
"daemon watchdog uses typed config, wire startup call, fix tsc warnings",
|
|
359
|
-
"tasks-crud session isolation uses ALS instead of stale process.env",
|
|
360
|
-
"license gate re-checks key file if missing at boot — prevents permanent lockout after npm update",
|
|
361
|
-
"enable lean MCP for all spawned agent sessions — prevents OAuth browser popups",
|
|
362
|
-
"hard session isolation gate in create_task — reject cross-scope dispatch",
|
|
363
|
-
"code quality audit — DB singleton test + silent catch logging",
|
|
364
|
-
"enable tsup splitting — shared DB module eliminates \"client not initialized\" after daemon restart"
|
|
365
|
-
],
|
|
366
|
-
"security": [
|
|
367
|
-
"release: stack v0.9.8 — security hardening + Hygo bug fixes",
|
|
368
|
-
"add webhook HMAC-SHA256 validation + disable query param auth in prod",
|
|
369
|
-
"pin GitHub Actions to SHAs, update jose to 6.2.3",
|
|
370
|
-
"harden support intake against abuse and data leakage",
|
|
371
|
-
"bump to v0.9.22 — Codex MCP parity + customer bug fixes + security audit remediation",
|
|
372
|
-
"audit: pre-hygo exe-gateway security report",
|
|
373
|
-
"add SECURITY.md — trust document for pre-install security evaluation",
|
|
374
|
-
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
375
|
-
],
|
|
376
|
-
"other": [
|
|
377
|
-
"bump v0.9.137 — Memanto typed schema, push notifications, lazy consolidation",
|
|
378
|
-
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
379
|
-
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
380
|
-
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
381
|
-
"release notes for v0.9.134",
|
|
382
|
-
"benchmark score entry for f95b862",
|
|
383
|
-
"add GitHub Actions CI pipeline — build + test on push",
|
|
384
|
-
"gitignore GitHub workflows — add via web UI instead",
|
|
385
|
-
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
386
|
-
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts",
|
|
387
|
-
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline",
|
|
388
|
-
"stack manifest v0.9.9 — session routing, DB safety, Codex MCP, 20 fixes",
|
|
389
|
-
"protect api router cloud migration routes",
|
|
390
|
-
"Proxy cloud sync routes through api router",
|
|
391
|
-
"bump v0.9.132",
|
|
392
|
-
"bump v0.9.131 — lean MCP for agents, session isolation gate, card/reflection pipeline",
|
|
393
|
-
"bump v0.9.130 — hard session isolation gate",
|
|
394
|
-
"bump v0.9.129",
|
|
395
|
-
"bump v0.9.128 — shared DB module fix",
|
|
396
|
-
"bump v0.9.127 — DB init before MCP session tools",
|
|
397
|
-
"bump v0.9.126 — revert to port 48739",
|
|
398
|
-
"bump v0.9.125",
|
|
399
|
-
"bump v0.9.120 — fixed MCP port 48700 with auto-recovery",
|
|
400
|
-
"bump v0.9.123 — multi-product support for bug/feature reports",
|
|
401
|
-
"rewrite runtime architecture — exe-os is Mode 1 stopgap, exe-build is the product"
|
|
402
|
-
],
|
|
403
|
-
"migration_notes": [
|
|
404
|
-
"If daemon goes down, agents will now fail instead of silently",
|
|
405
|
-
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
406
|
-
]
|
|
407
|
-
},
|
|
408
|
-
"0.9.136": {
|
|
409
|
-
"version": "0.9.136",
|
|
410
|
-
"date": "2026-05-21",
|
|
411
|
-
"features": [
|
|
412
|
-
"push notifications — Telegram + email on task completion and daemon crash",
|
|
413
|
-
"auto-notify reviewer on task completion + file_copy MCP tool",
|
|
414
|
-
"daemon process monitor — CPU tracking, orphan detection, high-CPU alerting",
|
|
415
|
-
"Hygo integration — workflow engine, Asana connector, wiki ACL, GoTrue auth, unified query",
|
|
416
|
-
"routing audit log + daemon health log — full observability for session routing and daemon lifecycle",
|
|
417
|
-
"proxy unified cloud routes through api router",
|
|
418
|
-
"add typed apiWatchdog config for daemon API auto-recovery",
|
|
419
|
-
"wire reflection layer into production — schema, search, daemon",
|
|
420
|
-
"wire memory cards + reflection into BEAM benchmark harness",
|
|
421
|
-
"standalone harnesses for MemBench, REALTALK, MemoryArena",
|
|
422
|
-
"standalone benchmark harnesses for LongMemEval, LoCoMo, BEAM",
|
|
423
|
-
"multi-product support for bug reports and feature requests",
|
|
424
|
-
"memory reflection layer + sandboxed BEAM benchmark harness",
|
|
425
|
-
"P2 feature batch — orchestration, retrieval, conflict resolution",
|
|
426
|
-
"P1 feature batch — 8 memory & orchestration improvements",
|
|
427
|
-
"separate badge from detail fetch pipeline with badgeInFlight flag",
|
|
428
|
-
"per-agent MCP scoping via set_agent_config",
|
|
429
|
-
"flip MCP default to consolidated (19 tools) — legacy deprecated",
|
|
430
|
-
"behavior audit trail — created_by, device_id, session tracking",
|
|
431
|
-
"detailed filing steps for bugs + feature requests in platform procedures",
|
|
432
|
-
"document five layers — when to use platform/company/identity/behavior/memory",
|
|
433
|
-
"customer-facing support procedures — file bugs, check status, get fixes",
|
|
434
|
-
"add update lifecycle + first install procedures to platform procedures",
|
|
435
|
-
"add bug fix triage procedure — close upstream reports so customers see status",
|
|
436
|
-
"add review chain procedure — managers must actively pull, never wait"
|
|
437
|
-
],
|
|
438
|
-
"fixes": [
|
|
439
|
-
"daemon OOM crash — cloud-sync exponential backoff + circuit breaker + heap monitoring",
|
|
440
|
-
"replace hardcoded agent name→role map with dynamic roster lookup",
|
|
441
|
-
"add logging to 45 silent catches — tasks.ts, cloud-sync.ts, exe-daemon.ts",
|
|
442
|
-
"test regressions — backward-compat exports, test fixture schema, config defaults",
|
|
443
|
-
"upgrade commit discipline to p0 — one track = one commit, never batch",
|
|
444
|
-
"use consolidated mcp boot prompt",
|
|
445
|
-
"auto-start agents after spawn — no more idle prompt",
|
|
446
|
-
"move atomic swap from build to deploy — builds never disrupt daemon",
|
|
447
|
-
"disable MCP session TTL — sessions live forever until daemon restart",
|
|
448
|
-
"complete DB safety suite — auto-restore, write drain, pre-restart backup",
|
|
449
|
-
"WAL checkpoint on shutdown + integrity check on startup",
|
|
450
|
-
"warn when caller session unknown in create_task — helps diagnose scope bugs",
|
|
451
|
-
"route all employee spawns through exe-launch-agent for session-aware MCP",
|
|
452
|
-
"4 customer audit bugs — honest feature status, auto-approve disabled, visibility TODO",
|
|
453
|
-
"archive consolidated source memories — stop search inflation",
|
|
454
|
-
"wire Ebbinghaus strength into vector search + type definition",
|
|
455
|
-
"v0.9.133 — session routing, Codex MCP compat, 12 bug fixes from customer audit",
|
|
456
|
-
"bind api router analytics dataset in wrangler",
|
|
457
|
-
"daemon watchdog uses typed config, wire startup call, fix tsc warnings",
|
|
458
|
-
"tasks-crud session isolation uses ALS instead of stale process.env",
|
|
459
|
-
"license gate re-checks key file if missing at boot — prevents permanent lockout after npm update",
|
|
460
|
-
"enable lean MCP for all spawned agent sessions — prevents OAuth browser popups",
|
|
461
|
-
"hard session isolation gate in create_task — reject cross-scope dispatch",
|
|
462
|
-
"code quality audit — DB singleton test + silent catch logging",
|
|
463
|
-
"enable tsup splitting — shared DB module eliminates \"client not initialized\" after daemon restart"
|
|
464
|
-
],
|
|
465
|
-
"security": [
|
|
466
|
-
"release: stack v0.9.8 — security hardening + Hygo bug fixes",
|
|
467
|
-
"add webhook HMAC-SHA256 validation + disable query param auth in prod",
|
|
468
|
-
"pin GitHub Actions to SHAs, update jose to 6.2.3",
|
|
469
|
-
"harden support intake against abuse and data leakage",
|
|
470
|
-
"bump to v0.9.22 — Codex MCP parity + customer bug fixes + security audit remediation",
|
|
471
|
-
"audit: pre-hygo exe-gateway security report",
|
|
472
|
-
"add SECURITY.md — trust document for pre-install security evaluation",
|
|
473
|
-
"fix 4 pricing tier bypass vulnerabilities (audit F1-F4)"
|
|
474
|
-
],
|
|
475
|
-
"other": [
|
|
476
|
-
"bump v0.9.136 — daemon OOM fix, process monitor, auto-notify reviewer",
|
|
477
|
-
"bump v0.9.135 — code debt cleanup, 28 new tests, full observability",
|
|
478
|
-
"Codex MCP regression tests (18) + DB singleton integration tests (10)",
|
|
479
|
-
"release notes for v0.9.134",
|
|
480
|
-
"benchmark score entry for f95b862",
|
|
481
|
-
"add GitHub Actions CI pipeline — build + test on push",
|
|
482
|
-
"gitignore GitHub workflows — add via web UI instead",
|
|
483
|
-
"remove ci.yml — GitHub token lacks workflow scope, will add via web UI",
|
|
484
|
-
"gitignore — add dist-next, db.sqlite, .wrangler; remove temp scripts",
|
|
485
|
-
"accumulated fixes — hooks, adapters, config, cloud-sync, rate-limiter, CI pipeline",
|
|
486
|
-
"stack manifest v0.9.9 — session routing, DB safety, Codex MCP, 20 fixes",
|
|
487
|
-
"protect api router cloud migration routes",
|
|
488
|
-
"Proxy cloud sync routes through api router",
|
|
489
|
-
"bump v0.9.132",
|
|
490
|
-
"bump v0.9.131 — lean MCP for agents, session isolation gate, card/reflection pipeline",
|
|
491
|
-
"bump v0.9.130 — hard session isolation gate",
|
|
492
|
-
"bump v0.9.129",
|
|
493
|
-
"bump v0.9.128 — shared DB module fix",
|
|
494
|
-
"bump v0.9.127 — DB init before MCP session tools",
|
|
495
|
-
"bump v0.9.126 — revert to port 48739",
|
|
496
|
-
"bump v0.9.125",
|
|
497
|
-
"bump v0.9.120 — fixed MCP port 48700 with auto-recovery",
|
|
498
|
-
"bump v0.9.123 — multi-product support for bug/feature reports",
|
|
499
|
-
"rewrite runtime architecture — exe-os is Mode 1 stopgap, exe-build is the product",
|
|
500
|
-
"bump v0.9.122 — publish gate for dynamic imports + all Yoda fixes"
|
|
501
|
-
],
|
|
502
|
-
"migration_notes": [
|
|
503
|
-
"If daemon goes down, agents will now fail instead of silently",
|
|
504
|
-
"exe-daemon.ts kills old embed.pid process and cleans up"
|
|
505
|
-
]
|
|
506
514
|
}
|
|
507
515
|
}
|
|
508
516
|
}
|
package/dist/chunk-MQV4UKTS.js
DELETED
|
@@ -1,142 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
getClient,
|
|
3
|
-
init_database
|
|
4
|
-
} from "./chunk-UEWGUOXB.js";
|
|
5
|
-
import {
|
|
6
|
-
EXE_AI_DIR,
|
|
7
|
-
init_config
|
|
8
|
-
} from "./chunk-IG5XFUYJ.js";
|
|
9
|
-
|
|
10
|
-
// src/lib/identity.ts
|
|
11
|
-
init_config();
|
|
12
|
-
init_database();
|
|
13
|
-
import { existsSync, mkdirSync, readFileSync, writeFileSync } from "fs";
|
|
14
|
-
import { readdirSync } from "fs";
|
|
15
|
-
import path from "path";
|
|
16
|
-
import { createHash } from "crypto";
|
|
17
|
-
var IDENTITY_DIR = path.join(EXE_AI_DIR, "identity");
|
|
18
|
-
function ensureDir() {
|
|
19
|
-
if (!existsSync(IDENTITY_DIR)) {
|
|
20
|
-
mkdirSync(IDENTITY_DIR, { recursive: true });
|
|
21
|
-
}
|
|
22
|
-
}
|
|
23
|
-
function identityPath(agentId) {
|
|
24
|
-
return path.join(IDENTITY_DIR, `${agentId}.md`);
|
|
25
|
-
}
|
|
26
|
-
function sanitizeIdentityBody(body) {
|
|
27
|
-
return body.replace(/<!--[\s\S]*?-->/g, "").trim();
|
|
28
|
-
}
|
|
29
|
-
function parseFrontmatter(raw) {
|
|
30
|
-
const match = raw.match(/^---\n([\s\S]*?)\n---\n([\s\S]*)$/);
|
|
31
|
-
if (!match) {
|
|
32
|
-
return {
|
|
33
|
-
frontmatter: {
|
|
34
|
-
role: "unknown",
|
|
35
|
-
title: "Unknown",
|
|
36
|
-
agent_id: "unknown",
|
|
37
|
-
org_level: "specialist",
|
|
38
|
-
created_by: "system",
|
|
39
|
-
updated_at: (/* @__PURE__ */ new Date()).toISOString()
|
|
40
|
-
},
|
|
41
|
-
body: sanitizeIdentityBody(raw)
|
|
42
|
-
};
|
|
43
|
-
}
|
|
44
|
-
const yamlStr = match[1];
|
|
45
|
-
const body = sanitizeIdentityBody(match[2]);
|
|
46
|
-
const fm = {};
|
|
47
|
-
for (const line of yamlStr.split("\n")) {
|
|
48
|
-
const kv = line.match(/^(\w+):\s*(.+)$/);
|
|
49
|
-
if (kv) fm[kv[1]] = kv[2].trim();
|
|
50
|
-
}
|
|
51
|
-
return {
|
|
52
|
-
frontmatter: {
|
|
53
|
-
role: fm.role ?? "unknown",
|
|
54
|
-
title: fm.title ?? "Unknown",
|
|
55
|
-
agent_id: fm.agent_id ?? "unknown",
|
|
56
|
-
org_level: fm.org_level ?? "specialist",
|
|
57
|
-
created_by: fm.created_by ?? "system",
|
|
58
|
-
updated_at: fm.updated_at ?? (/* @__PURE__ */ new Date()).toISOString()
|
|
59
|
-
},
|
|
60
|
-
body
|
|
61
|
-
};
|
|
62
|
-
}
|
|
63
|
-
function contentHash(content) {
|
|
64
|
-
return createHash("sha256").update(content).digest("hex").slice(0, 16);
|
|
65
|
-
}
|
|
66
|
-
function getIdentity(agentId) {
|
|
67
|
-
const filePath = identityPath(agentId);
|
|
68
|
-
if (!existsSync(filePath)) return null;
|
|
69
|
-
const raw = readFileSync(filePath, "utf-8");
|
|
70
|
-
const { frontmatter, body } = parseFrontmatter(raw);
|
|
71
|
-
return {
|
|
72
|
-
agentId,
|
|
73
|
-
frontmatter,
|
|
74
|
-
body,
|
|
75
|
-
raw,
|
|
76
|
-
contentHash: contentHash(raw)
|
|
77
|
-
};
|
|
78
|
-
}
|
|
79
|
-
async function updateIdentity(agentId, content, updatedBy) {
|
|
80
|
-
ensureDir();
|
|
81
|
-
const filePath = identityPath(agentId);
|
|
82
|
-
const hash = contentHash(content);
|
|
83
|
-
writeFileSync(filePath, content, "utf-8");
|
|
84
|
-
try {
|
|
85
|
-
const client = getClient();
|
|
86
|
-
await client.execute({
|
|
87
|
-
sql: `INSERT INTO identity (agent_id, content_hash, updated_at, updated_by)
|
|
88
|
-
VALUES (?, ?, ?, ?)
|
|
89
|
-
ON CONFLICT(agent_id) DO UPDATE SET
|
|
90
|
-
content_hash = excluded.content_hash,
|
|
91
|
-
updated_at = excluded.updated_at,
|
|
92
|
-
updated_by = excluded.updated_by`,
|
|
93
|
-
args: [agentId, hash, (/* @__PURE__ */ new Date()).toISOString(), updatedBy]
|
|
94
|
-
});
|
|
95
|
-
} catch {
|
|
96
|
-
}
|
|
97
|
-
}
|
|
98
|
-
function listIdentities() {
|
|
99
|
-
ensureDir();
|
|
100
|
-
const files = readdirSync(IDENTITY_DIR).filter((f) => f.endsWith(".md"));
|
|
101
|
-
const results = [];
|
|
102
|
-
for (const file of files) {
|
|
103
|
-
const agentId = file.replace(".md", "");
|
|
104
|
-
const identity = getIdentity(agentId);
|
|
105
|
-
if (!identity) continue;
|
|
106
|
-
const lines = identity.body.split("\n").filter((l) => l.trim() && !l.startsWith("#"));
|
|
107
|
-
const summary = lines[0]?.trim().slice(0, 120) ?? identity.frontmatter.title;
|
|
108
|
-
results.push({
|
|
109
|
-
agentId,
|
|
110
|
-
// User-facing/team-facing title only. `frontmatter.role` is internal
|
|
111
|
-
// routing metadata and must not leak as an external title.
|
|
112
|
-
title: identity.frontmatter.title,
|
|
113
|
-
summary
|
|
114
|
-
});
|
|
115
|
-
}
|
|
116
|
-
return results;
|
|
117
|
-
}
|
|
118
|
-
function getIdentityInjection(agentId) {
|
|
119
|
-
const own = getIdentity(agentId);
|
|
120
|
-
const all = listIdentities();
|
|
121
|
-
const parts = [];
|
|
122
|
-
if (own) {
|
|
123
|
-
parts.push(`## Your Identity (exe.md)
|
|
124
|
-
These define WHO YOU ARE. Non-negotiable. Permanent.
|
|
125
|
-
|
|
126
|
-
${own.body}`);
|
|
127
|
-
}
|
|
128
|
-
const teamLines = all.filter((a) => a.agentId !== agentId).map((a) => `- ${a.agentId} (${a.title}): ${a.summary}`);
|
|
129
|
-
if (teamLines.length > 0) {
|
|
130
|
-
parts.push(`## Team Identities
|
|
131
|
-
${teamLines.join("\n")}`);
|
|
132
|
-
}
|
|
133
|
-
return parts.join("\n\n");
|
|
134
|
-
}
|
|
135
|
-
|
|
136
|
-
export {
|
|
137
|
-
identityPath,
|
|
138
|
-
getIdentity,
|
|
139
|
-
updateIdentity,
|
|
140
|
-
listIdentities,
|
|
141
|
-
getIdentityInjection
|
|
142
|
-
};
|
package/dist/chunk-X2IMCCM5.js
DELETED
|
@@ -1,49 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
__esm
|
|
3
|
-
} from "./chunk-KFQGP6VL.js";
|
|
4
|
-
|
|
5
|
-
// src/lib/secure-files.ts
|
|
6
|
-
import { chmodSync, existsSync, mkdirSync } from "fs";
|
|
7
|
-
import { chmod, mkdir } from "fs/promises";
|
|
8
|
-
async function ensurePrivateDir(dirPath) {
|
|
9
|
-
await mkdir(dirPath, { recursive: true, mode: PRIVATE_DIR_MODE });
|
|
10
|
-
try {
|
|
11
|
-
await chmod(dirPath, PRIVATE_DIR_MODE);
|
|
12
|
-
} catch {
|
|
13
|
-
}
|
|
14
|
-
}
|
|
15
|
-
function ensurePrivateDirSync(dirPath) {
|
|
16
|
-
mkdirSync(dirPath, { recursive: true, mode: PRIVATE_DIR_MODE });
|
|
17
|
-
try {
|
|
18
|
-
chmodSync(dirPath, PRIVATE_DIR_MODE);
|
|
19
|
-
} catch {
|
|
20
|
-
}
|
|
21
|
-
}
|
|
22
|
-
async function enforcePrivateFile(filePath) {
|
|
23
|
-
try {
|
|
24
|
-
await chmod(filePath, PRIVATE_FILE_MODE);
|
|
25
|
-
} catch {
|
|
26
|
-
}
|
|
27
|
-
}
|
|
28
|
-
function enforcePrivateFileSync(filePath) {
|
|
29
|
-
try {
|
|
30
|
-
if (existsSync(filePath)) chmodSync(filePath, PRIVATE_FILE_MODE);
|
|
31
|
-
} catch {
|
|
32
|
-
}
|
|
33
|
-
}
|
|
34
|
-
var PRIVATE_DIR_MODE, PRIVATE_FILE_MODE;
|
|
35
|
-
var init_secure_files = __esm({
|
|
36
|
-
"src/lib/secure-files.ts"() {
|
|
37
|
-
"use strict";
|
|
38
|
-
PRIVATE_DIR_MODE = 448;
|
|
39
|
-
PRIVATE_FILE_MODE = 384;
|
|
40
|
-
}
|
|
41
|
-
});
|
|
42
|
-
|
|
43
|
-
export {
|
|
44
|
-
ensurePrivateDir,
|
|
45
|
-
ensurePrivateDirSync,
|
|
46
|
-
enforcePrivateFile,
|
|
47
|
-
enforcePrivateFileSync,
|
|
48
|
-
init_secure_files
|
|
49
|
-
};
|