@guadskill/openclaw-proxy 2026.3.7 → 2026.3.9
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/{accounts-BAXPpGUT.js → accounts-B_Mf6Ybe.js} +1 -1
- package/dist/{accounts-DDk7Alkl.js → accounts-CGMgxUfN.js} +7 -7
- package/dist/{accounts-DIGnwOCI.js → accounts-NKTm9o4M.js} +1 -1
- package/dist/{acp-cli-CL-bRMaF.js → acp-cli-BKb3AGdK.js} +8 -8
- package/dist/{agent-scope-CT92dyCK.js → agent-scope-Dd2_TNoB.js} +17 -17
- package/dist/{agents-Ux5TCgO6.js → agents-yZG80_Bk.js} +14 -14
- package/dist/{agents.config-7ZBT3aJH.js → agents.config-iby7tWX6.js} +3 -3
- package/dist/{api-key-rotation-D7uyLcCV.js → api-key-rotation-DsHx0Ttu.js} +1 -1
- package/dist/{audio-preflight-CqbpJICd.js → audio-preflight-DbDIZaaN.js} +4 -4
- package/dist/{audio-preflight-B0sj35Ce.js → audio-preflight-Ot_1VrgG.js} +34 -34
- package/dist/{audio-transcription-runner-Cdvz7bpD.js → audio-transcription-runner-Cl9Pu_e3.js} +23 -23
- package/dist/{audio-transcription-runner-EQqd2K8L.js → audio-transcription-runner-DX0Waokh.js} +1 -1
- package/dist/{audit-qqRogHSL.js → audit-DtKtvGnO.js} +29 -29
- package/dist/{auth-DfEti-nH.js → auth-DkciOmKe.js} +1 -1
- package/dist/{auth-choice-BjQ5BF_A.js → auth-choice-CDiDpyjK.js} +12 -12
- package/dist/{auth-choice-C4XhKa87.js → auth-choice-mCitki7b.js} +13 -13
- package/dist/{auth-choice.apply-helpers-BJLWC6EX.js → auth-choice.apply-helpers-DFO2u4vW.js} +1 -1
- package/dist/{auth-profiles-Bh2dHooQ.js → auth-profiles-QXvcpjIT.js} +16 -16
- package/dist/{auth-token-qGutIUyw.js → auth-token-4Y8dUkki.js} +1 -1
- package/dist/{banner-D3w3334V.js → banner-BIxf18aP.js} +2 -2
- package/dist/{bonjour-discovery-Dk22JKmo.js → bonjour-discovery-DBClG9uw.js} +1 -1
- package/dist/{browser-cli-C1NkBy0u.js → browser-cli-B0KE9qxO.js} +12 -12
- package/dist/build-info.json +3 -3
- package/dist/{call-Bl8osGeS.js → call-B56A9tyz.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-Bkq8Tao4.js → channel-account-context-CkpkengK.js} +5 -5
- package/dist/{channel-activity-DFfVKdMC.js → channel-activity-ClJu0F_1.js} +1 -1
- package/dist/{channel-options-Ddq9nbjL.js → channel-options-BGF--IMr.js} +3 -3
- package/dist/{channel-selection-TEB-oKFB.js → channel-selection-DHlVN8Pr.js} +1 -1
- package/dist/{channel-web-BRc8grVl.js → channel-web-CJ_qOhFv.js} +17 -17
- package/dist/{channels-cli-0uHlhl_q.js → channels-cli-CdmEguK_.js} +93 -93
- package/dist/{channels-status-issues-CHYRNB54.js → channels-status-issues-CmDh358n.js} +1 -1
- package/dist/{chrome-BKmthESk.js → chrome-CMibSHuV.js} +8 -8
- package/dist/{chrome-8g2ppizL.js → chrome-CjADilJt.js} +4 -4
- package/dist/{clawbot-cli-C40Lz65o.js → clawbot-cli-CYI_p-Ig.js} +11 -11
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-B4cqtuy2.js → cli-C7HjUgZL.js} +72 -72
- package/dist/{client-IQ7AZ1A-.js → client-DaFloLVI.js} +3 -3
- package/dist/{command-registry-CufWvKi3.js → command-registry-CrsK0cpv.js} +11 -11
- package/dist/{command-secret-targets-B1PuKXnU.js → command-secret-targets-CsIlET0p.js} +4 -4
- package/dist/{commands-DP7Bcuo2.js → commands-C-YxTe08.js} +1 -1
- package/dist/{commands-registry-B5lrLxcS.js → commands-registry-WI8KXlO7.js} +3 -3
- package/dist/{compact-SZ3BDWQp.js → compact-BBdhRYXH.js} +149 -149
- package/dist/compact.runtime-DDxAzGC2.js +110 -0
- package/dist/{compact.runtime-CMZ_UYyk.js → compact.runtime-DdbMKiHW.js} +6 -6
- package/dist/{completion-cli-B0f-xBOC.js → completion-cli-Bg8nShmO.js} +1 -1
- package/dist/{completion-cli-DQ2oZ0Xm.js → completion-cli-D1eUD4z0.js} +13 -13
- package/dist/{config-cli-CC2671nv.js → config-cli-C8aGIdsa.js} +7 -7
- package/dist/{config-cli-C0Z8l_cH.js → config-cli-DfABZZJ1.js} +1 -1
- package/dist/{config-guard-THCtF7SH.js → config-guard-CdbAZXqh.js} +3 -3
- package/dist/{config-validation-BgjGiBwk.js → config-validation-Bn0atyWE.js} +3 -3
- package/dist/{configure-CyhJDi-o.js → configure-PWOO1SWf.js} +19 -19
- package/dist/{configure-CwCN7C4J.js → configure-tNoPV8AJ.js} +1 -1
- package/dist/{control-ui-assets-DIBwwDAL.js → control-ui-assets-B1qVA62q.js} +1 -1
- package/dist/{cron-cli-DEWQQAZg.js → cron-cli-BWWBn58q.js} +11 -11
- package/dist/{daemon-cli-fixQtS_3.js → daemon-cli-Ckhi3S0x.js} +5 -5
- package/dist/{daemon-cli-DDOlXF-y.js → daemon-cli-Di0mFZWs.js} +16 -16
- package/dist/daemon-cli.js +9 -4
- package/dist/{daemon-install-C4AKaLdy.js → daemon-install-B2fT93a3.js} +21 -21
- package/dist/{daemon-install-D0yIgdZW.js → daemon-install-CWpghW8k.js} +1 -1
- package/dist/{daemon-install-helpers-CVfc_ZXM.js → daemon-install-helpers-BWyx8Sx7.js} +12 -12
- package/dist/{deliver-754C3f2C.js → deliver-BSlI6o2D.js} +7 -7
- package/dist/{deliver-D-x487kv.js → deliver-DBsYfyHP.js} +1 -1
- package/dist/deliver-runtime-BjkTIwlL.js +57 -0
- package/dist/{deliver-runtime-gs8PEJHW.js → deliver-runtime-Yz8xsseU.js} +3 -3
- package/dist/deps-send-discord.runtime-COZDJ4kj.js +31 -0
- package/dist/deps-send-imessage.runtime-CrUNGLpB.js +30 -0
- package/dist/deps-send-signal.runtime-BdIsLRiH.js +29 -0
- package/dist/deps-send-slack.runtime-haEMGbWP.js +27 -0
- package/dist/deps-send-telegram.runtime-TdOBj1BE.js +33 -0
- package/dist/deps-send-whatsapp.runtime-Bf8yUhOp.js +115 -0
- package/dist/{deps-send-whatsapp.runtime-D9cBUcGe.js → deps-send-whatsapp.runtime-Mb5nI79S.js} +7 -7
- package/dist/{devices-cli-quvV3Kka.js → devices-cli-D78eahM0.js} +8 -8
- package/dist/{diagnostic-D0TftuxK.js → diagnostic-CFCd8W0m.js} +1 -1
- package/dist/{diagnostics-BrA18SV4.js → diagnostics-CJLP-HQK.js} +5 -5
- package/dist/{diagnostics-CKEVHs7n.js → diagnostics-g4kCl3Wr.js} +1 -1
- package/dist/{directory-cli-CRRwqLtU.js → directory-cli-CchmjuDY.js} +7 -7
- package/dist/{dns-cli-LufK6hHQ.js → dns-cli-C73_Y0ZB.js} +5 -5
- package/dist/{dock-tPqNmtNL.js → dock-wtxEAACu.js} +4 -4
- package/dist/{docs-cli-BJb-cOpV.js → docs-cli-CdYaag66.js} +4 -4
- package/dist/{doctor-completion-DDK1pAvc.js → doctor-completion-B7MotNqQ.js} +1 -1
- package/dist/{doctor-completion-CbB8sBAb.js → doctor-completion-DmWeZX0M.js} +2 -2
- package/dist/{doctor-config-flow-qCvK2k4B.js → doctor-config-flow-CLlEO2jJ.js} +16 -16
- package/dist/{enable-DfvB7o85.js → enable-Dk8s7RC7.js} +1 -1
- package/dist/entry.js +2 -2
- package/dist/{exec-approvals-allowlist-BKsPjl3W.js → exec-approvals-allowlist-BTePmA7R.js} +1 -1
- package/dist/{exec-approvals-cli-raoktoDD.js → exec-approvals-cli-DzmNRLok.js} +16 -16
- package/dist/{exec-approvals-cli-DKUcKVKU.js → exec-approvals-cli-sNZ1MCrZ.js} +2 -2
- package/dist/{exec-safe-bin-runtime-policy-Cm7TKqpY.js → exec-safe-bin-runtime-policy-B8a4-DkO.js} +2 -2
- package/dist/extensionAPI.js +6 -6
- package/dist/{fetch-OsQusEch.js → fetch-CLpizcRC.js} +3 -3
- package/dist/{fetch-guard-CYvHLcm1.js → fetch-guard-CTJIkmOy.js} +1 -1
- package/dist/{fs-safe-CgWykA_r.js → fs-safe-DZPN9PEp.js} +24 -24
- package/dist/{gateway-cli-FCR2v3fN.js → gateway-cli-B-C_BUeg.js} +158 -158
- package/dist/{gateway-cli-CQfPJGkv.js → gateway-cli-DuJgUJEo.js} +9 -9
- package/dist/{gateway-install-token-DpBkW5NL.js → gateway-install-token-DUJ-X-CS.js} +3 -3
- package/dist/{gateway-rpc-vqmfnd4e.js → gateway-rpc-CZWffg-J.js} +1 -1
- package/dist/{health-CX11t-Su.js → health-CqfjbU3N.js} +11 -11
- package/dist/{hooks-cli-D9dqop-W.js → hooks-cli-CwrgdWfU.js} +80 -80
- package/dist/{hooks-status-wJu8Rm9x.js → hooks-status-41E49JnH.js} +1 -1
- package/dist/{image-gKRn4k2T.js → image-C-OScNLH.js} +5 -5
- package/dist/{image-BH87HyHn.js → image-Nk4Z8dsI.js} +1 -1
- package/dist/{image-ops-Dt4M7xkd.js → image-ops-sooGTpsU.js} +10 -10
- package/dist/image-runtime-CvfZqzwb.js +51 -0
- package/dist/{image-runtime-RUsR--QR.js → image-runtime-koB5Zl5s.js} +3 -3
- package/dist/index.js +1 -1
- package/dist/{inspect-DYLkh7ux.js → inspect-BESssF_o.js} +1 -1
- package/dist/{inspect-Bg11sSfy.js → inspect-BLDaR51z.js} +4 -4
- package/dist/{install-safe-path-Brs51UVy.js → install-safe-path-NpGSerww.js} +25 -25
- package/dist/{installs-XHd3fauV.js → installs-CLaVeEP2.js} +8 -8
- package/dist/{ipv4-s-bz8E7J.js → ipv4-oTVR6LLm.js} +1 -1
- package/dist/{ir-DTl0TSQX.js → ir-MJchm-P0.js} +8 -8
- package/dist/{issue-format-8vbMtP-9.js → issue-format-BhYUpe8G.js} +1 -1
- package/dist/{json-files-Byf92VOl.js → json-files-D-hzuOc8.js} +8 -8
- package/dist/{lifecycle-core-D57bmaEM.js → lifecycle-core-BDRJ-gZl.js} +5 -5
- package/dist/{lifecycle-core-Bh-Jy8dW.js → lifecycle-core-Cuioj9RE.js} +2 -2
- package/dist/{login-BcTfGveb.js → login-BrAq_fE9.js} +3 -3
- package/dist/{login-qr-DxsNtFb-.js → login-qr-w8g9Wssr.js} +6 -6
- package/dist/{logs-cli-C1mQ6jm1.js → logs-cli-Dm95Nvw2.js} +9 -9
- package/dist/{manager-DyZ-LIQS.js → manager-Mu3eMmUj.js} +14 -14
- package/dist/manager-runtime-Cj9Hvway.js +21 -0
- package/dist/{manifest-registry-DjjgwuVC.js → manifest-registry-C_atL4ID.js} +1 -1
- package/dist/{memory-cli-CXFqQMtN.js → memory-cli-DjSgQlDO.js} +12 -12
- package/dist/{model-catalog-CyL_QlZd.js → model-catalog-Crm5h6fz.js} +3 -3
- package/dist/{model-picker-DqYwIby0.js → model-picker-RWaJDIbf.js} +4 -4
- package/dist/{models-BryKzxGG.js → models-Dm0hzS3D.js} +15 -15
- package/dist/{models-cli-BU89hunh.js → models-cli-TrSDz03D.js} +77 -77
- package/dist/{models-config-Do_bkbr3.js → models-config-ioRkhhh4.js} +6 -6
- package/dist/{node-cli-CA1SvH73.js → node-cli-C9unxcj_.js} +33 -33
- package/dist/{node-cli-CfmQ2Qof.js → node-cli-DCokZ5VQ.js} +4 -4
- package/dist/{node-command-policy-Bqp9nIUg.js → node-command-policy-DdF7xJQa.js} +1 -1
- package/dist/{node-service-BirxNntZ.js → node-service-DCfQospz.js} +1 -1
- package/dist/{node-service-BUERUsa_.js → node-service-DhooZn04.js} +1 -1
- package/dist/{nodes-cli-DLtFA23h.js → nodes-cli-ZdvlYwxX.js} +16 -16
- package/dist/{nodes-screen-gvENU0qT.js → nodes-screen-B7eOQ14A.js} +7 -7
- package/dist/{npm-pack-install-2dbksMMb.js → npm-pack-install-Dz4wJtRd.js} +18 -18
- package/dist/{npm-resolution-DafKZYAM.js → npm-resolution-BFE8ihLy.js} +4 -4
- package/dist/{onboard-CpYQ6i29.js → onboard-CI27VpfB.js} +6 -6
- package/dist/{onboard-DCljJSci.js → onboard-DQpNrN8f.js} +2 -2
- package/dist/{onboard-channels-lyZUxSJ-.js → onboard-channels-BBkxHyWU.js} +21 -21
- package/dist/{onboard-custom-BYAJVMrS.js → onboard-custom-CLwjPxwD.js} +4 -4
- package/dist/{onboard-helpers-BqSYoJSO.js → onboard-helpers-BJ2MHcp9.js} +10 -10
- package/dist/{onboard-hooks-B4f4qUvf.js → onboard-hooks-OrZtfoSC.js} +4 -4
- package/dist/{onboard-remote-5YZ2k5qA.js → onboard-remote-wY_bxC1W.js} +4 -4
- package/dist/{onboard-skills-P7WUXQqb.js → onboard-skills-CdhTiJIU.js} +4 -4
- package/dist/{onboarding-C2ZQIZ5e.js → onboarding-BV3dioI3.js} +14 -14
- package/dist/{onboarding-TLgFqsJ0.js → onboarding-bSVnEk-q.js} +1 -1
- package/dist/{onboarding.finalize-C0dSrRMy.js → onboarding.finalize-CthILcfJ.js} +88 -88
- package/dist/{onboarding.finalize-BKLMwDpS.js → onboarding.finalize-V311LPsU.js} +4 -4
- package/dist/{onboarding.gateway-config-DOjylmTf.js → onboarding.gateway-config-DWG9D6GI.js} +19 -19
- package/dist/{onboarding.secret-input-D28tCmCi.js → onboarding.secret-input-yXmtdEMi.js} +1 -1
- package/dist/{openai-codex-model-default-Dh0Anrx7.js → openai-codex-model-default-BnNc6l4d.js} +3 -3
- package/dist/{openai-model-default-JIrv3HNj.js → openai-model-default-PyAlsRPb.js} +2 -2
- package/dist/{openclaw-root-Dh_Sm1l8.js → openclaw-root-Gv7Ob-5V.js} +8 -8
- package/dist/{outbound-attachment-BE3KAIhc.js → outbound-attachment-Bui79r_g.js} +2 -2
- package/dist/{outbound-EIL02rQd.js → outbound-owi6Cvj_.js} +4 -4
- package/dist/{pairing-cli-DYFTC4OI.js → pairing-cli-y8L4PLm3.js} +8 -8
- package/dist/{pairing-labels-c6cTWTzi.js → pairing-labels-DvrRVH1N.js} +1 -1
- package/dist/{pairing-store-gcbFdvn2.js → pairing-store-BsYNiJyH.js} +3 -3
- package/dist/{path-alias-guards-OAUIyvyc.js → path-alias-guards-BndjEKU2.js} +3 -3
- package/dist/{path-safety-h4lG_U1h.js → path-safety-FANXxHHr.js} +1 -1
- package/dist/{paths-C6-x9jb-.js → paths-B-3rcnCY.js} +9 -9
- package/dist/{pi-embedded-NHtVbVqt.js → pi-embedded-DhjXWD5O.js} +25 -25
- package/dist/{pi-embedded-helpers-C1kbyX9C.js → pi-embedded-helpers-BUubsAcJ.js} +6 -6
- package/dist/{pi-embedded-helpers-o22sdqT_.js → pi-embedded-helpers-CSodYzr7.js} +3 -3
- package/dist/{pi-model-discovery-BJyAkuau.js → pi-model-discovery-qGBDJI9t.js} +1 -1
- package/dist/{pi-model-discovery-runtime-D_6fWmk1.js → pi-model-discovery-runtime-B8XjnAyy.js} +5 -5
- package/dist/{pi-tools.before-tool-call.runtime-LDkkLRSe.js → pi-tools.before-tool-call.runtime-CDfXf9XL.js} +5 -5
- package/dist/{pi-tools.policy-dFXahmgF.js → pi-tools.policy-CSPrerKx.js} +6 -6
- package/dist/{plugin-auto-enable-CPLdiF-6.js → plugin-auto-enable-BAHkcVP4.js} +3 -3
- package/dist/{plugin-registry-BA0j17R1.js → plugin-registry-bnANTUyV.js} +3 -3
- package/dist/plugin-sdk/bluebubbles.js +2 -2
- package/dist/plugin-sdk/imessage.js +2 -2
- package/dist/plugin-sdk/slack.js +2 -2
- package/dist/plugin-sdk/telegram.js +2 -2
- package/dist/plugin-sdk/tlon.js +2 -2
- package/dist/plugin-sdk/twitch.js +2 -2
- package/dist/{plugins-BB30X9Wg.js → plugins-Bv9ZfJVO.js} +2 -2
- package/dist/{plugins-cli-Do7-62o7.js → plugins-cli-BnD810PB.js} +82 -82
- package/dist/{ports-CrkPY1HU.js → ports-CFvWMNlt.js} +1 -1
- package/dist/{ports-CRHQM_CU.js → ports-JXKx9QTu.js} +2 -2
- package/dist/{probe-B01qwW3t.js → probe-BSiLGREe.js} +2 -2
- package/dist/{program-DibN7S7t.js → program-DslcDMLC.js} +80 -80
- package/dist/{program-context-QLGv1wVR.js → program-context-BCkMeZ0D.js} +12 -12
- package/dist/{prompt-select-styled-DeQQQ0QA.js → prompt-select-styled-C0PnL2-4.js} +41 -41
- package/dist/{prompt-select-styled-BLaCMb3d.js → prompt-select-styled-DtsNnfFy.js} +5 -5
- package/dist/{provider-auth-helpers-Bu3NP92x.js → provider-auth-helpers-Bo68RFgl.js} +5 -5
- package/dist/{proxy-env-CHINy-_C.js → proxy-env-C4Sv8mbU.js} +1 -1
- package/dist/{push-apns-Dv9W1mnb.js → push-apns-JhqWOAwU.js} +5 -5
- package/dist/{pw-ai-DNjwFfSW.js → pw-ai-BL-cDtw0.js} +18 -18
- package/dist/{pw-ai-MWIrQHO4.js → pw-ai-DZOmcrIm.js} +1 -1
- package/dist/{qmd-manager-BFlQuEU2.js → qmd-manager-CXJXujXb.js} +20 -20
- package/dist/{qr-cli-CDRdlfTz.js → qr-cli-IKWtasYO.js} +2 -2
- package/dist/{redact-snapshot-DfzfKriI.js → redact-snapshot-sxLRRmfh.js} +1 -1
- package/dist/{register.agent-DZcC5FDy.js → register.agent-BhE6O5kz.js} +93 -93
- package/dist/{register.configure-Dmv99pKW.js → register.configure-COPz8XYt.js} +2 -2
- package/dist/register.configure-NmyxXY5V.js +164 -0
- package/dist/{register.maintenance-BNVvn7VP.js → register.maintenance-CEk4B6v4.js} +95 -95
- package/dist/{register.maintenance-By_ZStHt.js → register.maintenance-CyYEm7iS.js} +7 -7
- package/dist/{register.message-DcsEcis4.js → register.message-6oUodJEa.js} +73 -73
- package/dist/{register.onboard-wGV8LHCW.js → register.onboard-2PhRDQTS.js} +18 -18
- package/dist/{register.onboard-rxQ8R21T.js → register.onboard-BP9GuZks.js} +2 -2
- package/dist/{register.setup-DoDh05A7.js → register.setup-CprZSMEV.js} +21 -21
- package/dist/{register.setup-e2gy3YmS.js → register.setup-Ni4737D9.js} +2 -2
- package/dist/{register.status-health-sessions-CFPRa6iq.js → register.status-health-sessions-BpTP5AfU.js} +88 -88
- package/dist/{register.status-health-sessions-BoG2-Twd.js → register.status-health-sessions-HgeTqr9l.js} +4 -4
- package/dist/{register.subclis-Dperszpc.js → register.subclis-CXGjQuPd.js} +31 -31
- package/dist/{resolve-configured-secret-input-string-BdkI2Dl0.js → resolve-configured-secret-input-string-DvKJxAtp.js} +1 -1
- package/dist/{rpc-CM5MI1Km.js → rpc-CQs3IjG7.js} +1 -1
- package/dist/{run-main-BcAftmJ6.js → run-main-CHHrSCWI.js} +91 -91
- package/dist/{runtime-DIn_d_mi.js → runtime-BC8kvHYq.js} +3 -3
- package/dist/{runtime-config-collectors-DVZ-fK7E.js → runtime-config-collectors-DM4YW0m9.js} +1 -1
- package/dist/{runtime-whatsapp-login.runtime-C2Hz6tBD.js → runtime-whatsapp-login.runtime-Dj6jyYEL.js} +7 -7
- package/dist/runtime-whatsapp-outbound.runtime-CboIijG_.js +27 -0
- package/dist/{sandbox-QUwr5BiV.js → sandbox-Ey0spRTA.js} +18 -18
- package/dist/{sandbox-cli-BHPtvNZP.js → sandbox-cli-WnhAHtf7.js} +25 -25
- package/dist/{secrets-cli-BirGeLI0.js → secrets-cli-CxRF1ol0.js} +11 -11
- package/dist/{security-cli-BdtTg2un.js → security-cli-EJK_t_Hu.js} +43 -43
- package/dist/{send-DR8brNFF.js → send-Cms8uhN1.js} +5 -5
- package/dist/{send-DsIy0owU.js → send-DExcQWAf.js} +4 -4
- package/dist/{send-D0TbCIOU.js → send-DgUi3bl8.js} +8 -8
- package/dist/{send-BRb_0Ibb.js → send-Dlp3HAiX.js} +6 -6
- package/dist/{send-CHUBkOx4.js → send-Don_FZgW.js} +11 -11
- package/dist/{server-CsG3vwY6.js → server-DUXr6A6B.js} +20 -20
- package/dist/{server-context-BOMErxlB.js → server-context-DDDYJ1E5.js} +12 -12
- package/dist/{server-lifecycle-Bz_tILpw.js → server-lifecycle-5QwrD-pI.js} +2 -2
- package/dist/{server-middleware-COJNPqNx.js → server-middleware-CUHXrp2x.js} +1 -1
- package/dist/{server-node-events-Bkfa7nls.js → server-node-events-D8EKx-Ef.js} +73 -73
- package/dist/{service-BqHBIJsE.js → service-CkeyjKgU.js} +9 -4
- package/dist/{service-A9LH2cqi.js → service-VB8hrx3m.js} +24 -19
- package/dist/{session-B78ElRuv.js → session-DLkD-iwM.js} +1 -1
- package/dist/{session-utils-HmD-1G9e.js → session-utils-DqcL4tRB.js} +6 -6
- package/dist/{sessions-TCNQfcSW.js → sessions-BJu8U8kz.js} +15 -15
- package/dist/{sessions-CteOs-Xa.js → sessions-DGFe_VH1.js} +4 -4
- package/dist/{shared-0ohfVTdd.js → shared-Bto9UlKB.js} +1 -1
- package/dist/{shared-CiWwdWaM.js → shared-DFIymKVc.js} +1 -1
- package/dist/{skill-commands-BvomqRJm.js → skill-commands-C7_32HvU.js} +5 -5
- package/dist/{skill-scanner-B_VveqAF.js → skill-scanner-CTA9_1Ad.js} +6 -6
- package/dist/{skills-Bme_5_Wh.js → skills-C3DzmT-s.js} +3 -3
- package/dist/{skills-cli-DMOEU-Kf.js → skills-cli-C2MW9QVA.js} +5 -5
- package/dist/{skills-install-jgMttMiG.js → skills-install-xhIs9n_2.js} +6 -6
- package/dist/{skills-status-DDy1p1bH.js → skills-status-n9vgDHer.js} +1 -1
- package/dist/{slash-commands.runtime-kurmXJKo.js → slash-commands.runtime-BrlJHzZ0.js} +11 -11
- package/dist/{slash-dispatch.runtime-Du0T-jw8.js → slash-dispatch.runtime--1geVpWH.js} +6 -6
- package/dist/slash-dispatch.runtime-BPzR4clK.js +110 -0
- package/dist/slash-skill-commands.runtime-C3MY6G1s.js +29 -0
- package/dist/{sqlite-CVpjz_Fn.js → sqlite-B6J7wlgb.js} +12 -12
- package/dist/{status-DGNyj-My.js → status-BvATDhyx.js} +29 -29
- package/dist/{status-CZmvZ4Du.js → status-CzDUyBhZ.js} +1 -1
- package/dist/{status-CcDhfT7z.js → status-gmvLzqWY.js} +3 -3
- package/dist/{status.update-CMY8gTu2.js → status.update-DndHNWm3.js} +2 -2
- package/dist/{store-dO9FxwIh.js → store-BxDf7hdp.js} +15 -15
- package/dist/{subagent-registry-runtime-BX7PeNcG.js → subagent-registry-runtime-BF8LA25p.js} +6 -6
- package/dist/subagent-registry-runtime-CTIJfGw5.js +110 -0
- package/dist/{system-cli-C5W2hXEn.js → system-cli-Be_6EDGU.js} +9 -9
- package/dist/{system-run-command-B6YFaIn3.js → system-run-command-BlvZfJeb.js} +1 -1
- package/dist/{systemd-DunyHHc7.js → systemd-QfmEIyC_.js} +10 -10
- package/dist/{systemd-hints-DNCfudm3.js → systemd-hints-B1wK4V9O.js} +1 -1
- package/dist/{systemd-hints-Cc1WoU1g.js → systemd-hints-C8DMAujY.js} +6 -6
- package/dist/{systemd-linger-C8eA-s3i.js → systemd-linger-D_EygRlf.js} +1 -1
- package/dist/{tables-Ckhi6C4h.js → tables-DVqUjPRa.js} +1 -1
- package/dist/{tailnet-CcjaRS5e.js → tailnet-CoMmrqa1.js} +1 -1
- package/dist/{target-errors-018oJFiB.js → target-errors-N10oAD8K.js} +4 -4
- package/dist/{tool-images-C1FdHV43.js → tool-images-ByGbgP3W.js} +1 -1
- package/dist/{tui-cli-DImVjijU.js → tui-cli-A2qCvBWw.js} +33 -33
- package/dist/{tui-CsIlN_Go.js → tui-o3M_Bbq1.js} +7 -7
- package/dist/{update-CDOtvt7K.js → update-Mc1LqzY6.js} +3 -3
- package/dist/{update-cli-Dq8uIRxF.js → update-cli-BKMUoIZY.js} +105 -105
- package/dist/{update-cli-CazqKKsR.js → update-cli-ByxIfOIf.js} +9 -9
- package/dist/{update-runner-BSMIDJ-p.js → update-runner-CCB_wRmi.js} +16 -16
- package/dist/web-BblTI04D.js +114 -0
- package/dist/{web-CuWkibTO.js → web-DUmwaFF8.js} +6 -6
- package/dist/{webhooks-cli-5lNqCVtQ.js → webhooks-cli-B1O1xKF7.js} +6 -6
- package/dist/{whatsapp-actions-BXDIsy-2.js → whatsapp-actions-P1s1gYIT.js} +17 -17
- package/dist/{with-timeout-xWhqcPuu.js → with-timeout-gotbjCau.js} +3 -3
- package/dist/{workspace-Ct8qaDh3.js → workspace-ST8Op53v.js} +1 -1
- package/dist/{workspace-dirs-Ch8qs0UH.js → workspace-dirs--0e3kMf7.js} +1 -1
- package/dist/{ws-DUfuK8DQ.js → ws-DrZBk8aE.js} +2 -2
- package/dist/{wsl-DLw4LET-.js → wsl-Dd7vjPIH.js} +2 -2
- package/package.json +1 -1
- package/dist/compact.runtime-Cs7M1NjN.js +0 -110
- package/dist/deliver-runtime-BSN3wlW_.js +0 -57
- package/dist/deps-send-discord.runtime-DD-RWrwG.js +0 -31
- package/dist/deps-send-imessage.runtime-gAWYnB6p.js +0 -30
- package/dist/deps-send-signal.runtime-Ry6Voc2R.js +0 -29
- package/dist/deps-send-slack.runtime-CcCvO5a7.js +0 -27
- package/dist/deps-send-telegram.runtime-97vMMh1v.js +0 -33
- package/dist/deps-send-whatsapp.runtime-B8nhC5lk.js +0 -115
- package/dist/image-runtime-3d_07I1J.js +0 -51
- package/dist/manager-runtime-DDmFvXWq.js +0 -21
- package/dist/register.configure-C_xciKz5.js +0 -164
- package/dist/runtime-whatsapp-outbound.runtime-BpuvPdTK.js +0 -27
- package/dist/slash-dispatch.runtime-BDYuFlr9.js +0 -110
- package/dist/slash-skill-commands.runtime-CRatiVfd.js +0 -29
- package/dist/subagent-registry-runtime-CqAEqqbS.js +0 -110
- package/dist/web-CNj08Zq-.js +0 -114
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { f as isNotFoundPathError, p as isPathInside } from "./openclaw-root-
|
|
2
|
-
import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
3
|
-
import { n as resolveSafeBaseDir } from "./path-safety-
|
|
1
|
+
import { f as isNotFoundPathError, p as isPathInside } from "./openclaw-root-Gv7Ob-5V.js";
|
|
2
|
+
import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-DZPN9PEp.js";
|
|
3
|
+
import { n as resolveSafeBaseDir } from "./path-safety-FANXxHHr.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,13 +1,13 @@
|
|
|
1
1
|
import { t as CONFIG_DIR, v as resolveUserPath } from "./utils-DanSccFf.js";
|
|
2
2
|
import { n as isPathInside, t as extensionUsesSkippedScannerPath } from "./scan-paths-CGHjYWQw.js";
|
|
3
|
-
import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-
|
|
3
|
+
import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-C_atL4ID.js";
|
|
4
4
|
import { _ as validateRegistryNpmSpec } from "./env-overrides-DliONB2B.js";
|
|
5
|
-
import { c as writeFileFromPathWithinRoot } from "./fs-safe-
|
|
6
|
-
import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-
|
|
7
|
-
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-
|
|
8
|
-
import { t as scanDirectoryWithSummary } from "./skill-scanner-
|
|
5
|
+
import { c as writeFileFromPathWithinRoot } from "./fs-safe-DZPN9PEp.js";
|
|
6
|
+
import { a as unscopedPackageName, c as fileExists, l as readJsonFile, n as resolveSafeInstallDir, r as safeDirName, u as resolveArchiveKind } from "./install-safe-path-NpGSerww.js";
|
|
7
|
+
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-Dz4wJtRd.js";
|
|
8
|
+
import { t as scanDirectoryWithSummary } from "./skill-scanner-CTA9_1Ad.js";
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
import
|
|
10
|
+
import fsPromises from "node:fs/promises";
|
|
11
11
|
|
|
12
12
|
//#region src/plugins/install.ts
|
|
13
13
|
const MISSING_EXTENSIONS_ERROR = "package.json missing openclaw.extensions; update the plugin package to include openclaw.extensions (for example [\"./dist/index.js\"]). See https://docs.openclaw.ai/help/troubleshooting#plugin-install-fails-with-missing-openclaw-extensions";
|
|
@@ -237,7 +237,7 @@ async function installPluginFromDir(params) {
|
|
|
237
237
|
ok: false,
|
|
238
238
|
error: `directory not found: ${dirPath}`
|
|
239
239
|
};
|
|
240
|
-
if (!(await
|
|
240
|
+
if (!(await fsPromises.stat(dirPath)).isDirectory()) return {
|
|
241
241
|
ok: false,
|
|
242
242
|
error: `not a directory: ${dirPath}`
|
|
243
243
|
};
|
|
@@ -254,7 +254,7 @@ async function installPluginFromFile(params) {
|
|
|
254
254
|
error: `file not found: ${filePath}`
|
|
255
255
|
};
|
|
256
256
|
const extensionsDir = params.extensionsDir ? resolveUserPath(params.extensionsDir) : path.join(CONFIG_DIR, "extensions");
|
|
257
|
-
await
|
|
257
|
+
await fsPromises.mkdir(extensionsDir, { recursive: true });
|
|
258
258
|
const pluginId = path.basename(filePath, path.extname(filePath)) || "plugin";
|
|
259
259
|
const pluginIdError = validatePluginId(pluginId);
|
|
260
260
|
if (pluginIdError) return {
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { Ct as isIpv6Address, kt as parseCanonicalIpAddress, yt as isCanonicalDottedDecimalIPv4 } from "./auth-profiles-
|
|
1
|
+
import { Ct as isIpv6Address, kt as parseCanonicalIpAddress, yt as isCanonicalDottedDecimalIPv4 } from "./auth-profiles-QXvcpjIT.js";
|
|
2
2
|
import { o as getTailnetHostname } from "./tailscale-BRTAbJuN.js";
|
|
3
3
|
|
|
4
4
|
//#region src/gateway/gateway-config-prompts.shared.ts
|
|
@@ -1,15 +1,15 @@
|
|
|
1
1
|
import { E as logVerbose, k as shouldLogVerbose } from "./entry.js";
|
|
2
2
|
import { _ as normalizeAccountId } from "./session-key-9-yI-GU_.js";
|
|
3
3
|
import { v as resolveUserPath } from "./utils-DanSccFf.js";
|
|
4
|
-
import { b as resolveAccountEntry } from "./accounts-
|
|
5
|
-
import { r as normalizeChannelId } from "./plugins-
|
|
6
|
-
import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, m as kindFromMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-
|
|
4
|
+
import { b as resolveAccountEntry } from "./accounts-CGMgxUfN.js";
|
|
5
|
+
import { r as normalizeChannelId } from "./plugins-Bv9ZfJVO.js";
|
|
6
|
+
import { _ as maxBytesForKind, a as hasAlphaChannel, c as detectMime, l as extensionForMime, m as kindFromMime, o as optimizeImageToPng, r as convertHeicToJpeg, s as resizeToJpeg } from "./image-ops-sooGTpsU.js";
|
|
7
7
|
import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-6rkF5KkO.js";
|
|
8
|
-
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-
|
|
9
|
-
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-
|
|
8
|
+
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DZPN9PEp.js";
|
|
9
|
+
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia } from "./fetch-CLpizcRC.js";
|
|
10
10
|
import { fileURLToPath } from "node:url";
|
|
11
11
|
import path from "node:path";
|
|
12
|
-
import
|
|
12
|
+
import fsPromises from "node:fs/promises";
|
|
13
13
|
import MarkdownIt from "markdown-it";
|
|
14
14
|
|
|
15
15
|
//#region src/markdown/fences.ts
|
|
@@ -413,7 +413,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
413
413
|
const roots = localRoots ?? getDefaultLocalRoots();
|
|
414
414
|
let resolved;
|
|
415
415
|
try {
|
|
416
|
-
resolved = await
|
|
416
|
+
resolved = await fsPromises.realpath(mediaPath);
|
|
417
417
|
} catch {
|
|
418
418
|
resolved = path.resolve(mediaPath);
|
|
419
419
|
}
|
|
@@ -430,7 +430,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
430
430
|
for (const root of roots) {
|
|
431
431
|
let resolvedRoot;
|
|
432
432
|
try {
|
|
433
|
-
resolvedRoot = await
|
|
433
|
+
resolvedRoot = await fsPromises.realpath(root);
|
|
434
434
|
} catch {
|
|
435
435
|
resolvedRoot = path.resolve(root);
|
|
436
436
|
}
|
|
@@ -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;
|
|
@@ -23,19 +23,19 @@ async function writeTextAtomic(filePath, content, options) {
|
|
|
23
23
|
const payload = options?.appendTrailingNewline && !content.endsWith("\n") ? `${content}\n` : content;
|
|
24
24
|
const mkdirOptions = { recursive: true };
|
|
25
25
|
if (typeof options?.ensureDirMode === "number") mkdirOptions.mode = options.ensureDirMode;
|
|
26
|
-
await
|
|
26
|
+
await fsPromises.mkdir(path.dirname(filePath), mkdirOptions);
|
|
27
27
|
const tmp = `${filePath}.${randomUUID()}.tmp`;
|
|
28
28
|
try {
|
|
29
|
-
await
|
|
29
|
+
await fsPromises.writeFile(tmp, payload, "utf8");
|
|
30
30
|
try {
|
|
31
|
-
await
|
|
31
|
+
await fsPromises.chmod(tmp, mode);
|
|
32
32
|
} catch {}
|
|
33
|
-
await
|
|
33
|
+
await fsPromises.rename(tmp, filePath);
|
|
34
34
|
try {
|
|
35
|
-
await
|
|
35
|
+
await fsPromises.chmod(filePath, mode);
|
|
36
36
|
} catch {}
|
|
37
37
|
} finally {
|
|
38
|
-
await
|
|
38
|
+
await fsPromises.rm(tmp, { force: true }).catch(() => void 0);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
function createAsyncLock() {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { L as getResolvedLoggerSettings, M as colorize, N as isRich, P as theme, _ as defaultRuntime, tt as resolveIsNixMode } from "./entry.js";
|
|
2
|
-
import { B as loadConfig } from "./auth-profiles-
|
|
2
|
+
import { B as loadConfig } from "./auth-profiles-QXvcpjIT.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-DdHwx_z_.js";
|
|
4
4
|
import { n as resolveGatewayCredentialsFromConfig, t as isGatewaySecretRefUnavailableError } from "./credentials-BN-3xksd.js";
|
|
5
5
|
import { m as resolveGatewayWindowsTaskName, p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./arg-split-BCMOiDRb.js";
|
|
6
|
-
import { t as isWSL } from "./wsl-
|
|
7
|
-
import { r as isSystemdUserServiceAvailable } from "./systemd-
|
|
8
|
-
import { c as resolveGatewayLogPaths } from "./service-
|
|
9
|
-
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-
|
|
6
|
+
import { t as isWSL } from "./wsl-Dd7vjPIH.js";
|
|
7
|
+
import { r as isSystemdUserServiceAvailable } from "./systemd-QfmEIyC_.js";
|
|
8
|
+
import { c as resolveGatewayLogPaths } from "./service-VB8hrx3m.js";
|
|
9
|
+
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-C8DMAujY.js";
|
|
10
10
|
import { t as parsePort } from "./parse-port-DnJYkByg.js";
|
|
11
11
|
import { Writable } from "node:stream";
|
|
12
12
|
|
|
@@ -7,8 +7,8 @@ import { n as resolveGatewayCredentialsFromConfig, t as isGatewaySecretRefUnavai
|
|
|
7
7
|
import { t as isWSL } from "./wsl-Dk6WfABt.js";
|
|
8
8
|
import { m as resolveGatewayWindowsTaskName, p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./arg-split-BFqTUfhW.js";
|
|
9
9
|
import { r as isSystemdUserServiceAvailable } from "./systemd-CF1Vay4a.js";
|
|
10
|
-
import { c as resolveGatewayLogPaths } from "./service-
|
|
11
|
-
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-
|
|
10
|
+
import { c as resolveGatewayLogPaths } from "./service-CkeyjKgU.js";
|
|
11
|
+
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-B1wK4V9O.js";
|
|
12
12
|
import { t as parsePort } from "./parse-port-Vm8F7Kus.js";
|
|
13
13
|
import { Writable } from "node:stream";
|
|
14
14
|
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { A as success, C as info, S as danger, _ as defaultRuntime } from "./entry.js";
|
|
2
|
-
import { B as loadConfig } from "./auth-profiles-
|
|
2
|
+
import { B as loadConfig } from "./auth-profiles-QXvcpjIT.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-DdHwx_z_.js";
|
|
4
4
|
import { r as logInfo } from "./logger-BcqRk323.js";
|
|
5
|
-
import { i as resolveWhatsAppAccount, u as logoutWeb } from "./accounts-
|
|
6
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
5
|
+
import { i as resolveWhatsAppAccount, u as logoutWeb } from "./accounts-CGMgxUfN.js";
|
|
6
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-DLkD-iwM.js";
|
|
7
7
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
8
8
|
|
|
9
9
|
//#region src/web/login.ts
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { A as success, C as info, S as danger, _ as defaultRuntime } from "./entry.js";
|
|
2
|
-
import { B as loadConfig } from "./auth-profiles-
|
|
3
|
-
import "./agent-scope-
|
|
2
|
+
import { B as loadConfig } from "./auth-profiles-QXvcpjIT.js";
|
|
3
|
+
import "./agent-scope-Dd2_TNoB.js";
|
|
4
4
|
import "./utils-DanSccFf.js";
|
|
5
|
-
import "./openclaw-root-
|
|
5
|
+
import "./openclaw-root-Gv7Ob-5V.js";
|
|
6
6
|
import { r as logInfo } from "./logger-BcqRk323.js";
|
|
7
7
|
import "./exec-OWC_Lkz4.js";
|
|
8
8
|
import "./github-copilot-token-DHTToceK.js";
|
|
9
9
|
import "./host-env-security-CIiLt2Mi.js";
|
|
10
10
|
import "./version-BKzmSBiX.js";
|
|
11
11
|
import "./registry-CZbmSOj8.js";
|
|
12
|
-
import "./manifest-registry-
|
|
13
|
-
import { i as resolveWhatsAppAccount, m as readWebSelfId, u as logoutWeb, v as webAuthExists } from "./accounts-
|
|
12
|
+
import "./manifest-registry-C_atL4ID.js";
|
|
13
|
+
import { i as resolveWhatsAppAccount, m as readWebSelfId, u as logoutWeb, v as webAuthExists } from "./accounts-CGMgxUfN.js";
|
|
14
14
|
import "./logging-BdnOSVPD.js";
|
|
15
|
-
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-
|
|
15
|
+
import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-DLkD-iwM.js";
|
|
16
16
|
import { randomUUID } from "node:crypto";
|
|
17
17
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
18
18
|
import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { B as isValidTimeZone, M as colorize, N as isRich, P as theme, y as clearActiveProgressLine, z as formatLocalIsoWithOffset } from "./entry.js";
|
|
2
|
-
import "./auth-profiles-
|
|
2
|
+
import "./auth-profiles-QXvcpjIT.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-DdHwx_z_.js";
|
|
4
|
-
import "./agent-scope-
|
|
4
|
+
import "./agent-scope-Dd2_TNoB.js";
|
|
5
5
|
import "./utils-DanSccFf.js";
|
|
6
|
-
import "./openclaw-root-
|
|
6
|
+
import "./openclaw-root-Gv7Ob-5V.js";
|
|
7
7
|
import "./logger-BcqRk323.js";
|
|
8
8
|
import "./exec-OWC_Lkz4.js";
|
|
9
9
|
import "./github-copilot-token-DHTToceK.js";
|
|
10
10
|
import "./host-env-security-CIiLt2Mi.js";
|
|
11
11
|
import "./version-BKzmSBiX.js";
|
|
12
12
|
import "./registry-CZbmSOj8.js";
|
|
13
|
-
import "./manifest-registry-
|
|
13
|
+
import "./manifest-registry-C_atL4ID.js";
|
|
14
14
|
import "./message-channel-6rkF5KkO.js";
|
|
15
|
-
import "./tailnet-
|
|
16
|
-
import "./ws-
|
|
17
|
-
import "./client-
|
|
18
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
15
|
+
import "./tailnet-CoMmrqa1.js";
|
|
16
|
+
import "./ws-DrZBk8aE.js";
|
|
17
|
+
import "./client-DaFloLVI.js";
|
|
18
|
+
import { t as buildGatewayConnectionDetails } from "./call-B56A9tyz.js";
|
|
19
19
|
import "./pairing-token-fl66UgDc.js";
|
|
20
20
|
import { t as formatDocsLink } from "./links-BUkYLQQF.js";
|
|
21
21
|
import "./progress-BNL5DRrQ.js";
|
|
22
|
-
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-
|
|
22
|
+
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-CZWffg-J.js";
|
|
23
23
|
import { t as parseLogLine } from "./parse-log-line-GisaZn5H.js";
|
|
24
24
|
import { setTimeout } from "node:timers/promises";
|
|
25
25
|
|
|
@@ -1,18 +1,18 @@
|
|
|
1
1
|
import { ot as resolveStateDir, r as isTruthyEnvValue, s as createSubsystemLogger } from "./entry.js";
|
|
2
|
-
import { Ni as normalizeOptionalSecretInput, _i as resolveApiKeyForProvider, ei as retryAsync, gi as requireApiKey, yi as resolveEnvApiKey } from "./auth-profiles-
|
|
3
|
-
import { a as resolveAgentDir, i as resolveAgentConfig, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
2
|
+
import { Ni as normalizeOptionalSecretInput, _i as resolveApiKeyForProvider, ei as retryAsync, gi as requireApiKey, yi as resolveEnvApiKey } from "./auth-profiles-QXvcpjIT.js";
|
|
3
|
+
import { a as resolveAgentDir, i as resolveAgentConfig, u as resolveAgentWorkspaceDir } from "./agent-scope-Dd2_TNoB.js";
|
|
4
4
|
import { T as truncateUtf16Safe, i as clampNumber, r as clampInt, v as resolveUserPath } from "./utils-DanSccFf.js";
|
|
5
5
|
import { a as hasConfiguredSecretInput, c as normalizeResolvedSecretInputString } from "./types.secrets-CZ26uLlg.js";
|
|
6
6
|
import { r as formatErrorMessage } from "./errors-DMBofubI.js";
|
|
7
7
|
import { s as resolveSessionTranscriptsDirForAgent } from "./paths-CA9zLiBI.js";
|
|
8
8
|
import { n as onSessionTranscriptUpdate } from "./transcript-events-DRc5u0dS.js";
|
|
9
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
10
|
-
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-
|
|
11
|
-
import { _ as statRegularFile, a as buildFileEntry, c as ensureDir, d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as isFileMissingError, h as runWithConcurrency, i as sessionPathForFile, l as hashText, m as remapChunkLines, n as buildSessionEntry, o as chunkMarkdown, p as parseEmbedding, r as listSessionFilesForAgent, s as cosineSimilarity, t as requireNodeSqlite, u as isMemoryPath, v as extractKeywords } from "./sqlite-
|
|
9
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-CTJIkmOy.js";
|
|
10
|
+
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-DsHx0Ttu.js";
|
|
11
|
+
import { _ as statRegularFile, a as buildFileEntry, c as ensureDir, d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as isFileMissingError, h as runWithConcurrency, i as sessionPathForFile, l as hashText, m as remapChunkLines, n as buildSessionEntry, o as chunkMarkdown, p as parseEmbedding, r as listSessionFilesForAgent, s as cosineSimilarity, t as requireNodeSqlite, u as isMemoryPath, v as extractKeywords } from "./sqlite-B6J7wlgb.js";
|
|
12
12
|
import os from "node:os";
|
|
13
13
|
import path from "node:path";
|
|
14
14
|
import fs from "node:fs";
|
|
15
|
-
import
|
|
15
|
+
import fsPromises from "node:fs/promises";
|
|
16
16
|
import { randomUUID } from "node:crypto";
|
|
17
17
|
import chokidar from "chokidar";
|
|
18
18
|
import { createInterface } from "node:readline";
|
|
@@ -1076,7 +1076,7 @@ async function extractTimestamp(params) {
|
|
|
1076
1076
|
if (!params.workspaceDir) return null;
|
|
1077
1077
|
const absolutePath = path.isAbsolute(params.filePath) ? params.filePath : path.resolve(params.workspaceDir, params.filePath);
|
|
1078
1078
|
try {
|
|
1079
|
-
const stat = await
|
|
1079
|
+
const stat = await fsPromises.stat(absolutePath);
|
|
1080
1080
|
if (!Number.isFinite(stat.mtimeMs)) return null;
|
|
1081
1081
|
return new Date(stat.mtimeMs);
|
|
1082
1082
|
} catch {
|
|
@@ -2265,7 +2265,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2265
2265
|
const source = `${sourceBase}${suffix}`;
|
|
2266
2266
|
const target = `${targetBase}${suffix}`;
|
|
2267
2267
|
try {
|
|
2268
|
-
await
|
|
2268
|
+
await fsPromises.rename(source, target);
|
|
2269
2269
|
} catch (err) {
|
|
2270
2270
|
if (err.code !== "ENOENT") throw err;
|
|
2271
2271
|
}
|
|
@@ -2276,7 +2276,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2276
2276
|
"",
|
|
2277
2277
|
"-wal",
|
|
2278
2278
|
"-shm"
|
|
2279
|
-
].map((suffix) =>
|
|
2279
|
+
].map((suffix) => fsPromises.rm(`${basePath}${suffix}`, { force: true })));
|
|
2280
2280
|
}
|
|
2281
2281
|
ensureSchema() {
|
|
2282
2282
|
const result = ensureMemoryIndexSchema({
|
|
@@ -2371,7 +2371,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2371
2371
|
if (!thresholds) return null;
|
|
2372
2372
|
let stat;
|
|
2373
2373
|
try {
|
|
2374
|
-
stat = await
|
|
2374
|
+
stat = await fsPromises.stat(sessionFile);
|
|
2375
2375
|
} catch {
|
|
2376
2376
|
return null;
|
|
2377
2377
|
}
|
|
@@ -2413,7 +2413,7 @@ var MemoryManagerSyncOps = class {
|
|
|
2413
2413
|
if (end <= start) return 0;
|
|
2414
2414
|
let handle;
|
|
2415
2415
|
try {
|
|
2416
|
-
handle = await
|
|
2416
|
+
handle = await fsPromises.open(absPath, "r");
|
|
2417
2417
|
} catch (err) {
|
|
2418
2418
|
if (isFileMissingError(err)) return 0;
|
|
2419
2419
|
throw err;
|
|
@@ -3356,7 +3356,7 @@ var MemoryManagerEmbeddingOps = class extends MemoryManagerSyncOps {
|
|
|
3356
3356
|
});
|
|
3357
3357
|
return;
|
|
3358
3358
|
}
|
|
3359
|
-
const content = options.content ?? await
|
|
3359
|
+
const content = options.content ?? await fsPromises.readFile(entry.absPath, "utf-8");
|
|
3360
3360
|
const chunks = enforceEmbeddingMaxInputTokens(this.provider, chunkMarkdown(content, this.settings.chunking).filter((chunk) => chunk.text.trim().length > 0), EMBEDDING_BATCH_MAX_TOKENS);
|
|
3361
3361
|
if (options.source === "sessions" && "lineMap" in entry) remapChunkLines(chunks, entry.lineMap);
|
|
3362
3362
|
const embeddings = this.batch.enabled ? await this.embedChunksWithBatch(chunks, entry, options.source) : await this.embedChunksInBatches(chunks);
|
|
@@ -3774,7 +3774,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3774
3774
|
if (!allowedWorkspace && this.settings.extraPaths.length > 0) {
|
|
3775
3775
|
const additionalPaths = normalizeExtraMemoryPaths(this.workspaceDir, this.settings.extraPaths);
|
|
3776
3776
|
for (const additionalPath of additionalPaths) try {
|
|
3777
|
-
const stat = await
|
|
3777
|
+
const stat = await fsPromises.lstat(additionalPath);
|
|
3778
3778
|
if (stat.isSymbolicLink()) continue;
|
|
3779
3779
|
if (stat.isDirectory()) {
|
|
3780
3780
|
if (absPath === additionalPath || absPath.startsWith(`${additionalPath}${path.sep}`)) {
|
|
@@ -3799,7 +3799,7 @@ var MemoryIndexManager = class MemoryIndexManager extends MemoryManagerEmbedding
|
|
|
3799
3799
|
};
|
|
3800
3800
|
let content;
|
|
3801
3801
|
try {
|
|
3802
|
-
content = await
|
|
3802
|
+
content = await fsPromises.readFile(absPath, "utf-8");
|
|
3803
3803
|
} catch (err) {
|
|
3804
3804
|
if (isFileMissingError(err)) return {
|
|
3805
3805
|
text: "",
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
import "./auth-profiles-QXvcpjIT.js";
|
|
2
|
+
import "./agent-scope-Dd2_TNoB.js";
|
|
3
|
+
import "./utils-DanSccFf.js";
|
|
4
|
+
import "./openclaw-root-Gv7Ob-5V.js";
|
|
5
|
+
import "./logger-BcqRk323.js";
|
|
6
|
+
import "./exec-OWC_Lkz4.js";
|
|
7
|
+
import "./github-copilot-token-DHTToceK.js";
|
|
8
|
+
import "./host-env-security-CIiLt2Mi.js";
|
|
9
|
+
import "./version-BKzmSBiX.js";
|
|
10
|
+
import "./registry-CZbmSOj8.js";
|
|
11
|
+
import "./manifest-registry-C_atL4ID.js";
|
|
12
|
+
import "./redact-BCIqtHJW.js";
|
|
13
|
+
import "./errors-DMBofubI.js";
|
|
14
|
+
import "./proxy-env-C4Sv8mbU.js";
|
|
15
|
+
import "./paths-CA9zLiBI.js";
|
|
16
|
+
import "./fetch-guard-CTJIkmOy.js";
|
|
17
|
+
import "./api-key-rotation-DsHx0Ttu.js";
|
|
18
|
+
import "./sqlite-B6J7wlgb.js";
|
|
19
|
+
import { t as MemoryIndexManager } from "./manager-Mu3eMmUj.js";
|
|
20
|
+
|
|
21
|
+
export { MemoryIndexManager };
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { h as resolveConfigDir, u as isRecord, v as resolveUserPath } from "./utils-DanSccFf.js";
|
|
2
|
-
import { a as openBoundaryFileSync, p as isPathInside$1 } from "./openclaw-root-
|
|
2
|
+
import { a as openBoundaryFileSync, p as isPathInside$1 } from "./openclaw-root-Gv7Ob-5V.js";
|
|
3
3
|
import { A as defaultSlotIdForKey, l as normalizeChatChannelId } from "./registry-CZbmSOj8.js";
|
|
4
4
|
import { n as MANIFEST_KEY } from "./legacy-names-Cvucw6AA.js";
|
|
5
5
|
import { fileURLToPath } from "node:url";
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { M as colorize, N as isRich, O as setVerbose, P as theme, _ as defaultRuntime, ot as resolveStateDir, s as createSubsystemLogger } from "./entry.js";
|
|
3
|
-
import { B as loadConfig, mt as parseDurationMs, wn as splitShellArgs } from "./auth-profiles-
|
|
4
|
-
import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
3
|
+
import { B as loadConfig, mt as parseDurationMs, wn as splitShellArgs } from "./auth-profiles-QXvcpjIT.js";
|
|
4
|
+
import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-Dd2_TNoB.js";
|
|
5
5
|
import { b as shortenHomeInString, v as resolveUserPath, x as shortenHomePath } from "./utils-DanSccFf.js";
|
|
6
6
|
import { r as formatErrorMessage } from "./errors-DMBofubI.js";
|
|
7
7
|
import { s as resolveSessionTranscriptsDirForAgent } from "./paths-CA9zLiBI.js";
|
|
8
|
-
import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-
|
|
9
|
-
import { r as getMemoryCommandSecretTargetIds, s as resolveCommandSecretRefsViaGateway } from "./command-secret-targets-
|
|
8
|
+
import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-B6J7wlgb.js";
|
|
9
|
+
import { r as getMemoryCommandSecretTargetIds, s as resolveCommandSecretRefsViaGateway } from "./command-secret-targets-CsIlET0p.js";
|
|
10
10
|
import { t as formatDocsLink } from "./links-BUkYLQQF.js";
|
|
11
11
|
import { r as withManager } from "./cli-utils-CI_KkT8q.js";
|
|
12
12
|
import { t as formatHelpExamples } from "./help-format-B08o9IQj.js";
|
|
@@ -14,7 +14,7 @@ import { n as withProgress, r as withProgressTotals } from "./progress-BNL5DRrQ.
|
|
|
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
|
|
|
19
19
|
//#region src/memory/backend-config.ts
|
|
20
20
|
const DEFAULT_BACKEND = "builtin";
|
|
@@ -218,7 +218,7 @@ const log = createSubsystemLogger("memory");
|
|
|
218
218
|
const QMD_MANAGER_CACHE = /* @__PURE__ */ new Map();
|
|
219
219
|
let managerRuntimePromise = null;
|
|
220
220
|
function loadManagerRuntime() {
|
|
221
|
-
managerRuntimePromise ??= import("./manager-runtime-
|
|
221
|
+
managerRuntimePromise ??= import("./manager-runtime-Cj9Hvway.js");
|
|
222
222
|
return managerRuntimePromise;
|
|
223
223
|
}
|
|
224
224
|
async function getMemorySearchManager(params) {
|
|
@@ -232,7 +232,7 @@ async function getMemorySearchManager(params) {
|
|
|
232
232
|
if (cached) return { manager: cached };
|
|
233
233
|
}
|
|
234
234
|
try {
|
|
235
|
-
const { QmdMemoryManager } = await import("./qmd-manager-
|
|
235
|
+
const { QmdMemoryManager } = await import("./qmd-manager-CXJXujXb.js");
|
|
236
236
|
const primary = await QmdMemoryManager.create({
|
|
237
237
|
cfg: params.cfg,
|
|
238
238
|
agentId: params.agentId,
|
|
@@ -450,7 +450,7 @@ async function withMemoryManagerForAgent(params) {
|
|
|
450
450
|
}
|
|
451
451
|
async function checkReadableFile(pathname) {
|
|
452
452
|
try {
|
|
453
|
-
await
|
|
453
|
+
await fsPromises.access(pathname, fs.constants.R_OK);
|
|
454
454
|
return { exists: true };
|
|
455
455
|
} catch (err) {
|
|
456
456
|
const code = err.code;
|
|
@@ -467,7 +467,7 @@ async function scanSessionFiles(agentId) {
|
|
|
467
467
|
try {
|
|
468
468
|
return {
|
|
469
469
|
source: "sessions",
|
|
470
|
-
totalFiles: (await
|
|
470
|
+
totalFiles: (await fsPromises.readdir(sessionsDir, { withFileTypes: true })).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).length,
|
|
471
471
|
issues
|
|
472
472
|
};
|
|
473
473
|
} catch (err) {
|
|
@@ -499,7 +499,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
|
|
|
499
499
|
if (alt.issue) issues.push(alt.issue);
|
|
500
500
|
const resolvedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
|
|
501
501
|
for (const extraPath of resolvedExtraPaths) try {
|
|
502
|
-
if ((await
|
|
502
|
+
if ((await fsPromises.lstat(extraPath)).isSymbolicLink()) continue;
|
|
503
503
|
const extraCheck = await checkReadableFile(extraPath);
|
|
504
504
|
if (extraCheck.issue) issues.push(extraCheck.issue);
|
|
505
505
|
} catch (err) {
|
|
@@ -509,7 +509,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
|
|
|
509
509
|
}
|
|
510
510
|
let dirReadable = null;
|
|
511
511
|
try {
|
|
512
|
-
await
|
|
512
|
+
await fsPromises.access(memoryDir, fs.constants.R_OK);
|
|
513
513
|
dirReadable = true;
|
|
514
514
|
} catch (err) {
|
|
515
515
|
const code = err.code;
|
|
@@ -557,7 +557,7 @@ async function summarizeQmdIndexArtifact(manager) {
|
|
|
557
557
|
if (!dbPath) return null;
|
|
558
558
|
let stat;
|
|
559
559
|
try {
|
|
560
|
-
stat = await
|
|
560
|
+
stat = await fsPromises.stat(dbPath);
|
|
561
561
|
} catch (err) {
|
|
562
562
|
const code = err.code;
|
|
563
563
|
if (code === "ENOENT") throw new Error(`QMD index file not found: ${shortenHomePath(dbPath)}`, { cause: err });
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { s as createSubsystemLogger } from "./entry.js";
|
|
2
|
-
import { B as loadConfig, ur as resolveOpenClawAgentDir } from "./auth-profiles-
|
|
3
|
-
import { t as ensureOpenClawModelsJson } from "./models-config-
|
|
2
|
+
import { B as loadConfig, ur as resolveOpenClawAgentDir } from "./auth-profiles-QXvcpjIT.js";
|
|
3
|
+
import { t as ensureOpenClawModelsJson } from "./models-config-ioRkhhh4.js";
|
|
4
4
|
|
|
5
5
|
//#region src/agents/model-catalog.ts
|
|
6
6
|
const log = createSubsystemLogger("model-catalog");
|
|
7
7
|
let modelCatalogPromise = null;
|
|
8
8
|
let hasLoggedModelCatalogError = false;
|
|
9
|
-
const defaultImportPiSdk = () => import("./pi-model-discovery-
|
|
9
|
+
const defaultImportPiSdk = () => import("./pi-model-discovery-qGBDJI9t.js").then((n) => n.r);
|
|
10
10
|
let importPiSdk = defaultImportPiSdk;
|
|
11
11
|
const CODEX_PROVIDER = "openai-codex";
|
|
12
12
|
const OPENAI_PROVIDER = "openai";
|