@askexenow/exe-os 0.9.302 → 0.9.310
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/deploy/compose/.env.example +8 -2
- package/deploy/compose/README.md +7 -3
- package/deploy/compose/add-routes.sh +107 -0
- package/deploy/compose/docker-compose.yml +91 -18
- package/deploy/compose/gateway-watchdog.sh +223 -0
- package/deploy/compose/generate-env.ts +16 -4
- package/deploy/compose/setup.sh +7 -8
- package/deploy/stack-manifests/v0.9.json +125 -4
- package/dist/{active-agent-ODI6GGVD.js → active-agent-ORX47ZKW.js} +4 -3
- package/dist/{active-agent-GGQAP4QE.js → active-agent-S5T2YMOR.js} +4 -3
- package/dist/{agentic-ontology-M7T72M6V.js → agentic-ontology-6KBAXLSJ.js} +1 -1
- package/dist/{backfill-metadata-GSZP2BEW.js → backfill-metadata-FV7GX6AS.js} +5 -4
- package/dist/{behaviors-JM6KFSXL.js → behaviors-47CPEKJ7.js} +6 -5
- package/dist/bin/agentic-ontology-backfill.js +6 -5
- package/dist/bin/agentic-reflection-backfill.js +7 -6
- package/dist/bin/agentic-semantic-label.js +6 -5
- package/dist/bin/backfill-conversations.js +8 -7
- package/dist/bin/backfill-responses.js +8 -7
- package/dist/bin/backfill-vectors.js +10 -9
- package/dist/bin/bulk-sync-postgres.js +14 -13
- package/dist/bin/cc-doctor.js +5 -4
- package/dist/bin/cleanup-stale-review-tasks.js +13 -12
- package/dist/bin/cli.js +20 -17
- package/dist/bin/deferred-daemon-restart.js +4 -4
- package/dist/bin/exe-agent-config.js +3 -2
- package/dist/bin/exe-agent.js +12 -11
- package/dist/bin/exe-assign.js +10 -9
- package/dist/bin/exe-boot.js +21 -20
- package/dist/bin/exe-call.js +5 -4
- package/dist/bin/exe-cloud.js +14 -13
- package/dist/bin/exe-config-dump.js +525 -0
- package/dist/bin/exe-dispatch.js +13 -12
- package/dist/bin/exe-doctor.js +2 -2
- package/dist/bin/exe-export-behaviors.js +8 -7
- package/dist/bin/exe-forget.js +7 -6
- package/dist/bin/exe-gateway.js +22 -11
- package/dist/bin/exe-healthcheck.js +7 -4
- package/dist/bin/exe-heartbeat.js +13 -12
- package/dist/bin/exe-kill.js +16 -15
- package/dist/bin/exe-launch-agent.js +41 -25
- package/dist/bin/exe-new-employee.js +9 -8
- package/dist/bin/exe-pending-messages.js +14 -13
- package/dist/bin/exe-pending-notifications.js +13 -12
- package/dist/bin/exe-pending-reviews.js +13 -12
- package/dist/bin/exe-preflight.js +108 -0
- package/dist/bin/exe-rename.js +5 -4
- package/dist/bin/exe-review.js +15 -14
- package/dist/bin/exe-search-quality.js +282 -0
- package/dist/bin/exe-search.js +6 -5
- package/dist/bin/exe-session-cleanup.js +18 -17
- package/dist/bin/exe-settings.js +15 -14
- package/dist/bin/exe-start-codex.js +13 -12
- package/dist/bin/exe-start-opencode.js +9 -8
- package/dist/bin/exe-status.js +14 -13
- package/dist/bin/exe-support.js +4 -4
- package/dist/bin/exe-team.js +4 -3
- package/dist/bin/exe-timers.js +237 -0
- package/dist/bin/git-sweep.js +14 -13
- package/dist/bin/graph-backfill.js +7 -6
- package/dist/bin/graph-export.js +6 -5
- package/dist/bin/import-history.js +10 -9
- package/dist/bin/install-launchd.js +5 -2
- package/dist/bin/install.js +16 -15
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +5 -4
- package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
- package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
- package/dist/bin/prune-orphan-chunks.js +43 -10
- package/dist/bin/scan-tasks.js +13 -12
- package/dist/bin/setup.js +1 -1
- package/dist/bin/shard-migrate.js +5 -4
- package/dist/bin/stack-update.js +30 -5
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{capability-cards-BCTFKT4G.js → capability-cards-WQVY7WSS.js} +3 -2
- package/dist/{capacity-monitor-B4S3XEDO.js → capacity-monitor-BUKYPSWR.js} +14 -13
- package/dist/{catchup-brief-I35KHK62.js → catchup-brief-X5IVQAOH.js} +16 -15
- package/dist/{chunk-74TUYU5A.js → chunk-255DIG4B.js} +1 -1
- package/dist/{chunk-CXKR5Z5F.js → chunk-2EJ636HI.js} +4 -0
- package/dist/{chunk-ST3X3YMZ.js → chunk-2NGPZCWX.js} +4 -4
- package/dist/{chunk-LD2JKEJT.js → chunk-2NVEKSSP.js} +7 -7
- package/dist/{chunk-V6P7TPPA.js → chunk-2UVN2NBN.js} +148 -2
- package/dist/{chunk-OZRO37JW.js → chunk-3KH6GXXX.js} +2 -2
- package/dist/{chunk-IMJNYREY.js → chunk-43R2GILO.js} +1 -1
- package/dist/{chunk-6X2YNVLB.js → chunk-4BANMHJ5.js} +3 -3
- package/dist/{chunk-QNJPDIWY.js → chunk-4L4R6AQJ.js} +1 -1
- package/dist/{chunk-QWLPAEG5.js → chunk-4Q5VNQTV.js} +3 -3
- package/dist/{chunk-VLSYKMCJ.js → chunk-4RJJ5FJ2.js} +14 -2
- package/dist/{chunk-4AN6KMVG.js → chunk-5DPE7B7K.js} +1 -1
- package/dist/{chunk-H7ZNSQ2E.js → chunk-62UZWGFX.js} +2 -2
- package/dist/{chunk-ZQ2QHGWE.js → chunk-66JPZELX.js} +20 -24
- package/dist/{chunk-BUGMW7YF.js → chunk-6LNSZADA.js} +11 -11
- package/dist/{chunk-PBCRUNIK.js → chunk-6OD2RVIA.js} +492 -157
- package/dist/chunk-7ODTYODO.js +350 -0
- package/dist/{chunk-5YL4Y27D.js → chunk-7WDIGRSO.js} +1 -1
- package/dist/{chunk-WIL6LXNG.js → chunk-AC6DKMVS.js} +1 -1
- package/dist/{chunk-HZEAAKCR.js → chunk-B2J3BBJC.js} +3 -3
- package/dist/{chunk-LE7CDIOA.js → chunk-BUOMSIXH.js} +1 -1
- package/dist/{chunk-XKGNKH6V.js → chunk-DFUCFLZH.js} +1 -1
- package/dist/{chunk-U724Z3S3.js → chunk-DKHBMIVE.js} +100 -37
- package/dist/{chunk-MY36XDUK.js → chunk-DNFU56ZS.js} +1 -1
- package/dist/{chunk-GSWGOGP5.js → chunk-EOS7VPVT.js} +5 -5
- package/dist/{chunk-P33JVGSP.js → chunk-FM7XZDZI.js} +1 -1
- package/dist/chunk-G6EJKYK3.js +33 -0
- package/dist/{chunk-OMCNFTSI.js → chunk-GMZMBLHT.js} +1 -1
- package/dist/{chunk-4LZ54YGA.js → chunk-GSY6HL3T.js} +5 -5
- package/dist/{chunk-OVKNFTCL.js → chunk-HED6D5KR.js} +132 -21
- package/dist/{chunk-ALH6QLYF.js → chunk-HQODUV3G.js} +2 -2
- package/dist/{chunk-US64UR5O.js → chunk-IIHE3FNC.js} +3 -3
- package/dist/{chunk-H2ISTRWU.js → chunk-IRIPGGGL.js} +1 -1
- package/dist/{chunk-Z3EXECOX.js → chunk-ISILDO7P.js} +1 -1
- package/dist/{chunk-6ERZFDBS.js → chunk-IZPO6IOZ.js} +1 -1
- package/dist/{chunk-W65Z4SJS.js → chunk-J3QZPDNH.js} +1 -1
- package/dist/{chunk-3IJCP6ZH.js → chunk-JDYO76PI.js} +1 -1
- package/dist/{chunk-ORNKGGFX.js → chunk-JNARUXDC.js} +1 -1
- package/dist/{chunk-VME3UH4D.js → chunk-JV225JBX.js} +1 -1
- package/dist/{chunk-EI7PBUIA.js → chunk-JZW5AOWI.js} +1 -1
- package/dist/{chunk-TLOILHSL.js → chunk-K7KBAJQL.js} +36 -18
- package/dist/{chunk-RHMWSUJB.js → chunk-KAVUTP5G.js} +2 -2
- package/dist/{chunk-7FNELLMX.js → chunk-KPVVTHPK.js} +8 -8
- package/dist/{chunk-35U72CD2.js → chunk-KSMITUGY.js} +3 -3
- package/dist/{chunk-D6UICP3C.js → chunk-LMX7UKGX.js} +81 -3
- package/dist/{chunk-7ZWC5HVG.js → chunk-MTIJ2NXY.js} +1 -1
- package/dist/{chunk-KVHPBQV4.js → chunk-NCC3F6GM.js} +1 -1
- package/dist/{chunk-AYMSIV7X.js → chunk-NIZQ3CIS.js} +1 -1
- package/dist/{chunk-LTI2DLHY.js → chunk-OBJXZII2.js} +2 -2
- package/dist/{chunk-WHOT5NZ7.js → chunk-OR3TAZL3.js} +14 -2
- package/dist/{chunk-RQUHAXMM.js → chunk-PHFPIUWU.js} +2 -0
- package/dist/{chunk-N76VTMMF.js → chunk-PMEOSD6S.js} +2 -2
- package/dist/{chunk-TCJEFW5V.js → chunk-PPXQE7AS.js} +4 -4
- package/dist/{chunk-KHZQVLNZ.js → chunk-QE7UVQDP.js} +46 -0
- package/dist/{chunk-SXJACGQ5.js → chunk-QEGXNJGR.js} +4 -4
- package/dist/{chunk-W3E4VEEJ.js → chunk-RPBTYQKJ.js} +1 -1
- package/dist/chunk-RQ7OVXUZ.js +81 -0
- package/dist/{chunk-7L2EV3XX.js → chunk-RVXWGPD3.js} +39 -6
- package/dist/{chunk-YNALY3SX.js → chunk-RZJ6DXVE.js} +1 -1
- package/dist/{chunk-P3SIFDES.js → chunk-SCYWCWKY.js} +16 -4
- package/dist/{chunk-7I43GVER.js → chunk-SOT23KWW.js} +3 -3
- package/dist/{chunk-T62GAN7I.js → chunk-SPOXL7HF.js} +7 -7
- package/dist/{chunk-3YJMI422.js → chunk-TN2YCFQE.js} +4 -4
- package/dist/{chunk-YMSWCERY.js → chunk-U63BZI2B.js} +3 -3
- package/dist/{chunk-KA5RK5HZ.js → chunk-V42BSVX6.js} +2 -2
- package/dist/{chunk-PJTRAFL4.js → chunk-V4BW5HFQ.js} +3 -3
- package/dist/{chunk-4FG6IX7U.js → chunk-VFSYVQX4.js} +1 -1
- package/dist/chunk-VQRTO7IS.js +290 -0
- package/dist/{chunk-OR7J7TIA.js → chunk-VT6P7FV4.js} +1 -1
- package/dist/{chunk-BEIYF4NS.js → chunk-W2J2RF5N.js} +3 -3
- package/dist/{chunk-Y5ASPRP7.js → chunk-WBJXJ2R4.js} +17 -13
- package/dist/chunk-WCGNCH3Q.js +72 -0
- package/dist/{chunk-2LJDLQNO.js → chunk-WJ2PZGRV.js} +1 -1
- package/dist/{chunk-AAPPSMPH.js → chunk-WZBUKC5N.js} +1 -1
- package/dist/{chunk-RO7EXVSJ.js → chunk-X4AFBL4N.js} +1 -1
- package/dist/{chunk-BR74NYEF.js → chunk-XV5HRIXG.js} +5 -5
- package/dist/chunk-XXJRZ75E.js +43 -0
- package/dist/{chunk-VDHUHXFF.js → chunk-XYG722JW.js} +2 -2
- package/dist/{chunk-MM7SWUQ4.js → chunk-YB7U4WTY.js} +4 -4
- package/dist/{chunk-RMRZXPUU.js → chunk-Z6H6Y4BS.js} +1 -1
- package/dist/{token-budget-UMHRRDBT.js → chunk-ZOVHXTGC.js} +2 -9
- package/dist/{chunk-HNLBHP6P.js → chunk-ZZXADKAP.js} +3 -3
- package/dist/{co-activation-OKAHEMPE.js → co-activation-WN25AJOC.js} +3 -2
- package/dist/{co-occurrence-IHSPB53O.js → co-occurrence-YP2Q3OEA.js} +5 -4
- package/dist/{code-context-index-KGY4LKCA.js → code-context-index-ZWONKBKX.js} +4 -4
- package/dist/{conversation-entity-extractor-KXJSHRGJ.js → conversation-entity-extractor-KYOBXNID.js} +2 -2
- package/dist/{crdt-sync-K2G3C6XY.js → crdt-sync-ZFIFL2QM.js} +1 -1
- package/dist/{crm-webhook-ERZSQ3CW.js → crm-webhook-DGPHULOO.js} +2 -2
- package/dist/{cto-delegation-gate-ZCJ53LBQ.js → cto-delegation-gate-OF2A3TSS.js} +12 -11
- package/dist/daemon-auth-N6P2MZAV.js +17 -0
- package/dist/{daemon-orchestration-V6HALVDS.js → daemon-orchestration-G4RRTPP7.js} +16 -15
- package/dist/daemon-ready-signal-3L2MJT7C.js +13 -0
- package/dist/{db-backup-VZHSFUVA.js → db-backup-EORG4LBO.js} +1 -1
- package/dist/{doc-graph-extractor-LQ2IFND2.js → doc-graph-extractor-APZS3DFD.js} +5 -4
- package/dist/{dreaming-QAKUASYV.js → dreaming-Q4E3WBGY.js} +13 -12
- package/dist/{exe-drift-H3UWNFFY.js → exe-drift-CI5R6GUT.js} +4 -3
- package/dist/{exe-export-MN5D4JMT.js → exe-export-HQIQASIT.js} +7 -6
- package/dist/{exe-import-IFFMEVD7.js → exe-import-ULZK56WC.js} +7 -6
- package/dist/{exe-key-RSZC72QK.js → exe-key-ILNSBGRN.js} +5 -4
- package/dist/{exe-snapshot-I622MPLS.js → exe-snapshot-RUZTWZOF.js} +16 -15
- package/dist/{factory-CTFAGZUA.js → factory-YHQZ6RZZ.js} +14 -6
- package/dist/{fast-db-init-QEFVT7Q3.js → fast-db-init-KNJRL7T3.js} +1 -1
- package/dist/{founder-context-3SOKEW76.js → founder-context-QCTMEK66.js} +2 -2
- package/dist/gateway/index.js +12 -11
- package/dist/{git-staleness-E7RPQA5U.js → git-staleness-KIA5YI4H.js} +3 -2
- package/dist/{git-task-sweep-D3A2C5BW.js → git-task-sweep-WH6QE7HL.js} +13 -12
- package/dist/{global-procedures-POG4V6IK.js → global-procedures-SYZZCGDS.js} +4 -3
- package/dist/{graph-auto-extract-E7KALNWA.js → graph-auto-extract-J2TIWZEE.js} +5 -4
- package/dist/{graph-rag-3RZN7JR3.js → graph-rag-HITZZ63L.js} +2 -2
- package/dist/hooks/bug-report-worker.js +15 -14
- package/dist/hooks/codex-stop-task-finalizer.js +15 -14
- package/dist/hooks/commit-complete.js +15 -14
- package/dist/hooks/error-recall.js +8 -7
- package/dist/hooks/exe-heartbeat-hook.js +4 -3
- package/dist/hooks/ingest-worker.js +4 -4
- package/dist/hooks/ingest.js +8 -7
- package/dist/hooks/instructions-loaded.js +5 -4
- package/dist/hooks/manifest.json +20 -20
- package/dist/hooks/notification.js +5 -4
- package/dist/hooks/post-compact.js +14 -13
- package/dist/hooks/post-tool-combined.js +7 -7
- package/dist/hooks/pre-compact.js +19 -18
- package/dist/hooks/pre-tool-use.js +18 -17
- package/dist/hooks/prompt-submit.js +28 -27
- package/dist/hooks/session-end.js +24 -23
- package/dist/hooks/session-start.js +46 -22
- package/dist/hooks/stop.js +22 -21
- package/dist/hooks/subagent-stop.js +14 -13
- package/dist/hooks/summary-worker.js +22 -21
- package/dist/index.js +25 -23
- package/dist/{installer-IXUX73JN.js → installer-3NB3IBHF.js} +10 -9
- package/dist/{installer-RCUPPZ7Y.js → installer-IIJFCTMH.js} +10 -9
- package/dist/{installer-HDD6OH5Z.js → installer-PSDYMGN7.js} +7 -6
- package/dist/lib/cloud-sync.js +14 -13
- package/dist/lib/consolidation.js +8 -7
- package/dist/lib/database.js +3 -2
- package/dist/lib/db-daemon-client.js +4 -4
- package/dist/lib/db.js +3 -2
- package/dist/lib/device-registry.js +3 -1
- package/dist/lib/embedder.js +4 -4
- package/dist/lib/employee-templates.js +5 -4
- package/dist/lib/employees.js +3 -2
- package/dist/lib/exe-daemon-client.js +3 -3
- package/dist/lib/exe-daemon.js +256 -406
- package/dist/lib/hybrid-search.js +6 -5
- package/dist/lib/identity.js +3 -2
- package/dist/lib/license.js +2 -2
- package/dist/lib/messaging.js +13 -12
- package/dist/lib/reminders.js +4 -3
- package/dist/lib/schedules.js +6 -5
- package/dist/lib/session-registry.js +5 -4
- package/dist/lib/skill-learning.js +7 -6
- package/dist/lib/store.js +7 -4
- package/dist/lib/task-router.js +4 -3
- package/dist/lib/tasks.js +14 -13
- package/dist/lib/tmux-routing.js +16 -11
- package/dist/lib/token-spend.js +4 -3
- package/dist/{license-gate-V2UCK4KJ.js → license-gate-7SDHCJUO.js} +3 -3
- package/dist/mcp/register-tools.js +74 -73
- package/dist/mcp/server.js +97 -79
- package/dist/mcp/tools/complete-reminder.js +5 -4
- package/dist/mcp/tools/create-reminder.js +5 -4
- package/dist/mcp/tools/create-task.js +16 -15
- package/dist/mcp/tools/deactivate-behavior.js +8 -7
- package/dist/mcp/tools/list-reminders.js +5 -4
- package/dist/mcp/tools/list-tasks.js +16 -15
- package/dist/mcp/tools/send-message.js +15 -14
- package/dist/mcp/tools/update-task.js +15 -14
- package/dist/{mcp-http-config-7LFFPNGV.js → mcp-http-config-QSOVFXHW.js} +4 -3
- package/dist/mcp-tool-surface-CSPFXL3F.js +15 -0
- package/dist/{memory-cards-BGI6MJRN.js → memory-cards-II67WFL2.js} +3 -2
- package/dist/{memory-graph-extractor-DTRRNWHZ.js → memory-graph-extractor-PM4Q2KJG.js} +6 -5
- package/dist/{memory-poisoning-defense-MOCWJK6S.js → memory-poisoning-defense-ECXSX7HK.js} +3 -2
- package/dist/{memory-queue-client-DD4E5SIZ.js → memory-queue-client-HLURQEV6.js} +4 -4
- package/dist/{memory-reflection-UKKTGZYR.js → memory-reflection-PXF6YFDU.js} +3 -2
- package/dist/{notifications-AMJ2K3MM.js → notifications-UP7WQGG4.js} +12 -11
- package/dist/{orchestration-events-MB4QVHTD.js → orchestration-events-PZLLPCKY.js} +4 -3
- package/dist/orchestration-health-read-EJWVUARG.js +191 -0
- package/dist/{orchestrator-M7DJH6TN.js → orchestrator-PUT45J4O.js} +14 -13
- package/dist/{pipeline-router-4LT5YG5P.js → pipeline-router-5CRWKESM.js} +4 -3
- package/dist/{plan-limits-ENS7OJWP.js → plan-limits-SH2NDFNX.js} +6 -5
- package/dist/{project-boot-6W5JPGSB.js → project-boot-2TCPDZ4S.js} +25 -1
- package/dist/{projection-worker-WWXZK7QD.js → projection-worker-HWY37MNC.js} +2 -2
- package/dist/{prospective-memory-VNGLPMS6.js → prospective-memory-FQSVMCGG.js} +3 -2
- package/dist/{reranker-6XBS55FA.js → reranker-AALRMGMM.js} +1 -1
- package/dist/{retrieval-health-ATX5TIQ2.js → retrieval-health-PNWJSJNG.js} +1 -1
- package/dist/{review-polling-E4ALHTQE.js → review-polling-65JZUE3T.js} +13 -12
- package/dist/runtime/index.js +24 -22
- package/dist/{session-events-3J6APMKN.js → session-events-EJ3OSAA6.js} +13 -12
- package/dist/session-kill-telemetry-3HGM7SNQ.js +63 -0
- package/dist/{session-scope-E54VIYTJ.js → session-scope-JGDYAMJO.js} +12 -11
- package/dist/{setup-wizard-XV736U5D.js → setup-wizard-44LMFM2C.js} +1 -1
- package/dist/shared-rate-limit-store-QZPQEVE2.js +80 -0
- package/dist/{skill-refinement-FTURVWFN.js → skill-refinement-DUOO6B7V.js} +3 -2
- package/dist/{stack-release-JZVTSBJJ.js → stack-release-XYMKU7NT.js} +53 -4
- package/dist/{stack-update-BIK2QHOE.js → stack-update-XHQJRJEP.js} +5 -3
- package/dist/{steward-gate-YGU4VXPP.js → steward-gate-6NWRDLX2.js} +4 -3
- package/dist/{task-enforcement-GY3VTY6L.js → task-enforcement-UOULTGFB.js} +12 -11
- package/dist/{task-scope-PYOK7OQ6.js → task-scope-P5STKYAC.js} +12 -11
- package/dist/{tasks-crud-HLJEJ2UU.js → tasks-crud-24HMTULR.js} +12 -11
- package/dist/{tasks-notify-NGS3DWUJ.js → tasks-notify-LAIU7UUI.js} +13 -12
- package/dist/{tasks-review-BP5V2X34.js → tasks-review-AFJAU2DY.js} +12 -11
- package/dist/{telemetry-upload-AXYPFAPS.js → telemetry-upload-DWFGC2XJ.js} +8 -7
- package/dist/token-budget-4RFZKWGH.js +16 -0
- package/dist/{tool-capability-index-RHPVMMDD.js → tool-capability-index-ZEXBWKUZ.js} +1 -1
- package/dist/{tool-telemetry-BLSVABFJ.js → tool-telemetry-BS5JXM5M.js} +1 -1
- package/dist/tui/App.js +21 -20
- package/dist/{tui-data-EYPOFYLS.js → tui-data-UNO5B7PU.js} +12 -11
- package/dist/{worker-gate-SMFOBMMX.js → worker-gate-C6CTTYMD.js} +1 -1
- package/dist/{workflow-engine-TDJZ3TXB.js → workflow-engine-4W2KYCDV.js} +2 -2
- package/dist/{worktree-XISIYRM4.js → worktree-2CXY6NEB.js} +5 -4
- package/dist/{worktree-sweep-AS6GAR6X.js → worktree-sweep-K3CJFSUL.js} +6 -5
- package/package.json +9 -4
- package/release-notes.json +17 -88
- package/stack.release.json +51 -4
- package/dist/chunk-PHOQAVTK.js +0 -42
- package/dist/daemon-auth-BK7ON5ZH.js +0 -13
- package/dist/session-kill-telemetry-KOAHLRBT.js +0 -31
- package/dist/{chunk-XDE5IGBX.js → chunk-2NS3QRMJ.js} +0 -0
- package/dist/{chunk-JTMKRUX6.js → chunk-A2YZG4AD.js} +0 -0
- package/dist/{chunk-UZATXREL.js → chunk-AE74NOE6.js} +0 -0
- package/dist/{chunk-LUGWK6QB.js → chunk-FF5DA4XP.js} +3 -3
- /package/dist/{chunk-BGOMFGSW.js → chunk-GWPICNSO.js} +0 -0
- /package/dist/{chunk-NLHUA3YB.js → chunk-I3DPCSDG.js} +0 -0
- /package/dist/{chunk-YM3367VC.js → chunk-J3SR5MGG.js} +0 -0
- /package/dist/{chunk-FKFVNV7X.js → chunk-K4BKJJ4F.js} +0 -0
- /package/dist/{chunk-PTDBHQX7.js → chunk-MQCTK6EF.js} +0 -0
- /package/dist/{chunk-GBV5PV5T.js → chunk-QNXM2HXW.js} +0 -0
- /package/dist/{chunk-GZSG2ZOX.js → chunk-YUBTHJVV.js} +0 -0
- /package/dist/{core-memory-4OM7LR77.js → core-memory-OC5ITKKV.js} +0 -0
- /package/dist/{entity-boost-SFHIRXT5.js → entity-boost-NF3LE6OJ.js} +0 -0
- /package/dist/{message-queue-client-QTC3VHJT.js → message-queue-client-4VDU6BZY.js} +0 -0
- /package/dist/{oauth-server-BPN55EJM.js → oauth-server-EWUL7DMD.js} +0 -0
- /package/dist/{wiki-acl-45SIGG4O.js → wiki-acl-CONNF6ES.js} +0 -0
|
@@ -3,18 +3,19 @@ import {
|
|
|
3
3
|
} from "./chunk-2XZ6X3PJ.js";
|
|
4
4
|
import {
|
|
5
5
|
getOrchestrationMetrics
|
|
6
|
-
} from "./chunk-
|
|
7
|
-
import "./chunk-
|
|
6
|
+
} from "./chunk-OR3TAZL3.js";
|
|
7
|
+
import "./chunk-SCYWCWKY.js";
|
|
8
8
|
import "./chunk-2I23RPSI.js";
|
|
9
|
-
import "./chunk-
|
|
9
|
+
import "./chunk-GWPICNSO.js";
|
|
10
10
|
import "./chunk-PNQDP3OA.js";
|
|
11
|
+
import "./chunk-VQRTO7IS.js";
|
|
11
12
|
import "./chunk-7HLWBYH7.js";
|
|
12
13
|
import "./chunk-FXU7JOXK.js";
|
|
13
14
|
import {
|
|
14
15
|
loadLicense,
|
|
15
16
|
readCachedLicenseToken
|
|
16
|
-
} from "./chunk-
|
|
17
|
-
import "./chunk-
|
|
17
|
+
} from "./chunk-JV225JBX.js";
|
|
18
|
+
import "./chunk-2EJ636HI.js";
|
|
18
19
|
import {
|
|
19
20
|
loadConfig
|
|
20
21
|
} from "./chunk-DFIOOK5R.js";
|
|
@@ -397,14 +398,14 @@ async function buildTelemetryPayload(sinceHours = 24) {
|
|
|
397
398
|
}
|
|
398
399
|
let toolUsage;
|
|
399
400
|
try {
|
|
400
|
-
const { getToolUsageSummary } = await import("./tool-telemetry-
|
|
401
|
+
const { getToolUsageSummary } = await import("./tool-telemetry-BS5JXM5M.js");
|
|
401
402
|
const summary = getToolUsageSummary();
|
|
402
403
|
if (Object.keys(summary).length > 0) toolUsage = summary;
|
|
403
404
|
} catch {
|
|
404
405
|
}
|
|
405
406
|
let calibration;
|
|
406
407
|
try {
|
|
407
|
-
const { DreamingEngine } = await import("./dreaming-
|
|
408
|
+
const { DreamingEngine } = await import("./dreaming-Q4E3WBGY.js");
|
|
408
409
|
const engine = new DreamingEngine();
|
|
409
410
|
const cal = await engine.computeCalibration("*", sinceHours);
|
|
410
411
|
if (cal.assertions.total > 0 || cal.estimation.total > 0) {
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import {
|
|
2
|
+
createTokenBudgetMiddleware
|
|
3
|
+
} from "./chunk-ZOVHXTGC.js";
|
|
4
|
+
import "./chunk-SCYWCWKY.js";
|
|
5
|
+
import "./chunk-2I23RPSI.js";
|
|
6
|
+
import "./chunk-GWPICNSO.js";
|
|
7
|
+
import "./chunk-PNQDP3OA.js";
|
|
8
|
+
import "./chunk-VQRTO7IS.js";
|
|
9
|
+
import "./chunk-7HLWBYH7.js";
|
|
10
|
+
import "./chunk-FXU7JOXK.js";
|
|
11
|
+
import "./chunk-DFIOOK5R.js";
|
|
12
|
+
import "./chunk-65DBIEM2.js";
|
|
13
|
+
import "./chunk-MLKGABMK.js";
|
|
14
|
+
export {
|
|
15
|
+
createTokenBudgetMiddleware
|
|
16
|
+
};
|
package/dist/tui/App.js
CHANGED
|
@@ -1,43 +1,44 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
getSessionPrompt
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-IZPO6IOZ.js";
|
|
5
|
+
import "../chunk-ISILDO7P.js";
|
|
6
6
|
import "../chunk-VUH67PT4.js";
|
|
7
7
|
import {
|
|
8
8
|
sessionScopeFilter
|
|
9
|
-
} from "../chunk-
|
|
10
|
-
import "../chunk-
|
|
9
|
+
} from "../chunk-HED6D5KR.js";
|
|
10
|
+
import "../chunk-RZJ6DXVE.js";
|
|
11
11
|
import "../chunk-4JERP7NT.js";
|
|
12
12
|
import "../chunk-4FVVJ7ME.js";
|
|
13
13
|
import "../chunk-E23LNUWJ.js";
|
|
14
|
-
import "../chunk-
|
|
14
|
+
import "../chunk-WJ2PZGRV.js";
|
|
15
|
+
import "../chunk-SSTLTIF3.js";
|
|
15
16
|
import "../chunk-KOO3J5PV.js";
|
|
16
17
|
import "../chunk-22TVSRQQ.js";
|
|
17
|
-
import "../chunk-
|
|
18
|
-
import "../chunk-WHOT5NZ7.js";
|
|
18
|
+
import "../chunk-OR3TAZL3.js";
|
|
19
19
|
import "../chunk-QB5JOGPK.js";
|
|
20
20
|
import "../chunk-NGP6LSV2.js";
|
|
21
|
-
import "../chunk-
|
|
21
|
+
import "../chunk-XYG722JW.js";
|
|
22
22
|
import "../chunk-CVYC6DUW.js";
|
|
23
23
|
import "../chunk-OPU3NYOO.js";
|
|
24
24
|
import "../chunk-GJV3WDWM.js";
|
|
25
25
|
import {
|
|
26
26
|
orgBus
|
|
27
27
|
} from "../chunk-MP2AFCGL.js";
|
|
28
|
-
import "../chunk-
|
|
28
|
+
import "../chunk-NIZQ3CIS.js";
|
|
29
29
|
import "../chunk-HYZV25LY.js";
|
|
30
30
|
import {
|
|
31
31
|
DEFAULT_COORDINATOR_TEMPLATE_NAME,
|
|
32
32
|
isCoordinatorName
|
|
33
|
-
} from "../chunk-
|
|
33
|
+
} from "../chunk-SCYWCWKY.js";
|
|
34
34
|
import "../chunk-2I23RPSI.js";
|
|
35
|
-
import "../chunk-
|
|
35
|
+
import "../chunk-GWPICNSO.js";
|
|
36
36
|
import "../chunk-PNQDP3OA.js";
|
|
37
|
+
import "../chunk-VQRTO7IS.js";
|
|
37
38
|
import "../chunk-7HLWBYH7.js";
|
|
38
39
|
import "../chunk-FXU7JOXK.js";
|
|
39
|
-
import "../chunk-
|
|
40
|
-
import "../chunk-
|
|
40
|
+
import "../chunk-JV225JBX.js";
|
|
41
|
+
import "../chunk-2EJ636HI.js";
|
|
41
42
|
import {
|
|
42
43
|
THEME_MODES,
|
|
43
44
|
tuiPalette
|
|
@@ -6698,7 +6699,7 @@ function CommandCenterView({
|
|
|
6698
6699
|
if (!chatMode || agentConfig) return;
|
|
6699
6700
|
(async () => {
|
|
6700
6701
|
try {
|
|
6701
|
-
const { createProvider } = await import("../factory-
|
|
6702
|
+
const { createProvider } = await import("../factory-YHQZ6RZZ.js");
|
|
6702
6703
|
const { ToolRegistry } = await import("../tool-registry-B2OLSYV6.js");
|
|
6703
6704
|
const { createPermissionsFromPreset, EMPLOYEE_PERMISSIONS } = await import("../permissions-BTCYZNMN.js");
|
|
6704
6705
|
const { getPresetByRole } = await import("../permission-presets-E3DZK46K.js");
|
|
@@ -7410,7 +7411,7 @@ function useOrchestrator(enabled = true) {
|
|
|
7410
7411
|
let cancelled = false;
|
|
7411
7412
|
async function init() {
|
|
7412
7413
|
try {
|
|
7413
|
-
const { MultiAgentOrchestrator } = await import("../orchestrator-
|
|
7414
|
+
const { MultiAgentOrchestrator } = await import("../orchestrator-PUT45J4O.js");
|
|
7414
7415
|
const { getCoordinatorName, isCoordinatorRole, loadEmployees } = await import("../lib/employees.js");
|
|
7415
7416
|
const { isExeSession } = await import("../lib/tmux-routing.js");
|
|
7416
7417
|
const { listTmuxSessions, inTmux } = await import("../lib/tmux-status.js");
|
|
@@ -7451,7 +7452,7 @@ function useOrchestrator(enabled = true) {
|
|
|
7451
7452
|
setTotalInProgress(health.totalInProgress);
|
|
7452
7453
|
try {
|
|
7453
7454
|
const { getClient } = await import("../lib/database.js");
|
|
7454
|
-
const { sessionScopeFilter: sessionScopeFilter2 } = await import("../task-scope-
|
|
7455
|
+
const { sessionScopeFilter: sessionScopeFilter2 } = await import("../task-scope-P5STKYAC.js");
|
|
7455
7456
|
const client = getClient();
|
|
7456
7457
|
const uoScope = sessionScopeFilter2();
|
|
7457
7458
|
const result = await client.execute({
|
|
@@ -7483,7 +7484,7 @@ function useOrchestrator(enabled = true) {
|
|
|
7483
7484
|
const spawnSession = useCallback5(
|
|
7484
7485
|
async (agentId) => {
|
|
7485
7486
|
try {
|
|
7486
|
-
const { createTaskCore } = await import("../tasks-crud-
|
|
7487
|
+
const { createTaskCore } = await import("../tasks-crud-24HMTULR.js");
|
|
7487
7488
|
const { ensureEmployee } = await import("../lib/tmux-routing.js");
|
|
7488
7489
|
const { getCoordinatorName } = await import("../lib/employees.js");
|
|
7489
7490
|
await createTaskCore({
|
|
@@ -8107,7 +8108,7 @@ function TasksView({ onBack }) {
|
|
|
8107
8108
|
const { withTrace } = await import("../telemetry-43X3GT3R.js");
|
|
8108
8109
|
return withTrace("tui.tasks.loadTasks", async () => {
|
|
8109
8110
|
try {
|
|
8110
|
-
const { loadTaskList } = await import("../tui-data-
|
|
8111
|
+
const { loadTaskList } = await import("../tui-data-UNO5B7PU.js");
|
|
8111
8112
|
const tasks = await loadTaskList();
|
|
8112
8113
|
setAllTasks(
|
|
8113
8114
|
tasks.map((task) => ({
|
|
@@ -8940,7 +8941,7 @@ function TeamView({ onBack, onViewSessions }) {
|
|
|
8940
8941
|
let projectsByEmployee = /* @__PURE__ */ new Map();
|
|
8941
8942
|
let currentTaskByEmployee = /* @__PURE__ */ new Map();
|
|
8942
8943
|
try {
|
|
8943
|
-
const { loadTeamBadgeCounts, loadTeamDetailMetrics } = await import("../tui-data-
|
|
8944
|
+
const { loadTeamBadgeCounts, loadTeamDetailMetrics } = await import("../tui-data-UNO5B7PU.js");
|
|
8944
8945
|
setBadgeInFlight(true);
|
|
8945
8946
|
const badgeCountsPromise = loadTeamBadgeCounts();
|
|
8946
8947
|
const detailsPromise = loadTeamDetailMetrics(roster.map((emp) => emp.name));
|
|
@@ -9306,7 +9307,7 @@ function WikiView({ onBack }) {
|
|
|
9306
9307
|
}
|
|
9307
9308
|
setSearchLoading(true);
|
|
9308
9309
|
try {
|
|
9309
|
-
const { searchWikiMemoryRows } = await import("../tui-data-
|
|
9310
|
+
const { searchWikiMemoryRows } = await import("../tui-data-UNO5B7PU.js");
|
|
9310
9311
|
setSearchResults(await searchWikiMemoryRows(query));
|
|
9311
9312
|
} catch {
|
|
9312
9313
|
setSearchResults([]);
|
|
@@ -1,34 +1,35 @@
|
|
|
1
1
|
import {
|
|
2
2
|
sessionScopeFilter
|
|
3
|
-
} from "./chunk-
|
|
4
|
-
import "./chunk-
|
|
3
|
+
} from "./chunk-HED6D5KR.js";
|
|
4
|
+
import "./chunk-RZJ6DXVE.js";
|
|
5
5
|
import "./chunk-4JERP7NT.js";
|
|
6
6
|
import "./chunk-4FVVJ7ME.js";
|
|
7
7
|
import "./chunk-E23LNUWJ.js";
|
|
8
|
-
import "./chunk-
|
|
8
|
+
import "./chunk-WJ2PZGRV.js";
|
|
9
|
+
import "./chunk-SSTLTIF3.js";
|
|
9
10
|
import "./chunk-KOO3J5PV.js";
|
|
10
11
|
import "./chunk-22TVSRQQ.js";
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-WHOT5NZ7.js";
|
|
12
|
+
import "./chunk-OR3TAZL3.js";
|
|
13
13
|
import "./chunk-QB5JOGPK.js";
|
|
14
14
|
import "./chunk-NGP6LSV2.js";
|
|
15
|
-
import "./chunk-
|
|
15
|
+
import "./chunk-XYG722JW.js";
|
|
16
16
|
import "./chunk-CVYC6DUW.js";
|
|
17
17
|
import "./chunk-OPU3NYOO.js";
|
|
18
18
|
import "./chunk-GJV3WDWM.js";
|
|
19
19
|
import "./chunk-MP2AFCGL.js";
|
|
20
|
-
import "./chunk-
|
|
20
|
+
import "./chunk-NIZQ3CIS.js";
|
|
21
21
|
import "./chunk-HYZV25LY.js";
|
|
22
22
|
import {
|
|
23
23
|
getClient
|
|
24
|
-
} from "./chunk-
|
|
24
|
+
} from "./chunk-SCYWCWKY.js";
|
|
25
25
|
import "./chunk-2I23RPSI.js";
|
|
26
|
-
import "./chunk-
|
|
26
|
+
import "./chunk-GWPICNSO.js";
|
|
27
27
|
import "./chunk-PNQDP3OA.js";
|
|
28
|
+
import "./chunk-VQRTO7IS.js";
|
|
28
29
|
import "./chunk-7HLWBYH7.js";
|
|
29
30
|
import "./chunk-FXU7JOXK.js";
|
|
30
|
-
import "./chunk-
|
|
31
|
-
import "./chunk-
|
|
31
|
+
import "./chunk-JV225JBX.js";
|
|
32
|
+
import "./chunk-2EJ636HI.js";
|
|
32
33
|
import "./chunk-DFIOOK5R.js";
|
|
33
34
|
import "./chunk-65DBIEM2.js";
|
|
34
35
|
import "./chunk-MLKGABMK.js";
|
|
@@ -10,8 +10,8 @@ import {
|
|
|
10
10
|
persistWorkflows,
|
|
11
11
|
runWorkflow,
|
|
12
12
|
startWorkflow
|
|
13
|
-
} from "./chunk-
|
|
14
|
-
import "./chunk-
|
|
13
|
+
} from "./chunk-X4AFBL4N.js";
|
|
14
|
+
import "./chunk-2NS3QRMJ.js";
|
|
15
15
|
import "./chunk-MLKGABMK.js";
|
|
16
16
|
export {
|
|
17
17
|
advanceWorkflow,
|
|
@@ -7,12 +7,13 @@ import {
|
|
|
7
7
|
parseInstanceLabel,
|
|
8
8
|
worktreeBranch,
|
|
9
9
|
worktreePath
|
|
10
|
-
} from "./chunk-
|
|
11
|
-
import "./chunk-
|
|
12
|
-
import "./chunk-
|
|
10
|
+
} from "./chunk-RZJ6DXVE.js";
|
|
11
|
+
import "./chunk-OR3TAZL3.js";
|
|
12
|
+
import "./chunk-SCYWCWKY.js";
|
|
13
13
|
import "./chunk-2I23RPSI.js";
|
|
14
|
-
import "./chunk-
|
|
14
|
+
import "./chunk-GWPICNSO.js";
|
|
15
15
|
import "./chunk-PNQDP3OA.js";
|
|
16
|
+
import "./chunk-VQRTO7IS.js";
|
|
16
17
|
import "./chunk-7HLWBYH7.js";
|
|
17
18
|
import "./chunk-FXU7JOXK.js";
|
|
18
19
|
import "./chunk-DFIOOK5R.js";
|
|
@@ -2,13 +2,14 @@ import {
|
|
|
2
2
|
cleanupAgentWorktree,
|
|
3
3
|
discoverRepoPaths,
|
|
4
4
|
sweepWorktrees
|
|
5
|
-
} from "./chunk-
|
|
6
|
-
import "./chunk-
|
|
7
|
-
import "./chunk-
|
|
8
|
-
import "./chunk-
|
|
5
|
+
} from "./chunk-MTIJ2NXY.js";
|
|
6
|
+
import "./chunk-RZJ6DXVE.js";
|
|
7
|
+
import "./chunk-OR3TAZL3.js";
|
|
8
|
+
import "./chunk-SCYWCWKY.js";
|
|
9
9
|
import "./chunk-2I23RPSI.js";
|
|
10
|
-
import "./chunk-
|
|
10
|
+
import "./chunk-GWPICNSO.js";
|
|
11
11
|
import "./chunk-PNQDP3OA.js";
|
|
12
|
+
import "./chunk-VQRTO7IS.js";
|
|
12
13
|
import "./chunk-7HLWBYH7.js";
|
|
13
14
|
import "./chunk-FXU7JOXK.js";
|
|
14
15
|
import "./chunk-DFIOOK5R.js";
|
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@askexenow/exe-os",
|
|
3
|
-
"version": "0.9.
|
|
3
|
+
"version": "0.9.310",
|
|
4
4
|
"description": "AI employee operating system — persistent memory, task management, and multi-agent coordination for Claude Code.",
|
|
5
5
|
"license": "SEE LICENSE IN LICENSE",
|
|
6
6
|
"type": "module",
|
|
@@ -39,9 +39,13 @@
|
|
|
39
39
|
"exe-pending-notifications": "./dist/bin/exe-pending-notifications.js",
|
|
40
40
|
"exe-pending-reviews": "./dist/bin/exe-pending-reviews.js",
|
|
41
41
|
"exe-os-orchestration-metrics": "./dist/bin/orchestration-metrics.js",
|
|
42
|
+
"exe-search-quality": "./dist/bin/exe-search-quality.js",
|
|
42
43
|
"exe-healthcheck": "./dist/bin/exe-healthcheck.js",
|
|
43
44
|
"exe-doctor": "./dist/bin/exe-doctor.js",
|
|
45
|
+
"exe-timers": "./dist/bin/exe-timers.js",
|
|
46
|
+
"exe-config-dump": "./dist/bin/exe-config-dump.js",
|
|
44
47
|
"exe-stack-update": "./dist/bin/stack-update.js",
|
|
48
|
+
"exe-preflight": "./dist/bin/exe-preflight.js",
|
|
45
49
|
"exe-cloud": "./dist/bin/exe-cloud.js",
|
|
46
50
|
"exe-os-bulk-sync-postgres": "./dist/bin/bulk-sync-postgres.js"
|
|
47
51
|
},
|
|
@@ -106,13 +110,14 @@
|
|
|
106
110
|
"test:watch": "vitest",
|
|
107
111
|
"lint": "eslint src/ --max-warnings 53",
|
|
108
112
|
"typecheck": "tsc --noEmit",
|
|
109
|
-
"build": "
|
|
110
|
-
"deploy": "node dist/bin/pre-build-guard.js 2>/dev/null; npm run build && npm install -g . && node dist/bin/install.js --global && echo '[exe-os] Deploy complete. Run /mcp in active sessions to reconnect.'",
|
|
113
|
+
"build": "bash scripts/build-lock.sh && mkdir -p dist/assets && cp src/assets/tmux.conf dist/assets/ && cp src/assets/ghostty.conf dist/assets/ && cp src/assets/statusline-command.sh dist/assets/ && cp src/assets/wezterm.lua dist/assets/ && cp src/assets/com.askexe.exed.plist dist/assets/ && cp src/bin/exe-start.sh dist/bin/exe-start.sh && (node dist/bin/generate-hook-manifest.js 2>/dev/null || true)",
|
|
114
|
+
"deploy": "node dist/bin/pre-build-guard.js 2>/dev/null; npm run build && (node dist/bin/prune-orphan-chunks.js || true) && npm install -g . && node dist/bin/install.js --global && echo '[exe-os] Deploy complete. Run /mcp in active sessions to reconnect.'",
|
|
111
115
|
"postinstall": "node dist/bin/install.js --commands-only || true",
|
|
112
|
-
"prepublishOnly": "npm run typecheck && npm run build && npm run guard:esm-require && node dist/bin/customer-readiness.js && node dist/bin/pre-publish.js",
|
|
116
|
+
"prepublishOnly": "npm run typecheck && npm run build && node dist/bin/prune-orphan-chunks.js --force && npm run guard:esm-require && npm run check:schema-version && node dist/bin/customer-readiness.js && node dist/bin/pre-publish.js",
|
|
113
117
|
"test:publish": "npx vitest run --maxWorkers=4 --exclude 'tests/tui/**' --exclude 'tests/lib/tmux-routing.test.ts' --exclude 'tests/lib/intercom-routing.test.ts' --exclude 'tests/gateway/**' --exclude 'tests/mcp/ingest-document.test.ts' --exclude 'tests/lib/hybrid-search.test.ts' --exclude 'tests/lib/worker-gate.test.ts' --exclude 'tests/daemon-perf-stress.test.ts' --exclude 'tests/lib/gateway-client.test.ts' --exclude 'tests/lib/ws-client.test.ts' --exclude 'tests/lib/ws-auth.test.ts' --exclude 'tests/integration/clean-stack-projection.test.ts' && echo '::warning::clean-stack-projection quarantined (needs Docker); ws-client/ws-auth quarantined (30-120s timeouts flaky on Node 20 CI runner — passes locally). See cicd-audit-2026-06-18.md.' && npx vitest run --maxWorkers=1 tests/daemon-perf-stress.test.ts tests/lib/gateway-client.test.ts",
|
|
114
118
|
"benchmark:longmemeval": "npx tsx tests/benchmarks/longmemeval.ts",
|
|
115
119
|
"guard:esm-require": "node scripts/check-no-runtime-require.mjs",
|
|
120
|
+
"check:schema-version": "node scripts/check-schema-version.mjs",
|
|
116
121
|
"test:stack-sim": "node scripts/stack-sim.mjs",
|
|
117
122
|
"test:daemon-smoke": "vitest run --maxWorkers=1 tests/smoke/daemon-smoke-gate.test.ts"
|
|
118
123
|
},
|
package/release-notes.json
CHANGED
|
@@ -1,6 +1,22 @@
|
|
|
1
1
|
{
|
|
2
|
-
"current": "0.9.
|
|
2
|
+
"current": "0.9.310",
|
|
3
3
|
"notes": {
|
|
4
|
+
"0.9.310": {
|
|
5
|
+
"version": "0.9.310",
|
|
6
|
+
"date": "2026-06-22",
|
|
7
|
+
"features": [],
|
|
8
|
+
"fixes": [
|
|
9
|
+
"kill the version-bump reload storm — surface-hash marker + reload debounce",
|
|
10
|
+
"enforce canonical 4096 daemon heap cap, correct stale 6144 (bug f215433d)",
|
|
11
|
+
"fail-closed BYOK env-contract — direct keys only on explicit BYOK (bug df8823d0)",
|
|
12
|
+
"erp healthHost localhost not askexe.com (preflight gate)"
|
|
13
|
+
],
|
|
14
|
+
"security": [],
|
|
15
|
+
"other": [
|
|
16
|
+
"stack manifest v0.9.25 — 17 bug fixes, gateway v0.9.24 with WhatsApp/CRM/BYOK fixes"
|
|
17
|
+
],
|
|
18
|
+
"migration_notes": []
|
|
19
|
+
},
|
|
4
20
|
"0.9.302": {
|
|
5
21
|
"version": "0.9.302",
|
|
6
22
|
"date": "2026-06-22",
|
|
@@ -274,93 +290,6 @@
|
|
|
274
290
|
"release v0.9.299 — published after 0.9.298 SQLCipher/boot/SSO/plist wave"
|
|
275
291
|
],
|
|
276
292
|
"migration_notes": []
|
|
277
|
-
},
|
|
278
|
-
"0.9.298": {
|
|
279
|
-
"version": "0.9.298",
|
|
280
|
-
"date": "2026-06-19",
|
|
281
|
-
"features": [
|
|
282
|
-
"add comment capability to bug reports (admin route + MCP add_comment) (#211)",
|
|
283
|
-
"unmerged-branch visibility (bug e324f244) (#208)",
|
|
284
|
-
"5 P2 features — embed health dashboard, support reconcile, CC updater protection, LKG cache, error correlation IDs",
|
|
285
|
-
"set CC autoUpdatesChannel to stable during install (feat 83552605)",
|
|
286
|
-
"auto-reconcile local files with upstream status (feat 070bc025)",
|
|
287
|
-
"expose embed worker fork status, PID, ready state in daemon health (feat 63c35469)",
|
|
288
|
-
"deploy validation tests — IP collision, manifest parity, image tags, env parity",
|
|
289
|
-
"session_deregister + session_cleanup — force-remove stale sessions (feat 2e55cbe4)",
|
|
290
|
-
"OOM crash-loop backoff — circuit breaker after 3 crashes in 10min (feat 8e976fe0)",
|
|
291
|
-
"Exe Embeddings v1.2 + Graph cross-repo contracts (features 36aa70d0, 9f6b3164)",
|
|
292
|
-
"bump daemon heap cap 2048→4096MB in launchd plist (feat 6ee417ca)",
|
|
293
|
-
"CI/CD Phase 3 — deploy validation + health gate tests + flaky test quarantine",
|
|
294
|
-
"add CI Phase 3 deploy validation — 5 static checks for compose/manifest",
|
|
295
|
-
"surface degradation/health in cloud_status, memory_audit, doctor (2c85e74b)",
|
|
296
|
-
"owner-scoped self-service bug-report updates (7ed54c42)",
|
|
297
|
-
"add image availability + platform verification to deploy gate",
|
|
298
|
-
"'Why did the daemon restart?' telemetry report [3caa55e9]",
|
|
299
|
-
"dark/light/system theme toggle on Exe Foundry Bold tokens [6df56277]",
|
|
300
|
-
"prospective memory as native 5th cognition layer (9261d452)",
|
|
301
|
-
"CPU-steal detection in health tooling (7b9386ad)",
|
|
302
|
-
"host-access consent gate for monitor agent (f7ebb1fa)",
|
|
303
|
-
"GoTrue JWT auth for MCP — exe-os login/logout/whoami",
|
|
304
|
-
"admin backfill endpoint for api_key_hash — fixes all encrypted keys",
|
|
305
|
-
"implement startMonitor for Slack/Discord/Telegram/WhatsApp + SMTP via nodemailer",
|
|
306
|
-
"add dashboard + auth + otel to manifest as control-plane services"
|
|
307
|
-
],
|
|
308
|
-
"fixes": [
|
|
309
|
-
"keep SQLCipher heavy ops off the event loop + lazy boot decrypt (P0 unresponsiveness) (#234)",
|
|
310
|
-
"hookSearchMode follows single source + non-destructive plist regeneration on update (#233)",
|
|
311
|
-
"set JWT aud=authenticated (empty-aud tokens rejected by apps) (#232)",
|
|
312
|
-
"robust MCP-port resolution + surface CC-native-binary warning at boot/spawn (#231)",
|
|
313
|
-
"async timer ticks (event-loop block P0) + embed failure never self-exits (#230)",
|
|
314
|
-
"honor originating-product redirect + parent-domain cookie for cross-product SSO (#229)",
|
|
315
|
-
"manifest signature verification is opt-in (don't block updates when no key shipped) (#228)",
|
|
316
|
-
"single short-timeout daemon attempt + instant SQLite fallback (73s → <3s) (#224)",
|
|
317
|
-
"align worker RSS-kill with its heap + single config source of truth (0d5d5aa8/39a9174f) (#223)",
|
|
318
|
-
"wire unified-auth redirect into deployed stack (crm/wiki/erp → auth) (#222)",
|
|
319
|
-
"model loads ONLY in worker (own heap) + graceful degrade — daemon can never OOM on embeddings (P0) (#221)",
|
|
320
|
-
"reaper survives large output (ENOBUFS) — orphaned tasks spawn workers (#220)",
|
|
321
|
-
"force embed model to worker (P0 OOM) + persistent plist PATH + pre-restart backup cap (#219)",
|
|
322
|
-
"enable LLM routing when available + clarify fallback signal (#218)",
|
|
323
|
-
"reap ghost coordinator sessions (dead PID + absent tmux) (#217)",
|
|
324
|
-
"reliably detect DISABLE_AUTOUPDATER (no flap) (#216)",
|
|
325
|
-
"report real embed-worker state (no false 'stopped') (#215)",
|
|
326
|
-
"migrate new required env vars + non-destructive rollback (HYGO upgrade) (#214)",
|
|
327
|
-
"exe-auth backend network, cloudflared healthcheck, entrypoint port-conflict self-kill (HYGO) (#213)",
|
|
328
|
-
"template nginx server_name + CORS from env at container start (no askexe.com fallback) (#212)",
|
|
329
|
-
"submit message in Codex sessions (separate Enter keystroke, runtime-aware) (#210)",
|
|
330
|
-
"ghost root-cause — UUID on pull + NOT NULL/non-empty schema guard (P0 26688a14)",
|
|
331
|
-
"sync generateExampleEnv with .env.example (ERP final8 + backups/WAL block)",
|
|
332
|
-
"caller-scoped spawn + real dispatch failure surfacing + boot identity/env guards (#202)",
|
|
333
|
-
"atomic+verified launchd registration (correct heap flag) + crash-debris rotation"
|
|
334
|
-
],
|
|
335
|
-
"security": [],
|
|
336
|
-
"other": [
|
|
337
|
-
"release v0.9.298 — Jack/HYGO 0.9.296 audit-wave fixes (0.9.297 published stale before these merged)",
|
|
338
|
-
"revert build-and-test to self-hosted (build-my) + keep quarantine; move flaky tests to nightly extended-tests (#227)",
|
|
339
|
-
"run build-and-test on GitHub-hosted runners (gate actually runs) + quarantine flaky tests (#225)",
|
|
340
|
-
"bump v0.9.296 — exe-auth v0.2.0 SSO + redirect in manifest",
|
|
341
|
-
"release v0.9.296 — Jack/HYGO embed+infra avalanche fixes",
|
|
342
|
-
"bump v0.9.295 — exe-os daemon image v0.9.294 in manifest",
|
|
343
|
-
"bump v0.9.294 — exe-auth repo + CI/CD on all 8 repos + branch hygiene",
|
|
344
|
-
"pin actions to SHAs, drop stale disabled workflows, fail-closed release gate, manifest signing tool (#207)",
|
|
345
|
-
"bump v0.9.293 — 17 salvaged branches merged",
|
|
346
|
-
"bump v0.9.292 — 24 features shipped, CI/CD Phase 3, 10 bugs fixed",
|
|
347
|
-
"post-deploy health gate tests — verify container health, missing, crash-loop",
|
|
348
|
-
"bump v0.9.291 — 4 new features + CI fix",
|
|
349
|
-
"add health gate coverage — verifyComposeServicesRunning, timeout precedence, rollback preservation",
|
|
350
|
-
"bump v0.9.290 — wave 2 bug fixes (#173-#190)",
|
|
351
|
-
"bump v0.9.289 — 22 bug fixes merged (#150-#171)",
|
|
352
|
-
"bump v0.9.288 — wave 1 features + 114 auth tests + CI fixes",
|
|
353
|
-
"bump v0.9.287 — deploy gate auth fix + exe-erp v0.2.1",
|
|
354
|
-
"bump v0.9.286 — exe-erp final8 in manifest",
|
|
355
|
-
"add cross-service SSO + key rotation + daemon restart tests (35 tests)",
|
|
356
|
-
"45 tests for image validation, ${VAR:-default} resolution, platform checks",
|
|
357
|
-
"add 16 activate fallback chain tests — covers bug 2f5d6166 failure modes",
|
|
358
|
-
"add 18 key rotation tests — dual-key verify, grace, fallback chain",
|
|
359
|
-
"bump v0.9.285 — deploy gate image verification",
|
|
360
|
-
"bump v0.9.284 — otel deploy gate fix",
|
|
361
|
-
"bump v0.9.283 — amd64 digest fix"
|
|
362
|
-
],
|
|
363
|
-
"migration_notes": []
|
|
364
293
|
}
|
|
365
294
|
}
|
|
366
295
|
}
|
package/stack.release.json
CHANGED
|
@@ -4,15 +4,61 @@
|
|
|
4
4
|
"repo": "AskExe/exe-os",
|
|
5
5
|
"service": "exe-os",
|
|
6
6
|
"packageName": "@askexenow/exe-os",
|
|
7
|
-
"version": "0.9.
|
|
8
|
-
"image": "ghcr.io/askexe/exe-os:v0.9.
|
|
7
|
+
"version": "0.9.310",
|
|
8
|
+
"image": "ghcr.io/askexe/exe-os:v0.9.310",
|
|
9
9
|
"imageEnv": "EXE_OS_IMAGE_TAG",
|
|
10
10
|
"components": {
|
|
11
11
|
"erp": {
|
|
12
|
-
"image": "ghcr.io/askexe/exe-erp:v0.
|
|
12
|
+
"image": "ghcr.io/askexe/exe-erp:v0.9.310",
|
|
13
13
|
"env": "ERP_IMAGE_TAG",
|
|
14
14
|
"composeService": "exe-erp",
|
|
15
15
|
"note": "Bug 790794e8: pinned to v0.2.0-final8 — first ERP image shipping the realtime/socketio entrypoint (exe-erp PR #15). Earlier final3/final7 crash-looped exe-erp-websocket (missing socketio.js)."
|
|
16
|
+
},
|
|
17
|
+
"exe-db": {
|
|
18
|
+
"image": "pgvector/pgvector:0.8.0-pg16@sha256:a132765ec351c65111b5b675928a3a0515a466a40f97277329db8b8209ad8bc9:v0.9.310",
|
|
19
|
+
"env": "EXE_DB_IMAGE",
|
|
20
|
+
"composeService": "exe-db",
|
|
21
|
+
"category": "infra",
|
|
22
|
+
"note": "Bug ee16e7ef: pinned to versioned 0.8.0-pg16 tag (was mutable :pg16)."
|
|
23
|
+
},
|
|
24
|
+
"redis": {
|
|
25
|
+
"image": "redis:7.4-alpine@sha256:6ab0b6e7381779332f97b8ca76193e45b0756f38d4c0dcda72dbb3c32061ab99:v0.9.310",
|
|
26
|
+
"env": "REDIS_IMAGE",
|
|
27
|
+
"composeService": "redis",
|
|
28
|
+
"category": "infra",
|
|
29
|
+
"note": "Bug 4948fc48: compose-pinned infra dep required by CRM, gateway, ERP."
|
|
30
|
+
},
|
|
31
|
+
"clickhouse": {
|
|
32
|
+
"image": "clickhouse/clickhouse-server:24.8.4.13-alpine@sha256:88a45f9e328549b2579256c46ee38e5c0e25ae58303d9eb6d9c7ed8d6d2bbf3c:v0.9.310",
|
|
33
|
+
"env": "CLICKHOUSE_IMAGE",
|
|
34
|
+
"composeService": "clickhouse",
|
|
35
|
+
"category": "infra",
|
|
36
|
+
"note": "Bug 4948fc48: compose-pinned infra dep required by CRM."
|
|
37
|
+
},
|
|
38
|
+
"cloudflared": {
|
|
39
|
+
"image": "cloudflare/cloudflared@sha256:ba461b8aa9c042156dbd39c38657fe7431bafa063220eab8d5330a523863da9f:v0.9.310",
|
|
40
|
+
"composeService": "cloudflared",
|
|
41
|
+
"category": "infra",
|
|
42
|
+
"note": "Bug 4948fc48: digest-pinned tunnel — no env override, managed in compose."
|
|
43
|
+
},
|
|
44
|
+
"exe-sso-edge": {
|
|
45
|
+
"image": "nginx:alpine@sha256:20316569d8f81a160065d7d2a5eeffc7ca97d79022462ee255fd23fa103a6b5c:v0.9.310",
|
|
46
|
+
"composeService": "exe-sso-edge",
|
|
47
|
+
"category": "infra",
|
|
48
|
+
"note": "Bug 4948fc48: SSO reverse proxy for CRM/wiki/ERP — uses stock nginx:alpine."
|
|
49
|
+
},
|
|
50
|
+
"exe-otel-collector": {
|
|
51
|
+
"image": "otel/opentelemetry-collector-contrib:0.114.0@sha256:37fa87091cfaaec7234a27e4e395a40c31c2bfaea97a349a4afef6d9e9681197:v0.9.310",
|
|
52
|
+
"env": "OTEL_COLLECTOR_IMAGE",
|
|
53
|
+
"composeService": "exe-otel-collector",
|
|
54
|
+
"category": "infra",
|
|
55
|
+
"note": "Bug 4948fc48: OTLP collector for traces/metrics/logs."
|
|
56
|
+
},
|
|
57
|
+
"gotrue": {
|
|
58
|
+
"image": "supabase/gotrue:v2.172.1@sha256:b0dd7aa28dd1f9a8bd31f136c8b912661f701d9b863171e5843cb08f18f49de4:v0.9.310",
|
|
59
|
+
"composeService": "gotrue",
|
|
60
|
+
"category": "infra",
|
|
61
|
+
"note": "Bug 4948fc48: GoTrue auth backend — digest-pinned in compose."
|
|
16
62
|
}
|
|
17
63
|
},
|
|
18
64
|
"stackParticipation": {
|
|
@@ -43,6 +89,7 @@
|
|
|
43
89
|
"envExample": "deploy/compose/.env.example",
|
|
44
90
|
"requiredEnv": [
|
|
45
91
|
"EXE_OS_IMAGE_TAG",
|
|
92
|
+
"EXE_DB_IMAGE",
|
|
46
93
|
"EXED_MCP_TOKEN",
|
|
47
94
|
"EXED_DEVICE_ID"
|
|
48
95
|
]
|
|
@@ -55,5 +102,5 @@
|
|
|
55
102
|
},
|
|
56
103
|
"deploymentScope": "customer",
|
|
57
104
|
"highGhostStack": "0.9.9",
|
|
58
|
-
"sourceVersion": "0.9.
|
|
105
|
+
"sourceVersion": "0.9.310"
|
|
59
106
|
}
|
package/dist/chunk-PHOQAVTK.js
DELETED
|
@@ -1,42 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
EXE_AI_DIR
|
|
3
|
-
} from "./chunk-DFIOOK5R.js";
|
|
4
|
-
import {
|
|
5
|
-
enforcePrivateFileSync,
|
|
6
|
-
ensurePrivateDirSync
|
|
7
|
-
} from "./chunk-65DBIEM2.js";
|
|
8
|
-
|
|
9
|
-
// src/lib/daemon-auth.ts
|
|
10
|
-
import crypto from "crypto";
|
|
11
|
-
import path from "path";
|
|
12
|
-
import { existsSync, readFileSync, writeFileSync } from "fs";
|
|
13
|
-
var DAEMON_TOKEN_PATH = path.join(EXE_AI_DIR, "exed.token");
|
|
14
|
-
function normalizeToken(token) {
|
|
15
|
-
if (!token) return null;
|
|
16
|
-
const trimmed = token.trim();
|
|
17
|
-
return trimmed.length > 0 ? trimmed : null;
|
|
18
|
-
}
|
|
19
|
-
function readDaemonToken() {
|
|
20
|
-
try {
|
|
21
|
-
if (!existsSync(DAEMON_TOKEN_PATH)) return null;
|
|
22
|
-
return normalizeToken(readFileSync(DAEMON_TOKEN_PATH, "utf8"));
|
|
23
|
-
} catch {
|
|
24
|
-
return null;
|
|
25
|
-
}
|
|
26
|
-
}
|
|
27
|
-
function ensureDaemonToken(seed) {
|
|
28
|
-
const existing = readDaemonToken();
|
|
29
|
-
if (existing) return existing;
|
|
30
|
-
const token = normalizeToken(seed) ?? crypto.randomBytes(32).toString("hex");
|
|
31
|
-
ensurePrivateDirSync(EXE_AI_DIR);
|
|
32
|
-
writeFileSync(DAEMON_TOKEN_PATH, `${token}
|
|
33
|
-
`, "utf8");
|
|
34
|
-
enforcePrivateFileSync(DAEMON_TOKEN_PATH);
|
|
35
|
-
return token;
|
|
36
|
-
}
|
|
37
|
-
|
|
38
|
-
export {
|
|
39
|
-
DAEMON_TOKEN_PATH,
|
|
40
|
-
readDaemonToken,
|
|
41
|
-
ensureDaemonToken
|
|
42
|
-
};
|
|
@@ -1,13 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
DAEMON_TOKEN_PATH,
|
|
3
|
-
ensureDaemonToken,
|
|
4
|
-
readDaemonToken
|
|
5
|
-
} from "./chunk-PHOQAVTK.js";
|
|
6
|
-
import "./chunk-DFIOOK5R.js";
|
|
7
|
-
import "./chunk-65DBIEM2.js";
|
|
8
|
-
import "./chunk-MLKGABMK.js";
|
|
9
|
-
export {
|
|
10
|
-
DAEMON_TOKEN_PATH,
|
|
11
|
-
ensureDaemonToken,
|
|
12
|
-
readDaemonToken
|
|
13
|
-
};
|
|
@@ -1,31 +0,0 @@
|
|
|
1
|
-
import {
|
|
2
|
-
IDLE_KILL_MIN_LIVE_SESSIONS,
|
|
3
|
-
IDLE_KILL_STREAK_META_KEY,
|
|
4
|
-
IDLE_KILL_SUSPECT_DAY_THRESHOLD,
|
|
5
|
-
TOKENS_PER_IDLE_MINUTE,
|
|
6
|
-
computeIdleKillSuspectStreak,
|
|
7
|
-
countKillsSince,
|
|
8
|
-
parseStreakState,
|
|
9
|
-
recordSessionKill,
|
|
10
|
-
sumTokensSavedSince
|
|
11
|
-
} from "./chunk-D6UICP3C.js";
|
|
12
|
-
import "./chunk-P3SIFDES.js";
|
|
13
|
-
import "./chunk-2I23RPSI.js";
|
|
14
|
-
import "./chunk-BGOMFGSW.js";
|
|
15
|
-
import "./chunk-PNQDP3OA.js";
|
|
16
|
-
import "./chunk-7HLWBYH7.js";
|
|
17
|
-
import "./chunk-FXU7JOXK.js";
|
|
18
|
-
import "./chunk-DFIOOK5R.js";
|
|
19
|
-
import "./chunk-65DBIEM2.js";
|
|
20
|
-
import "./chunk-MLKGABMK.js";
|
|
21
|
-
export {
|
|
22
|
-
IDLE_KILL_MIN_LIVE_SESSIONS,
|
|
23
|
-
IDLE_KILL_STREAK_META_KEY,
|
|
24
|
-
IDLE_KILL_SUSPECT_DAY_THRESHOLD,
|
|
25
|
-
TOKENS_PER_IDLE_MINUTE,
|
|
26
|
-
computeIdleKillSuspectStreak,
|
|
27
|
-
countKillsSince,
|
|
28
|
-
parseStreakState,
|
|
29
|
-
recordSessionKill,
|
|
30
|
-
sumTokensSavedSince
|
|
31
|
-
};
|
|
File without changes
|
|
File without changes
|
|
File without changes
|