@askexenow/exe-os 0.9.407 → 0.9.409
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/erp-nginx/nginx.conf +8 -2
- package/deploy/compose/sso-edge/default.conf.template +55 -0
- package/deploy/hosted/public-demo-compose.yml +52 -0
- package/deploy/stack-manifests/v0.9.json +1339 -1
- package/dist/.dist-verified.json +3 -3
- package/dist/{active-agent-U6JYIXZD.js → active-agent-2AMJC3SC.js} +6 -5
- package/dist/{active-agent-2OMOWJXI.js → active-agent-5AKPW2N7.js} +6 -5
- package/dist/{agent-defs-generator-TZC3QFTT.js → agent-defs-generator-QN3J6FVJ.js} +5 -5
- package/dist/{agent-loop-OQUZUGQU.js → agent-loop-FMOA2MG2.js} +1 -1
- package/dist/{agentic-ontology-GJI54CFX.js → agentic-ontology-6RS7A7KP.js} +1 -1
- package/dist/{artifact-backup-4GCKVN3V.js → artifact-backup-6O4FNYPS.js} +3 -3
- package/dist/{backfill-metadata-EVJEKCY3.js → backfill-metadata-6YX6LGPJ.js} +8 -8
- package/dist/{backup-verify-PIH5GXLV.js → backup-verify-QIAQ63VC.js} +1 -1
- package/dist/{behavior-injection-TKQETCCW.js → behavior-injection-NRXTNROW.js} +11 -11
- package/dist/{behavior-promotion-TB53MVMQ.js → behavior-promotion-MW7OQ72V.js} +10 -10
- package/dist/{behaviors-2XKHIDUD.js → behaviors-7AOK44QK.js} +9 -9
- package/dist/bin/agentic-ontology-backfill.js +9 -9
- package/dist/bin/agentic-reflection-backfill.js +10 -10
- package/dist/bin/agentic-semantic-label.js +9 -9
- package/dist/bin/backfill-conversations.js +8 -8
- package/dist/bin/backfill-responses.js +8 -8
- package/dist/bin/backfill-vectors.js +8 -8
- package/dist/bin/bulk-sync-postgres.js +17 -17
- package/dist/bin/cc-doctor.js +12 -11
- package/dist/bin/cleanup-stale-review-tasks.js +19 -19
- package/dist/bin/cli.js +24 -24
- package/dist/bin/deferred-daemon-restart.js +104 -103
- package/dist/bin/exe-agent-config.js +5 -5
- package/dist/bin/exe-agent.js +10 -10
- package/dist/bin/exe-assign.js +9 -9
- package/dist/bin/exe-boot.js +44 -43
- package/dist/bin/exe-call.js +9 -9
- package/dist/bin/exe-cloud.js +18 -18
- package/dist/bin/exe-config-dump.js +5 -5
- package/dist/bin/exe-dispatch.js +20 -20
- package/dist/bin/exe-doctor.js +7 -7
- package/dist/bin/exe-export-behaviors.js +13 -13
- package/dist/bin/exe-forget.js +11 -11
- package/dist/bin/exe-gateway.js +9 -9
- package/dist/bin/exe-grant.js +6 -6
- package/dist/bin/exe-healthcheck.js +12 -11
- package/dist/bin/exe-heartbeat.js +25 -25
- package/dist/bin/exe-kill.js +25 -25
- package/dist/bin/exe-launch-agent.js +34 -34
- package/dist/bin/exe-mcp.js +7 -6
- package/dist/bin/exe-memory-reads.js +8 -8
- package/dist/bin/exe-new-employee.js +11 -11
- package/dist/bin/exe-os-mcp-proxy.js +7 -6
- package/dist/bin/exe-pending-messages.js +20 -20
- package/dist/bin/exe-pending-notifications.js +19 -19
- package/dist/bin/exe-pending-reviews.js +20 -20
- package/dist/bin/exe-rename.js +7 -7
- package/dist/bin/exe-review.js +24 -24
- package/dist/bin/exe-search.js +10 -10
- package/dist/bin/exe-session-cleanup.js +26 -26
- package/dist/bin/exe-settings.js +19 -19
- package/dist/bin/exe-start-codex.js +20 -20
- package/dist/bin/exe-start-opencode.js +18 -18
- package/dist/bin/exe-status.js +21 -21
- package/dist/bin/exe-support.js +3 -3
- package/dist/bin/exe-team.js +5 -5
- package/dist/bin/git-sweep.js +21 -21
- package/dist/bin/graph-backfill.js +9 -9
- package/dist/bin/graph-export.js +9 -9
- package/dist/bin/hooks-cli.js +4 -4
- package/dist/bin/import-history.js +14 -13
- package/dist/bin/install.js +106 -105
- package/dist/bin/intercom-check.js +5 -5
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +5 -5
- package/dist/bin/postgres-agentic-reflection-backfill.js +2 -2
- package/dist/bin/postgres-agentic-semantic-backfill.js +1 -1
- package/dist/bin/pre-publish.js +1 -1
- package/dist/bin/reconcile-backlog.js +2 -2
- package/dist/bin/registry-proxy.js +1 -1
- package/dist/bin/repair-document-chunks.js +8 -8
- package/dist/bin/scan-tasks.js +20 -20
- package/dist/bin/setup.js +3 -3
- package/dist/bin/shard-migrate.js +9 -9
- package/dist/bin/stack-update.js +4 -4
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{boot-generation-34GD265Q.js → boot-generation-HG6LLZLY.js} +4 -4
- package/dist/{boot-review-sections-JYDDUJH5.js → boot-review-sections-STZ5EAIL.js} +18 -18
- package/dist/{bug-landed-reconciler-ORYLGRQI.js → bug-landed-reconciler-EO72HUI2.js} +7 -7
- package/dist/build-info.json +3 -3
- package/dist/build-manifest.json +970 -970
- package/dist/{capability-cards-IOFJOGID.js → capability-cards-C3SMHB2E.js} +3 -3
- package/dist/{capacity-monitor-CJSDRDLR.js → capacity-monitor-UI553HRL.js} +20 -20
- package/dist/{catchup-brief-ELSYIYVL.js → catchup-brief-VE2X4HML.js} +26 -26
- package/dist/{chunk-HBOSSJWS.js → chunk-23XUZHB7.js} +5 -5
- package/dist/{chunk-BG52IECQ.js → chunk-3AL2LO3L.js} +1 -1
- package/dist/{chunk-HPDR3EL7.js → chunk-3MDUKF3N.js} +4 -4
- package/dist/{chunk-BHKCSRJG.js → chunk-4M24XCTI.js} +663 -68
- package/dist/{chunk-RGPEUXOE.js → chunk-4MK6LOD6.js} +27 -3
- package/dist/{chunk-ZB34E2OV.js → chunk-4O7OUBEX.js} +10 -10
- package/dist/{chunk-Z5ERWCOL.js → chunk-4Q7H3TO7.js} +1 -1
- package/dist/{chunk-YTP6L76N.js → chunk-4RQ62XXK.js} +5 -5
- package/dist/{chunk-VDSAXP3N.js → chunk-4S6H2NWS.js} +4 -4
- package/dist/{chunk-DXZRXNIC.js → chunk-4W7Y67B5.js} +1 -1
- package/dist/{chunk-SS3FTK77.js → chunk-52Z435PH.js} +8 -3
- package/dist/{chunk-77EIMVAX.js → chunk-5N34MMKS.js} +1 -1
- package/dist/{chunk-UMLDPQ24.js → chunk-6EY6OFBC.js} +2 -2
- package/dist/{chunk-IMI5ZAOA.js → chunk-6JLVCMKH.js} +1 -1
- package/dist/{chunk-ZGRLIQLE.js → chunk-6RRPVE5O.js} +3 -3
- package/dist/{chunk-6SJ4SKWZ.js → chunk-6TB7UXCA.js} +1 -1
- package/dist/{chunk-342ZBEDI.js → chunk-6ZW6BRI4.js} +2 -2
- package/dist/{chunk-5QJEJA5H.js → chunk-7I6KVKFF.js} +3 -3
- package/dist/{chunk-4SLKFUA7.js → chunk-7LTAA55U.js} +5 -1
- package/dist/{chunk-FKANX6A7.js → chunk-7P2TDFZL.js} +1 -1
- package/dist/{chunk-SLJDYBLE.js → chunk-7R7KDRKV.js} +1 -1
- package/dist/{chunk-NRLJOV7M.js → chunk-7YX73K2R.js} +97 -58
- package/dist/{chunk-R5YD5DIP.js → chunk-APVU4Q5B.js} +16 -16
- package/dist/{chunk-7OX2AACL.js → chunk-B3ISLIKE.js} +2 -2
- package/dist/{chunk-CP6XE35Z.js → chunk-BHDDDNC6.js} +2 -2
- package/dist/{chunk-TEHJ5TOU.js → chunk-BIV4IHED.js} +12 -12
- package/dist/{chunk-5GYA4ERO.js → chunk-BM467PZN.js} +1 -1
- package/dist/{chunk-BER2YLZT.js → chunk-BPBEJD7U.js} +1 -1
- package/dist/{chunk-T4IDLAZM.js → chunk-BYP3DOUU.js} +13 -0
- package/dist/{chunk-U7A2EACP.js → chunk-C426MZMD.js} +3 -3
- package/dist/{chunk-TRZXFWRO.js → chunk-DACRR362.js} +6 -6
- package/dist/{chunk-232YVOFB.js → chunk-DE2V7547.js} +2 -2
- package/dist/{chunk-QHQW3VHV.js → chunk-DIKLSAJE.js} +1 -1
- package/dist/{chunk-XC6EXJBA.js → chunk-DM4VTXM6.js} +4 -4
- package/dist/{chunk-EEY77PKF.js → chunk-DMYJVGQM.js} +1 -1
- package/dist/{chunk-ZSZVJ2FR.js → chunk-E2Z3F26R.js} +1 -1
- package/dist/{chunk-GRIGIKC4.js → chunk-EHILXBVT.js} +3 -3
- package/dist/{chunk-AIDYWH4D.js → chunk-EIM7OGTD.js} +2 -2
- package/dist/{chunk-7E4KZIX7.js → chunk-ESO5JDOT.js} +1 -1
- package/dist/{chunk-SPHPROWZ.js → chunk-F5ZRHLG5.js} +2 -2
- package/dist/{chunk-BIBBNDM3.js → chunk-FBZ32BD4.js} +1 -1
- package/dist/{chunk-FBB2YMKB.js → chunk-FJKUFMNF.js} +1 -1
- package/dist/{chunk-MNEVSKUY.js → chunk-FZT4VQP7.js} +1 -1
- package/dist/{chunk-ZLMVXK4O.js → chunk-G3ZYXXO7.js} +11 -11
- package/dist/{chunk-6RWTLW75.js → chunk-GEQQGN3J.js} +7 -7
- package/dist/{chunk-7NR6LMGH.js → chunk-GG73NHZD.js} +2 -2
- package/dist/{chunk-VGP4T2L6.js → chunk-GKPPLIMJ.js} +5 -5
- package/dist/{chunk-ERIXGUSV.js → chunk-GPWXUU3L.js} +1 -1
- package/dist/{chunk-OAP66FCX.js → chunk-GRAMRMWS.js} +2 -2
- package/dist/{chunk-IVX4CW6I.js → chunk-GTRB6DGI.js} +2 -2
- package/dist/{chunk-WQ7YIU4M.js → chunk-HFSFWMID.js} +3 -3
- package/dist/{chunk-5FOJ6N3V.js → chunk-HFXBL7XE.js} +1 -1
- package/dist/{chunk-36QUBTID.js → chunk-HK7HIDXP.js} +2 -2
- package/dist/{chunk-323DU3UM.js → chunk-HNGAM3U4.js} +3 -3
- package/dist/{chunk-XIJIFRPA.js → chunk-HRKN3DQE.js} +8 -8
- package/dist/{chunk-AO2HCOE6.js → chunk-HRYWB4TO.js} +3 -3
- package/dist/{chunk-Q2RTUZXB.js → chunk-HUMNRJZE.js} +4 -4
- package/dist/{chunk-KAKURNNS.js → chunk-IPANAGA3.js} +1 -1
- package/dist/{chunk-RZTSXHWF.js → chunk-IPBNHPTE.js} +9 -9
- package/dist/{chunk-SDJ3TONY.js → chunk-IUBCS6TA.js} +3 -3
- package/dist/{chunk-C7SKFVXQ.js → chunk-IURGBN5B.js} +4 -4
- package/dist/{chunk-GWAN2BDB.js → chunk-IVXELUEQ.js} +25 -12
- package/dist/{chunk-DG3DWHYJ.js → chunk-IZ24HRDC.js} +3 -3
- package/dist/{chunk-G3ABALZ7.js → chunk-JJYAETCO.js} +4 -4
- package/dist/{chunk-6XJYUC7K.js → chunk-JR3GTBV3.js} +1 -1
- package/dist/{chunk-MLIRYXZ2.js → chunk-K7DAE2HO.js} +1 -1
- package/dist/{chunk-ZGNMI2WJ.js → chunk-KBHK2WNO.js} +1 -1
- package/dist/{chunk-MAY4VWEG.js → chunk-KCRSJ3VU.js} +3 -3
- package/dist/{chunk-NF7JS7XW.js → chunk-KIJRAZWR.js} +1 -1
- package/dist/{chunk-35PGCSNN.js → chunk-KPLMY2GT.js} +4 -4
- package/dist/{chunk-USZHUBHT.js → chunk-L4ISXVC5.js} +1 -1
- package/dist/{chunk-UNNOYMQI.js → chunk-L5CPS34O.js} +1 -1
- package/dist/{chunk-SJTFU3YJ.js → chunk-LE3DIA25.js} +3 -3
- package/dist/{chunk-DEBKL7WW.js → chunk-LMF2YC5C.js} +4 -4
- package/dist/{chunk-LDYQPD5H.js → chunk-LVEMYNYH.js} +3 -3
- package/dist/{chunk-G4MVORCE.js → chunk-M4N7I2H5.js} +5 -5
- package/dist/{chunk-5F74HGSQ.js → chunk-M7774YLB.js} +1 -1
- package/dist/{chunk-3AOPBH5S.js → chunk-ME733Y2F.js} +1 -1
- package/dist/{chunk-CCY37D3C.js → chunk-N3JEYUDV.js} +2 -2
- package/dist/{chunk-3X733RHO.js → chunk-NDCW4G55.js} +1 -1
- package/dist/{chunk-Y73MI7UH.js → chunk-NFNM64A7.js} +12 -12
- package/dist/{chunk-3AC6WJNP.js → chunk-NHQWPKX7.js} +2 -2
- package/dist/{chunk-YB5IW32Y.js → chunk-NK4JHJNP.js} +4 -4
- package/dist/{chunk-IZWMWJZT.js → chunk-NVM3SKJ4.js} +1 -1
- package/dist/{chunk-VSJ3Y26C.js → chunk-OE7TAEOG.js} +1 -1
- package/dist/{chunk-D6PNMFPF.js → chunk-OEHZ46WQ.js} +2 -2
- package/dist/{chunk-4MQDDFRN.js → chunk-OFT5KSBM.js} +1 -1
- package/dist/{chunk-FEJK36FV.js → chunk-OISOA6NX.js} +2 -2
- package/dist/{chunk-L23CONP7.js → chunk-PCFYNK7V.js} +3 -3
- package/dist/{chunk-OMMQNLFE.js → chunk-PKM456D2.js} +1 -1
- package/dist/{chunk-G66AOAYN.js → chunk-PZDAPIQL.js} +1 -1
- package/dist/{chunk-QZJY4RMF.js → chunk-Q4GS5VW7.js} +3 -3
- package/dist/{chunk-DOO6M2XM.js → chunk-QK3Z4TKQ.js} +5 -5
- package/dist/{chunk-KZSBPAEJ.js → chunk-QPMKVSHU.js} +2 -2
- package/dist/{chunk-ZL3D7XTR.js → chunk-QUK3UDZV.js} +3 -3
- package/dist/{chunk-4U2TAOW7.js → chunk-QYIR64RR.js} +1 -1
- package/dist/{chunk-QWXBLCVK.js → chunk-R6CKQLEA.js} +2 -2
- package/dist/{chunk-X6HOIDIR.js → chunk-R7QZXQPU.js} +3 -3
- package/dist/{chunk-G6D6U2EY.js → chunk-RZ23QQCI.js} +4 -4
- package/dist/{chunk-PYS43F2X.js → chunk-RZBSVTOL.js} +1 -1
- package/dist/{chunk-RHEIOXVL.js → chunk-SA66WRBT.js} +1 -1
- package/dist/{chunk-KVPCFVAH.js → chunk-SFGFNJBR.js} +1 -1
- package/dist/{chunk-S5OI42DL.js → chunk-SGR4ZQAV.js} +3 -3
- package/dist/{chunk-IQI5LAEK.js → chunk-SY53PYLU.js} +1 -1
- package/dist/{chunk-7DG3WBGN.js → chunk-SYUJCVJG.js} +1 -1
- package/dist/{chunk-HJ2DJJIK.js → chunk-T2PAFWRK.js} +8 -8
- package/dist/{chunk-AWNX33WP.js → chunk-TBYWOHTE.js} +1 -1
- package/dist/{chunk-DDAOY3DL.js → chunk-TCV3WA5I.js} +1 -1
- package/dist/{chunk-3VW5ZP2F.js → chunk-UWGQNJIE.js} +1 -1
- package/dist/{chunk-3DIP37BT.js → chunk-UXJAW4IQ.js} +2 -2
- package/dist/{chunk-QJTG3DN7.js → chunk-VLAENYCN.js} +1 -1
- package/dist/{chunk-TLELTVAN.js → chunk-VYKXRSHU.js} +1 -1
- package/dist/{chunk-VFUMCL6H.js → chunk-W2VDJKTB.js} +1 -1
- package/dist/{chunk-PCLIU4BP.js → chunk-W5XAB2SW.js} +154 -152
- package/dist/{chunk-6GBGKSNQ.js → chunk-WYNIWJRN.js} +5 -5
- package/dist/{chunk-7VSPHUIB.js → chunk-XAGIZVYI.js} +26 -26
- package/dist/{chunk-XT7ZZJVD.js → chunk-XCPD7NGP.js} +1 -1
- package/dist/{chunk-52JOFQOK.js → chunk-XFGS22VE.js} +1 -1
- package/dist/{chunk-YV5JIEYI.js → chunk-XGPBHKU3.js} +2 -2
- package/dist/{chunk-WJ53NNEV.js → chunk-Y5LJYDX4.js} +1 -0
- package/dist/{chunk-GVVWEBTD.js → chunk-YLWKWEJJ.js} +3 -3
- package/dist/{chunk-6Y7TK4EA.js → chunk-YUAOQJVV.js} +2 -2
- package/dist/{chunk-KP3J52RW.js → chunk-YVS77JPW.js} +3 -3
- package/dist/{chunk-XA5FPMYR.js → chunk-ZEHBSA25.js} +2 -2
- package/dist/{chunk-6ENEX5UH.js → chunk-ZYOIH5NY.js} +6 -6
- package/dist/{cleanup-graph-garbage-M5OYEPRR.js → cleanup-graph-garbage-NKAJSCWZ.js} +9 -9
- package/dist/{cli-shutdown-AY2FMXD6.js → cli-shutdown-F3DFDCB5.js} +1 -1
- package/dist/{cloud-sync-command-PRC4GV62.js → cloud-sync-command-3YBLSMAL.js} +2 -2
- package/dist/{cloud-sync-db-init-IYXPCNSJ.js → cloud-sync-db-init-JWSPAFKY.js} +1 -1
- package/dist/{cloud-sync-shutdown-3F6XASFF.js → cloud-sync-shutdown-4R6RIO67.js} +3 -3
- package/dist/{co-activation-LB56BYW2.js → co-activation-2ZRANV3Q.js} +3 -3
- package/dist/{co-occurrence-TKPZB3IR.js → co-occurrence-6EELW2L2.js} +7 -7
- package/dist/{consent-passphrase-YQLAAPPC.js → consent-passphrase-TDR263MC.js} +2 -2
- package/dist/{content-extractor-XCS6QGM4.js → content-extractor-OVD7PTSN.js} +2 -2
- package/dist/{conversation-entity-extractor-J2UZGFG3.js → conversation-entity-extractor-KUJN3MOH.js} +4 -4
- package/dist/{crdt-sync-GE6DVV2F.js → crdt-sync-IX43KVQ3.js} +4 -4
- package/dist/{crm-webhook-6HXNLEQV.js → crm-webhook-GSCIW6CE.js} +2 -2
- package/dist/{cto-delegation-gate-QSWDPH67.js → cto-delegation-gate-ZWD4EFRR.js} +20 -19
- package/dist/{daemon-orchestration-YJ4GMHVM.js → daemon-orchestration-WL6V4QL4.js} +24 -24
- package/dist/{doc-graph-extractor-XLAUARWE.js → doc-graph-extractor-NJ7ZZC2C.js} +7 -7
- package/dist/{documents-SZ76YQ3Q.js → documents-O7WYZFFE.js} +9 -9
- package/dist/{dreaming-ZQGMOZ2E.js → dreaming-TUESPDT3.js} +24 -24
- package/dist/{employee-boot-brief-SV5JHCJL.js → employee-boot-brief-UCP6QLN4.js} +28 -28
- package/dist/{entity-boost-KTADWOGJ.js → entity-boost-TK43XT24.js} +1 -1
- package/dist/{exe-drift-CT36U5DX.js → exe-drift-QD6LUZT2.js} +4 -4
- package/dist/{exe-export-EJ4B74OU.js → exe-export-QIUNHFSS.js} +11 -11
- package/dist/{exe-import-UA6OIZ4C.js → exe-import-3UFOLHEW.js} +11 -11
- package/dist/{exe-key-SKOOVJCT.js → exe-key-D5NDKGHT.js} +104 -103
- package/dist/{exe-org-WQARAD3U.js → exe-org-UWDJBOCV.js} +32 -32
- package/dist/{exe-snapshot-2OXDANU3.js → exe-snapshot-P6SFODEN.js} +27 -27
- package/dist/{fast-db-init-YFUMI4NH.js → fast-db-init-SD7JZSEC.js} +1 -1
- package/dist/{founder-context-DMWIIDJ2.js → founder-context-QIXDZIJX.js} +2 -2
- package/dist/{founder-monitor-envelope-JYFWXZQ4.js → founder-monitor-envelope-TLOC4UYG.js} +4 -4
- package/dist/gateway/index.js +11 -11
- package/dist/{gateway-client-ELHI2DWX.js → gateway-client-CQTSYJLP.js} +1 -1
- package/dist/{git-staleness-K7HHMBWI.js → git-staleness-JSQTHB4Z.js} +3 -3
- package/dist/{global-procedures-ERZJFJUA.js → global-procedures-T3RKI4QX.js} +6 -6
- package/dist/{graph-auto-extract-LUQ6QZ4P.js → graph-auto-extract-V75GSTNX.js} +7 -7
- package/dist/{graph-query-KRNMWF77.js → graph-query-VAQN2RK3.js} +1 -1
- package/dist/{graph-rag-2W26GEGZ.js → graph-rag-GBA5E3QC.js} +4 -4
- package/dist/{hook-integrity-QFBZE5FK.js → hook-integrity-II6QK6Y4.js} +1 -1
- package/dist/{hook-prefetch-WP3PEE4H.js → hook-prefetch-5EHPOYY3.js} +19 -19
- package/dist/hooks/bug-report-worker.js +23 -23
- package/dist/hooks/codex-stop-task-finalizer.js +25 -25
- package/dist/hooks/commit-complete.js +23 -23
- package/dist/hooks/error-recall.js +14 -13
- package/dist/hooks/exe-heartbeat-hook.js +7 -6
- package/dist/hooks/ingest-worker.js +35 -9
- package/dist/hooks/ingest.js +16 -15
- package/dist/hooks/instructions-loaded.js +9 -8
- package/dist/hooks/manifest.json +20 -20
- package/dist/hooks/notification.js +8 -7
- package/dist/hooks/post-compact.js +7 -6
- package/dist/hooks/post-tool-combined.js +13 -13
- package/dist/hooks/pre-compact.js +24 -23
- package/dist/hooks/pre-tool-use.js +2 -2
- package/dist/hooks/prompt-submit.js +43 -42
- package/dist/hooks/session-end.js +29 -28
- package/dist/hooks/session-start.js +18 -18
- package/dist/hooks/stop.js +27 -26
- package/dist/hooks/subagent-stop.js +28 -27
- package/dist/hooks/summary-worker.js +27 -27
- package/dist/index.js +31 -31
- package/dist/{installer-ADGJLDVY.js → installer-ILYC4LI5.js} +9 -8
- package/dist/{installer-HCFVVQ6F.js → installer-MPVQ5L22.js} +9 -8
- package/dist/{installer-ZNP4S32U.js → installer-XEEZSF3V.js} +9 -8
- package/dist/{intercom-queue-NRECOZFL.js → intercom-queue-QGHAW2KO.js} +18 -18
- package/dist/lib/agent-config.js +2 -2
- package/dist/lib/cloud-sync.js +17 -17
- package/dist/lib/consolidation.js +10 -10
- package/dist/lib/crypto.js +3 -3
- package/dist/lib/database.js +3 -3
- package/dist/lib/db-backup.js +1 -1
- package/dist/lib/db-write-worker.js +3 -3
- package/dist/lib/db.js +3 -3
- package/dist/lib/device-registry.js +1 -1
- package/dist/lib/employee-templates.js +7 -7
- package/dist/lib/employees.js +3 -3
- package/dist/lib/exe-daemon.js +90 -90
- package/dist/lib/hybrid-search.js +10 -10
- package/dist/lib/identity.js +3 -3
- package/dist/lib/keychain.js +1 -1
- package/dist/lib/license.js +2 -2
- package/dist/lib/messaging.js +19 -19
- package/dist/lib/post-tool-memory.js +46 -7
- package/dist/lib/registry-proxy.js +1 -1
- package/dist/lib/reminders.js +4 -4
- package/dist/lib/runtime-table.js +1 -1
- package/dist/lib/schedules.js +9 -9
- package/dist/lib/session-registry.js +5 -5
- package/dist/lib/skill-learning.js +10 -10
- package/dist/lib/store.js +8 -8
- package/dist/lib/task-router.js +4 -4
- package/dist/lib/tasks.js +20 -20
- package/dist/lib/tmux-routing.js +18 -18
- package/dist/lib/token-spend.js +4 -4
- package/dist/lib/ws-client.js +1 -1
- package/dist/{license-gate-CB2OCT2G.js → license-gate-CARN6AB6.js} +3 -3
- package/dist/{license-recheck-ZAEPWMY7.js → license-recheck-7Z3LS6YS.js} +1 -1
- package/dist/{license-sync-UW4UH7F5.js → license-sync-PUQV3HSZ.js} +2 -2
- package/dist/{local-secret-inventory-2DVUEFKD.js → local-secret-inventory-5J7P24ZR.js} +2 -2
- package/dist/mcp/register-tools.js +103 -102
- package/dist/mcp/server.js +103 -102
- package/dist/mcp/tools/complete-reminder.js +5 -5
- package/dist/mcp/tools/create-reminder.js +5 -5
- package/dist/mcp/tools/create-task.js +24 -23
- package/dist/mcp/tools/deactivate-behavior.js +13 -12
- package/dist/mcp/tools/list-reminders.js +5 -5
- package/dist/mcp/tools/list-tasks.js +24 -23
- package/dist/mcp/tools/send-message.js +23 -22
- package/dist/mcp/tools/update-task.js +21 -21
- package/dist/{mcp-http-config-IPXCT6Y5.js → mcp-http-config-RJKTZPHZ.js} +7 -6
- package/dist/{mcp-session-identity-GRKQ6X6M.js → mcp-session-identity-HN444A3G.js} +18 -18
- package/dist/{memory-cards-JN32U2KA.js → memory-cards-AT3QCCWU.js} +8 -8
- package/dist/{memory-graph-extractor-3LN2GSMZ.js → memory-graph-extractor-B43UWGV5.js} +8 -8
- package/dist/{memory-maintenance-YTNSNHD5.js → memory-maintenance-WDLL3ZX3.js} +2 -2
- package/dist/{memory-poisoning-defense-ISKHR76K.js → memory-poisoning-defense-TS4WNW4S.js} +3 -3
- package/dist/{memory-pressure-watchdog-P4QHXE3Z.js → memory-pressure-watchdog-6YH7S6W7.js} +19 -19
- package/dist/{memory-reflection-R6TAIUOR.js → memory-reflection-N6NSYW6S.js} +8 -8
- package/dist/{memory-write-repository-JTJE3AG4.js → memory-write-repository-D35RDO62.js} +1 -1
- package/dist/{monitor-grants-KX5J6AQ7.js → monitor-grants-FH4PNYN5.js} +3 -3
- package/dist/{monitor-identity-WXIGBLYH.js → monitor-identity-LK5ZCCND.js} +2 -2
- package/dist/{notification-ledger-DKHZKGZX.js → notification-ledger-3WJYJGGS.js} +19 -19
- package/dist/{notifications-ZQVBRXG5.js → notifications-T5C2CVB3.js} +18 -18
- package/dist/{orchestration-events-B3OHNBR4.js → orchestration-events-73VEJT7Q.js} +4 -4
- package/dist/{orchestrator-OG6BEUHS.js → orchestrator-3O657734.js} +20 -20
- package/dist/{org-brief-session-MHDLBUO4.js → org-brief-session-EGB35QLM.js} +15 -15
- package/dist/{org-consent-policy-OP5L627O.js → org-consent-policy-MSVSRI53.js} +5 -5
- package/dist/{org-join-H3PBH7US.js → org-join-4BK2XJJI.js} +9 -9
- package/dist/{org-key-admin-UEDWV3F4.js → org-key-admin-EUSSGXQ3.js} +11 -11
- package/dist/{org-key-epoch-BW72L7RI.js → org-key-epoch-NMEWDT5L.js} +5 -5
- package/dist/{org-key-pin-XBLJOF4A.js → org-key-pin-HUSXGINB.js} +3 -3
- package/dist/{org-membership-UHVIK3UH.js → org-membership-B74IWEM5.js} +4 -4
- package/dist/{org-partner-config-G3BGVBQT.js → org-partner-config-5FJTJABN.js} +8 -8
- package/dist/{org-partner-runtime-H6MROHM7.js → org-partner-runtime-GN4GFWI2.js} +15 -15
- package/dist/{org-row-visibility-JK5REXVH.js → org-row-visibility-PBZ2TSCR.js} +1 -1
- package/dist/{pipeline-router-7L7AV55A.js → pipeline-router-2IELBSVJ.js} +4 -4
- package/dist/{plan-limits-RKGJXYKE.js → plan-limits-4GXK5PFT.js} +6 -6
- package/dist/{platform-procedures-RTD5E3BD.js → platform-procedures-QP3W2NLH.js} +1 -1
- package/dist/{pre-tool-use-impl-Q3JG5RNT.js → pre-tool-use-impl-CY73PRJP.js} +42 -42
- package/dist/{project-name-KQUBSY5O.js → project-name-337ERIAX.js} +4 -4
- package/dist/{projection-worker-LGELT4E6.js → projection-worker-W476IG6V.js} +2 -2
- package/dist/{prospective-memory-ZESC2I6H.js → prospective-memory-5INB7NUL.js} +3 -3
- package/dist/{push-notifications-YL2DRTGQ.js → push-notifications-YVOP4KGN.js} +19 -19
- package/dist/{reproject-worktree-memories-VPZRYPQM.js → reproject-worktree-memories-OGBR3CMO.js} +18 -18
- package/dist/{reranker-XC2LXYD3.js → reranker-W7WCJH6Y.js} +1 -1
- package/dist/{retrieval-health-H4QJN3UZ.js → retrieval-health-R6MGXLTP.js} +1 -1
- package/dist/{review-polling-67WTTJHH.js → review-polling-TKAWVY6G.js} +19 -19
- package/dist/runtime/index.js +23 -23
- package/dist/{session-events-7XFO27M5.js → session-events-HUCZ7TOR.js} +19 -19
- package/dist/{session-kill-telemetry-2F5INRA6.js → session-kill-telemetry-RWRWOW4C.js} +19 -19
- package/dist/{session-scope-GEXQAEYT.js → session-scope-5CDRHV75.js} +18 -18
- package/dist/{setup-wizard-NQI6GC2N.js → setup-wizard-RBTJAZOP.js} +3 -3
- package/dist/{shard-manager-TJ323N7P.js → shard-manager-LRPAAQA4.js} +2 -2
- package/dist/{skill-refinement-EQ3YVAGM.js → skill-refinement-MDXKDCY6.js} +4 -4
- package/dist/{skill-retrieval-LABSBPVT.js → skill-retrieval-OWY6MTCX.js} +12 -12
- package/dist/{skill-usage-WNCOURZY.js → skill-usage-GNV737U5.js} +4 -4
- package/dist/{stack-generate-manifest-RKQBTLEY.js → stack-generate-manifest-S4SBLKBY.js} +4 -4
- package/dist/{stack-promote-ZVOIMFRF.js → stack-promote-U4EZNLOV.js} +4 -4
- package/dist/{stack-release-ZCHLWJXF.js → stack-release-4VBGOYGK.js} +5 -5
- package/dist/{stack-update-AP6OC7LU.js → stack-update-C5YKHE7A.js} +3 -3
- package/dist/{steward-gate-BNI4K3GP.js → steward-gate-QFPXQBUZ.js} +4 -4
- package/dist/{subagent-brief-injection-ZXKMB5TZ.js → subagent-brief-injection-GDXO5WNS.js} +33 -32
- package/dist/{subagent-spawn-ledger-OI23OT4I.js → subagent-spawn-ledger-PDICC43I.js} +2 -1
- package/dist/{support-bug-actions-OYM3K4RU.js → support-bug-actions-4XEKXIIO.js} +4 -4
- package/dist/{support-inbox-2JOCSJUT.js → support-inbox-Y7AFCOGM.js} +17 -16
- package/dist/{support-outbox-6AE2NQTA.js → support-outbox-2WYS3HWR.js} +2 -2
- package/dist/{task-enforcement-LUXQXSE6.js → task-enforcement-CN3Q4PEH.js} +19 -19
- package/dist/{task-request-inbox-4TOOJ6IR.js → task-request-inbox-AY3C6DND.js} +5 -5
- package/dist/{task-scope-OEA6KUTX.js → task-scope-AMR3Z3DJ.js} +18 -18
- package/dist/{tasks-crud-GBNROE5E.js → tasks-crud-2GHKIZOM.js} +18 -18
- package/dist/{tasks-notify-FMSTX6Q5.js → tasks-notify-Z53446KM.js} +19 -19
- package/dist/{tasks-review-EAOT3SKK.js → tasks-review-APRNSHMQ.js} +18 -18
- package/dist/{telemetry-upload-OFNKPITF.js → telemetry-upload-5XR42SQN.js} +8 -8
- package/dist/{token-budget-7K5PMPP2.js → token-budget-TTNJXI7W.js} +4 -4
- package/dist/{tool-telemetry-HC7NHNWD.js → tool-telemetry-36ST422N.js} +1 -1
- package/dist/tui/App.js +30 -30
- package/dist/{tui-data-C6STFM4Z.js → tui-data-AP5TPUOQ.js} +22 -22
- package/dist/{update-support-KOJIIKHY.js → update-support-SFTI2PUD.js} +15 -14
- package/dist/{whatsapp-JDAZGYPN.js → whatsapp-5CXE3JHG.js} +2 -2
- package/dist/{wiki-acl-7JCCDS7U.js → wiki-acl-N754BC2W.js} +1 -1
- package/dist/{work-claims-MDJ3JEUD.js → work-claims-OAICQBWO.js} +4 -4
- package/dist/{work-state-heartbeat-GFPR5OVW.js → work-state-heartbeat-MTTUGMPU.js} +1 -1
- package/dist/{workflow-engine-YYR2DNFP.js → workflow-engine-RID3QL2U.js} +2 -2
- package/dist/{worktree-XJITSSNN.js → worktree-XWVNDBRD.js} +5 -5
- package/dist/{worktree-sweep-3FJSAGNK.js → worktree-sweep-6VEHGH7U.js} +6 -6
- package/package.json +6 -5
- package/release-notes.json +9 -10
- package/stack.release.json +3 -3
- package/dist/{chunk-ZWQWLUZA.js → chunk-33PG3KNY.js} +0 -0
- package/dist/{chunk-MY6P4E5J.js → chunk-64UAHPXA.js} +0 -0
- package/dist/{chunk-7GCPTNHK.js → chunk-CLV7ALXV.js} +0 -0
- package/dist/{chunk-7QIEF6OZ.js → chunk-EZQ4W3WW.js} +0 -0
- package/dist/{chunk-DHRIW7RJ.js → chunk-FLO24BNN.js} +0 -0
- package/dist/{chunk-USDMXIPZ.js → chunk-FUZHMV7K.js} +0 -0
- package/dist/{chunk-E5RCYOLD.js → chunk-LDHJX4TZ.js} +0 -0
- package/dist/{chunk-3NHFXUWK.js → chunk-OEEHLATI.js} +0 -0
- package/dist/{chunk-HEEKYE6D.js → chunk-OLMLA377.js} +0 -0
- package/dist/{chunk-QYCRJ76J.js → chunk-WIDOLS7T.js} +0 -0
- package/dist/{chunk-FLC2S4BD.js → chunk-YBB43SXC.js} +0 -0
- package/dist/{chunk-GVTIDG37.js → chunk-YG4DZZ6J.js} +0 -0
- package/dist/{core-memory-DQ5A24DD.js → core-memory-WR7I7DIP.js} +0 -0
- package/dist/{hook-tamper-log-ARGWCXKJ.js → hook-tamper-log-HTWEP37U.js} +3 -3
- /package/dist/{memory-isolation-2M3GFNWG.js → memory-isolation-4RQJ5RCK.js} +0 -0
- /package/dist/{oauth-server-NWVJ26NL.js → oauth-server-VBDMZIEV.js} +0 -0
- /package/dist/{project-boot-JAGN65MZ.js → project-boot-G7T5WHO6.js} +0 -0
|
@@ -278,11 +278,13 @@ function assessObservedAt(raw, now) {
|
|
|
278
278
|
return ok;
|
|
279
279
|
}
|
|
280
280
|
var HEX_SHA = /^[0-9a-f]{7,64}$/i;
|
|
281
|
+
var ACCOUNTABILITY_PURPOSES = /* @__PURE__ */ new Set(["verdict", "routing_verdict"]);
|
|
281
282
|
function assessAttribution(raw, purpose, context = {}) {
|
|
282
283
|
if (raw === void 0 || raw === null || raw === "") {
|
|
284
|
+
const purposeLabel = purpose === "routing_verdict" ? "close" : purpose;
|
|
283
285
|
return deny(
|
|
284
286
|
"attribution_missing",
|
|
285
|
-
`this ${
|
|
287
|
+
`this ${purposeLabel} requires attribution: which agent produced it, with which model, and when the evidence was observed`
|
|
286
288
|
);
|
|
287
289
|
}
|
|
288
290
|
let attribution = raw;
|
|
@@ -306,10 +308,10 @@ function assessAttribution(raw, purpose, context = {}) {
|
|
|
306
308
|
`"${agent}" is a role, not an identity. Records attributed to "admin" are exactly why past verdicts cannot be traced to anyone \u2014 name the actual agent`
|
|
307
309
|
);
|
|
308
310
|
}
|
|
309
|
-
if (purpose
|
|
311
|
+
if (ACCOUNTABILITY_PURPOSES.has(purpose) && isUnresolvedIdentity(agent)) {
|
|
310
312
|
return deny(
|
|
311
313
|
"attribution_agent_placeholder",
|
|
312
|
-
`"${agent}" is the identity resolver's fallback, not an agent \u2014 it is what a call from the launchd daemon carries when there is no active-agent marker, no tmux session and no AGENT_ID. A verdict signed with it is signed by nobody. Pass the real employee name of whoever made this call`
|
|
314
|
+
`"${agent}" is the identity resolver's fallback, not an agent \u2014 it is what a call from the launchd daemon carries when there is no active-agent marker, no tmux session and no AGENT_ID. A ${purpose === "verdict" ? "verdict" : "close"} signed with it is signed by nobody. Pass the real employee name of whoever made this call`
|
|
313
315
|
);
|
|
314
316
|
}
|
|
315
317
|
const modelResult = assessModel(attribution.model, { allowAutomation: context.allowAutomation === true });
|
|
@@ -359,6 +361,10 @@ function assessAttribution(raw, purpose, context = {}) {
|
|
|
359
361
|
}
|
|
360
362
|
|
|
361
363
|
// src/shared/verification-artifact.ts
|
|
364
|
+
var GITHUB_ISSUE_URL_RE = /^https:\/\/github\.com\/AskExe\/[a-zA-Z0-9._-]+\/issues\/[1-9][0-9]*$/;
|
|
365
|
+
function isValidGithubIssueUrl(value) {
|
|
366
|
+
return typeof value === "string" && GITHUB_ISSUE_URL_RE.test(value);
|
|
367
|
+
}
|
|
362
368
|
var VERIFIER_BACKED_DISPOSITIONS = /* @__PURE__ */ new Set(["not_a_defect", "superseded"]);
|
|
363
369
|
var MIN_DISPOSITION_REASON_CHARS = 40;
|
|
364
370
|
var MIN_WONTFIX_REASON_CHARS = 120;
|
|
@@ -620,6 +626,24 @@ function assessOpsTranscript(artifact, context) {
|
|
|
620
626
|
return ok2;
|
|
621
627
|
}
|
|
622
628
|
function assessDisposition(disposition, input) {
|
|
629
|
+
if (disposition === "migrated") {
|
|
630
|
+
if (str3(input.status) !== "closed") {
|
|
631
|
+
return deny2(
|
|
632
|
+
"migrated_requires_closed",
|
|
633
|
+
`disposition='migrated' is only valid with status='closed' (got status='${str3(input.status) || "undefined"}'). 'migrated' records where the bug went, not that it was fixed \u2014 pass status='closed', not 'fixed'.`
|
|
634
|
+
);
|
|
635
|
+
}
|
|
636
|
+
if (!isValidGithubIssueUrl(input.github_issue_url)) {
|
|
637
|
+
return input.github_issue_url === void 0 || input.github_issue_url === null || input.github_issue_url === "" ? deny2(
|
|
638
|
+
"github_issue_url_missing",
|
|
639
|
+
"closing with disposition='migrated' requires github_issue_url \u2014 the GitHub Issue this bug was moved to"
|
|
640
|
+
) : deny2(
|
|
641
|
+
"github_issue_url_invalid",
|
|
642
|
+
"github_issue_url must be a URL of the form https://github.com/AskExe/<repo>/issues/<n>"
|
|
643
|
+
);
|
|
644
|
+
}
|
|
645
|
+
return ok2;
|
|
646
|
+
}
|
|
623
647
|
const reason = str3(input.disposition_reason).replace(/\s+/g, " ");
|
|
624
648
|
if (!reason) {
|
|
625
649
|
return deny2(
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isCrdtSyncEnabled
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BPBEJD7U.js";
|
|
4
4
|
import {
|
|
5
5
|
compress,
|
|
6
6
|
decompress
|
|
@@ -8,14 +8,14 @@ import {
|
|
|
8
8
|
import {
|
|
9
9
|
orgMembershipsPath,
|
|
10
10
|
orgModeActive
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-K7DAE2HO.js";
|
|
12
12
|
import {
|
|
13
13
|
activeRecipientPubKeys,
|
|
14
14
|
grantsPath,
|
|
15
15
|
isGrantsMacPrimed,
|
|
16
16
|
primeGrantsMacKey,
|
|
17
17
|
warnActiveMonitoringOnce
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-TCV3WA5I.js";
|
|
19
19
|
import {
|
|
20
20
|
assertGateAndGrantsColocated
|
|
21
21
|
} from "./chunk-NPXIS2RY.js";
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
import {
|
|
26
26
|
GHOST_BEHAVIOR_SQL,
|
|
27
27
|
isGhostBehaviorRow
|
|
28
|
-
} from "./chunk-
|
|
28
|
+
} from "./chunk-F5ZRHLG5.js";
|
|
29
29
|
import {
|
|
30
30
|
isTransientDaemonTransportError,
|
|
31
31
|
retryOnDaemonTransportError
|
|
@@ -36,17 +36,17 @@ import {
|
|
|
36
36
|
encryptSyncBlob,
|
|
37
37
|
initSyncCrypto,
|
|
38
38
|
isSyncCryptoInitialized
|
|
39
|
-
} from "./chunk-
|
|
39
|
+
} from "./chunk-OFT5KSBM.js";
|
|
40
40
|
import {
|
|
41
41
|
getClient,
|
|
42
42
|
isGenuineCorruptionError,
|
|
43
43
|
loadEmployees,
|
|
44
44
|
registerBinSymlinks,
|
|
45
45
|
saveEmployees
|
|
46
|
-
} from "./chunk-
|
|
46
|
+
} from "./chunk-3MDUKF3N.js";
|
|
47
47
|
import {
|
|
48
48
|
loadDeviceId
|
|
49
|
-
} from "./chunk-
|
|
49
|
+
} from "./chunk-DIKLSAJE.js";
|
|
50
50
|
import {
|
|
51
51
|
EXE_AI_DIR
|
|
52
52
|
} from "./chunk-MMS2HBRT.js";
|
|
@@ -72,7 +72,7 @@ var _lastSealOrgMode = null;
|
|
|
72
72
|
async function getSyncCipher() {
|
|
73
73
|
if (_resolved) return _resolved;
|
|
74
74
|
if (!orgModeActive()) {
|
|
75
|
-
const mod = await import("./founder-monitor-envelope-
|
|
75
|
+
const mod = await import("./founder-monitor-envelope-TLOC4UYG.js");
|
|
76
76
|
_monitoredWriter = mod.encryptMonitoredSyncBlob;
|
|
77
77
|
_founderModuleLinked = true;
|
|
78
78
|
}
|
|
@@ -1283,7 +1283,7 @@ async function cloudSync(config, options) {
|
|
|
1283
1283
|
})
|
|
1284
1284
|
};
|
|
1285
1285
|
if (shouldUseCrdtMergeForCloudSync()) {
|
|
1286
|
-
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-
|
|
1286
|
+
const { initCrdtDoc, importExistingMemories, readAllMemories } = await import("./crdt-sync-IX43KVQ3.js");
|
|
1287
1287
|
initCrdtDoc();
|
|
1288
1288
|
importExistingMemories(
|
|
1289
1289
|
pullResult.records.map((rec) => ({
|
|
@@ -1844,7 +1844,7 @@ async function cloudSync(config, options) {
|
|
|
1844
1844
|
const artifactResult = { pushed: 0, frozen: false, remaining: 0 };
|
|
1845
1845
|
if (!shouldSkip("artifacts")) {
|
|
1846
1846
|
try {
|
|
1847
|
-
const { flushArtifactBackups } = await import("./artifact-backup-
|
|
1847
|
+
const { flushArtifactBackups } = await import("./artifact-backup-6O4FNYPS.js");
|
|
1848
1848
|
const flushed = await flushArtifactBackups(cloudArtifactTransport(config));
|
|
1849
1849
|
artifactResult.pushed = flushed.pushed;
|
|
1850
1850
|
artifactResult.frozen = flushed.frozen;
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import {
|
|
2
2
|
isExeSession,
|
|
3
3
|
strictSessionScopeFilter
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-XAGIZVYI.js";
|
|
5
5
|
import {
|
|
6
6
|
recordOrchestrationEventBestEffort
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-SA66WRBT.js";
|
|
8
8
|
import {
|
|
9
9
|
getProjectName
|
|
10
|
-
} from "./chunk-
|
|
10
|
+
} from "./chunk-4Q7H3TO7.js";
|
|
11
11
|
import {
|
|
12
12
|
DEFAULT_COORDINATOR_TEMPLATE_NAME,
|
|
13
13
|
getCoordinatorName
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-3MDUKF3N.js";
|
|
15
15
|
import {
|
|
16
16
|
loadConfigSync
|
|
17
17
|
} from "./chunk-MMS2HBRT.js";
|
|
@@ -260,7 +260,7 @@ function createRealDeps(getClient) {
|
|
|
260
260
|
});
|
|
261
261
|
},
|
|
262
262
|
createReviewForOrphan: async (task) => {
|
|
263
|
-
const { createReviewForCompletedTask } = await import("./tasks-review-
|
|
263
|
+
const { createReviewForCompletedTask } = await import("./tasks-review-APRNSHMQ.js");
|
|
264
264
|
const cwd = process.cwd();
|
|
265
265
|
await createReviewForCompletedTask(
|
|
266
266
|
task,
|
|
@@ -11,11 +11,11 @@ import {
|
|
|
11
11
|
} from "./chunk-SO7KTH3Q.js";
|
|
12
12
|
import {
|
|
13
13
|
RUNTIME_TABLE
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-UWGQNJIE.js";
|
|
15
15
|
import {
|
|
16
16
|
getMasterKey,
|
|
17
17
|
setMasterKey
|
|
18
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-KIJRAZWR.js";
|
|
19
19
|
import {
|
|
20
20
|
WINDOWS_UNSUPPORTED_EXIT,
|
|
21
21
|
isWSL,
|
|
@@ -1210,9 +1210,9 @@ async function runSetupWizard(opts = {}) {
|
|
|
1210
1210
|
rtChoice = await askOrEnv("Choose your AI runtime [1]: ", "EXE_RUNTIME", "1");
|
|
1211
1211
|
}
|
|
1212
1212
|
const rtMap = {
|
|
1213
|
-
"1": { runtime: "claude", defaultModel: "claude-
|
|
1213
|
+
"1": { runtime: "claude", defaultModel: "claude-opus-5.5" },
|
|
1214
1214
|
"2": { runtime: "codex", defaultModel: RUNTIME_TABLE.codex.defaultModel },
|
|
1215
|
-
"3": { runtime: "opencode", defaultModel: "anthropic/claude-
|
|
1215
|
+
"3": { runtime: "opencode", defaultModel: "anthropic/claude-opus-5-5" }
|
|
1216
1216
|
};
|
|
1217
1217
|
const selected = rtMap[rtChoice.trim()] ?? rtMap["1"];
|
|
1218
1218
|
const chosenModel = selected.defaultModel;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
extractSemanticText
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-5N34MMKS.js";
|
|
4
4
|
import {
|
|
5
5
|
detectError
|
|
6
6
|
} from "./chunk-G2M7WQ2M.js";
|
|
@@ -9,10 +9,13 @@ import {
|
|
|
9
9
|
} from "./chunk-5MOYSU5A.js";
|
|
10
10
|
import {
|
|
11
11
|
redactSecrets
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-BYP3DOUU.js";
|
|
13
|
+
import {
|
|
14
|
+
resolveExeSession
|
|
15
|
+
} from "./chunk-XAGIZVYI.js";
|
|
13
16
|
import {
|
|
14
17
|
getProjectName
|
|
15
|
-
} from "./chunk-
|
|
18
|
+
} from "./chunk-4Q7H3TO7.js";
|
|
16
19
|
|
|
17
20
|
// src/lib/post-tool-memory.ts
|
|
18
21
|
var NON_INGESTIBLE_TOOLS = /* @__PURE__ */ new Set([
|
|
@@ -59,6 +62,7 @@ Output: ${outputPreview}`;
|
|
|
59
62
|
projectName,
|
|
60
63
|
toolName: data.tool_name
|
|
61
64
|
});
|
|
65
|
+
const sessionScope = resolveExeSession() ?? void 0;
|
|
62
66
|
return {
|
|
63
67
|
raw_text: contextualizedRawText,
|
|
64
68
|
agent_id: agent.agentId,
|
|
@@ -68,6 +72,7 @@ Output: ${outputPreview}`;
|
|
|
68
72
|
session_id: data.session_id,
|
|
69
73
|
has_error: hasError,
|
|
70
74
|
timestamp,
|
|
75
|
+
...sessionScope ? { session_scope: sessionScope } : {},
|
|
71
76
|
...meta?.subagentAgentType ? { subagent_agent_type: meta.subagentAgentType } : {},
|
|
72
77
|
trajectory: JSON.stringify({
|
|
73
78
|
input: toolInputStr,
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import {
|
|
2
2
|
deactivateBehavior,
|
|
3
3
|
listBehaviors
|
|
4
|
-
} from "./chunk-
|
|
4
|
+
} from "./chunk-F5ZRHLG5.js";
|
|
5
5
|
import {
|
|
6
6
|
IdentityConflictError,
|
|
7
7
|
IdentityLockError,
|
|
8
8
|
getIdentity,
|
|
9
9
|
mutateIdentity,
|
|
10
10
|
withIdentityLock
|
|
11
|
-
} from "./chunk-
|
|
11
|
+
} from "./chunk-3MDUKF3N.js";
|
|
12
12
|
|
|
13
13
|
// src/lib/behavior-promotion.ts
|
|
14
14
|
var PROMOTED_SECTION_HEADING = "## Promoted lessons (permanent \u2014 promoted from behaviours)";
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import {
|
|
2
2
|
derivePartnerSealIdentityFromMaster
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-BHDDDNC6.js";
|
|
4
4
|
import {
|
|
5
5
|
derivePartnerSignIdentityFromMaster,
|
|
6
6
|
displayFingerprint,
|
|
7
7
|
ed25519PrivateKeyFromSeed,
|
|
8
8
|
ed25519PublicKeyFromRaw
|
|
9
|
-
} from "./chunk-
|
|
9
|
+
} from "./chunk-GPWXUU3L.js";
|
|
10
10
|
import {
|
|
11
11
|
getMasterKey
|
|
12
|
-
} from "./chunk-
|
|
12
|
+
} from "./chunk-KIJRAZWR.js";
|
|
13
13
|
|
|
14
14
|
// src/lib/org-key-epoch.ts
|
|
15
15
|
import crypto, { sign as edSign, verify as edVerify } from "crypto";
|
|
@@ -4,14 +4,14 @@ import {
|
|
|
4
4
|
} from "./chunk-EVMOKRBC.js";
|
|
5
5
|
import {
|
|
6
6
|
registerDaemonScopedQueryChokepoint
|
|
7
|
-
} from "./chunk-
|
|
7
|
+
} from "./chunk-QPMKVSHU.js";
|
|
8
8
|
import {
|
|
9
9
|
orgPartnerModeActive,
|
|
10
10
|
requireOrgPartnerBinding,
|
|
11
11
|
resolveOrgPartnerBindings,
|
|
12
12
|
resolvePartnerIdentities,
|
|
13
13
|
rosterKeyLookupFor
|
|
14
|
-
} from "./chunk-
|
|
14
|
+
} from "./chunk-WYNIWJRN.js";
|
|
15
15
|
import {
|
|
16
16
|
createDerivedSeqStore,
|
|
17
17
|
createMailboxOpener,
|
|
@@ -20,7 +20,7 @@ import {
|
|
|
20
20
|
isConsentMacPrimed,
|
|
21
21
|
primeTaskOriginMarkerKey,
|
|
22
22
|
scopedQueryChokepointStatus
|
|
23
|
-
} from "./chunk-
|
|
23
|
+
} from "./chunk-DACRR362.js";
|
|
24
24
|
import {
|
|
25
25
|
flushMailboxOutbox
|
|
26
26
|
} from "./chunk-3FGBBJYM.js";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import {
|
|
2
2
|
getClient
|
|
3
|
-
} from "./chunk-
|
|
3
|
+
} from "./chunk-3MDUKF3N.js";
|
|
4
4
|
import {
|
|
5
5
|
loadConfigSync
|
|
6
6
|
} from "./chunk-MMS2HBRT.js";
|
|
@@ -136,6 +136,10 @@ var MODEL_PRICING = {
|
|
|
136
136
|
// per 1M tokens. cacheRead = input * 0.1, cacheWrite = input * 1.25,
|
|
137
137
|
// matching every other entry in this table.
|
|
138
138
|
"claude-sonnet-5": { input: 2 / 1e6, output: 10 / 1e6, cacheRead: 0.2 / 1e6, cacheWrite: 2.5 / 1e6 },
|
|
139
|
+
// Opus 5.5 (newest, platform default since 2026-09-30): tier assumption —
|
|
140
|
+
// same Opus tier as Opus 5 ($5/$25). Confirm against Anthropic's published
|
|
141
|
+
// pricing once 5.5 pricing is public.
|
|
142
|
+
"claude-opus-5-5": { input: 5 / 1e6, output: 25 / 1e6, cacheRead: 0.5 / 1e6, cacheWrite: 6.25 / 1e6 },
|
|
139
143
|
"claude-opus-5": { input: 5 / 1e6, output: 25 / 1e6, cacheRead: 0.5 / 1e6, cacheWrite: 6.25 / 1e6 },
|
|
140
144
|
"claude-fable-5": { input: 10 / 1e6, output: 50 / 1e6, cacheRead: 1 / 1e6, cacheWrite: 12.5 / 1e6 },
|
|
141
145
|
// Opus 4.5+ ($5/$25 — Anthropic price drop from original Opus 4)
|
|
@@ -1,3 +1,7 @@
|
|
|
1
|
+
import {
|
|
2
|
+
LockTimeoutError,
|
|
3
|
+
withLock
|
|
4
|
+
} from "./chunk-5WA4DG2A.js";
|
|
1
5
|
import {
|
|
2
6
|
EXE_AI_DIR
|
|
3
7
|
} from "./chunk-MMS2HBRT.js";
|
|
@@ -37,6 +41,26 @@ function projectScopedDefShadows(cwd, agentName) {
|
|
|
37
41
|
|
|
38
42
|
// src/lib/subagent-spawn-ledger.ts
|
|
39
43
|
var LEDGER_DIR = path2.join(EXE_AI_DIR, "session-cache");
|
|
44
|
+
var LEDGER_LOCK_GIVE_UP_MS = 1500;
|
|
45
|
+
function ledgerLockDir(file) {
|
|
46
|
+
return `${file}.lock`;
|
|
47
|
+
}
|
|
48
|
+
async function withLedgerLock(file, fn) {
|
|
49
|
+
try {
|
|
50
|
+
mkdirSync(LEDGER_DIR, { recursive: true });
|
|
51
|
+
} catch {
|
|
52
|
+
}
|
|
53
|
+
try {
|
|
54
|
+
return await withLock(ledgerLockDir(file), fn, { giveUpAfterMs: LEDGER_LOCK_GIVE_UP_MS });
|
|
55
|
+
} catch (err) {
|
|
56
|
+
if (err instanceof LockTimeoutError) {
|
|
57
|
+
process.stderr.write(`[subagent-ledger] lock timeout, skipping this write: ${file}
|
|
58
|
+
`);
|
|
59
|
+
return void 0;
|
|
60
|
+
}
|
|
61
|
+
throw err;
|
|
62
|
+
}
|
|
63
|
+
}
|
|
40
64
|
var SPAWN_LEDGER_TTL_MS = 6 * 60 * 60 * 1e3;
|
|
41
65
|
var MAX_ENTRIES_PER_SESSION = 200;
|
|
42
66
|
function ledgerPath(sessionId) {
|
|
@@ -76,37 +100,38 @@ function isLive(entry, now) {
|
|
|
76
100
|
const ts = Date.parse(entry.ts);
|
|
77
101
|
return Number.isFinite(ts) && now - ts >= 0 && now - ts <= SPAWN_LEDGER_TTL_MS;
|
|
78
102
|
}
|
|
79
|
-
function recordSubagentSpawn(sessionId, agentType, bindable = true) {
|
|
103
|
+
async function recordSubagentSpawn(sessionId, agentType, bindable = true) {
|
|
80
104
|
try {
|
|
81
105
|
const file = ledgerPath(sessionId);
|
|
82
106
|
const type = agentType.trim().toLowerCase();
|
|
83
107
|
if (!file || !type) return;
|
|
84
|
-
|
|
85
|
-
|
|
86
|
-
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
|
|
90
|
-
|
|
91
|
-
|
|
92
|
-
|
|
108
|
+
await withLedgerLock(file, () => {
|
|
109
|
+
const now = Date.now();
|
|
110
|
+
let entries;
|
|
111
|
+
try {
|
|
112
|
+
entries = readEntries(file).filter((e) => isLive(e, now));
|
|
113
|
+
} catch (err) {
|
|
114
|
+
if (isUnreadableLedger(err)) {
|
|
115
|
+
process.stderr.write(
|
|
116
|
+
`[subagent-ledger] not recording a spawn: ${file} exists but could not be read (${err instanceof Error ? err.message : String(err)}); rewriting it would drop the entries already in it.
|
|
93
117
|
`
|
|
94
|
-
|
|
95
|
-
|
|
118
|
+
);
|
|
119
|
+
return;
|
|
120
|
+
}
|
|
121
|
+
throw err;
|
|
96
122
|
}
|
|
97
|
-
|
|
98
|
-
|
|
99
|
-
|
|
100
|
-
|
|
101
|
-
|
|
102
|
-
|
|
103
|
-
|
|
123
|
+
entries.push({
|
|
124
|
+
session_id: sessionId,
|
|
125
|
+
agent_type: type,
|
|
126
|
+
ts: new Date(now).toISOString(),
|
|
127
|
+
bindable
|
|
128
|
+
});
|
|
129
|
+
writeFileSync(file, JSON.stringify(entries.slice(-MAX_ENTRIES_PER_SESSION)));
|
|
104
130
|
});
|
|
105
|
-
writeFileSync(file, JSON.stringify(entries.slice(-MAX_ENTRIES_PER_SESSION)));
|
|
106
131
|
} catch {
|
|
107
132
|
}
|
|
108
133
|
}
|
|
109
|
-
function recordSpawnFromPreToolPayload(payload) {
|
|
134
|
+
async function recordSpawnFromPreToolPayload(payload) {
|
|
110
135
|
if (!payload || typeof payload !== "object") return false;
|
|
111
136
|
const p = payload;
|
|
112
137
|
if (p.tool_name !== "Task" && p.tool_name !== "Agent") return false;
|
|
@@ -117,7 +142,7 @@ function recordSpawnFromPreToolPayload(payload) {
|
|
|
117
142
|
if (typeof sub !== "string" || sub.trim().length === 0) return false;
|
|
118
143
|
const cwd = typeof p.cwd === "string" && p.cwd.trim().length > 0 ? p.cwd.trim() : null;
|
|
119
144
|
const bindable = !projectScopedDefShadows(cwd, sub.trim());
|
|
120
|
-
recordSubagentSpawn(sessionId, sub, bindable);
|
|
145
|
+
await recordSubagentSpawn(sessionId, sub, bindable);
|
|
121
146
|
return true;
|
|
122
147
|
}
|
|
123
148
|
function hasLiveSubagentSpawn(sessionId, agentType) {
|
|
@@ -150,57 +175,71 @@ function lastSubagentSpawnAt(sessionId) {
|
|
|
150
175
|
return null;
|
|
151
176
|
}
|
|
152
177
|
}
|
|
153
|
-
function tryMarkSubagentBriefInjected(sessionId, agentType, agentInstanceId) {
|
|
178
|
+
async function tryMarkSubagentBriefInjected(sessionId, agentType, agentInstanceId) {
|
|
154
179
|
try {
|
|
155
180
|
const file = ledgerPath(sessionId);
|
|
156
181
|
const type = agentType.trim().toLowerCase();
|
|
157
182
|
if (!file || !type) return false;
|
|
158
|
-
const
|
|
159
|
-
|
|
160
|
-
|
|
161
|
-
|
|
162
|
-
|
|
163
|
-
|
|
164
|
-
|
|
165
|
-
|
|
166
|
-
|
|
167
|
-
|
|
168
|
-
|
|
169
|
-
|
|
183
|
+
const result = await withLedgerLock(file, () => {
|
|
184
|
+
const now = Date.now();
|
|
185
|
+
const raw = sessionId;
|
|
186
|
+
const entries = readEntries(file).filter((e) => isLive(e, now));
|
|
187
|
+
const instanceId = typeof agentInstanceId === "string" && agentInstanceId.trim().length > 0 ? agentInstanceId.trim() : void 0;
|
|
188
|
+
const alreadyInjected = entries.some((e) => e.session_id === raw && e.agent_type === type && e.brief_injected_at && (instanceId === void 0 || e.brief_injected_agent_id === instanceId));
|
|
189
|
+
if (alreadyInjected) return false;
|
|
190
|
+
const entry = entries.find((e) => e.session_id === raw && e.agent_type === type && e.bindable === true && !e.brief_injected_at);
|
|
191
|
+
if (!entry) return false;
|
|
192
|
+
entry.brief_injected_at = new Date(now).toISOString();
|
|
193
|
+
if (instanceId) entry.brief_injected_agent_id = instanceId;
|
|
194
|
+
writeFileSync(file, JSON.stringify(entries));
|
|
195
|
+
return true;
|
|
196
|
+
});
|
|
197
|
+
return result ?? false;
|
|
170
198
|
} catch {
|
|
171
199
|
return false;
|
|
172
200
|
}
|
|
173
201
|
}
|
|
174
|
-
function
|
|
202
|
+
function findStoppingEntryIndex(entries, type, sessionId, agentInstanceId) {
|
|
203
|
+
const instanceId = typeof agentInstanceId === "string" && agentInstanceId.trim().length > 0 ? agentInstanceId.trim() : void 0;
|
|
204
|
+
if (instanceId === void 0) {
|
|
205
|
+
return entries.findIndex((e) => e.agent_type === type && e.session_id === sessionId);
|
|
206
|
+
}
|
|
207
|
+
const exact = entries.findIndex((e) => e.agent_type === type && e.session_id === sessionId && e.brief_injected_agent_id === instanceId);
|
|
208
|
+
if (exact >= 0) return exact;
|
|
209
|
+
return entries.findIndex((e) => e.agent_type === type && e.session_id === sessionId && e.brief_injected_agent_id === void 0);
|
|
210
|
+
}
|
|
211
|
+
async function clearSubagentSpawn(sessionId, agentType, agentInstanceId) {
|
|
175
212
|
try {
|
|
176
213
|
const file = ledgerPath(sessionId);
|
|
177
214
|
const type = agentType.trim().toLowerCase();
|
|
178
215
|
if (!file || !type) return;
|
|
179
|
-
|
|
180
|
-
|
|
181
|
-
|
|
182
|
-
|
|
183
|
-
|
|
184
|
-
|
|
185
|
-
|
|
186
|
-
|
|
187
|
-
|
|
216
|
+
await withLedgerLock(file, () => {
|
|
217
|
+
const now = Date.now();
|
|
218
|
+
const raw = sessionId;
|
|
219
|
+
let entries;
|
|
220
|
+
try {
|
|
221
|
+
entries = readEntries(file).filter((e) => isLive(e, now));
|
|
222
|
+
} catch (err) {
|
|
223
|
+
if (isUnreadableLedger(err)) {
|
|
224
|
+
process.stderr.write(
|
|
225
|
+
`[subagent-ledger] not clearing a spawn: ${file} exists but could not be read (${err instanceof Error ? err.message : String(err)}); an unreadable ledger is not an empty one and must not be deleted.
|
|
188
226
|
`
|
|
189
|
-
|
|
190
|
-
|
|
227
|
+
);
|
|
228
|
+
return;
|
|
229
|
+
}
|
|
230
|
+
throw err;
|
|
191
231
|
}
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
}
|
|
232
|
+
const idx = findStoppingEntryIndex(entries, type, raw, agentInstanceId);
|
|
233
|
+
if (idx >= 0) entries.splice(idx, 1);
|
|
234
|
+
if (entries.length === 0) {
|
|
235
|
+
try {
|
|
236
|
+
unlinkSync(file);
|
|
237
|
+
} catch {
|
|
238
|
+
}
|
|
239
|
+
} else {
|
|
240
|
+
writeFileSync(file, JSON.stringify(entries));
|
|
200
241
|
}
|
|
201
|
-
}
|
|
202
|
-
writeFileSync(file, JSON.stringify(entries));
|
|
203
|
-
}
|
|
242
|
+
});
|
|
204
243
|
} catch {
|
|
205
244
|
}
|
|
206
245
|
}
|