@askexenow/exe-os 0.9.359 → 0.9.362
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/docker-compose.yml +7 -1
- package/deploy/compose/generate-env.ts +23 -4
- package/deploy/compose/sso-edge/default.conf.template +35 -0
- package/deploy/compose/sso-edge/sso-redirect.conf +23 -2
- package/deploy/stack-manifests/v0.9.json +228 -2
- package/dist/.dist-verified.json +3 -3
- package/dist/{active-agent-DMKNHGSG.js → active-agent-3FV5V7SS.js} +9 -8
- package/dist/{active-agent-Y3DCBD7J.js → active-agent-BPNEBKHI.js} +9 -8
- package/dist/{agentic-ontology-3233PNKV.js → agentic-ontology-RCVCJ6WB.js} +1 -1
- package/dist/{backfill-gate-DA7UT6UD.js → backfill-gate-LRX77SUD.js} +3 -2
- package/dist/{backfill-metadata-4DS4A5U3.js → backfill-metadata-Y3DGVCK5.js} +12 -11
- package/dist/{background-jobs-XGTLESKM.js → background-jobs-Z6KHCWES.js} +3 -2
- package/dist/{backup-verify-JNYKXIU2.js → backup-verify-TZPPUCLU.js} +5 -4
- package/dist/{behavior-injection-CGAMI552.js → behavior-injection-JMGGWCWG.js} +21 -13
- package/dist/{behaviors-57AMN5IP.js → behaviors-TT6CMEKC.js} +20 -12
- package/dist/bin/age-ontology-load.js +3 -2
- package/dist/bin/agentic-ontology-backfill.js +14 -13
- package/dist/bin/agentic-reflection-backfill.js +15 -14
- package/dist/bin/agentic-semantic-label.js +14 -13
- package/dist/bin/backfill-conversations.js +16 -14
- package/dist/bin/backfill-responses.js +16 -14
- package/dist/bin/backfill-vectors.js +20 -18
- package/dist/bin/bulk-sync-postgres.js +27 -24
- package/dist/bin/cc-doctor.js +13 -11
- package/dist/bin/cleanup-stale-review-tasks.js +31 -28
- package/dist/bin/cli.js +157 -47
- package/dist/bin/customer-readiness.js +10 -1
- package/dist/bin/deferred-daemon-restart.js +127 -104
- package/dist/bin/exe-agent-config.js +9 -8
- package/dist/bin/exe-agent.js +17 -16
- package/dist/bin/exe-assign.js +18 -16
- package/dist/bin/exe-boot.js +62 -49
- package/dist/bin/exe-call.js +10 -9
- package/dist/bin/exe-cloud.js +29 -26
- package/dist/bin/exe-config-dump.js +9 -8
- package/dist/bin/exe-dispatch.js +31 -28
- package/dist/bin/exe-doctor.js +14 -10
- package/dist/bin/exe-export-behaviors.js +22 -14
- package/dist/bin/exe-forget.js +14 -13
- package/dist/bin/exe-gateway.js +13 -12
- package/dist/bin/exe-grant.js +6 -6
- package/dist/bin/exe-healthcheck.js +13 -11
- package/dist/bin/exe-heartbeat.js +33 -30
- package/dist/bin/exe-kill.js +36 -33
- package/dist/bin/exe-launch-agent.js +126 -44
- package/dist/bin/exe-mcp.js +165 -1
- package/dist/bin/exe-memory-reads.js +12 -11
- package/dist/bin/exe-new-employee.js +20 -17
- package/dist/bin/exe-os-mcp-proxy.js +9 -8
- package/dist/bin/exe-pending-messages.js +32 -29
- package/dist/bin/exe-pending-notifications.js +31 -28
- package/dist/bin/exe-pending-reviews.js +31 -28
- package/dist/bin/exe-preflight.js +1 -1
- package/dist/bin/exe-rename.js +10 -9
- package/dist/bin/exe-review.js +35 -32
- package/dist/bin/exe-search.js +13 -12
- package/dist/bin/exe-session-cleanup.js +36 -33
- package/dist/bin/exe-settings.js +28 -25
- package/dist/bin/exe-start-codex.js +27 -19
- package/dist/bin/exe-start-opencode.js +23 -15
- package/dist/bin/exe-start.sh +11 -7
- package/dist/bin/exe-status.js +32 -29
- package/dist/bin/exe-support.js +5 -4
- package/dist/bin/exe-team.js +9 -8
- package/dist/bin/exe-watchdog.js +115 -30
- package/dist/bin/git-sweep.js +32 -29
- package/dist/bin/graph-backfill.js +14 -13
- package/dist/bin/graph-export.js +13 -12
- package/dist/bin/import-history.js +16 -15
- package/dist/bin/install.js +392 -201
- package/dist/bin/intercom-check.js +4 -4
- package/dist/bin/mcp-sessions.js +2 -2
- package/dist/bin/orchestration-metrics.js +10 -9
- package/dist/bin/postgres-agentic-reflection-backfill.js +5 -4
- package/dist/bin/postgres-agentic-semantic-backfill.js +4 -3
- package/dist/bin/reconcile-backlog.js +2 -2
- package/dist/bin/registry-proxy.js +1 -1
- package/dist/bin/scan-tasks.js +31 -28
- package/dist/bin/setup.js +7 -4
- package/dist/bin/shard-migrate.js +13 -12
- package/dist/bin/stack-update.js +45 -14
- package/dist/bin/update.js +4 -3
- package/dist/bin/vps-health-gate.js +1 -1
- package/dist/{boot-generation-4D3CTT7X.js → boot-generation-XABYKF5P.js} +9 -8
- package/dist/{boot-review-sections-NDFE5443.js → boot-review-sections-2X5TFIGU.js} +30 -27
- package/dist/{branch-hygiene-HNSOUDJE.js → branch-hygiene-Z4IBWAOX.js} +2 -1
- package/dist/{branding-6FHWZQYQ.js → branding-7MZDHTKN.js} +3 -2
- package/dist/build-manifest.json +1249 -1069
- package/dist/{capability-cards-OBB7BMMX.js → capability-cards-O5UXDOOA.js} +8 -7
- package/dist/{capacity-monitor-QLPEL6S5.js → capacity-monitor-IPXM726A.js} +32 -29
- package/dist/{catchup-brief-EN7QR6MP.js → catchup-brief-EBIGDXOK.js} +36 -33
- package/dist/{chunk-WRP5AG4D.js → chunk-23KWUA7Z.js} +2 -2
- package/dist/{chunk-PDRIIEFV.js → chunk-2FA4PYYX.js} +1 -1
- package/dist/chunk-2PRAXZWM.js +261 -0
- package/dist/{chunk-R6LNQAUG.js → chunk-327Q53AS.js} +34 -1
- package/dist/{chunk-MBULOZJF.js → chunk-32FEF5BW.js} +2 -2
- package/dist/{chunk-2YGAKBRG.js → chunk-35FD67ZB.js} +3 -3
- package/dist/{chunk-R62ITJDQ.js → chunk-3C7NE4JE.js} +1 -1
- package/dist/{chunk-YBX3G5OP.js → chunk-3ICF4IAZ.js} +1 -1
- package/dist/{chunk-CVTWQZOR.js → chunk-3L2QU5ZF.js} +14 -2
- package/dist/{chunk-I5AVZOL2.js → chunk-3YBJ36UX.js} +2 -2
- package/dist/{chunk-NKDKB2RT.js → chunk-465RCKVI.js} +6 -6
- package/dist/{chunk-QROIFRKI.js → chunk-4AFD4R35.js} +5 -5
- package/dist/{chunk-OSID72CN.js → chunk-4L33OFU4.js} +25 -1
- package/dist/{chunk-A6VIK3SS.js → chunk-4P2BFNSB.js} +2 -2
- package/dist/{chunk-SIGAQQHW.js → chunk-4R2WD6T3.js} +2 -2
- package/dist/{chunk-HPHF5VTT.js → chunk-4U56FZ7B.js} +4 -4
- package/dist/{chunk-2KLVTRY2.js → chunk-54USDN5Q.js} +1 -1
- package/dist/{chunk-CAEWPEBA.js → chunk-5C6ZIJ7J.js} +1 -1
- package/dist/{chunk-46RPEWTH.js → chunk-5H3RHWRE.js} +1 -1
- package/dist/chunk-5OPAUFLP.js +126 -0
- package/dist/{chunk-EHM4E62N.js → chunk-6DTALXOA.js} +1 -1
- package/dist/chunk-6EM6USV7.js +1332 -0
- package/dist/{chunk-JE34CB5H.js → chunk-6N3HUOV3.js} +2 -2
- package/dist/{chunk-6KREY2Q7.js → chunk-6QJXFLNN.js} +5 -5
- package/dist/{chunk-G37RG543.js → chunk-6UZDGEGQ.js} +1 -1
- package/dist/{chunk-APR556TY.js → chunk-6Y3KUO7Q.js} +190 -29
- package/dist/{chunk-2EAYZ3BK.js → chunk-7H3AZNQ7.js} +9 -9
- package/dist/{chunk-C5YZMYQH.js → chunk-7SY2NOMQ.js} +1 -1
- package/dist/{chunk-OAYTQ4RY.js → chunk-AL4HXKDJ.js} +55 -12
- package/dist/{chunk-VY5VU7SX.js → chunk-AOMFYUPT.js} +2 -2
- package/dist/{chunk-EX2SSLNU.js → chunk-AQO3BT3I.js} +12 -12
- package/dist/chunk-ARX6TAGN.js +102 -0
- package/dist/chunk-B6PFGUYJ.js +159 -0
- package/dist/{chunk-FASR2WLT.js → chunk-BDLRTLXY.js} +1 -1
- package/dist/chunk-BJEQBKGH.js +218 -0
- package/dist/{chunk-BCZF3AGJ.js → chunk-BRIZ6OZ3.js} +34 -44
- package/dist/{chunk-OMXJMOBD.js → chunk-BRZR76TS.js} +66 -0
- package/dist/{chunk-XV42EAVK.js → chunk-BT2PUK3S.js} +1 -1
- package/dist/{chunk-6EOLGE7T.js → chunk-CVYDJ2TW.js} +1 -1
- package/dist/{chunk-WCP4OQUL.js → chunk-CXQ724WH.js} +2 -2
- package/dist/{chunk-F3QTF4T7.js → chunk-CY5NVDTH.js} +3 -3
- package/dist/{chunk-3ODATKWH.js → chunk-D5CY4E7I.js} +1 -1
- package/dist/{chunk-W5YV2PZE.js → chunk-DKRDU2AX.js} +16 -16
- package/dist/{chunk-SNWV44E5.js → chunk-DSKEYEL2.js} +12 -5
- package/dist/{chunk-VXL7PJ56.js → chunk-E3YI6FVJ.js} +5 -24
- package/dist/{chunk-6SK4MM5B.js → chunk-E7PL3T2U.js} +1 -1
- package/dist/{chunk-IOEUAQWP.js → chunk-EEZOBN6X.js} +1 -1
- package/dist/{chunk-AHMUF6RO.js → chunk-G2M7WQ2M.js} +0 -2
- package/dist/{chunk-SKGMF2SO.js → chunk-GBNB4EWD.js} +22 -1
- package/dist/{chunk-UZ5RJYL3.js → chunk-HAXCUCJC.js} +1 -1
- package/dist/{chunk-VMR6M6GN.js → chunk-HISFWAAK.js} +1 -1
- package/dist/{chunk-DKRSKC5R.js → chunk-HKQ7UTSE.js} +1 -1
- package/dist/chunk-HLQ4MS42.js +257 -0
- package/dist/{chunk-EA5FVACM.js → chunk-HLU52KTO.js} +29 -18
- package/dist/{chunk-QWVXN224.js → chunk-HPXFKUGU.js} +350 -65
- package/dist/{chunk-2OVTGZYH.js → chunk-HSKABJE6.js} +46 -3
- package/dist/{chunk-NE57GONM.js → chunk-I3SF6QGV.js} +1 -1
- package/dist/chunk-J6KMGEJW.js +238 -0
- package/dist/chunk-JKKZGDLP.js +182 -0
- package/dist/{chunk-3ZEVMZ4G.js → chunk-JYKZVAS6.js} +1 -1
- package/dist/{chunk-4DYJ6NOK.js → chunk-KA4WVDLX.js} +2 -2
- package/dist/{chunk-QH2XAUZ5.js → chunk-KBI4FVBZ.js} +1 -1
- package/dist/{chunk-VAY6IXWY.js → chunk-KDMVVHZH.js} +1 -1
- package/dist/{chunk-4FQIWAXA.js → chunk-KID6T2A4.js} +10 -10
- package/dist/{chunk-HNPHPGGF.js → chunk-KIKB6FY3.js} +2 -2
- package/dist/{chunk-STFR72YH.js → chunk-LCDW2HUL.js} +1 -1
- package/dist/{chunk-RFUTLZ2U.js → chunk-LG37UBBE.js} +4 -4
- package/dist/{chunk-3QWOO74G.js → chunk-LLZNPOGB.js} +97 -3
- package/dist/chunk-M67ARGXY.js +175 -0
- package/dist/chunk-MPVXHYD5.js +85 -0
- package/dist/{chunk-RXL7A7JH.js → chunk-MZYNW5OY.js} +1 -1
- package/dist/{chunk-DQ75MEPU.js → chunk-MZZN5GFC.js} +1 -1
- package/dist/{chunk-X2F6Q7TW.js → chunk-NAHCSQWT.js} +1 -1
- package/dist/{chunk-AL7JMA54.js → chunk-NE4QI2GX.js} +2 -2
- package/dist/chunk-NGDXBN3M.js +254 -0
- package/dist/{chunk-HDSDXGLV.js → chunk-NO5KHKKB.js} +1 -1
- package/dist/chunk-NOKJCF27.js +437 -0
- package/dist/{chunk-PLOEFBFW.js → chunk-O32HTNRX.js} +3 -3
- package/dist/{chunk-UPM5JP6G.js → chunk-OZNCAMS3.js} +47 -4
- package/dist/{chunk-XLEYCOHX.js → chunk-P7CV4SHQ.js} +398 -58
- package/dist/{chunk-G2KK64UB.js → chunk-PDJWHL63.js} +101 -19
- package/dist/{chunk-W3XUU36X.js → chunk-PF7EQSE5.js} +5 -5
- package/dist/{chunk-QX7RWICL.js → chunk-PU7UYQRC.js} +1 -1
- package/dist/{chunk-A5WEEND7.js → chunk-PUMH7JSB.js} +3 -3
- package/dist/{chunk-POZGQQEZ.js → chunk-PV5BIXT6.js} +1 -1
- package/dist/{chunk-TG7JYSEA.js → chunk-Q2VQNAPU.js} +5 -2
- package/dist/{chunk-Z2PAVJJ4.js → chunk-Q7J2SQJ6.js} +127 -29
- package/dist/{chunk-4JERP7NT.js → chunk-QAEWWYHL.js} +29 -1
- package/dist/{chunk-6JTKIXLU.js → chunk-QCJT265O.js} +1 -1
- package/dist/{chunk-OY2PWHYR.js → chunk-QI25QRUP.js} +2 -2
- package/dist/chunk-QILQ5FCG.js +198 -0
- package/dist/{chunk-LRETL4I3.js → chunk-QJBX3MBV.js} +3 -3
- package/dist/{chunk-57GRYGDU.js → chunk-QP53XLC5.js} +1 -1
- package/dist/{chunk-JBAMYKBL.js → chunk-QQMYD4M7.js} +1 -1
- package/dist/{chunk-SHEWTDPC.js → chunk-QY3TM2T3.js} +4 -4
- package/dist/{chunk-WA2MJGPT.js → chunk-QYRI25IP.js} +3 -3
- package/dist/{chunk-QLFN3MUW.js → chunk-RCOIKTHM.js} +1 -1
- package/dist/{chunk-ITRKRKS7.js → chunk-RFKRCVGW.js} +1 -1
- package/dist/{chunk-HK7SQDKJ.js → chunk-RNSAVQEU.js} +2 -2
- package/dist/{chunk-44WFVMZ5.js → chunk-RUUX2ZST.js} +1 -1
- package/dist/{chunk-DWKH2H7W.js → chunk-RWKX2TK5.js} +1 -1
- package/dist/{chunk-MCNDZU5W.js → chunk-RYRNY6IF.js} +2 -2
- package/dist/{chunk-5I3YC7ER.js → chunk-SC6WDF3Q.js} +2 -2
- package/dist/chunk-SLBOKYYQ.js +197 -0
- package/dist/{chunk-74R44E4S.js → chunk-SQM4ZTL2.js} +246 -96
- package/dist/{chunk-KIXNMTGC.js → chunk-SRFRUN66.js} +5 -5
- package/dist/chunk-SXKIGBNF.js +61 -0
- package/dist/chunk-T2RZU7JA.js +2607 -0
- package/dist/{chunk-2I23RPSI.js → chunk-TKDITWDN.js} +9 -0
- package/dist/{chunk-5UAMBMNR.js → chunk-TN2E6ZCM.js} +44 -34
- package/dist/{chunk-SQBNN44X.js → chunk-TP7RXGMP.js} +49 -15
- package/dist/{chunk-GSVQBBE5.js → chunk-TY4JLBFO.js} +2 -2
- package/dist/{chunk-7QRMFYOV.js → chunk-UHPMK6QZ.js} +17 -3
- package/dist/{chunk-LPKTGK7L.js → chunk-UO5QJ2RX.js} +4 -4
- package/dist/{chunk-VCCZQDCU.js → chunk-URNVIZXU.js} +3 -3
- package/dist/{chunk-OIS5VIAH.js → chunk-UWEFIIEG.js} +6 -2
- package/dist/{chunk-IQWAYXVF.js → chunk-V5I5N7NC.js} +3 -3
- package/dist/{chunk-GD7VXXW6.js → chunk-V6YLIDLK.js} +801 -180
- package/dist/chunk-VAOUB2TK.js +23 -0
- package/dist/{chunk-XVTKJEI2.js → chunk-VDMFVUSY.js} +3 -3
- package/dist/{chunk-RJ67HG2P.js → chunk-VWTUKKUF.js} +4 -4
- package/dist/{chunk-4WSUP4CC.js → chunk-W3LKIQJ2.js} +43 -17
- package/dist/{chunk-EUQF3JOH.js → chunk-WBG7XYVR.js} +1 -1
- package/dist/{chunk-YKRNH5LU.js → chunk-WH2VVEGD.js} +1 -1
- package/dist/{chunk-NP2Y7P3I.js → chunk-WP2TGH5R.js} +1 -1
- package/dist/chunk-WT4RI36X.js +23 -0
- package/dist/{chunk-LXG37RB2.js → chunk-XJIRUTGJ.js} +1 -1
- package/dist/chunk-XRCX6R5S.js +57 -0
- package/dist/{chunk-XWWNRFRF.js → chunk-XSYQ5EPE.js} +11 -11
- package/dist/{chunk-HKK7LLS5.js → chunk-XTGR3LMF.js} +34 -3
- package/dist/{chunk-HLEZ5O5P.js → chunk-XUB4GFPN.js} +17 -15
- package/dist/chunk-YZUHSV24.js +277 -0
- package/dist/{chunk-6WHYSLGF.js → chunk-Z67DIJKT.js} +1 -1
- package/dist/{chunk-6LY3QSJA.js → chunk-ZI3HA3XW.js} +11 -6
- package/dist/{chunk-YEOIPUFO.js → chunk-ZR4CQBAP.js} +1 -1
- package/dist/{chunk-VNK3MNZE.js → chunk-ZZEKOI2M.js} +1 -1
- package/dist/{cleanup-graph-garbage-XFGY4EEE.js → cleanup-graph-garbage-6F22Y5SD.js} +13 -12
- package/dist/{cloud-sync-shutdown-XCOATIJW.js → cloud-sync-shutdown-FWERMZB5.js} +8 -7
- package/dist/{co-activation-XNBLOGK3.js → co-activation-UEEDCM5U.js} +8 -7
- package/dist/{co-occurrence-HO4PGQC4.js → co-occurrence-W6OPFRSY.js} +11 -10
- package/dist/{code-context-index-5RY66SWZ.js → code-context-index-DWR6HS35.js} +7 -5
- package/dist/consent-passphrase-Z64GFJXK.js +23 -0
- package/dist/{conversation-entity-extractor-5G5DGRJU.js → conversation-entity-extractor-LWUIH3UB.js} +3 -3
- package/dist/{conversation-wiki-populator-RZKG6PK4.js → conversation-wiki-populator-5EGRW2UZ.js} +1 -1
- package/dist/{crdt-sync-6TD7LSZW.js → crdt-sync-NHJX3ZJD.js} +5 -4
- package/dist/{crm-webhook-WZAV5776.js → crm-webhook-OY467ATC.js} +2 -2
- package/dist/{cto-delegation-gate-UHMYFM4D.js → cto-delegation-gate-XH4YSQVC.js} +30 -27
- package/dist/{daemon-auth-SXZHLUYS.js → daemon-auth-OCHW2U6B.js} +3 -2
- package/dist/{daemon-orchestration-DT5M2ZAR.js → daemon-orchestration-7425ZVNH.js} +35 -32
- package/dist/{daemon-ready-56VAPZU6.js → daemon-ready-VGPSRI3Z.js} +1 -1
- package/dist/{daemon-restart-circuit-breaker-5V6B6NLS.js → daemon-restart-circuit-breaker-SMTWFX27.js} +25 -3
- package/dist/db-backend-ODVJ3Q3D.js +7 -0
- package/dist/{db-restore-events-ZLD2HRQV.js → db-restore-events-TFCZ4CPM.js} +2 -1
- package/dist/{doc-graph-extractor-FNCYPFKY.js → doc-graph-extractor-RR2VSO4W.js} +11 -10
- package/dist/{documents-GKDZDUED.js → documents-TRZ4R2ZW.js} +18 -16
- package/dist/dreaming-MAMZAPYW.js +63 -0
- package/dist/{exe-drift-QTKD2FHT.js → exe-drift-VBWB5E6S.js} +9 -8
- package/dist/{exe-export-ESJ6KP6J.js → exe-export-XJJTVVT7.js} +21 -13
- package/dist/{exe-import-N4X3GEQB.js → exe-import-G6O7JFNZ.js} +21 -13
- package/dist/{exe-key-KZCCHX3W.js → exe-key-A2WJLLTM.js} +116 -99
- package/dist/exe-org-HXF4XBB3.js +672 -0
- package/dist/{exe-snapshot-SCRPHCPZ.js → exe-snapshot-TL3TLKLR.js} +38 -33
- package/dist/{fast-db-init-6H67K76Q.js → fast-db-init-SO2XUQ7T.js} +1 -1
- package/dist/{founder-context-C7X7IRDA.js → founder-context-IOCADC66.js} +4 -3
- package/dist/{founder-monitor-envelope-DHSUMBWU.js → founder-monitor-envelope-SMILO4BT.js} +7 -5
- package/dist/gateway/index.js +23 -22
- package/dist/{gateway-client-7LMZKHTH.js → gateway-client-JA2BH7QO.js} +1 -1
- package/dist/{git-staleness-JCKVMWPO.js → git-staleness-I6WT7EXV.js} +8 -7
- package/dist/{global-procedures-BR7WGSE7.js → global-procedures-3RMO6C3C.js} +9 -8
- package/dist/{graph-auto-extract-EOXWQRBZ.js → graph-auto-extract-NKTYPD2I.js} +11 -10
- package/dist/{graph-rag-5FVC5JXH.js → graph-rag-EOGPZOYI.js} +3 -3
- package/dist/{hook-integrity-TYGDD7OE.js → hook-integrity-RTBF2BL2.js} +1 -1
- package/dist/{hook-prefetch-2CN3MK4H.js → hook-prefetch-V5KCGW2N.js} +31 -28
- package/dist/hooks/bug-report-worker.js +35 -32
- package/dist/hooks/codex-stop-task-finalizer.js +36 -33
- package/dist/hooks/commit-complete.js +34 -31
- package/dist/hooks/error-recall.js +16 -15
- package/dist/hooks/exe-heartbeat-hook.js +10 -9
- package/dist/hooks/ingest-worker.js +12 -10
- package/dist/hooks/ingest.js +19 -18
- package/dist/hooks/instructions-loaded.js +11 -10
- package/dist/hooks/manifest.json +20 -20
- package/dist/hooks/notification.js +11 -10
- package/dist/hooks/post-compact.js +11 -115
- package/dist/hooks/post-tool-combined.js +11 -11
- package/dist/hooks/pre-compact.js +38 -64
- package/dist/hooks/pre-tool-use.js +95 -36
- package/dist/hooks/prompt-submit.js +50 -47
- package/dist/hooks/session-end.js +39 -36
- package/dist/hooks/session-start.js +64 -18
- package/dist/hooks/stop.js +40 -37
- package/dist/hooks/subagent-stop.js +35 -32
- package/dist/hooks/summary-worker.js +41 -38
- package/dist/index.js +45 -42
- package/dist/inrun-inbox-DRKVDPLY.js +29 -0
- package/dist/{installer-VPNTM3X6.js → installer-G67M3DME.js} +11 -10
- package/dist/{installer-YDLSXGD2.js → installer-L3ZKMOPU.js} +11 -10
- package/dist/{installer-7UV3CNWZ.js → installer-QBWZSYDG.js} +11 -10
- package/dist/{intercom-queue-KHKJJYCQ.js → intercom-queue-R5LSXD3V.js} +30 -27
- package/dist/{key-backup-status-YMS7YGWO.js → key-backup-status-3RC6XTUX.js} +2 -1
- package/dist/lib/agent-config.js +3 -2
- package/dist/lib/cloud-sync.js +27 -24
- package/dist/lib/config.js +6 -1
- package/dist/lib/consolidation.js +14 -13
- package/dist/lib/crypto.js +4 -3
- package/dist/lib/database.js +8 -7
- package/dist/lib/db-backup.js +4 -3
- package/dist/lib/db-checkpoint-worker.js +1 -1
- package/dist/lib/db-daemon-client.js +7 -5
- package/dist/lib/db-read-worker-client.js +1 -1
- package/dist/lib/db-read-worker.js +1 -1
- package/dist/lib/db-write-worker-client.js +4 -2
- package/dist/lib/db-write-worker.js +21 -3
- package/dist/lib/db.js +8 -7
- package/dist/lib/device-registry.js +3 -2
- package/dist/lib/embed-worker.js +2 -1
- package/dist/lib/embedder.js +7 -5
- package/dist/lib/employee-templates.js +10 -9
- package/dist/lib/employees.js +8 -7
- package/dist/lib/error-detector.js +1 -1
- package/dist/lib/exe-daemon-client.js +16 -6
- package/dist/lib/exe-daemon.js +342 -168
- package/dist/lib/hybrid-search.js +13 -12
- package/dist/lib/identity-templates.js +3 -1
- package/dist/lib/identity.js +8 -7
- package/dist/lib/keychain.js +41 -3
- package/dist/lib/license.js +12 -3
- package/dist/lib/messaging.js +31 -28
- package/dist/lib/platform-support.js +25 -0
- package/dist/lib/post-tool-memory.js +6 -4
- package/dist/lib/preflight.js +29 -0
- package/dist/lib/registry-proxy.js +1 -1
- package/dist/lib/reminders.js +9 -8
- package/dist/lib/schedules.js +13 -12
- package/dist/lib/session-registry.js +10 -9
- package/dist/lib/session-wrappers.js +7 -3
- package/dist/lib/skill-learning.js +21 -13
- package/dist/lib/status-brief.js +8 -3
- package/dist/lib/store.js +12 -11
- package/dist/lib/task-router.js +9 -8
- package/dist/lib/tasks.js +32 -29
- package/dist/lib/tmux-routing.js +45 -29
- package/dist/lib/tmux-status.js +7 -3
- package/dist/lib/token-spend.js +9 -8
- package/dist/lib/ws-client.js +1 -1
- package/dist/{license-gate-YXUSNA2I.js → license-gate-6R3F3NQR.js} +5 -4
- package/dist/{license-sync-XFDOXL3Z.js → license-sync-VBJCXBAP.js} +4 -3
- package/dist/linux-systemd-LRW3BYSS.js +38 -0
- package/dist/mailbox-inbox-CP2VRBXZ.js +10 -0
- package/dist/mailbox-outbox-HXI7DYNC.js +19 -0
- package/dist/mcp/register-tools.js +110 -94
- package/dist/mcp/server.js +113 -97
- package/dist/mcp/tools/complete-reminder.js +10 -9
- package/dist/mcp/tools/create-reminder.js +10 -9
- package/dist/mcp/tools/create-task.js +38 -31
- package/dist/mcp/tools/deactivate-behavior.js +22 -14
- package/dist/mcp/tools/list-reminders.js +10 -9
- package/dist/mcp/tools/list-tasks.js +34 -31
- package/dist/mcp/tools/send-message.js +33 -30
- package/dist/mcp/tools/update-task.js +33 -30
- package/dist/{mcp-http-config-HIP5CEDV.js → mcp-http-config-BWX7AMAZ.js} +9 -8
- package/dist/{mcp-session-identity-RTNZ2ZLW.js → mcp-session-identity-GOBGICLI.js} +30 -27
- package/dist/{memory-cards-KG4TPNKK.js → memory-cards-4EXX3BQS.js} +12 -11
- package/dist/{memory-graph-extractor-6HTBLO2N.js → memory-graph-extractor-OYVZIJ3R.js} +12 -11
- package/dist/{memory-poisoning-defense-3ZT57RSJ.js → memory-poisoning-defense-AHOD2EBX.js} +8 -7
- package/dist/{memory-pressure-watchdog-ZOZBIMKC.js → memory-pressure-watchdog-COJC3OYS.js} +31 -28
- package/dist/{memory-queue-W54BYW7V.js → memory-queue-4VN3DTOE.js} +3 -2
- package/dist/memory-queue-client-OI4LDT4W.js +18 -0
- package/dist/{memory-reflection-EQC4FXSW.js → memory-reflection-V2SNAUIB.js} +8 -7
- package/dist/{monitor-grants-BDLVFVDR.js → monitor-grants-W3ISOLMC.js} +6 -4
- package/dist/{monitor-identity-GLFZSEAH.js → monitor-identity-AN3B5QIN.js} +3 -2
- package/dist/{notification-ledger-NZ4HO3M5.js → notification-ledger-J6Q2GAYU.js} +117 -53
- package/dist/{notifications-74YECZ4V.js → notifications-56TP36IK.js} +30 -27
- package/dist/{orchestration-events-KRQI4ED5.js → orchestration-events-CKQ756NA.js} +9 -8
- package/dist/{orchestration-phase-KVF42ZKU.js → orchestration-phase-ZJ4XVNFO.js} +3 -2
- package/dist/orchestrator-ERSQ3KNT.js +55 -0
- package/dist/org-brief-session-FSZ3QJDN.js +45 -0
- package/dist/org-consent-policy-BN7MKCZ2.js +68 -0
- package/dist/org-join-HTQ57JYH.js +35 -0
- package/dist/org-key-admin-4W6LZ5KZ.js +242 -0
- package/dist/org-key-pin-OTOKAELD.js +37 -0
- package/dist/{org-membership-B32NS5NI.js → org-membership-SML6GCHP.js} +11 -7
- package/dist/org-partner-config-XQGOB7EJ.js +25 -0
- package/dist/org-partner-runtime-RNNUL5IN.js +44 -0
- package/dist/org-row-visibility-JZFJ3YRJ.js +18 -0
- package/dist/{pipeline-router-6ZZV7JMA.js → pipeline-router-IUENNTAY.js} +9 -8
- package/dist/{plan-limits-B7AZKZ6U.js → plan-limits-ZUII366B.js} +11 -10
- package/dist/postinstall-failure-A7WTAXD6.js +20 -0
- package/dist/{project-boot-WEQSKDD7.js → project-boot-3DFY5F35.js} +7 -2
- package/dist/{projection-worker-LRFFQ6JB.js → projection-worker-MBWUPB5O.js} +5 -4
- package/dist/{prospective-memory-A4GDTIWG.js → prospective-memory-GHE5ORN4.js} +8 -7
- package/dist/push-notifications-PTQ5DHCD.js +60 -0
- package/dist/{reranker-YVTLJCFC.js → reranker-NUIGAPA3.js} +3 -2
- package/dist/{retrieval-health-PK2ODTXM.js → retrieval-health-XHCERQPG.js} +1 -1
- package/dist/{review-polling-JFWRNQF6.js → review-polling-CYBCBHZA.js} +31 -28
- package/dist/runtime/index.js +41 -38
- package/dist/{session-events-VMQBCUH3.js → session-events-X33W4JNA.js} +31 -28
- package/dist/{session-kill-telemetry-Z3W256T5.js → session-kill-telemetry-I2F5PUIW.js} +31 -28
- package/dist/session-lineage-AGOHSXIS.js +66 -0
- package/dist/{session-scope-2ADEVY3C.js → session-scope-WXP4F7OF.js} +30 -27
- package/dist/setup-wizard-2CTVITIX.js +35 -0
- package/dist/{shard-manager-DFLCDZT5.js → shard-manager-YEOHEOHL.js} +4 -3
- package/dist/{skill-refinement-APBYOSGX.js → skill-refinement-VDR5OT4V.js} +9 -8
- package/dist/{stack-promote-SZYIPTFT.js → stack-promote-XVC7FRJW.js} +6 -5
- package/dist/{stack-release-EYRDEGPD.js → stack-release-6PWAACRM.js} +101 -80
- package/dist/{stack-update-YWK2YXP6.js → stack-update-24VRBQ3U.js} +9 -4
- package/dist/{steward-gate-CIOBPNX6.js → steward-gate-2ZNYDVFO.js} +9 -8
- package/dist/{support-inbox-OAWGFRKW.js → support-inbox-ZHKLDETT.js} +5 -4
- package/dist/{task-enforcement-YAU6ZGDC.js → task-enforcement-GQDUTIFY.js} +37 -28
- package/dist/task-request-inbox-BFXNUU44.js +64 -0
- package/dist/{task-scope-44N7XP5N.js → task-scope-ERHPHLUM.js} +30 -27
- package/dist/{tasks-crud-IWVDREXG.js → tasks-crud-NVNF3NRA.js} +30 -27
- package/dist/tasks-notify-DXLU5VCT.js +60 -0
- package/dist/{tasks-review-VDFWFETP.js → tasks-review-BST6N34P.js} +30 -27
- package/dist/{telemetry-upload-3X5ESEKM.js → telemetry-upload-NY3EKOGY.js} +13 -12
- package/dist/{token-budget-WZGO22ME.js → token-budget-CLB3GUIX.js} +9 -8
- package/dist/{tool-capability-index-IFNZ6QUS.js → tool-capability-index-WZWVBI2R.js} +1 -1
- package/dist/{tool-telemetry-F7RWUNVK.js → tool-telemetry-PALAZUXT.js} +1 -1
- package/dist/tui/App.js +44 -41
- package/dist/{tui-data-KT7YGVQS.js → tui-data-CNFSRZP7.js} +30 -27
- package/dist/{typed-messages-TKDGVPHS.js → typed-messages-RCMPEKJN.js} +1 -1
- package/dist/{update-support-ZVRMECNQ.js → update-support-ZVB3CNGY.js} +24 -22
- package/dist/{work-state-heartbeat-CA4CN7DQ.js → work-state-heartbeat-O7UMB6SE.js} +1 -1
- package/dist/{worker-gate-52MVKYGZ.js → worker-gate-6DQQWDNB.js} +3 -2
- package/dist/{workflow-engine-ZAFBPVUP.js → workflow-engine-5ZULFH7O.js} +2 -2
- package/dist/{worktree-NNVXVV6A.js → worktree-ZWA35PKW.js} +10 -9
- package/dist/{worktree-sweep-IM2ZQG6Z.js → worktree-sweep-5LCVT46V.js} +11 -10
- package/package.json +8 -20
- package/postinstall.mjs +124 -0
- package/release-notes.json +18 -16
- package/stack.release.schema.json +4 -0
- package/dist/chunk-AFNRE2RV.js +0 -408
- package/dist/chunk-OSKWCKUC.js +0 -6
- package/dist/chunk-S3FIQCSM.js +0 -232
- package/dist/chunk-W6UB2AWP.js +0 -656
- package/dist/dreaming-WPMQJAXW.js +0 -60
- package/dist/exe-org-UK77DUU4.js +0 -73
- package/dist/memory-queue-client-RRNW2IFZ.js +0 -16
- package/dist/orchestrator-WV2YCHTK.js +0 -52
- package/dist/push-notifications-GOFTDDWW.js +0 -15
- package/dist/setup-wizard-26B36FMC.js +0 -14
- package/dist/tasks-notify-WK5HA77D.js +0 -57
- /package/dist/{chunk-YL2JH3XV.js → chunk-6C4UAKMS.js} +0 -0
- /package/dist/{chunk-YMCIZCNK.js → chunk-BN26LSME.js} +0 -0
- /package/dist/{chunk-WTH4CSAP.js → chunk-DFQEUZSI.js} +0 -0
- /package/dist/{chunk-FVWI2AR4.js → chunk-FIPUVCKC.js} +0 -0
- /package/dist/{chunk-ZMYXQU4L.js → chunk-L4LPJMPV.js} +0 -0
- /package/dist/{chunk-COHHVCFA.js → chunk-UELGUVNL.js} +0 -0
- /package/dist/{chunk-U7RZIY74.js → chunk-X7LY3IOB.js} +0 -0
- /package/dist/{chunk-BGYCUZYK.js → chunk-YAZ5ECEG.js} +0 -0
- /package/dist/{chunk-DSGFX3RT.js → chunk-YWN3XMPU.js} +0 -0
- /package/dist/{chunk-YMUZWC33.js → chunk-YYB5PMTK.js} +0 -0
- /package/dist/{core-memory-AATZRQEY.js → core-memory-BZFPVS43.js} +0 -0
- /package/dist/{entity-boost-HLFG2CH3.js → entity-boost-VXXED26D.js} +0 -0
- /package/dist/{memory-isolation-CF6FYSXD.js → memory-isolation-3PIOWLYP.js} +0 -0
- /package/dist/{message-queue-client-AX6KQK7T.js → message-queue-client-5XW7ZOK2.js} +0 -0
- /package/dist/{oauth-server-VE5ELXTF.js → oauth-server-KW5M437C.js} +0 -0
- /package/dist/{webhook-pipe-A4X4SCMW.js → webhook-pipe-QJRFZVKA.js} +0 -0
- /package/dist/{wiki-acl-GNIXYWHJ.js → wiki-acl-RXFV5OEU.js} +0 -0
- /package/dist/{wiki-client-7RRYRSPS.js → wiki-client-57QWZIHQ.js} +0 -0
|
@@ -1,30 +1,30 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
exportBehaviorsForAgent
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-AOMFYUPT.js";
|
|
5
5
|
import {
|
|
6
6
|
resolveClaudeBinaryPath
|
|
7
7
|
} from "../chunk-75H4R62K.js";
|
|
8
8
|
import {
|
|
9
9
|
getSessionPrompt
|
|
10
|
-
} from "../chunk-
|
|
11
|
-
import "../chunk-
|
|
10
|
+
} from "../chunk-327Q53AS.js";
|
|
11
|
+
import "../chunk-WP2TGH5R.js";
|
|
12
12
|
import "../chunk-3BAGFZFN.js";
|
|
13
|
+
import "../chunk-ZI3HA3XW.js";
|
|
13
14
|
import {
|
|
14
15
|
retryOnDaemonTransportError
|
|
15
|
-
} from "../chunk-
|
|
16
|
-
import "../chunk-6LY3QSJA.js";
|
|
16
|
+
} from "../chunk-ZZEKOI2M.js";
|
|
17
17
|
import "../chunk-QGGH7LOU.js";
|
|
18
18
|
import {
|
|
19
19
|
disposeStore
|
|
20
|
-
} from "../chunk-
|
|
21
|
-
import "../chunk-
|
|
20
|
+
} from "../chunk-DKRDU2AX.js";
|
|
21
|
+
import "../chunk-L4LPJMPV.js";
|
|
22
22
|
import "../chunk-CHCA3ZM2.js";
|
|
23
23
|
import "../chunk-OTVEIJUQ.js";
|
|
24
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-FIPUVCKC.js";
|
|
25
25
|
import {
|
|
26
26
|
fastDbInit
|
|
27
|
-
} from "../chunk-
|
|
27
|
+
} from "../chunk-BN26LSME.js";
|
|
28
28
|
import "../chunk-5MOYSU5A.js";
|
|
29
29
|
import "../chunk-4QCFFW2H.js";
|
|
30
30
|
import "../chunk-76CJBM36.js";
|
|
@@ -35,35 +35,35 @@ import {
|
|
|
35
35
|
_resetCcHelpCache,
|
|
36
36
|
claudeSupportsAgentFlag,
|
|
37
37
|
getCcHelpOutputCached
|
|
38
|
-
} from "../chunk-
|
|
39
|
-
import "../chunk-
|
|
40
|
-
import "../chunk-
|
|
41
|
-
import "../chunk-
|
|
42
|
-
import "../chunk-
|
|
38
|
+
} from "../chunk-SQM4ZTL2.js";
|
|
39
|
+
import "../chunk-5C6ZIJ7J.js";
|
|
40
|
+
import "../chunk-SXKIGBNF.js";
|
|
41
|
+
import "../chunk-BT2PUK3S.js";
|
|
42
|
+
import "../chunk-KI5PFRG6.js";
|
|
43
|
+
import "../chunk-WT4RI36X.js";
|
|
44
|
+
import "../chunk-Z67DIJKT.js";
|
|
43
45
|
import "../chunk-E23LNUWJ.js";
|
|
44
|
-
import "../chunk-
|
|
45
|
-
import "../chunk-
|
|
46
|
+
import "../chunk-QAEWWYHL.js";
|
|
47
|
+
import "../chunk-EIKATSE4.js";
|
|
48
|
+
import "../chunk-D5CY4E7I.js";
|
|
46
49
|
import "../chunk-UXLO7VHX.js";
|
|
47
50
|
import "../chunk-DSOQUQTV.js";
|
|
48
|
-
import "../chunk-
|
|
49
|
-
import "../chunk-
|
|
51
|
+
import "../chunk-GBNB4EWD.js";
|
|
52
|
+
import "../chunk-PV5BIXT6.js";
|
|
50
53
|
import "../chunk-AJIXH5JF.js";
|
|
51
54
|
import {
|
|
52
55
|
getAgentRuntime,
|
|
53
56
|
loadAgentConfig,
|
|
54
57
|
normalizeCcModelName
|
|
55
|
-
} from "../chunk-
|
|
58
|
+
} from "../chunk-KDMVVHZH.js";
|
|
56
59
|
import "../chunk-AM7S2TY6.js";
|
|
57
|
-
import "../chunk-
|
|
58
|
-
import "../chunk-OSKWCKUC.js";
|
|
59
|
-
import "../chunk-KI5PFRG6.js";
|
|
60
|
+
import "../chunk-CY5NVDTH.js";
|
|
60
61
|
import "../chunk-CVYC6DUW.js";
|
|
61
|
-
import "../chunk-
|
|
62
|
-
import "../chunk-
|
|
62
|
+
import "../chunk-4P2BFNSB.js";
|
|
63
|
+
import "../chunk-MZYNW5OY.js";
|
|
63
64
|
import "../chunk-OPU3NYOO.js";
|
|
64
|
-
import "../chunk-
|
|
65
|
-
import "../chunk-
|
|
66
|
-
import "../chunk-VMR6M6GN.js";
|
|
65
|
+
import "../chunk-6EM6USV7.js";
|
|
66
|
+
import "../chunk-HISFWAAK.js";
|
|
67
67
|
import "../chunk-NLEW62VC.js";
|
|
68
68
|
import "../chunk-HYZV25LY.js";
|
|
69
69
|
import "../chunk-GJV3WDWM.js";
|
|
@@ -74,25 +74,30 @@ import {
|
|
|
74
74
|
loadEmployees,
|
|
75
75
|
loadEmployeesSync,
|
|
76
76
|
normalizeRole
|
|
77
|
-
} from "../chunk-
|
|
78
|
-
import "../chunk-
|
|
79
|
-
import "../chunk-5YEUPUV4.js";
|
|
80
|
-
import "../chunk-Z2PAVJJ4.js";
|
|
81
|
-
import "../chunk-OMXJMOBD.js";
|
|
77
|
+
} from "../chunk-HLU52KTO.js";
|
|
78
|
+
import "../chunk-TKDITWDN.js";
|
|
82
79
|
import "../chunk-BBMTVAE3.js";
|
|
83
|
-
import "../chunk-
|
|
80
|
+
import "../chunk-5YEUPUV4.js";
|
|
81
|
+
import "../chunk-Q7J2SQJ6.js";
|
|
82
|
+
import "../chunk-YYB5PMTK.js";
|
|
83
|
+
import {
|
|
84
|
+
ensureAgentFrontmatter
|
|
85
|
+
} from "../chunk-BRZR76TS.js";
|
|
84
86
|
import "../chunk-V3W3SATA.js";
|
|
85
87
|
import "../chunk-JY5GAZYC.js";
|
|
86
88
|
import "../chunk-FXU7JOXK.js";
|
|
87
|
-
import "../chunk-
|
|
89
|
+
import "../chunk-HPXFKUGU.js";
|
|
88
90
|
import "../chunk-WNBZJSQT.js";
|
|
89
|
-
import "../chunk-
|
|
90
|
-
import "../chunk-
|
|
91
|
-
import "../chunk-
|
|
91
|
+
import "../chunk-HSKABJE6.js";
|
|
92
|
+
import "../chunk-3ICF4IAZ.js";
|
|
93
|
+
import "../chunk-QILQ5FCG.js";
|
|
94
|
+
import "../chunk-ARX6TAGN.js";
|
|
95
|
+
import "../chunk-BRIZ6OZ3.js";
|
|
92
96
|
import {
|
|
93
97
|
atomicWriteJsonSync,
|
|
94
98
|
atomicWriteSync
|
|
95
99
|
} from "../chunk-HSGBZSCA.js";
|
|
100
|
+
import "../chunk-JKKZGDLP.js";
|
|
96
101
|
import "../chunk-MLKGABMK.js";
|
|
97
102
|
|
|
98
103
|
// src/bin/exe-launch-agent.ts
|
|
@@ -337,8 +342,68 @@ function ccSupportsFlag(flag) {
|
|
|
337
342
|
function resolveClaudeBin(env = process.env) {
|
|
338
343
|
return resolveClaudeBinaryPath(env);
|
|
339
344
|
}
|
|
340
|
-
|
|
341
|
-
|
|
345
|
+
var ROOT_LAUNCH_REFUSED_EXIT = 78;
|
|
346
|
+
function isRootLaunch(uid = process.getuid?.()) {
|
|
347
|
+
return uid === 0;
|
|
348
|
+
}
|
|
349
|
+
function rootLaunchAllowed(env = process.env) {
|
|
350
|
+
const v = (env.EXE_ALLOW_ROOT ?? "").toLowerCase();
|
|
351
|
+
return v === "1" || v === "true" || v === "yes";
|
|
352
|
+
}
|
|
353
|
+
function rootRefusalMessage(agent) {
|
|
354
|
+
return `
|
|
355
|
+
\u274C exe-os will not launch "${agent}" as root (uid 0).
|
|
356
|
+
|
|
357
|
+
Claude Code REFUSES --dangerously-skip-permissions under root/sudo:
|
|
358
|
+
"--dangerously-skip-permissions cannot be used with root/sudo privileges"
|
|
359
|
+
Without that flag an agent stops at an interactive approval prompt on its
|
|
360
|
+
first tool call and can never work unattended. This launcher used to exit 0
|
|
361
|
+
here and leave a tmux session that looked alive but held only a shell.
|
|
362
|
+
|
|
363
|
+
Fix \u2014 run exe-os as a normal user (this is the supported setup on a VPS or
|
|
364
|
+
a default cloud image, where you land as root):
|
|
365
|
+
|
|
366
|
+
adduser exe && usermod -aG sudo exe
|
|
367
|
+
su - exe
|
|
368
|
+
npm install -g @askexenow/exe-os
|
|
369
|
+
exe-os setup
|
|
370
|
+
|
|
371
|
+
Already have a normal user? You are running under \`sudo\` \u2014 drop it:
|
|
372
|
+
|
|
373
|
+
${agent}1 # no sudo
|
|
374
|
+
|
|
375
|
+
Override (NOT recommended \u2014 the agent will stall on every permission
|
|
376
|
+
prompt and cannot run unattended):
|
|
377
|
+
|
|
378
|
+
EXE_ALLOW_ROOT=1 ${agent}1
|
|
379
|
+
|
|
380
|
+
`;
|
|
381
|
+
}
|
|
382
|
+
function rootDegradedWarning(agent) {
|
|
383
|
+
return `
|
|
384
|
+
\u26A0\uFE0F EXE_ALLOW_ROOT=1 \u2014 launching "${agent}" as root WITHOUT
|
|
385
|
+
--dangerously-skip-permissions (Claude Code refuses it under root).
|
|
386
|
+
Claude Code will ask you to approve every tool call interactively.
|
|
387
|
+
Unattended/dispatched work will NOT complete in this session.
|
|
388
|
+
|
|
389
|
+
`;
|
|
390
|
+
}
|
|
391
|
+
function stripPermissionBypassArgs(args) {
|
|
392
|
+
const out = [];
|
|
393
|
+
for (let i = 0; i < args.length; i++) {
|
|
394
|
+
const arg = args[i];
|
|
395
|
+
if (arg === "--dangerously-skip-permissions") continue;
|
|
396
|
+
if (arg === "--permission-mode" && args[i + 1] === "bypassPermissions") {
|
|
397
|
+
i++;
|
|
398
|
+
continue;
|
|
399
|
+
}
|
|
400
|
+
if (arg === "--permission-mode=bypassPermissions") continue;
|
|
401
|
+
out.push(arg);
|
|
402
|
+
}
|
|
403
|
+
return out;
|
|
404
|
+
}
|
|
405
|
+
function buildLaunchPlan(agent, behaviorsPath, passthrough, _hasAgentFlag, _provider, uid = process.getuid?.()) {
|
|
406
|
+
const args = isRootLaunch(uid) ? [] : ["--dangerously-skip-permissions", "--permission-mode", "bypassPermissions"];
|
|
342
407
|
if ((_provider ?? DEFAULT_PROVIDER) === DEFAULT_PROVIDER) {
|
|
343
408
|
const configuredModel = getConfiguredClaudeModel(agent);
|
|
344
409
|
if (configuredModel) args.push("--model", configuredModel);
|
|
@@ -380,7 +445,7 @@ function buildLaunchPlan(agent, behaviorsPath, passthrough, _hasAgentFlag, _prov
|
|
|
380
445
|
const dir = path.dirname(idPath);
|
|
381
446
|
if (!existsSync(dir)) mkdirSync(dir, { recursive: true });
|
|
382
447
|
const hasFrontmatter = identityContent.trimStart().startsWith("---");
|
|
383
|
-
const
|
|
448
|
+
const baseContent = hasFrontmatter ? identityContent : `---
|
|
384
449
|
role: ${normalizeRole(emp.role ?? "employee")}
|
|
385
450
|
title: ${emp.role ?? "Employee"}
|
|
386
451
|
agent_id: ${agent}
|
|
@@ -390,6 +455,7 @@ updated_at: ${(/* @__PURE__ */ new Date()).toISOString()}
|
|
|
390
455
|
---
|
|
391
456
|
|
|
392
457
|
${identityContent}`;
|
|
458
|
+
const fileContent = ensureAgentFrontmatter(baseContent, baseAgentName(agent));
|
|
393
459
|
atomicWriteSync(idPath, fileContent);
|
|
394
460
|
identityContent = fileContent;
|
|
395
461
|
process.stderr.write(`[exe-launch-agent] self-healed missing identity file: ${idPath}
|
|
@@ -438,7 +504,8 @@ ${identityContent}`;
|
|
|
438
504
|
`);
|
|
439
505
|
}
|
|
440
506
|
}
|
|
441
|
-
|
|
507
|
+
const effectivePassthrough = isRootLaunch(uid) ? stripPermissionBypassArgs(passthrough) : passthrough;
|
|
508
|
+
for (const arg of effectivePassthrough) args.push(arg);
|
|
442
509
|
const hasUserPrompt = passthrough.some((a) => !a.startsWith("-"));
|
|
443
510
|
if (!hasUserPrompt) {
|
|
444
511
|
try {
|
|
@@ -584,6 +651,13 @@ async function main() {
|
|
|
584
651
|
return 2;
|
|
585
652
|
}
|
|
586
653
|
const { agent, provider, passthrough } = resolved;
|
|
654
|
+
if (isRootLaunch()) {
|
|
655
|
+
if (!rootLaunchAllowed()) {
|
|
656
|
+
process.stderr.write(rootRefusalMessage(agent));
|
|
657
|
+
return ROOT_LAUNCH_REFUSED_EXIT;
|
|
658
|
+
}
|
|
659
|
+
process.stderr.write(rootDegradedWarning(agent));
|
|
660
|
+
}
|
|
587
661
|
const inTmux = !!(process.env.TMUX || process.env.TMUX_PANE || process.env.TERM?.startsWith("tmux") || process.env.TERM?.startsWith("screen"));
|
|
588
662
|
if (!inTmux) {
|
|
589
663
|
process.stderr.write(
|
|
@@ -650,6 +724,7 @@ async function main() {
|
|
|
650
724
|
mkdirSync(ccAgentDir, { recursive: true });
|
|
651
725
|
let content = readFileSync(sourceFile, "utf-8");
|
|
652
726
|
content = content.replace(/\$\{agent_id\}/g, baseAgentName(agent));
|
|
727
|
+
content = ensureAgentFrontmatter(content, baseAgentName(agent));
|
|
653
728
|
atomicWriteSync(ccAgentFile, content);
|
|
654
729
|
process.stderr.write(
|
|
655
730
|
`[exe-launch-agent] auto-provisioned ${ccAgentFile} from ${sourceFile}
|
|
@@ -691,7 +766,7 @@ async function main() {
|
|
|
691
766
|
if (sessionName && ccSupportsFlag("--mcp-config")) {
|
|
692
767
|
try {
|
|
693
768
|
const allServers = collectAllMcpServers();
|
|
694
|
-
const { readOrCreateDaemonToken, mcpHttpUrl } = await import("../mcp-http-config-
|
|
769
|
+
const { readOrCreateDaemonToken, mcpHttpUrl } = await import("../mcp-http-config-BWX7AMAZ.js");
|
|
695
770
|
let currentDaemonToken = null;
|
|
696
771
|
try {
|
|
697
772
|
currentDaemonToken = readOrCreateDaemonToken();
|
|
@@ -761,7 +836,7 @@ async function main() {
|
|
|
761
836
|
process.env.EXE_RUNTIME = "claude";
|
|
762
837
|
process.env.AGENT_ROLE = empRole;
|
|
763
838
|
try {
|
|
764
|
-
const { writeActiveAgent } = await import("../active-agent-
|
|
839
|
+
const { writeActiveAgent } = await import("../active-agent-BPNEBKHI.js");
|
|
765
840
|
writeActiveAgent(memoryAgent, empRole);
|
|
766
841
|
} catch {
|
|
767
842
|
}
|
|
@@ -822,6 +897,7 @@ if (!process.env.VITEST) {
|
|
|
822
897
|
export {
|
|
823
898
|
DEFAULT_PROVIDER,
|
|
824
899
|
PROVIDER_TABLE,
|
|
900
|
+
ROOT_LAUNCH_REFUSED_EXIT,
|
|
825
901
|
_resetCcHelpCache,
|
|
826
902
|
_resetMcpServerCache,
|
|
827
903
|
applyProviderEnv,
|
|
@@ -829,8 +905,14 @@ export {
|
|
|
829
905
|
buildLaunchPlan,
|
|
830
906
|
ccSupportsFlag,
|
|
831
907
|
generateLeanMcpConfig,
|
|
908
|
+
isRootLaunch,
|
|
909
|
+
main,
|
|
832
910
|
parseBasename,
|
|
833
911
|
resolveAgent,
|
|
834
912
|
resolveBehaviorsPath,
|
|
835
|
-
resolveClaudeBin
|
|
913
|
+
resolveClaudeBin,
|
|
914
|
+
rootDegradedWarning,
|
|
915
|
+
rootLaunchAllowed,
|
|
916
|
+
rootRefusalMessage,
|
|
917
|
+
stripPermissionBypassArgs
|
|
836
918
|
};
|
package/dist/bin/exe-mcp.js
CHANGED
|
@@ -1,3 +1,21 @@
|
|
|
1
|
+
import {
|
|
2
|
+
buildMcpHttpHeaders,
|
|
3
|
+
mcpHttpUrl
|
|
4
|
+
} from "../chunk-CVYDJ2TW.js";
|
|
5
|
+
import "../chunk-B6TI3TZT.js";
|
|
6
|
+
import "../chunk-HLU52KTO.js";
|
|
7
|
+
import "../chunk-TKDITWDN.js";
|
|
8
|
+
import "../chunk-BBMTVAE3.js";
|
|
9
|
+
import "../chunk-5YEUPUV4.js";
|
|
10
|
+
import "../chunk-Q7J2SQJ6.js";
|
|
11
|
+
import "../chunk-YYB5PMTK.js";
|
|
12
|
+
import "../chunk-BRZR76TS.js";
|
|
13
|
+
import "../chunk-V3W3SATA.js";
|
|
14
|
+
import "../chunk-JY5GAZYC.js";
|
|
15
|
+
import "../chunk-FXU7JOXK.js";
|
|
16
|
+
import "../chunk-BRIZ6OZ3.js";
|
|
17
|
+
import "../chunk-HSGBZSCA.js";
|
|
18
|
+
import "../chunk-JKKZGDLP.js";
|
|
1
19
|
import "../chunk-MLKGABMK.js";
|
|
2
20
|
|
|
3
21
|
// src/bin/exe-mcp.ts
|
|
@@ -112,8 +130,149 @@ function usage() {
|
|
|
112
130
|
exe-os mcp [list] [--runtime claude|codex|opencode|all] [--project <path>] [--json]
|
|
113
131
|
exe-os mcp disable <name> [--runtime claude|codex|opencode|all] [--project <path>]
|
|
114
132
|
exe-os mcp enable <name> [--runtime claude|codex|opencode|all] [--project <path>]
|
|
133
|
+
exe-os mcp call <tool> [json-args] [--args <json>]
|
|
115
134
|
`;
|
|
116
135
|
}
|
|
136
|
+
function parseJsonRpcMessages(contentType, body) {
|
|
137
|
+
const trimmed = body.trim();
|
|
138
|
+
if (!trimmed) return [];
|
|
139
|
+
if (contentType.includes("text/event-stream")) {
|
|
140
|
+
const out = [];
|
|
141
|
+
for (const line of trimmed.split(/\r?\n/)) {
|
|
142
|
+
const m = line.match(/^data:\s?(.*)$/);
|
|
143
|
+
if (!m) continue;
|
|
144
|
+
const data = m[1].trim();
|
|
145
|
+
if (!data || data === "[DONE]") continue;
|
|
146
|
+
try {
|
|
147
|
+
out.push(JSON.parse(data));
|
|
148
|
+
} catch {
|
|
149
|
+
}
|
|
150
|
+
}
|
|
151
|
+
return out;
|
|
152
|
+
}
|
|
153
|
+
try {
|
|
154
|
+
return [JSON.parse(trimmed)];
|
|
155
|
+
} catch {
|
|
156
|
+
return [];
|
|
157
|
+
}
|
|
158
|
+
}
|
|
159
|
+
async function runMcpCall(toolName, toolArgs, opts = {}) {
|
|
160
|
+
const fetchImpl = opts.fetchImpl ?? fetch;
|
|
161
|
+
const homeDir = opts.homeDir ?? os.homedir();
|
|
162
|
+
const baseUrl = opts.baseUrl ?? mcpHttpUrl(homeDir);
|
|
163
|
+
const timeoutMs = opts.timeoutMs ?? 12e4;
|
|
164
|
+
const baseHeaders = buildMcpHttpHeaders(homeDir, { agentId: opts.agentId, agentRole: opts.agentRole });
|
|
165
|
+
let sessionId = null;
|
|
166
|
+
const post = async (message) => {
|
|
167
|
+
const headers = {
|
|
168
|
+
...baseHeaders,
|
|
169
|
+
"Content-Type": "application/json",
|
|
170
|
+
Accept: "application/json, text/event-stream"
|
|
171
|
+
};
|
|
172
|
+
if (sessionId) headers["Mcp-Session-Id"] = sessionId;
|
|
173
|
+
const res = await fetchImpl(baseUrl, {
|
|
174
|
+
method: "POST",
|
|
175
|
+
headers,
|
|
176
|
+
body: JSON.stringify(message),
|
|
177
|
+
signal: AbortSignal.timeout(timeoutMs)
|
|
178
|
+
});
|
|
179
|
+
const newSession = res.headers.get("mcp-session-id");
|
|
180
|
+
if (newSession) sessionId = newSession;
|
|
181
|
+
return {
|
|
182
|
+
status: res.status,
|
|
183
|
+
ok: res.ok,
|
|
184
|
+
body: await res.text(),
|
|
185
|
+
contentType: res.headers.get("content-type") ?? ""
|
|
186
|
+
};
|
|
187
|
+
};
|
|
188
|
+
try {
|
|
189
|
+
const initRes = await post({
|
|
190
|
+
jsonrpc: "2.0",
|
|
191
|
+
id: 1,
|
|
192
|
+
method: "initialize",
|
|
193
|
+
params: {
|
|
194
|
+
protocolVersion: "2025-06-18",
|
|
195
|
+
capabilities: {},
|
|
196
|
+
clientInfo: { name: "exe-os-mcp-call", version: "1.0.0" }
|
|
197
|
+
}
|
|
198
|
+
});
|
|
199
|
+
if (!initRes.ok) return { ok: false, error: `initialize failed: HTTP ${initRes.status}` };
|
|
200
|
+
const initErr = parseJsonRpcMessages(initRes.contentType, initRes.body).find((m) => m.error)?.error;
|
|
201
|
+
if (initErr) return { ok: false, error: `initialize error: ${initErr.message ?? "unknown"}` };
|
|
202
|
+
await post({ jsonrpc: "2.0", method: "notifications/initialized" });
|
|
203
|
+
const callRes = await post({
|
|
204
|
+
jsonrpc: "2.0",
|
|
205
|
+
id: 2,
|
|
206
|
+
method: "tools/call",
|
|
207
|
+
params: { name: toolName, arguments: toolArgs }
|
|
208
|
+
});
|
|
209
|
+
if (!callRes.ok) return { ok: false, error: `tools/call failed: HTTP ${callRes.status}` };
|
|
210
|
+
const messages = parseJsonRpcMessages(callRes.contentType, callRes.body);
|
|
211
|
+
const response = messages.find((m) => m.id === 2) ?? messages.find((m) => m.result !== void 0 || m.error);
|
|
212
|
+
if (!response) return { ok: false, error: "no JSON-RPC response for tools/call" };
|
|
213
|
+
if (response.error) return { ok: false, error: response.error.message ?? "tool error" };
|
|
214
|
+
const result = response.result;
|
|
215
|
+
if (result && result.isError === true) return { ok: false, error: "tool reported isError", result };
|
|
216
|
+
return { ok: true, result: response.result };
|
|
217
|
+
} catch (err) {
|
|
218
|
+
const msg = err instanceof Error ? err.message : String(err);
|
|
219
|
+
const unreachable = /ECONNREFUSED/.test(msg) || /fetch failed/i.test(msg);
|
|
220
|
+
return { ok: false, error: unreachable ? `daemon unreachable at ${baseUrl} (${msg})` : msg };
|
|
221
|
+
}
|
|
222
|
+
}
|
|
223
|
+
async function runCall(rawArgs, stdout, stderr) {
|
|
224
|
+
let argsJson;
|
|
225
|
+
const positionals = [];
|
|
226
|
+
for (let i = 0; i < rawArgs.length; i++) {
|
|
227
|
+
const a = rawArgs[i];
|
|
228
|
+
if (a === "--args") {
|
|
229
|
+
argsJson = rawArgs[i + 1];
|
|
230
|
+
i++;
|
|
231
|
+
} else if (a?.startsWith("--args=")) {
|
|
232
|
+
argsJson = a.slice("--args=".length);
|
|
233
|
+
} else if (a === "--json") {
|
|
234
|
+
} else if (a?.startsWith("--")) {
|
|
235
|
+
stderr.write(`Unknown option: ${a}
|
|
236
|
+
${usage()}`);
|
|
237
|
+
return 1;
|
|
238
|
+
} else if (a) {
|
|
239
|
+
positionals.push(a);
|
|
240
|
+
}
|
|
241
|
+
}
|
|
242
|
+
const toolName = positionals.shift();
|
|
243
|
+
if (!toolName) {
|
|
244
|
+
stderr.write(`Missing tool name.
|
|
245
|
+
Usage: exe-os mcp call <tool> [json-args] [--args <json>]
|
|
246
|
+
`);
|
|
247
|
+
return 1;
|
|
248
|
+
}
|
|
249
|
+
if (argsJson === void 0 && positionals.length > 0) argsJson = positionals.join(" ");
|
|
250
|
+
let toolArgs = {};
|
|
251
|
+
if (argsJson && argsJson.trim()) {
|
|
252
|
+
let parsed;
|
|
253
|
+
try {
|
|
254
|
+
parsed = JSON.parse(argsJson);
|
|
255
|
+
} catch (err) {
|
|
256
|
+
stderr.write(`Invalid tool args JSON: ${err instanceof Error ? err.message : String(err)}
|
|
257
|
+
`);
|
|
258
|
+
return 1;
|
|
259
|
+
}
|
|
260
|
+
if (!parsed || typeof parsed !== "object" || Array.isArray(parsed)) {
|
|
261
|
+
stderr.write("Tool args must be a JSON object.\n");
|
|
262
|
+
return 1;
|
|
263
|
+
}
|
|
264
|
+
toolArgs = parsed;
|
|
265
|
+
}
|
|
266
|
+
const outcome = await runMcpCall(toolName, toolArgs);
|
|
267
|
+
if (outcome.ok) {
|
|
268
|
+
stdout.write(`${JSON.stringify(outcome.result ?? null, null, 2)}
|
|
269
|
+
`);
|
|
270
|
+
return 0;
|
|
271
|
+
}
|
|
272
|
+
stderr.write(`mcp call failed: ${outcome.error ?? "unknown error"}
|
|
273
|
+
`);
|
|
274
|
+
return 1;
|
|
275
|
+
}
|
|
117
276
|
function defaultClaudeJsonPath() {
|
|
118
277
|
return path.join(os.homedir(), ".claude.json");
|
|
119
278
|
}
|
|
@@ -463,6 +622,9 @@ async function main(args, opts = {}) {
|
|
|
463
622
|
const cwd = opts.cwd ?? process.cwd();
|
|
464
623
|
const paths = runtimePaths(opts);
|
|
465
624
|
const backupDir = opts.backupDir ?? defaultBackupDir();
|
|
625
|
+
if (args[0] === "call") {
|
|
626
|
+
return runCall(args.slice(1), stdout, stderr);
|
|
627
|
+
}
|
|
466
628
|
const explicitSubcommand = args[0] === "list" || args[0] === "disable" || args[0] === "enable";
|
|
467
629
|
const subcommand = explicitSubcommand ? args[0] : "list";
|
|
468
630
|
if (!explicitSubcommand && args[0] && !args[0].startsWith("--")) {
|
|
@@ -490,5 +652,7 @@ ${usage()}`);
|
|
|
490
652
|
export {
|
|
491
653
|
buildClaudeMcpStatus,
|
|
492
654
|
buildMcpStatus,
|
|
493
|
-
main
|
|
655
|
+
main,
|
|
656
|
+
parseJsonRpcMessages,
|
|
657
|
+
runMcpCall
|
|
494
658
|
};
|
|
@@ -1,33 +1,34 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
initStore
|
|
4
|
-
} from "../chunk-
|
|
5
|
-
import "../chunk-
|
|
4
|
+
} from "../chunk-DKRDU2AX.js";
|
|
5
|
+
import "../chunk-L4LPJMPV.js";
|
|
6
6
|
import "../chunk-CHCA3ZM2.js";
|
|
7
7
|
import "../chunk-OTVEIJUQ.js";
|
|
8
|
-
import "../chunk-
|
|
8
|
+
import "../chunk-FIPUVCKC.js";
|
|
9
9
|
import "../chunk-5MOYSU5A.js";
|
|
10
10
|
import "../chunk-4QCFFW2H.js";
|
|
11
11
|
import "../chunk-76CJBM36.js";
|
|
12
12
|
import "../chunk-MP2AFCGL.js";
|
|
13
13
|
import {
|
|
14
14
|
getClient
|
|
15
|
-
} from "../chunk-
|
|
16
|
-
import "../chunk-
|
|
17
|
-
import "../chunk-5YEUPUV4.js";
|
|
18
|
-
import "../chunk-Z2PAVJJ4.js";
|
|
19
|
-
import "../chunk-OMXJMOBD.js";
|
|
15
|
+
} from "../chunk-HLU52KTO.js";
|
|
16
|
+
import "../chunk-TKDITWDN.js";
|
|
20
17
|
import "../chunk-BBMTVAE3.js";
|
|
21
|
-
import "../chunk-
|
|
18
|
+
import "../chunk-5YEUPUV4.js";
|
|
19
|
+
import "../chunk-Q7J2SQJ6.js";
|
|
20
|
+
import "../chunk-YYB5PMTK.js";
|
|
21
|
+
import "../chunk-BRZR76TS.js";
|
|
22
22
|
import "../chunk-V3W3SATA.js";
|
|
23
23
|
import "../chunk-JY5GAZYC.js";
|
|
24
24
|
import "../chunk-FXU7JOXK.js";
|
|
25
|
-
import "../chunk-
|
|
26
|
-
import "../chunk-
|
|
25
|
+
import "../chunk-HPXFKUGU.js";
|
|
26
|
+
import "../chunk-BRIZ6OZ3.js";
|
|
27
27
|
import "../chunk-HSGBZSCA.js";
|
|
28
28
|
import {
|
|
29
29
|
isMainModule
|
|
30
30
|
} from "../chunk-6Y4B3QF6.js";
|
|
31
|
+
import "../chunk-JKKZGDLP.js";
|
|
31
32
|
import "../chunk-MLKGABMK.js";
|
|
32
33
|
|
|
33
34
|
// src/lib/memory-reads-read.ts
|
|
@@ -1,40 +1,41 @@
|
|
|
1
1
|
#!/usr/bin/env node
|
|
2
2
|
import {
|
|
3
3
|
generateSessionWrappers
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-3L2QU5ZF.js";
|
|
5
5
|
import {
|
|
6
6
|
TEMPLATE_VERSION,
|
|
7
7
|
buildCustomEmployeePrompt,
|
|
8
8
|
getTemplate,
|
|
9
9
|
personalizePrompt
|
|
10
|
-
} from "../chunk-
|
|
11
|
-
import "../chunk-
|
|
10
|
+
} from "../chunk-327Q53AS.js";
|
|
11
|
+
import "../chunk-WP2TGH5R.js";
|
|
12
12
|
import "../chunk-3BAGFZFN.js";
|
|
13
13
|
import {
|
|
14
14
|
PlanLimitError,
|
|
15
15
|
assertEmployeeLimit
|
|
16
|
-
} from "../chunk-
|
|
16
|
+
} from "../chunk-CY5NVDTH.js";
|
|
17
17
|
import {
|
|
18
18
|
hireEmployee,
|
|
19
19
|
registerBinSymlinks,
|
|
20
20
|
validateEmployeeName
|
|
21
|
-
} from "../chunk-
|
|
22
|
-
import "../chunk-
|
|
23
|
-
import "../chunk-5YEUPUV4.js";
|
|
24
|
-
import "../chunk-Z2PAVJJ4.js";
|
|
25
|
-
import "../chunk-OMXJMOBD.js";
|
|
21
|
+
} from "../chunk-HLU52KTO.js";
|
|
22
|
+
import "../chunk-TKDITWDN.js";
|
|
26
23
|
import "../chunk-BBMTVAE3.js";
|
|
27
|
-
import "../chunk-
|
|
24
|
+
import "../chunk-5YEUPUV4.js";
|
|
25
|
+
import "../chunk-Q7J2SQJ6.js";
|
|
26
|
+
import "../chunk-YYB5PMTK.js";
|
|
27
|
+
import "../chunk-BRZR76TS.js";
|
|
28
28
|
import "../chunk-V3W3SATA.js";
|
|
29
29
|
import "../chunk-JY5GAZYC.js";
|
|
30
30
|
import "../chunk-FXU7JOXK.js";
|
|
31
|
-
import "../chunk-
|
|
32
|
-
import "../chunk-
|
|
33
|
-
import "../chunk-
|
|
31
|
+
import "../chunk-HSKABJE6.js";
|
|
32
|
+
import "../chunk-3ICF4IAZ.js";
|
|
33
|
+
import "../chunk-BRIZ6OZ3.js";
|
|
34
34
|
import "../chunk-HSGBZSCA.js";
|
|
35
35
|
import {
|
|
36
36
|
isMainModule
|
|
37
37
|
} from "../chunk-6Y4B3QF6.js";
|
|
38
|
+
import "../chunk-JKKZGDLP.js";
|
|
38
39
|
import "../chunk-MLKGABMK.js";
|
|
39
40
|
|
|
40
41
|
// src/bin/exe-new-employee.ts
|
|
@@ -110,7 +111,7 @@ async function main() {
|
|
|
110
111
|
const { getTemplate: getIdentityTemplate } = await import("../lib/identity-templates.js");
|
|
111
112
|
const { identityPath } = await import("../lib/identity.js");
|
|
112
113
|
const fs = await import("fs");
|
|
113
|
-
const { getTemplateForTitle, getEmotionalBaseline, renderEmotionalBaselineSection } = await import("../lib/identity-templates.js");
|
|
114
|
+
const { getTemplateForTitle, getEmotionalBaseline, renderEmotionalBaselineSection, ensureAgentFrontmatter } = await import("../lib/identity-templates.js");
|
|
114
115
|
const employeeRole = newEmployee.role ?? "";
|
|
115
116
|
const identityTemplate = getIdentityTemplate(employeeRole.toLowerCase()) ?? getTemplateForTitle(employeeRole);
|
|
116
117
|
const emotionalBaseline = getEmotionalBaseline(employeeRole);
|
|
@@ -119,11 +120,12 @@ async function main() {
|
|
|
119
120
|
const dir = path.dirname(idPath);
|
|
120
121
|
if (!fs.existsSync(dir)) fs.mkdirSync(dir, { recursive: true });
|
|
121
122
|
if (identityTemplate) {
|
|
122
|
-
const
|
|
123
|
+
const rendered = identityTemplate.replace(/^agent_id: \w+/m, `agent_id: ${name}`) + emotionalSection;
|
|
124
|
+
const content = ensureAgentFrontmatter(rendered, name);
|
|
123
125
|
fs.writeFileSync(idPath, content, "utf-8");
|
|
124
126
|
console.log(`Identity doc written: ~/.exe-os/identity/${name}.md`);
|
|
125
127
|
} else if (!fs.existsSync(idPath)) {
|
|
126
|
-
const
|
|
128
|
+
const base = `---
|
|
127
129
|
role: specialist
|
|
128
130
|
title: Specialist
|
|
129
131
|
agent_id: ${name}
|
|
@@ -133,6 +135,7 @@ updated_at: ${(/* @__PURE__ */ new Date()).toISOString()}
|
|
|
133
135
|
---
|
|
134
136
|
|
|
135
137
|
${rolePrompt}${emotionalSection}`;
|
|
138
|
+
const content = ensureAgentFrontmatter(base, name);
|
|
136
139
|
fs.writeFileSync(idPath, content, "utf-8");
|
|
137
140
|
console.log(`Identity doc written: ~/.exe-os/identity/${name}.md`);
|
|
138
141
|
}
|
|
@@ -150,7 +153,7 @@ ${rolePrompt}${emotionalSection}`;
|
|
|
150
153
|
console.error(`Warning: some launchers failed: ${bins.errors.join("; ")}`);
|
|
151
154
|
}
|
|
152
155
|
try {
|
|
153
|
-
const { resolvePackageRoot } = await import("../installer-
|
|
156
|
+
const { resolvePackageRoot } = await import("../installer-QBWZSYDG.js");
|
|
154
157
|
const { homedir } = await import("os");
|
|
155
158
|
const pkgRoot = resolvePackageRoot();
|
|
156
159
|
const wrapResult = generateSessionWrappers(pkgRoot);
|
|
@@ -3,23 +3,24 @@ import {
|
|
|
3
3
|
buildMcpHttpHeaders,
|
|
4
4
|
mcpHttpPort,
|
|
5
5
|
mcpHttpUrl
|
|
6
|
-
} from "../chunk-
|
|
6
|
+
} from "../chunk-CVYDJ2TW.js";
|
|
7
7
|
import "../chunk-B6TI3TZT.js";
|
|
8
|
-
import "../chunk-
|
|
9
|
-
import "../chunk-
|
|
10
|
-
import "../chunk-5YEUPUV4.js";
|
|
11
|
-
import "../chunk-Z2PAVJJ4.js";
|
|
12
|
-
import "../chunk-OMXJMOBD.js";
|
|
8
|
+
import "../chunk-HLU52KTO.js";
|
|
9
|
+
import "../chunk-TKDITWDN.js";
|
|
13
10
|
import "../chunk-BBMTVAE3.js";
|
|
14
|
-
import "../chunk-
|
|
11
|
+
import "../chunk-5YEUPUV4.js";
|
|
12
|
+
import "../chunk-Q7J2SQJ6.js";
|
|
13
|
+
import "../chunk-YYB5PMTK.js";
|
|
14
|
+
import "../chunk-BRZR76TS.js";
|
|
15
15
|
import "../chunk-V3W3SATA.js";
|
|
16
16
|
import "../chunk-JY5GAZYC.js";
|
|
17
17
|
import "../chunk-FXU7JOXK.js";
|
|
18
|
-
import "../chunk-
|
|
18
|
+
import "../chunk-BRIZ6OZ3.js";
|
|
19
19
|
import "../chunk-HSGBZSCA.js";
|
|
20
20
|
import {
|
|
21
21
|
isMainModule
|
|
22
22
|
} from "../chunk-6Y4B3QF6.js";
|
|
23
|
+
import "../chunk-JKKZGDLP.js";
|
|
23
24
|
import "../chunk-MLKGABMK.js";
|
|
24
25
|
|
|
25
26
|
// src/bin/exe-os-mcp-proxy.ts
|