wednesdayai 0.5.1-dev.49 → 0.5.1-dev.52
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/{acp-cli-CSDr9rFY.js → acp-cli-B4dS4wV-.js} +11 -11
- package/dist/{agent-scope-Daay3L1Q.js → agent-scope-m37qEcFM.js} +21 -21
- package/dist/{agent-turn-enqueue-Ca29Rbkz.js → agent-turn-enqueue-ArRzUyAk.js} +6 -6
- package/dist/{agent-turn-execute-B4iUpIbf.js → agent-turn-execute-CM4O0yRh.js} +155 -155
- package/dist/{agent-turn-recovery-adapter-CN7R7ZpE.js → agent-turn-recovery-adapter-CV9hCfhV.js} +3 -3
- package/dist/{agent-turn-runner-y6DgnCcB.js → agent-turn-runner-DoUxdVA8.js} +4 -4
- package/dist/{agents-BR_k8DOr.js → agents-8IrzkYKe.js} +21 -21
- package/dist/{agents.config-ClrzdK7g.js → agents.config-B22brY93.js} +3 -3
- package/dist/{api-key-rotation-ZuntHnbE.js → api-key-rotation-D42o6Zng.js} +1 -1
- package/dist/{audio-preflight-BIOdIaYS.js → audio-preflight-C3hxTGYi.js} +37 -37
- package/dist/{audio-transcription-runner-Cn0jB-li.js → audio-transcription-runner-BCsXP8-1.js} +27 -27
- package/dist/{audit-TBCP_6jm.js → audit-BvrCpsTe.js} +31 -31
- package/dist/{auth-nD5DAjKr.js → auth-B4_HVLhd.js} +4 -4
- package/dist/{auth-choice-35J0xM6Z.js → auth-choice-DPnina-M.js} +15 -15
- package/dist/{auth-choice-Bq8CC1lU.js → auth-choice-kM9PIJr4.js} +13 -13
- package/dist/{auth-choice.apply-helpers-YNiPajEk.js → auth-choice.apply-helpers-DVZh64eB.js} +1 -1
- package/dist/{auth-token-BzoQdUL6.js → auth-token-CrC72-Fb.js} +2 -2
- package/dist/{banner-MupqYLcq.js → banner-CP6z-7_Z.js} +4 -4
- package/dist/{bonjour-discovery-CVCaA_iW.js → bonjour-discovery-CXRsUe5D.js} +3 -3
- package/dist/{browser-cli-UBdCgnrs.js → browser-cli-B_4FyxW8.js} +19 -19
- package/dist/build-info.json +3 -3
- package/dist/{call-xzY_YjPJ.js → call-DiXPYDxn.js} +12 -12
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-Cgiem_zz.js → channel-account-context-Df3_ZrlO.js} +7 -7
- package/dist/{channel-options-ceRWPyZu.js → channel-options-DqiC37-O.js} +3 -3
- package/dist/{channel-selection-CTSiOhj4.js → channel-selection-CggPBiFX.js} +1 -1
- package/dist/{channels-cli-BwgQPXDo.js → channels-cli-DL63TJdS.js} +122 -122
- package/dist/{channels-status-issues-CnBn-qEt.js → channels-status-issues-CdXaTFd3.js} +1 -1
- package/dist/{chrome-DJwFDuoy.js → chrome-o2uZSWIt.js} +6 -6
- package/dist/{chunk-Cac92Mfe.js → chunk-CWJj0yTC.js} +3 -3
- package/dist/{clack-prompter-Cjs9OUc5.js → clack-prompter-BKD0RJgm.js} +5 -5
- package/dist/clawbot-cli-sFSfxALD.js +33 -0
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/cli-DZ1p-qqR.js +168 -0
- package/dist/{client-BHIM--Lw.js → client-B3-vuVAE.js} +4 -4
- package/dist/{client-profiles-C576THk-.js → client-profiles-Bc3sF7Zy.js} +2 -2
- package/dist/{clipboard-BNyun_kb.js → clipboard-DbPKCnXY.js} +1 -1
- package/dist/{command-queue-QaMaW8lR.js → command-queue-D8Y7Hgzy.js} +1 -1
- package/dist/{command-registry-DupEgpR0.js → command-registry-CjWadaVi.js} +14 -14
- package/dist/{command-secret-targets-DSyP6TXo.js → command-secret-targets-DfQv7jnw.js} +4 -4
- package/dist/{commands-W2-5cDc4.js → commands-CVdmhZKr.js} +1 -1
- package/dist/{commands-registry-D7RtFxju.js → commands-registry-B4aR17xV.js} +3 -3
- package/dist/{completion-cli-FCJfJebn.js → completion-cli-CNuhIsey.js} +16 -16
- package/dist/{config-cli-VIY_NYNB.js → config-cli-BUhVl5pE.js} +10 -10
- package/dist/{config-guard-Bmr1IhWb.js → config-guard-buy7Cjbp.js} +4 -4
- package/dist/{config-validation-D51v90j4.js → config-validation-Bv5bbuxd.js} +4 -4
- package/dist/{configure-DY9M7xe9.js → configure-D2cKTH1K.js} +25 -25
- package/dist/{control-ui-assets-Dm1xGH5K.js → control-ui-assets-CTBYi2MG.js} +3 -3
- package/dist/{controller-_1HRMACq.js → controller-CEWtbHG6.js} +1 -1
- package/dist/{credentials-BeQIuOVH.js → credentials-Db9gEJyX.js} +1 -1
- package/dist/{cron-cli-Df48V_il.js → cron-cli-iv9AjWjS.js} +14 -14
- package/dist/{daemon-cli-BaePnoF7.js → daemon-cli-P_RNqlTz.js} +19 -19
- package/dist/{daemon-install-DWcz5r6O.js → daemon-install-D-kvx3V5.js} +10 -10
- package/dist/{daemon-install-helpers-Dhf36TZZ.js → daemon-install-helpers-9DICPTya.js} +13 -13
- package/dist/{delete-agent-sessions-uGdBmFVU.js → delete-agent-sessions-BfuIBVng.js} +1 -1
- package/dist/{deliver-CsBM7Sux.js → deliver-vnUlcBpf.js} +12 -12
- package/dist/{devices-cli-DJfaFSmn.js → devices-cli-a6nbvYoE.js} +13 -13
- package/dist/{diagnostic-DAPS8u-k.js → diagnostic-DJz53yyc.js} +4 -4
- package/dist/{diagnostics-nXbz9WIN.js → diagnostics-CCJvDjHM.js} +5 -5
- package/dist/{directory-cli-BLhDYrKO.js → directory-cli-DZt6_oyq.js} +11 -11
- package/dist/{dm-policy-shared-BruH8gYz.js → dm-policy-shared-B2rRMZjX.js} +5 -5
- package/dist/{dns-cli-B5kFZNM_.js → dns-cli-Cr7olDhH.js} +10 -10
- package/dist/{docs-cli-CA-BUSdK.js → docs-cli-D0IbS-w_.js} +9 -9
- package/dist/{doctor-completion-DPfr7dYc.js → doctor-completion-CTN0KnCG.js} +3 -3
- package/dist/{doctor-config-flow-CwSjXDoe.js → doctor-config-flow-BcbZEvhN.js} +17 -17
- package/dist/{enable-DiygfPTs.js → enable-FeowesRW.js} +2 -2
- package/dist/entry.js +4 -4
- package/dist/{exec-DgfbhlVq.js → exec-BadOxgw_.js} +2 -2
- package/dist/{exec-approvals-allowlist-BQNCcnrB.js → exec-approvals-allowlist-CvMIZ3Av.js} +1 -1
- package/dist/{exec-approvals-cli-Cwg4-I6U.js → exec-approvals-cli-TIjMcgyZ.js} +22 -22
- package/dist/{exec-approvals-ClDOrgGo.js → exec-approvals-iao6P-Sv.js} +2 -2
- package/dist/{exec-safe-bin-runtime-policy-B_c-JxLa.js → exec-safe-bin-runtime-policy-18lfJBlE.js} +2 -2
- package/dist/{extension-relay-auth-zGWI5gYg.js → extension-relay-auth-DaJK0rd5.js} +10 -10
- package/dist/{fetch---jlJUEM.js → fetch-COhcdJbk.js} +5 -5
- package/dist/{fetch-guard-iae-zVNj.js → fetch-guard-ChaY1JfD.js} +2 -2
- package/dist/{fs-safe-9jT9nWzE.js → fs-safe-CJ7BaYqw.js} +25 -25
- package/dist/{gateway-cli-B5anPDYc.js → gateway-cli-BrOSHlSK.js} +200 -200
- package/dist/{gateway-rpc-CJhrbhwy.js → gateway-rpc-qeYBKW7U.js} +3 -3
- package/dist/{globals-BRyHSrWD.js → globals-3lUHnZas.js} +7 -7
- package/dist/{gmail-setup-utils-BjW3d-63.js → gmail-setup-utils-CobB8zXB.js} +2 -2
- package/dist/{health-DR2dYPoD.js → health-Dff2iJXm.js} +11 -11
- package/dist/{health-format-fI8G4Mpf.js → health-format-CiSn_s8O.js} +1 -1
- package/dist/{heartbeat-tick-btylKJi7.js → heartbeat-tick-DsC4du2J.js} +1 -1
- package/dist/{help-format-CoaYSXD2.js → help-format-vSbRPQ2Y.js} +1 -1
- package/dist/{helpers-BSIlmKX7.js → helpers-CmFDbO4C.js} +1 -1
- package/dist/{hooks-cli-DRa-pNVn.js → hooks-cli-Cg_LIDvE.js} +110 -110
- package/dist/{hooks-status-CHpefcMx.js → hooks-status-Cz3FinlP.js} +2 -2
- package/dist/{identity-cli-CNcWNIW-.js → identity-cli-Cvp7fIZM.js} +20 -20
- package/dist/{identity-links-avuUsTN6.js → identity-links-DP7R0NPE.js} +4 -4
- package/dist/{identity-links-live-BL__Ecwf.js → identity-links-live-Bi60qFYK.js} +1 -1
- package/dist/{image-ops-CaP-qXCU.js → image-ops-fsbohlx7.js} +11 -11
- package/dist/{inspect-CoNYULj4.js → inspect-dN8Sghor.js} +4 -4
- package/dist/{install-safe-path-D9kvfVs4.js → install-safe-path-D8uZKU9M.js} +25 -25
- package/dist/{installs-Bs4nGu6t.js → installs-Di1c2v3h.js} +10 -10
- package/dist/{ipv4-ClJ3jo3P.js → ipv4-2ElrM9Sz.js} +2 -2
- package/dist/{ir-3e4BsvCp.js → ir-G6mp02Um.js} +8 -8
- package/dist/{issue-format-CcyrT_ll.js → issue-format-CEhsl7Wj.js} +1 -1
- package/dist/{jobs-Dh5LHEXG.js → jobs-BXFDvC34.js} +3 -3
- package/dist/{json-files--SPKjIRq.js → json-files-DQ0SWA8I.js} +7 -7
- package/dist/{lifecycle-core-CC9SYYk6.js → lifecycle-core-m816LTRQ.js} +9 -9
- package/dist/{links-DhEAHyJK.js → links-CdYxxGpz.js} +1 -1
- package/dist/{log-tail-BKVxlVAs.js → log-tail-BGUoZ3uj.js} +7 -7
- package/dist/{logging-CbulhL7o.js → logging-BcooikJ6.js} +1 -1
- package/dist/{logs-cli-6mdXA28U.js → logs-cli-DBMjDhb-.js} +18 -18
- package/dist/{manager-zP9NLy9y.js → manager-NberoPlo.js} +14 -14
- package/dist/{manager-ByvI6Ro3.js → manager-kfVhbDC5.js} +9 -9
- package/dist/{markdown-tables-DXuYgzLS.js → markdown-tables-CIDos_m6.js} +2 -2
- package/dist/{memory-cli-BuY1OqI1.js → memory-cli-CTBlq72D.js} +19 -19
- package/dist/{model-Cnbe29aL.js → model-DLnu2ZHK.js} +2 -2
- package/dist/{model-catalog-qSGqRSeB.js → model-catalog-DShV9nqu.js} +4 -4
- package/dist/{model-picker-Esi1b_6D.js → model-picker-DWhiEZI7.js} +4 -4
- package/dist/{models-ZMCaSPw_.js → models-Cz5Kterd.js} +22 -22
- package/dist/{models-cli-CAMmJjvq.js → models-cli-BoDMHZu8.js} +110 -110
- package/dist/{models-config-CzWBExZR.js → models-config-MT7bTyDD.js} +7 -7
- package/dist/{node-cli-CwcTuNzE.js → node-cli-C_4LoQOV.js} +43 -43
- package/dist/{node-command-policy-E6RVVTJQ.js → node-command-policy-BBvAh8Rh.js} +1 -1
- package/dist/{node-service-Dvf6aAZJ.js → node-service-DCKAYWfS.js} +1 -1
- package/dist/{nodes-cli-BuQlqtRW.js → nodes-cli-DGvDAyok.js} +23 -23
- package/dist/{nodes-screen-DLNLgCSg.js → nodes-screen-4mQTqYUN.js} +8 -8
- package/dist/{note-CVlhiP2P.js → note-IQhv9g1L.js} +2 -2
- package/dist/{npm-pack-install-D_Sj0nv2.js → npm-pack-install-D4CH04qy.js} +23 -23
- package/dist/{npm-resolution-zax_R0pB.js → npm-resolution-DaMWVeZe.js} +5 -5
- package/dist/{nudge-D9rNDPko.js → nudge-DAMdAd6o.js} +9 -9
- package/dist/{oauth-tls-preflight-DLH5IYXS.js → oauth-tls-preflight-CkoqXyrR.js} +1 -1
- package/dist/{onboard-DD3dH3k9.js → onboard-DD49foBa.js} +11 -11
- package/dist/{onboard-channels-BBE-Agqp.js → onboard-channels-CpiuyfFX.js} +24 -24
- package/dist/{onboard-custom-CEY7uEmj.js → onboard-custom-Dk2A4Q3G.js} +4 -4
- package/dist/{onboard-helpers-BMVut_hd.js → onboard-helpers-CyIeOf0n.js} +13 -13
- package/dist/{onboard-hooks-CG-FJnI-.js → onboard-hooks-o9_Jnoi3.js} +6 -6
- package/dist/{onboard-remote-DEpMgQbz.js → onboard-remote-lRnElN1u.js} +5 -5
- package/dist/{onboard-skills-Bg7_D4v3.js → onboard-skills-DG2pTqSo.js} +4 -4
- package/dist/{onboarding-DAr0y1xl.js → onboarding-DSJ6YXNm.js} +18 -18
- package/dist/{onboarding.finalize-CAdOP28d.js → onboarding.finalize-D8gRbG5W.js} +118 -118
- package/dist/{onboarding.gateway-config-CFZaPfh1.js → onboarding.gateway-config-DylTeRCh.js} +21 -21
- package/dist/{onboarding.secret-input-W2xyIofP.js → onboarding.secret-input-Dj09etVn.js} +1 -1
- package/dist/{openai-model-default-CfAtGL15.js → openai-model-default-DqnRWGwj.js} +2 -2
- package/dist/{openclaw-root-C3plUO0H.js → openclaw-root-Bh3xNyXD.js} +2 -2
- package/dist/{operator-commands-B1hJ80gq.js → operator-commands-BDQn-b94.js} +6 -6
- package/dist/{outbound-attachment-B1pU8jDT.js → outbound-attachment-BeP7tvsZ.js} +2 -2
- package/dist/{outbound-message-hooks-DUjjvy1L.js → outbound-message-hooks-D7aalpVP.js} +5 -5
- package/dist/{pairing-cli-Beyds7bN.js → pairing-cli-C1W78CCz.js} +19 -19
- package/dist/{pairing-labels-CF503Gm6.js → pairing-labels-BgUdVYgJ.js} +1 -1
- package/dist/{pairing-store-CyVCFIGE.js → pairing-store-BIeHwICv.js} +4 -4
- package/dist/{path-alias-guards-PMiJhZq7.js → path-alias-guards-BL542Mqz.js} +3 -3
- package/dist/{path-safety-BspQHYKd.js → path-safety-tfrNWosi.js} +1 -1
- package/dist/{pi-embedded-helpers-CPciDfKU.js → pi-embedded-helpers-mGzreJbk.js} +6 -6
- package/dist/{pi-embedded-recovery-adapter-Dih7eQN6.js → pi-embedded-recovery-adapter-5ipqXFw0.js} +37 -37
- package/dist/{pi-embedded-utils-CuKpG3OL.js → pi-embedded-utils-DC8eBUz9.js} +2 -2
- package/dist/{pi-model-discovery-BGjjAfS_.js → pi-model-discovery-Cv0FIBjp.js} +1 -1
- package/dist/{pid-alive-SdfUhiUL.js → pid-alive-dd2LsB9B.js} +1 -1
- package/dist/{plugin-auto-enable-CkSukyUJ.js → plugin-auto-enable-Clq5aaN8.js} +2 -2
- package/dist/{plugin-owned-work-recovery-adapter--0U5isrX.js → plugin-owned-work-recovery-adapter-tahoDsQP.js} +7 -7
- package/dist/{plugin-registry-Bj2UEGYL.js → plugin-registry-Co2I2dee.js} +4 -4
- package/dist/{plugins-cli-DxRN4ecF.js → plugins-cli-BbCRBZ8E.js} +113 -113
- package/dist/{plugins-U6rjKH4S.js → plugins-s69ApVox.js} +32 -32
- package/dist/{ports-C39ULrzN.js → ports-CbVKJEbZ.js} +2 -2
- package/dist/{ports-Bou4KIns.js → ports-D3N8WNv7.js} +3 -3
- package/dist/{program-15ahbGoV.js → program-DZV-02XU.js} +109 -109
- package/dist/{progress-CNFYgWmi.js → progress-CSthTuLH.js} +2 -2
- package/dist/{prompt-select-styled-UplxBFKi.js → prompt-select-styled-GsqEjvHR.js} +48 -48
- package/dist/{prompt-style-BDFZg96K.js → prompt-style-C6yO0kan.js} +1 -1
- package/dist/{provider-auth-helpers-BVUg3rt9.js → provider-auth-helpers-DL--wYUD.js} +6 -6
- package/dist/{proxy-env-DlwU1FI0.js → proxy-env-BwHmf2xr.js} +1 -1
- package/dist/{push-apns-Brgo5FF_.js → push-apns-DDrvx1KA.js} +10 -10
- package/dist/{pw-ai-BuxU6NcI.js → pw-ai-9MdWRxeB.js} +17 -17
- package/dist/{qmd-manager-Co6bGTb-.js → qmd-manager-D6HnLpUI.js} +25 -25
- package/dist/{qmd-scope-C73b3Bad.js → qmd-scope-B3hEskxa.js} +1 -1
- package/dist/{qr-cli-BatJFHjG.js → qr-cli-3HQW1ysr.js} +10 -10
- package/dist/{query-expansion-Db-cwB6N.js → query-expansion-Ba0qHd1X.js} +10 -10
- package/dist/{reconcile-bundled-pSk1Enkt.js → reconcile-bundled-ETwvh8Lp.js} +3 -3
- package/dist/{recorder-Co7XfeXs.js → recorder-DWp7wJN5.js} +2 -2
- package/dist/{recovery-adapter-D4N2DA4U.js → recovery-adapter-D7ZF1aEL.js} +3 -3
- package/dist/{recovery-adapter-Bd5Lx0lD.js → recovery-adapter-Keltudpw.js} +2 -2
- package/dist/{recovery-adapter-Ce8bGqr6.js → recovery-adapter-ke4F4Py1.js} +7 -7
- package/dist/{recovery-prompt-BNuvIRHh.js → recovery-prompt-BDu5Z1ac.js} +1 -1
- package/dist/{redact-snapshot-CWZRUrKd.js → redact-snapshot-CIe93cqM.js} +2 -2
- package/dist/{register.agent-qsvG5d6b.js → register.agent-BPzxR5eF.js} +124 -124
- package/dist/register.configure-B3_fTtgY.js +172 -0
- package/dist/{register.maintenance-FoAdPMFW.js → register.maintenance-BMcTylyl.js} +132 -132
- package/dist/{register.message-jqWymiCX.js → register.message-C5pBU08J.js} +103 -103
- package/dist/{register.onboard-KhVcvpjS.js → register.onboard-Czx8Kmyg.js} +26 -26
- package/dist/{register.setup-6Dis4a-c.js → register.setup-CTInxp0P.js} +29 -29
- package/dist/{register.status-health-sessions-DRwbJpYv.js → register.status-health-sessions-B5Rv4Dsf.js} +122 -122
- package/dist/{register.subclis-9qtDZp7M.js → register.subclis-DZL7ZFwa.js} +35 -35
- package/dist/{replies-NOlwewVf.js → replies-CrZI5K0e.js} +5 -5
- package/dist/{reply-directives-BN2i_45e.js → reply-directives-CF6_EhVh.js} +2 -2
- package/dist/{reply-prefix-w4MwKPHk.js → reply-prefix-CeZ9Uz8z.js} +1 -1
- package/dist/{reset-9GUBHVgp.js → reset-D-mCgUpD.js} +1 -1
- package/dist/{resolve-route-CrsHJxmf.js → resolve-route-yDs92eUQ.js} +6 -6
- package/dist/{rpc-hQ8QyZfR.js → rpc-Do5rvfno.js} +3 -3
- package/dist/{run-main-D8aWBZut.js → run-main-BYRPATOb.js} +122 -122
- package/dist/{runs-CIwQKryx.js → runs-C1AHoTDq.js} +7 -7
- package/dist/{runtime-config-dhfqY0Av.js → runtime-config-DYgOR0MD.js} +1 -1
- package/dist/{runtime-config-collectors-DvDpcifN.js → runtime-config-collectors-BLVuIB75.js} +1 -1
- package/dist/{runtime-guard-SZPrkFGc.js → runtime-guard-BmktwqCK.js} +1 -1
- package/dist/{runtime-DcEApmUI.js → runtime-iNm_LniP.js} +4 -4
- package/dist/{sandbox-DUHQEePj.js → sandbox-Da_kzIjf.js} +21 -21
- package/dist/{sandbox-cli-DlQR1_hY.js → sandbox-cli-DuSmbDES.js} +33 -33
- package/dist/{secrets-cli-DbI7GN_9.js → secrets-cli-CTwKCtw5.js} +16 -16
- package/dist/{security-cli-BiKOgX17.js → security-cli-N9bUi8Q4.js} +47 -47
- package/dist/{send-T7B6Djpm.js → send-B2OFN92Q.js} +7 -7
- package/dist/{send-CCpmsTaF.js → send-BrIw5gc4.js} +6 -6
- package/dist/{send-D1_IMV2p.js → send-DDirI-zY.js} +13 -13
- package/dist/{send-BgoXf_pU.js → send-DUG-oCDA.js} +6 -6
- package/dist/{server-aWUVSCfe.js → server-CTE0rQkl.js} +23 -23
- package/dist/{server-context-6JE_fAZa.js → server-context-BFf0C9iy.js} +12 -12
- package/dist/{server-lifecycle-DrkkrkLG.js → server-lifecycle-HSz4A7oj.js} +3 -3
- package/dist/{server-middleware-C4sFNt38.js → server-middleware-BfsPD7V5.js} +1 -1
- package/dist/{server-node-events-M-He8yAD.js → server-node-events-Dfykgqkj.js} +103 -103
- package/dist/{service-D7MwyeF6.js → service-BvpFqVNe.js} +15 -15
- package/dist/{session-consumer-agents-CvPuQmfS.js → session-consumer-agents-BRMrM2o-.js} +1 -1
- package/dist/{session-consumer-claim-sweep-BwHCvVar.js → session-consumer-claim-sweep-C-w92Ik5.js} +9 -9
- package/dist/{session-key-DCnSJLJC.js → session-key-D0gYNgj1.js} +1 -1
- package/dist/{session-meta-AHw8bwC2.js → session-meta-B_9mMU72.js} +1 -1
- package/dist/{session-storage-2RXtwc2B.js → session-storage-BDHA7onc.js} +22 -22
- package/dist/{session-storage-owner-C2S5c5Ct.js → session-storage-owner-CE7dPxVq.js} +53 -53
- package/dist/{session-store-targets-Dfi0lJu6.js → session-store-targets-DSlE2YTH.js} +3 -3
- package/dist/{session-utils-N1E2Os2e.js → session-utils-Qu1Mxoz3.js} +9 -9
- package/dist/{sessions-ByIiYDOv.js → sessions-BJTO-2xk.js} +17 -17
- package/dist/{sessions-CiGjB89K.js → sessions-CbISkp7n.js} +5 -5
- package/dist/{sessions-CDZSxsqg.js → sessions-DcU-v_tQ.js} +6 -6
- package/dist/{sessions-claims-status-Due9OmHi.js → sessions-claims-status-BVw2gdh3.js} +11 -11
- package/dist/{sessions-maintenance-core-mGWdB4w9.js → sessions-maintenance-core-BhBRIGU4.js} +8 -8
- package/dist/{setup-helpers-Db5Eiwfz.js → setup-helpers-llVNLaGg.js} +1 -1
- package/dist/{shared-BD85Vehr.js → shared-DWSJKo_J.js} +4 -4
- package/dist/{shared-Dj_9K6TV.js → shared-DiKdnJLT.js} +2 -2
- package/dist/{skill-commands-RbKycCIr.js → skill-commands-ByQ7_wSo.js} +7 -7
- package/dist/{skill-scanner-_B-P9k6R.js → skill-scanner-BF0g0j0b.js} +7 -7
- package/dist/{skills-DQXl0zPN.js → skills-B_8rpYgx.js} +6 -6
- package/dist/{skills-cli-CoFk-jGI.js → skills-cli-DPCY-cBo.js} +9 -9
- package/dist/{skills-install-CbZM96Md.js → skills-install-7wyldk9K.js} +9 -9
- package/dist/{skills-status-BzrUtJEQ.js → skills-status-B6eaKM8l.js} +3 -3
- package/dist/{status-1Hex6Hbe.js → status-BEBudOEO.js} +49 -49
- package/dist/{status.update-BfbrrxHR.js → status.update-DFxOh1ri.js} +2 -2
- package/dist/{storage-config-Dz2pNq3V.js → storage-config-JrkJ-0mD.js} +4 -4
- package/dist/{store-DNFja7Ml.js → store-BbFKZJKS.js} +7 -7
- package/dist/{subsystem-BNf8H-Zm.js → subsystem-xTuYkxuQ.js} +1 -1
- package/dist/{supervisor-BTx-mYVb.js → supervisor-SBLvQOVa.js} +2 -2
- package/dist/{system-cli-CCnFtRmN.js → system-cli-D1NTf4-m.js} +13 -13
- package/dist/{system-run-command-Dn4pjv1t.js → system-run-command-D5kMl0NY.js} +2 -2
- package/dist/{systemd-dCivcEEh.js → systemd-BT6dJ-0G.js} +11 -11
- package/dist/{systemd-hints-DKKIvtLc.js → systemd-hints-e6hBRMDf.js} +9 -9
- package/dist/{systemd-linger-OHTcLrbQ.js → systemd-linger-BSyMrbbt.js} +2 -2
- package/dist/{table-C7H5Lwhe.js → table-BVq_qQUE.js} +2 -2
- package/dist/{tables-BcvyK02n.js → tables-CfbMQJYc.js} +1 -1
- package/dist/{tailnet-CImZKZJW.js → tailnet-QfxqR4vE.js} +1 -1
- package/dist/{tailscale-B18BMO5n.js → tailscale-D0OOOayz.js} +2 -2
- package/dist/{task-pipeline-boot-MOBuVbRZ.js → task-pipeline-boot-DHHiFfrN.js} +103 -103
- package/dist/{task-runlog-retention-BSWFe7it.js → task-runlog-retention-COTIMum4.js} +5 -5
- package/dist/{tasks-DSspLa-k.js → tasks-DX3vGbQp.js} +11 -11
- package/dist/{tokens-CifyLNEm.js → tokens-BLTw7hkA.js} +1 -1
- package/dist/{tool-display-C8fJRy0v.js → tool-display-DgVBn6pw.js} +1 -1
- package/dist/{tool-loop-detection-DNtwIsX0.js → tool-loop-detection-DWOtmjfd.js} +2 -2
- package/dist/{trash-DeXdzEHp.js → trash-DFORyVVD.js} +3 -3
- package/dist/{tui-DiBWn1ps.js → tui-Y47OkCY6.js} +9 -9
- package/dist/{tui-cli-0XkkeQf6.js → tui-cli-BK9oKFut.js} +35 -35
- package/dist/{update-cli-vPcjjv5_.js → update-cli-sh07vJot.js} +142 -142
- package/dist/{update-DRgOzhPi.js → update-fBTm6-oX.js} +3 -3
- package/dist/{update-runner-Dcaoqle4.js → update-runner-u1A5zaMd.js} +18 -18
- package/dist/{user-run-recording-B9LdfyWT.js → user-run-recording-CxBc2Jon.js} +2 -2
- package/dist/{validation-cli-DHqNm53i.js → validation-cli-DHucU5a8.js} +102 -102
- package/dist/{web-cli-BtHivcdm.js → web-cli-4yA2eTYI.js} +3 -3
- package/dist/{webhooks-cli-C695mkPl.js → webhooks-cli-B4XnYSad.js} +10 -10
- package/dist/{widearea-dns-cOQiZHOu.js → widearea-dns-D_Hocera.js} +1 -1
- package/dist/{with-timeout-TcIyDCxH.js → with-timeout-Ckdjpoqb.js} +6 -6
- package/dist/{workspace-DDuzC-ch.js → workspace-UYxvaf5A.js} +2 -2
- package/dist/{workspace-dirs-D56GdN_R.js → workspace-dirs-CqcsAdcV.js} +1 -1
- package/dist/{ws-CQqP1z5x.js → ws-B_HpEvRE.js} +2 -2
- package/dist/{wsl-DBdhRAWE.js → wsl-Be9W0qZW.js} +2 -2
- package/extensions/acpx/package.json +1 -1
- package/extensions/anthropic/package.json +1 -1
- package/extensions/bifrost/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/deepgram/package.json +1 -1
- package/extensions/deepinfra/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/diffs/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/dream-cycle/package.json +1 -1
- package/extensions/elevenlabs/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/gemini-search/package.json +1 -1
- package/extensions/google/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/grok-search/package.json +1 -1
- package/extensions/groq/package.json +1 -1
- package/extensions/identity-oidc/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/kimi-search/package.json +1 -1
- package/extensions/kokoro/package.json +1 -1
- package/extensions/learning-core/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +1 -1
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/mistral/package.json +1 -1
- package/extensions/moonshot/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +1 -1
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +1 -1
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/openai/package.json +1 -1
- package/extensions/openai-realtime/package.json +1 -1
- package/extensions/openrouter/package.json +1 -1
- package/extensions/perplexity-search/package.json +1 -1
- package/extensions/searxng-search/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +1 -1
- package/extensions/twitch/package.json +1 -1
- package/extensions/ui-surfaces/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +1 -1
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zai/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +1 -1
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +1 -1
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/clawbot-cli-DkKjzk5H.js +0 -33
- package/dist/cli-BmswsRzN.js +0 -168
- package/dist/register.configure-CYUHzWqX.js +0 -172
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { X as isPathInside, Y as isNotFoundPathError } from "./globals-
|
|
2
|
-
import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
3
|
-
import { n as resolveSafeBaseDir } from "./path-safety-
|
|
1
|
+
import { X as isPathInside, Y as isNotFoundPathError } from "./globals-3lUHnZas.js";
|
|
2
|
+
import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-CJ7BaYqw.js";
|
|
3
|
+
import { n as resolveSafeBaseDir } from "./path-safety-tfrNWosi.js";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import
|
|
5
|
+
import fsPromises from "node:fs/promises";
|
|
6
6
|
import { createHash } from "node:crypto";
|
|
7
7
|
import { pipeline } from "node:stream/promises";
|
|
8
8
|
import { Readable, Transform } from "node:stream";
|
|
@@ -78,9 +78,9 @@ function resolveArchiveKind(filePath) {
|
|
|
78
78
|
async function resolvePackedRootDir(extractDir) {
|
|
79
79
|
const direct = path.join(extractDir, "package");
|
|
80
80
|
try {
|
|
81
|
-
if ((await
|
|
81
|
+
if ((await fsPromises.stat(direct)).isDirectory()) return direct;
|
|
82
82
|
} catch {}
|
|
83
|
-
const dirs = (await
|
|
83
|
+
const dirs = (await fsPromises.readdir(extractDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name);
|
|
84
84
|
if (dirs.length !== 1) throw new Error(`unexpected archive layout (dirs: ${dirs.join(", ")})`);
|
|
85
85
|
const onlyDir = dirs[0];
|
|
86
86
|
if (!onlyDir) throw new Error("unexpected archive layout (no package dir found)");
|
|
@@ -150,10 +150,10 @@ function symlinkTraversalError(originalPath) {
|
|
|
150
150
|
return new ArchiveSecurityError("destination-symlink-traversal", `${ERROR_ARCHIVE_ENTRY_TRAVERSES_SYMLINK}: ${originalPath}`);
|
|
151
151
|
}
|
|
152
152
|
async function assertDestinationDirReady(destDir) {
|
|
153
|
-
const stat = await
|
|
153
|
+
const stat = await fsPromises.lstat(destDir);
|
|
154
154
|
if (stat.isSymbolicLink()) throw new ArchiveSecurityError("destination-symlink", "archive destination is a symlink");
|
|
155
155
|
if (!stat.isDirectory()) throw new ArchiveSecurityError("destination-not-directory", "archive destination is not a directory");
|
|
156
|
-
return await
|
|
156
|
+
return await fsPromises.realpath(destDir);
|
|
157
157
|
}
|
|
158
158
|
async function assertNoSymlinkTraversal(params) {
|
|
159
159
|
const parts = params.relPath.split("/").filter(Boolean);
|
|
@@ -162,7 +162,7 @@ async function assertNoSymlinkTraversal(params) {
|
|
|
162
162
|
current = path.join(current, part);
|
|
163
163
|
let stat;
|
|
164
164
|
try {
|
|
165
|
-
stat = await
|
|
165
|
+
stat = await fsPromises.lstat(current);
|
|
166
166
|
} catch (err) {
|
|
167
167
|
if (isNotFoundPathError(err)) continue;
|
|
168
168
|
throw err;
|
|
@@ -173,7 +173,7 @@ async function assertNoSymlinkTraversal(params) {
|
|
|
173
173
|
async function assertResolvedInsideDestination(params) {
|
|
174
174
|
let resolved;
|
|
175
175
|
try {
|
|
176
|
-
resolved = await
|
|
176
|
+
resolved = await fsPromises.realpath(params.targetPath);
|
|
177
177
|
} catch (err) {
|
|
178
178
|
if (isNotFoundPathError(err)) return;
|
|
179
179
|
throw err;
|
|
@@ -196,12 +196,12 @@ async function openZipOutputFile(params) {
|
|
|
196
196
|
async function cleanupPartialRegularFile(filePath) {
|
|
197
197
|
let stat;
|
|
198
198
|
try {
|
|
199
|
-
stat = await
|
|
199
|
+
stat = await fsPromises.lstat(filePath);
|
|
200
200
|
} catch (err) {
|
|
201
201
|
if (isNotFoundPathError(err)) return;
|
|
202
202
|
throw err;
|
|
203
203
|
}
|
|
204
|
-
if (stat.isFile()) await
|
|
204
|
+
if (stat.isFile()) await fsPromises.unlink(filePath).catch(() => void 0);
|
|
205
205
|
}
|
|
206
206
|
async function readZipEntryStream(entry) {
|
|
207
207
|
if (typeof entry.nodeStream === "function") return entry.nodeStream();
|
|
@@ -229,7 +229,7 @@ async function prepareZipOutputPath(params) {
|
|
|
229
229
|
originalPath: params.originalPath
|
|
230
230
|
});
|
|
231
231
|
if (params.isDirectory) {
|
|
232
|
-
await
|
|
232
|
+
await fsPromises.mkdir(params.outPath, { recursive: true });
|
|
233
233
|
await assertResolvedInsideDestination({
|
|
234
234
|
destinationRealDir: params.destinationRealDir,
|
|
235
235
|
targetPath: params.outPath,
|
|
@@ -238,7 +238,7 @@ async function prepareZipOutputPath(params) {
|
|
|
238
238
|
return;
|
|
239
239
|
}
|
|
240
240
|
const parentDir = path.dirname(params.outPath);
|
|
241
|
-
await
|
|
241
|
+
await fsPromises.mkdir(parentDir, { recursive: true });
|
|
242
242
|
await assertResolvedInsideDestination({
|
|
243
243
|
destinationRealDir: params.destinationRealDir,
|
|
244
244
|
targetPath: parentDir,
|
|
@@ -261,7 +261,7 @@ async function writeZipFileEntry(params) {
|
|
|
261
261
|
try {
|
|
262
262
|
await pipeline(readable, createExtractBudgetTransform({ onChunkBytes: params.budget.addBytes }), writable);
|
|
263
263
|
} catch (err) {
|
|
264
|
-
if (opened.createdForWrite) await
|
|
264
|
+
if (opened.createdForWrite) await fsPromises.rm(opened.openedRealPath, { force: true }).catch(() => void 0);
|
|
265
265
|
else await cleanupPartialRegularFile(opened.openedRealPath).catch(() => void 0);
|
|
266
266
|
throw err;
|
|
267
267
|
} finally {
|
|
@@ -269,14 +269,14 @@ async function writeZipFileEntry(params) {
|
|
|
269
269
|
}
|
|
270
270
|
if (typeof params.entry.unixPermissions === "number") {
|
|
271
271
|
const mode = params.entry.unixPermissions & 511;
|
|
272
|
-
if (mode !== 0) await
|
|
272
|
+
if (mode !== 0) await fsPromises.chmod(opened.openedRealPath, mode).catch(() => void 0);
|
|
273
273
|
}
|
|
274
274
|
}
|
|
275
275
|
async function extractZip(params) {
|
|
276
276
|
const limits = resolveExtractLimits(params.limits);
|
|
277
277
|
const destinationRealDir = await assertDestinationDirReady(params.destDir);
|
|
278
|
-
if ((await
|
|
279
|
-
const buffer = await
|
|
278
|
+
if ((await fsPromises.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
|
|
279
|
+
const buffer = await fsPromises.readFile(params.archivePath);
|
|
280
280
|
const zip = await JSZip.loadAsync(buffer);
|
|
281
281
|
const entries = Object.values(zip.files);
|
|
282
282
|
const strip = Math.max(0, Math.floor(params.stripComponents ?? 0));
|
|
@@ -349,7 +349,7 @@ async function extractArchive(params) {
|
|
|
349
349
|
const label = kind === "zip" ? "extract zip" : "extract tar";
|
|
350
350
|
if (kind === "tar") {
|
|
351
351
|
const limits = resolveExtractLimits(params.limits);
|
|
352
|
-
if ((await
|
|
352
|
+
if ((await fsPromises.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
|
|
353
353
|
const checkTarEntrySafety = createTarEntrySafetyChecker({
|
|
354
354
|
rootDir: params.destDir,
|
|
355
355
|
stripComponents: params.stripComponents,
|
|
@@ -382,14 +382,14 @@ async function extractArchive(params) {
|
|
|
382
382
|
}
|
|
383
383
|
async function fileExists(filePath) {
|
|
384
384
|
try {
|
|
385
|
-
await
|
|
385
|
+
await fsPromises.stat(filePath);
|
|
386
386
|
return true;
|
|
387
387
|
} catch {
|
|
388
388
|
return false;
|
|
389
389
|
}
|
|
390
390
|
}
|
|
391
391
|
async function readJsonFile(filePath) {
|
|
392
|
-
const raw = await
|
|
392
|
+
const raw = await fsPromises.readFile(filePath, "utf-8");
|
|
393
393
|
return JSON.parse(raw);
|
|
394
394
|
}
|
|
395
395
|
|
|
@@ -433,13 +433,13 @@ async function assertCanonicalPathWithinBase(params) {
|
|
|
433
433
|
const baseDir = path.resolve(params.baseDir);
|
|
434
434
|
const candidatePath = path.resolve(params.candidatePath);
|
|
435
435
|
if (!isPathInside(baseDir, candidatePath)) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
|
|
436
|
-
const baseLstat = await
|
|
436
|
+
const baseLstat = await fsPromises.lstat(baseDir);
|
|
437
437
|
if (!baseLstat.isDirectory() || baseLstat.isSymbolicLink()) throw new Error(`Invalid ${params.boundaryLabel}: base directory must be a real directory`);
|
|
438
|
-
const baseRealPath = await
|
|
438
|
+
const baseRealPath = await fsPromises.realpath(baseDir);
|
|
439
439
|
const validateDirectory = async (dirPath) => {
|
|
440
|
-
const dirLstat = await
|
|
440
|
+
const dirLstat = await fsPromises.lstat(dirPath);
|
|
441
441
|
if (!dirLstat.isDirectory() || dirLstat.isSymbolicLink()) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
|
|
442
|
-
if (!isPathInside(baseRealPath, await
|
|
442
|
+
if (!isPathInside(baseRealPath, await fsPromises.realpath(dirPath))) throw new Error(`Invalid path: must stay within ${params.boundaryLabel}`);
|
|
443
443
|
};
|
|
444
444
|
try {
|
|
445
445
|
await validateDirectory(candidatePath);
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { R as extensionUsesSkippedScannerPath, St as resolveUserPath, ct as CONFIG_DIR, z as isPathInside } from "./globals-
|
|
2
|
-
import { Ts as resolvePackageExtensionEntries, cs as checkPluginContractCompat, os as checkPluginVersionCompat, ws as loadPluginManifest } from "./plugins-
|
|
1
|
+
import { R as extensionUsesSkippedScannerPath, St as resolveUserPath, ct as CONFIG_DIR, z as isPathInside } from "./globals-3lUHnZas.js";
|
|
2
|
+
import { Ts as resolvePackageExtensionEntries, cs as checkPluginContractCompat, os as checkPluginVersionCompat, ws as loadPluginManifest } from "./plugins-s69ApVox.js";
|
|
3
3
|
import { n as resolveHostVersionInfo } from "./version-BdUvZ8Ep.js";
|
|
4
4
|
import { n as docsSiteUrl } from "./docs-site-OVFfji6N.js";
|
|
5
|
-
import { C as validateRegistryNpmSpec } from "./skills-
|
|
6
|
-
import { c as writeFileFromPathWithinRoot } from "./fs-safe-
|
|
7
|
-
import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-
|
|
8
|
-
import { a as installPackageDir, c as resolveTimedInstallModeOptions, d as buildNpmResolutionFields, f as resolveArchiveSourcePath, i as resolveCanonicalInstallTarget, l as resolveExistingInstallPath, n as installFromNpmSpecArchiveWithInstaller, r as ensureInstallTargetAvailable, s as resolveInstallModeOptions, t as finalizeNpmSpecArchiveInstall, u as withExtractedArchiveRoot } from "./npm-pack-install-
|
|
9
|
-
import { t as scanDirectoryWithSummary } from "./skill-scanner-
|
|
5
|
+
import { C as validateRegistryNpmSpec } from "./skills-B_8rpYgx.js";
|
|
6
|
+
import { c as writeFileFromPathWithinRoot } from "./fs-safe-CJ7BaYqw.js";
|
|
7
|
+
import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-D8uZKU9M.js";
|
|
8
|
+
import { a as installPackageDir, c as resolveTimedInstallModeOptions, d as buildNpmResolutionFields, f as resolveArchiveSourcePath, i as resolveCanonicalInstallTarget, l as resolveExistingInstallPath, n as installFromNpmSpecArchiveWithInstaller, r as ensureInstallTargetAvailable, s as resolveInstallModeOptions, t as finalizeNpmSpecArchiveInstall, u as withExtractedArchiveRoot } from "./npm-pack-install-D4CH04qy.js";
|
|
9
|
+
import { t as scanDirectoryWithSummary } from "./skill-scanner-BF0g0j0b.js";
|
|
10
10
|
import path from "node:path";
|
|
11
|
-
import
|
|
11
|
+
import fsPromises from "node:fs/promises";
|
|
12
12
|
|
|
13
13
|
//#region src/plugins/install.ts
|
|
14
14
|
const MISSING_EXTENSIONS_ERROR = "package.json missing openclaw.extensions; update the plugin package to include openclaw.extensions (for example [\"./dist/index.js\"]). See " + docsSiteUrl("users/help/troubleshooting#plugin-install-fails-with-missing-openclaw-extensions");
|
|
@@ -268,7 +268,7 @@ async function installPluginFromDir(params) {
|
|
|
268
268
|
ok: false,
|
|
269
269
|
error: `directory not found: ${dirPath}`
|
|
270
270
|
};
|
|
271
|
-
if (!(await
|
|
271
|
+
if (!(await fsPromises.stat(dirPath)).isDirectory()) return {
|
|
272
272
|
ok: false,
|
|
273
273
|
error: `not a directory: ${dirPath}`
|
|
274
274
|
};
|
|
@@ -285,7 +285,7 @@ async function installPluginFromFile(params) {
|
|
|
285
285
|
error: `file not found: ${filePath}`
|
|
286
286
|
};
|
|
287
287
|
const extensionsDir = params.extensionsDir ? resolveUserPath(params.extensionsDir) : path.join(CONFIG_DIR, "extensions");
|
|
288
|
-
await
|
|
288
|
+
await fsPromises.mkdir(extensionsDir, { recursive: true });
|
|
289
289
|
const pluginId = path.basename(filePath, path.extname(filePath)) || "plugin";
|
|
290
290
|
const pluginIdError = validatePluginId(pluginId);
|
|
291
291
|
if (pluginIdError) return {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Fo as isIpv6Address, Vo as parseCanonicalIpAddress, jo as isCanonicalDottedDecimalIPv4 } from "./plugins-
|
|
1
|
+
import { Fo as isIpv6Address, Vo as parseCanonicalIpAddress, jo as isCanonicalDottedDecimalIPv4 } from "./plugins-s69ApVox.js";
|
|
2
2
|
import { n as docsSiteUrl } from "./docs-site-OVFfji6N.js";
|
|
3
|
-
import { o as getTailnetHostname } from "./tailscale-
|
|
3
|
+
import { o as getTailnetHostname } from "./tailscale-D0OOOayz.js";
|
|
4
4
|
|
|
5
5
|
//#region src/gateway/gateway-config-prompts.shared.ts
|
|
6
6
|
const TAILSCALE_EXPOSURE_OPTIONS = [
|
|
@@ -1,11 +1,11 @@
|
|
|
1
|
-
import { St as resolveUserPath, a as logVerbose, c as shouldLogVerbose } from "./globals-
|
|
2
|
-
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-
|
|
3
|
-
import { a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, p as kindFromMime, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-
|
|
4
|
-
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch
|
|
5
|
-
import { a as chunkText } from "./chunk-
|
|
1
|
+
import { St as resolveUserPath, a as logVerbose, c as shouldLogVerbose } from "./globals-3lUHnZas.js";
|
|
2
|
+
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-CJ7BaYqw.js";
|
|
3
|
+
import { a as hasAlphaChannel, c as detectMime, g as maxBytesForKind, l as extensionForMime, o as optimizeImageToPng, p as kindFromMime, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-fsbohlx7.js";
|
|
4
|
+
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-COhcdJbk.js";
|
|
5
|
+
import { a as chunkText } from "./chunk-CWJj0yTC.js";
|
|
6
6
|
import { fileURLToPath } from "node:url";
|
|
7
7
|
import path from "node:path";
|
|
8
|
-
import
|
|
8
|
+
import fsPromises from "node:fs/promises";
|
|
9
9
|
import MarkdownIt from "markdown-it";
|
|
10
10
|
|
|
11
11
|
//#region src/media/web-media.ts
|
|
@@ -36,7 +36,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
36
36
|
const roots = localRoots ?? getDefaultLocalRoots();
|
|
37
37
|
let resolved;
|
|
38
38
|
try {
|
|
39
|
-
resolved = await
|
|
39
|
+
resolved = await fsPromises.realpath(mediaPath);
|
|
40
40
|
} catch {
|
|
41
41
|
resolved = path.resolve(mediaPath);
|
|
42
42
|
}
|
|
@@ -53,7 +53,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
53
53
|
for (const root of roots) {
|
|
54
54
|
let resolvedRoot;
|
|
55
55
|
try {
|
|
56
|
-
resolvedRoot = await
|
|
56
|
+
resolvedRoot = await fsPromises.realpath(root);
|
|
57
57
|
} catch {
|
|
58
58
|
resolvedRoot = path.resolve(root);
|
|
59
59
|
}
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { Ot as truncateUtf16Safe } from "./globals-
|
|
2
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
3
|
-
import { p as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-
|
|
1
|
+
import { Ot as truncateUtf16Safe } from "./globals-3lUHnZas.js";
|
|
2
|
+
import { t as createSubsystemLogger } from "./subsystem-xTuYkxuQ.js";
|
|
3
|
+
import { p as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-D0gYNgj1.js";
|
|
4
4
|
import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-D6nhygeZ.js";
|
|
5
5
|
import crypto, { randomUUID } from "node:crypto";
|
|
6
6
|
import { Cron } from "croner";
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import
|
|
2
|
+
import fsPromises from "node:fs/promises";
|
|
3
3
|
import { randomUUID } from "node:crypto";
|
|
4
4
|
|
|
5
5
|
//#region src/infra/json-files.ts
|
|
6
6
|
async function readJsonFile(filePath) {
|
|
7
7
|
try {
|
|
8
|
-
const raw = await
|
|
8
|
+
const raw = await fsPromises.readFile(filePath, "utf8");
|
|
9
9
|
return JSON.parse(raw);
|
|
10
10
|
} catch {
|
|
11
11
|
return null;
|
|
@@ -20,7 +20,7 @@ async function writeJsonAtomic(filePath, value, options) {
|
|
|
20
20
|
}
|
|
21
21
|
async function chmodIfSupported(filePath, mode) {
|
|
22
22
|
try {
|
|
23
|
-
await
|
|
23
|
+
await fsPromises.chmod(filePath, mode);
|
|
24
24
|
} catch (err) {
|
|
25
25
|
if (process.platform === "win32") return;
|
|
26
26
|
throw err;
|
|
@@ -31,18 +31,18 @@ async function writeTextAtomic(filePath, content, options) {
|
|
|
31
31
|
const payload = options?.appendTrailingNewline && !content.endsWith("\n") ? `${content}\n` : content;
|
|
32
32
|
const mkdirOptions = { recursive: true };
|
|
33
33
|
if (typeof options?.ensureDirMode === "number") mkdirOptions.mode = options.ensureDirMode;
|
|
34
|
-
await
|
|
34
|
+
await fsPromises.mkdir(path.dirname(filePath), mkdirOptions);
|
|
35
35
|
const tmp = `${filePath}.${randomUUID()}.tmp`;
|
|
36
36
|
try {
|
|
37
|
-
await
|
|
37
|
+
await fsPromises.writeFile(tmp, payload, {
|
|
38
38
|
encoding: "utf8",
|
|
39
39
|
mode
|
|
40
40
|
});
|
|
41
41
|
await chmodIfSupported(tmp, mode);
|
|
42
|
-
await
|
|
42
|
+
await fsPromises.rename(tmp, filePath);
|
|
43
43
|
await chmodIfSupported(filePath, mode);
|
|
44
44
|
} finally {
|
|
45
|
-
await
|
|
45
|
+
await fsPromises.rm(tmp, { force: true }).catch(() => void 0);
|
|
46
46
|
}
|
|
47
47
|
}
|
|
48
48
|
function createAsyncLock() {
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Tt as shortenHomePath, d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-
|
|
1
|
+
import { Tt as shortenHomePath, d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-3lUHnZas.js";
|
|
2
2
|
import { d as resolveIsNixMode } from "./paths-BMo6kTge.js";
|
|
3
|
-
import { m as defaultRuntime } from "./subsystem-
|
|
4
|
-
import { ar as readConfigFileSnapshot, rr as loadConfig } from "./plugins-
|
|
3
|
+
import { m as defaultRuntime } from "./subsystem-xTuYkxuQ.js";
|
|
4
|
+
import { ar as readConfigFileSnapshot, rr as loadConfig } from "./plugins-s69ApVox.js";
|
|
5
5
|
import { t as formatCliCommand } from "./command-format-DZa6U7Yk.js";
|
|
6
|
-
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-
|
|
6
|
+
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-Db9gEJyX.js";
|
|
7
7
|
import { m as resolveGatewayWindowsTaskName, p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./constants-0vZLJnYn.js";
|
|
8
|
-
import { t as isWSL } from "./wsl-
|
|
9
|
-
import { n as formatConfigIssueLines } from "./issue-format-
|
|
10
|
-
import { s as resolveGatewayLogPaths } from "./service-
|
|
11
|
-
import { r as isSystemdUserServiceAvailable } from "./systemd-
|
|
12
|
-
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-
|
|
8
|
+
import { t as isWSL } from "./wsl-Be9W0qZW.js";
|
|
9
|
+
import { n as formatConfigIssueLines } from "./issue-format-CEhsl7Wj.js";
|
|
10
|
+
import { s as resolveGatewayLogPaths } from "./service-BvpFqVNe.js";
|
|
11
|
+
import { r as isSystemdUserServiceAvailable } from "./systemd-BT6dJ-0G.js";
|
|
12
|
+
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-e6hBRMDf.js";
|
|
13
13
|
import { t as parsePort } from "./parse-port-BnVa643B.js";
|
|
14
14
|
import { Writable } from "node:stream";
|
|
15
15
|
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { b as formatLocalDate, lt as clamp } from "./globals-
|
|
1
|
+
import { b as formatLocalDate, lt as clamp } from "./globals-3lUHnZas.js";
|
|
2
2
|
import path from "node:path";
|
|
3
|
-
import
|
|
3
|
+
import fsPromises from "node:fs/promises";
|
|
4
4
|
|
|
5
5
|
//#region src/logging/log-tail.ts
|
|
6
6
|
const MAX_LIMIT = 5e3;
|
|
@@ -10,14 +10,14 @@ function isRollingLogFile(file) {
|
|
|
10
10
|
return ROLLING_LOG_RE.test(path.basename(file));
|
|
11
11
|
}
|
|
12
12
|
async function resolveActiveLogFile(file) {
|
|
13
|
-
if (await
|
|
13
|
+
if (await fsPromises.stat(file).catch(() => null)) return file;
|
|
14
14
|
if (!isRollingLogFile(file)) return file;
|
|
15
15
|
const dir = path.dirname(file);
|
|
16
|
-
const entries = await
|
|
16
|
+
const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
|
|
17
17
|
if (!entries) return file;
|
|
18
18
|
return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
|
|
19
19
|
const fullPath = path.join(dir, entry.name);
|
|
20
|
-
const fileStat = await
|
|
20
|
+
const fileStat = await fsPromises.stat(fullPath).catch(() => null);
|
|
21
21
|
return fileStat ? {
|
|
22
22
|
path: fullPath,
|
|
23
23
|
mtimeMs: fileStat.mtimeMs
|
|
@@ -25,7 +25,7 @@ async function resolveActiveLogFile(file) {
|
|
|
25
25
|
}))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
|
|
26
26
|
}
|
|
27
27
|
async function readLogSlice(params) {
|
|
28
|
-
const stat = await
|
|
28
|
+
const stat = await fsPromises.stat(params.file).catch(() => null);
|
|
29
29
|
if (!stat) return {
|
|
30
30
|
cursor: 0,
|
|
31
31
|
size: 0,
|
|
@@ -33,7 +33,7 @@ async function readLogSlice(params) {
|
|
|
33
33
|
truncated: false,
|
|
34
34
|
reset: false
|
|
35
35
|
};
|
|
36
|
-
const handle = await
|
|
36
|
+
const handle = await fsPromises.open(params.file, "r");
|
|
37
37
|
try {
|
|
38
38
|
return await readLogSliceFromHandle(handle, stat.size, params);
|
|
39
39
|
} finally {
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { ft as displayPath } from "./globals-
|
|
2
|
+
import { ft as displayPath } from "./globals-3lUHnZas.js";
|
|
3
3
|
import { t as CONFIG_PATH } from "./paths-BMo6kTge.js";
|
|
4
4
|
|
|
5
5
|
//#region src/config/logging.ts
|
|
@@ -1,28 +1,28 @@
|
|
|
1
|
-
import { d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme, v as formatLocalIsoWithOffset, y as isValidTimeZone } from "./globals-
|
|
1
|
+
import { d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme, v as formatLocalIsoWithOffset, y as isValidTimeZone } from "./globals-3lUHnZas.js";
|
|
2
2
|
import "./paths-BMo6kTge.js";
|
|
3
|
-
import { g as clearActiveProgressLine } from "./subsystem-
|
|
3
|
+
import { g as clearActiveProgressLine } from "./subsystem-xTuYkxuQ.js";
|
|
4
4
|
import "./boolean-C71HJEcH.js";
|
|
5
|
-
import { rr as loadConfig } from "./plugins-
|
|
5
|
+
import { rr as loadConfig } from "./plugins-s69ApVox.js";
|
|
6
6
|
import "./retry-policy-By-oqFVH.js";
|
|
7
7
|
import "./version-BdUvZ8Ep.js";
|
|
8
|
-
import "./agent-scope-
|
|
9
|
-
import "./exec-
|
|
8
|
+
import "./agent-scope-m37qEcFM.js";
|
|
9
|
+
import "./exec-BadOxgw_.js";
|
|
10
10
|
import "./github-copilot-token-CmScvpk-.js";
|
|
11
|
-
import "./pid-alive-
|
|
11
|
+
import "./pid-alive-dd2LsB9B.js";
|
|
12
12
|
import "./static-app-y2aJYHKZ.js";
|
|
13
13
|
import { t as formatCliCommand } from "./command-format-DZa6U7Yk.js";
|
|
14
|
-
import "./tailnet-
|
|
15
|
-
import "./ws-
|
|
14
|
+
import "./tailnet-QfxqR4vE.js";
|
|
15
|
+
import "./ws-B_HpEvRE.js";
|
|
16
16
|
import "./task-run-types-B6K2PtcI.js";
|
|
17
|
-
import "./client-
|
|
17
|
+
import "./client-B3-vuVAE.js";
|
|
18
18
|
import "./pairing-token-BA4694nz.js";
|
|
19
|
-
import { b as resolveLeastPrivilegeOperatorScopesForMethod, t as buildGatewayConnectionDetails } from "./call-
|
|
20
|
-
import { t as formatDocsLink } from "./links-
|
|
21
|
-
import "./progress-
|
|
22
|
-
import { n as callGatewayFromCli, r as openGatewayCliSessionFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
19
|
+
import { b as resolveLeastPrivilegeOperatorScopesForMethod, t as buildGatewayConnectionDetails } from "./call-DiXPYDxn.js";
|
|
20
|
+
import { t as formatDocsLink } from "./links-CdYxxGpz.js";
|
|
21
|
+
import "./progress-CSthTuLH.js";
|
|
22
|
+
import { n as callGatewayFromCli, r as openGatewayCliSessionFromCli, t as addGatewayClientOptions } from "./gateway-rpc-qeYBKW7U.js";
|
|
23
23
|
import { t as parseLogLine } from "./parse-log-line-CT0H1-oQ.js";
|
|
24
|
-
import { i as resolveActiveLogFile, r as readLogSliceFromHandle, t as createLogFileResolver } from "./log-tail-
|
|
25
|
-
import
|
|
24
|
+
import { i as resolveActiveLogFile, r as readLogSliceFromHandle, t as createLogFileResolver } from "./log-tail-BGUoZ3uj.js";
|
|
25
|
+
import fsPromises from "node:fs/promises";
|
|
26
26
|
import { setTimeout } from "node:timers/promises";
|
|
27
27
|
import { StringDecoder } from "node:string_decoder";
|
|
28
28
|
|
|
@@ -33,7 +33,7 @@ const MAX_PARTIAL_BYTES = 1048576;
|
|
|
33
33
|
async function tryOpen(file) {
|
|
34
34
|
let handle;
|
|
35
35
|
try {
|
|
36
|
-
handle = await
|
|
36
|
+
handle = await fsPromises.open(file, "r");
|
|
37
37
|
} catch {
|
|
38
38
|
return null;
|
|
39
39
|
}
|
|
@@ -159,7 +159,7 @@ async function followLogFile(opts, emit) {
|
|
|
159
159
|
break;
|
|
160
160
|
}
|
|
161
161
|
const target = await opts.resolveFile();
|
|
162
|
-
const st = await
|
|
162
|
+
const st = await fsPromises.stat(target).catch(() => null);
|
|
163
163
|
if (!state.handle) {
|
|
164
164
|
if (st) {
|
|
165
165
|
const opened = await tryOpen(target);
|
|
@@ -407,7 +407,7 @@ async function resolveFollowSource(opts) {
|
|
|
407
407
|
const configuredFile = getResolvedLoggerSettings().file;
|
|
408
408
|
try {
|
|
409
409
|
const resolved = await resolveActiveLogFile(configuredFile);
|
|
410
|
-
await
|
|
410
|
+
await fsPromises.access(resolved, fsPromises.constants.R_OK);
|
|
411
411
|
return {
|
|
412
412
|
kind: "file",
|
|
413
413
|
configuredFile
|
|
@@ -1,20 +1,20 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { Ot as truncateUtf16Safe, St as resolveUserPath, dt as clampNumber, ut as clampInt } from "./globals-
|
|
2
|
+
import { Ot as truncateUtf16Safe, St as resolveUserPath, dt as clampNumber, ut as clampInt } from "./globals-3lUHnZas.js";
|
|
3
3
|
import { g as resolveStateDir } from "./paths-BMo6kTge.js";
|
|
4
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
4
|
+
import { t as createSubsystemLogger } from "./subsystem-xTuYkxuQ.js";
|
|
5
5
|
import { r as isTruthyEnvValue } from "./entry.js";
|
|
6
|
-
import { Nc as normalizeResolvedSecretInputString, Pt as resolveSessionTranscriptsDirForAgent, Ri as requireApiKey, Si as retryAsync, Tc as normalizeOptionalSecretInput, Vi as resolveEnvApiKey, rr as loadConfig, zi as resolveApiKeyForProvider } from "./plugins-
|
|
7
|
-
import { a as resolveAgentDir, i as resolveAgentConfig, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
6
|
+
import { Nc as normalizeResolvedSecretInputString, Pt as resolveSessionTranscriptsDirForAgent, Ri as requireApiKey, Si as retryAsync, Tc as normalizeOptionalSecretInput, Vi as resolveEnvApiKey, rr as loadConfig, zi as resolveApiKeyForProvider } from "./plugins-s69ApVox.js";
|
|
7
|
+
import { a as resolveAgentDir, i as resolveAgentConfig, u as resolveAgentWorkspaceDir } from "./agent-scope-m37qEcFM.js";
|
|
8
8
|
import { i as formatErrorMessage } from "./errors-DRGEw4PB.js";
|
|
9
9
|
import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-DtCWpKko.js";
|
|
10
10
|
import { n as onSessionTranscriptUpdate } from "./transcript-events-B3T8sCtD.js";
|
|
11
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
12
|
-
import { n as executeWithApiKeyRotation, t as collectProviderApiKeysForExecution } from "./api-key-rotation-
|
|
13
|
-
import { _ as runWithConcurrency, a as resolveSessionMemoryStores, c as chunkMarkdown, d as hashText, f as isMemoryPath, g as remapChunkLines, h as parseEmbedding, i as listSessionMemoryRows, l as cosineSimilarity, m as normalizeExtraMemoryPaths, n as requireNodeSqlite, o as sessionMemorySourceId, p as listMemoryFiles, r as buildSessionMemoryEntry, s as buildFileEntry, t as extractKeywords, u as ensureDir, v as isFileMissingError, y as statRegularFile } from "./query-expansion-
|
|
11
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-ChaY1JfD.js";
|
|
12
|
+
import { n as executeWithApiKeyRotation, t as collectProviderApiKeysForExecution } from "./api-key-rotation-D42o6Zng.js";
|
|
13
|
+
import { _ as runWithConcurrency, a as resolveSessionMemoryStores, c as chunkMarkdown, d as hashText, f as isMemoryPath, g as remapChunkLines, h as parseEmbedding, i as listSessionMemoryRows, l as cosineSimilarity, m as normalizeExtraMemoryPaths, n as requireNodeSqlite, o as sessionMemorySourceId, p as listMemoryFiles, r as buildSessionMemoryEntry, s as buildFileEntry, t as extractKeywords, u as ensureDir, v as isFileMissingError, y as statRegularFile } from "./query-expansion-Ba0qHd1X.js";
|
|
14
14
|
import os from "node:os";
|
|
15
15
|
import path from "node:path";
|
|
16
16
|
import fs from "node:fs";
|
|
17
|
-
import
|
|
17
|
+
import fsPromises from "node:fs/promises";
|
|
18
18
|
import { randomUUID } from "node:crypto";
|
|
19
19
|
import chokidar from "chokidar";
|
|
20
20
|
import { createInterface } from "node:readline";
|
|
@@ -1078,7 +1078,7 @@ async function extractTimestamp(params) {
|
|
|
1078
1078
|
if (!params.workspaceDir) return null;
|
|
1079
1079
|
const absolutePath = path.isAbsolute(params.filePath) ? params.filePath : path.resolve(params.workspaceDir, params.filePath);
|
|
1080
1080
|
try {
|
|
1081
|
-
const stat = await
|
|
1081
|
+
const stat = await fsPromises.stat(absolutePath);
|
|
1082
1082
|
if (!Number.isFinite(stat.mtimeMs)) return null;
|
|
1083
1083
|
return new Date(stat.mtimeMs);
|
|
1084
1084
|
} catch {
|
|
@@ -2249,7 +2249,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2249
2249
|
const source = `${sourceBase}${suffix}`;
|
|
2250
2250
|
const target = `${targetBase}${suffix}`;
|
|
2251
2251
|
try {
|
|
2252
|
-
await
|
|
2252
|
+
await fsPromises.rename(source, target);
|
|
2253
2253
|
} catch (err) {
|
|
2254
2254
|
if (err.code !== "ENOENT") throw err;
|
|
2255
2255
|
}
|
|
@@ -2260,7 +2260,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2260
2260
|
"",
|
|
2261
2261
|
"-wal",
|
|
2262
2262
|
"-shm"
|
|
2263
|
-
].map((suffix) =>
|
|
2263
|
+
].map((suffix) => fsPromises.rm(`${basePath}${suffix}`, { force: true })));
|
|
2264
2264
|
}
|
|
2265
2265
|
ensureSchema() {
|
|
2266
2266
|
const result = ensureMemoryIndexSchema({
|
|
@@ -3307,7 +3307,7 @@ var MemoryManagerEmbeddingOps = class extends MemoryManagerSyncOps {
|
|
|
3307
3307
|
});
|
|
3308
3308
|
return;
|
|
3309
3309
|
}
|
|
3310
|
-
const content = options.content ?? ("absPath" in entry ? await
|
|
3310
|
+
const content = options.content ?? ("absPath" in entry ? await fsPromises.readFile(entry.absPath, "utf-8") : void 0);
|
|
3311
3311
|
if (content === void 0) throw new Error(`memory index: session source ${entry.path} produced no content`);
|
|
3312
3312
|
const chunks = enforceEmbeddingMaxInputTokens(this.provider, chunkMarkdown(content, this.settings.chunking).filter((chunk) => chunk.text.trim().length > 0), EMBEDDING_BATCH_MAX_TOKENS);
|
|
3313
3313
|
if (options.source === "sessions" && "lineMap" in entry) remapChunkLines(chunks, entry.lineMap);
|
|
@@ -3747,7 +3747,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3747
3747
|
if (!allowedWorkspace && this.settings.extraPaths.length > 0) {
|
|
3748
3748
|
const additionalPaths = normalizeExtraMemoryPaths(this.workspaceDir, this.settings.extraPaths);
|
|
3749
3749
|
for (const additionalPath of additionalPaths) try {
|
|
3750
|
-
const stat = await
|
|
3750
|
+
const stat = await fsPromises.lstat(additionalPath);
|
|
3751
3751
|
if (stat.isSymbolicLink()) continue;
|
|
3752
3752
|
if (stat.isDirectory()) {
|
|
3753
3753
|
if (absPath === additionalPath || absPath.startsWith(`${additionalPath}${path.sep}`)) {
|
|
@@ -3772,7 +3772,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3772
3772
|
};
|
|
3773
3773
|
let content;
|
|
3774
3774
|
try {
|
|
3775
|
-
content = await
|
|
3775
|
+
content = await fsPromises.readFile(absPath, "utf-8");
|
|
3776
3776
|
} catch (err) {
|
|
3777
3777
|
if (isFileMissingError(err)) return {
|
|
3778
3778
|
text: "",
|
|
@@ -1,17 +1,17 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { a as logVerbose } from "./globals-
|
|
2
|
+
import { a as logVerbose } from "./globals-3lUHnZas.js";
|
|
3
3
|
import { g as resolveStateDir } from "./paths-BMo6kTge.js";
|
|
4
|
-
import { t as createSubsystemLogger } from "./subsystem-
|
|
5
|
-
import { Ct as parseSessionIndexRecordKey, Ft as resolveStorePath, ft as updateSessionStore, gt as mergeSessionEntry, it as loadSessionStore, nt as getConfiguredSessionStorageRuntime, rr as loadConfig } from "./plugins-
|
|
6
|
-
import { F as isAcpSessionKey, V as parseAgentSessionKey, p as normalizeAgentId } from "./session-key-
|
|
7
|
-
import { m as resolveSessionAgentId, r as listAgentIds } from "./agent-scope-
|
|
4
|
+
import { t as createSubsystemLogger } from "./subsystem-xTuYkxuQ.js";
|
|
5
|
+
import { Ct as parseSessionIndexRecordKey, Ft as resolveStorePath, ft as updateSessionStore, gt as mergeSessionEntry, it as loadSessionStore, nt as getConfiguredSessionStorageRuntime, rr as loadConfig } from "./plugins-s69ApVox.js";
|
|
6
|
+
import { F as isAcpSessionKey, V as parseAgentSessionKey, p as normalizeAgentId } from "./session-key-D0gYNgj1.js";
|
|
7
|
+
import { m as resolveSessionAgentId, r as listAgentIds } from "./agent-scope-m37qEcFM.js";
|
|
8
8
|
import { t as redactIdentifier } from "./redact-identifier-BcqQpFrh.js";
|
|
9
9
|
import { t as KeyedAsyncQueue } from "./keyed-async-queue-DbliSjuz.js";
|
|
10
|
-
import { d as isGatewayDraining } from "./command-queue-
|
|
11
|
-
import { t as startUserSessionRun } from "./user-run-recording-
|
|
10
|
+
import { d as isGatewayDraining } from "./command-queue-D8Y7Hgzy.js";
|
|
11
|
+
import { t as startUserSessionRun } from "./user-run-recording-CxBc2Jon.js";
|
|
12
12
|
import { t as withTimeout } from "./with-timeout-Cr_em4EE.js";
|
|
13
13
|
import path, { isAbsolute } from "node:path";
|
|
14
|
-
import
|
|
14
|
+
import fsPromises from "node:fs/promises";
|
|
15
15
|
|
|
16
16
|
//#region src/acp/runtime/errors.ts
|
|
17
17
|
const ACP_ERROR_CODES = [
|
|
@@ -634,7 +634,7 @@ async function resolveAgentSessionDirs(stateDir) {
|
|
|
634
634
|
const agentsDir = path.join(stateDir, "agents");
|
|
635
635
|
let entries = [];
|
|
636
636
|
try {
|
|
637
|
-
entries = await
|
|
637
|
+
entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
|
|
638
638
|
} catch (err) {
|
|
639
639
|
if (err.code === "ENOENT") return [];
|
|
640
640
|
throw err;
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { Sn as resolveAccountEntry, r as normalizeChannelId } from "./plugins-
|
|
3
|
-
import { k as normalizeAccountId } from "./session-key-
|
|
2
|
+
import { Sn as resolveAccountEntry, r as normalizeChannelId } from "./plugins-s69ApVox.js";
|
|
3
|
+
import { k as normalizeAccountId } from "./session-key-D0gYNgj1.js";
|
|
4
4
|
|
|
5
5
|
//#region src/config/markdown-tables.ts
|
|
6
6
|
var markdown_tables_exports = /* @__PURE__ */ __exportAll({ resolveMarkdownTableMode: () => resolveMarkdownTableMode });
|