@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,10 +1,10 @@
|
|
|
1
1
|
import { $ as resolveGatewayLockDir, E as logVerbose, F as getChildLogger, G as CONFIG_PATH, I as getLogger, J as isNixMode, L as getResolvedLoggerSettings, M as colorize, N as isRich, O as setVerbose, P as theme, X as resolveConfigPath, _ as defaultRuntime, c as runtimeForLogger, d as setConsoleSubsystemFilter, et as resolveGatewayPort, f as setConsoleTimestampPrefix, i as logAcceptedEnvOption, ot as resolveStateDir, q as STATE_DIR, r as isTruthyEnvValue, s as createSubsystemLogger } from "./entry.js";
|
|
2
|
-
import { An as ensureControlUiAllowedOriginsForNonLoopbackBind, Ar as resolveDefaultModelForAgent, B as loadConfig, Bi as DEFAULT_PROVIDER, Dr as resolveAllowedModelRef, Gn as resolveAgentMaxConcurrent, H as readConfigFileSnapshot, Ir as resolveThinkingDefault, J as OpenClawSchema, K as writeConfigFile, Kn as resolveSubagentMaxConcurrent, L as migrateLegacyConfig, Nt as isAvatarHttpUrl, On as applyMergePatch, Pi as normalizeSecretInput, Pr as resolveSubagentConfiguredModelSelection, Pt as isAvatarImageDataUrl, Ri as DEFAULT_CONTEXT_TOKENS, Rt as looksLikeAvatarPath, U as readConfigFileSnapshotForWrite, Un as buildTalkConfigResponse, V as parseConfigJson5, W as resolveConfigSnapshotHash, hr as buildAllowedModelSet, ht as parseByteSize, jr as resolveHooksGmailModel, jt as AVATAR_MAX_BYTES, kn as applyLegacyMigrations, kr as resolveConfiguredModelRef, mr as isPidAlive, mt as parseDurationMs, q as validateConfigObjectWithPlugins, wr as normalizeModelSelection, xr as isCliProvider, yr as getModelRefStatus, z as createConfigIO, zi as DEFAULT_MODEL } from "./auth-profiles-
|
|
2
|
+
import { An as ensureControlUiAllowedOriginsForNonLoopbackBind, Ar as resolveDefaultModelForAgent, B as loadConfig, Bi as DEFAULT_PROVIDER, Dr as resolveAllowedModelRef, Gn as resolveAgentMaxConcurrent, H as readConfigFileSnapshot, Ir as resolveThinkingDefault, J as OpenClawSchema, K as writeConfigFile, Kn as resolveSubagentMaxConcurrent, L as migrateLegacyConfig, Nt as isAvatarHttpUrl, On as applyMergePatch, Pi as normalizeSecretInput, Pr as resolveSubagentConfiguredModelSelection, Pt as isAvatarImageDataUrl, Ri as DEFAULT_CONTEXT_TOKENS, Rt as looksLikeAvatarPath, U as readConfigFileSnapshotForWrite, Un as buildTalkConfigResponse, V as parseConfigJson5, W as resolveConfigSnapshotHash, hr as buildAllowedModelSet, ht as parseByteSize, jr as resolveHooksGmailModel, jt as AVATAR_MAX_BYTES, kn as applyLegacyMigrations, kr as resolveConfiguredModelRef, mr as isPidAlive, mt as parseDurationMs, q as validateConfigObjectWithPlugins, wr as normalizeModelSelection, xr as isCliProvider, yr as getModelRefStatus, z as createConfigIO, zi as DEFAULT_MODEL } from "./auth-profiles-QXvcpjIT.js";
|
|
3
3
|
import { t as formatCliCommand } from "./command-format-DdHwx_z_.js";
|
|
4
|
-
import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-
|
|
4
|
+
import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-Dd2_TNoB.js";
|
|
5
5
|
import { C as isCronRunSessionKey, E as parseAgentSessionKey, T as isSubagentSessionKey, _ as normalizeAccountId$1, c as normalizeAgentId, g as DEFAULT_ACCOUNT_ID, h as toAgentStoreSessionKey, l as normalizeMainKey, m as toAgentRequestSessionKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey } from "./session-key-9-yI-GU_.js";
|
|
6
6
|
import { E as isPlainObject, S as sleep, T as truncateUtf16Safe, n as clamp, s as ensureDir, v as resolveUserPath, x as shortenHomePath } from "./utils-DanSccFf.js";
|
|
7
|
-
import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-
|
|
7
|
+
import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-Gv7Ob-5V.js";
|
|
8
8
|
import { i as logWarn, t as logDebug } from "./logger-BcqRk323.js";
|
|
9
9
|
import { n as runExec, t as runCommandWithTimeout } from "./exec-OWC_Lkz4.js";
|
|
10
10
|
import { a as hasConfiguredSecretInput } from "./types.secrets-CZ26uLlg.js";
|
|
@@ -12,157 +12,157 @@ import "./github-copilot-token-DHTToceK.js";
|
|
|
12
12
|
import "./host-env-security-CIiLt2Mi.js";
|
|
13
13
|
import { n as resolveRuntimeServiceVersion, t as VERSION } from "./version-BKzmSBiX.js";
|
|
14
14
|
import { C as clearInternalHooks, E as triggerInternalHook, T as registerInternalHook, h as createEmptyPluginRegistry, t as CHANNEL_IDS, u as getActivePluginRegistry, w as createInternalHookEvent } from "./registry-CZbmSOj8.js";
|
|
15
|
-
import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-
|
|
16
|
-
import "./dock-
|
|
15
|
+
import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-C_atL4ID.js";
|
|
16
|
+
import "./dock-wtxEAACu.js";
|
|
17
17
|
import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-Df74FoY2.js";
|
|
18
|
-
import { $ as buildBareSessionResetPrompt, $t as consumeGatewaySigusr1RestartAuthorization, Ar as resolveAgentIdentity, At as normalizePayloadToSystemText, Bn as normalizeMimeList, Br as isTtsProviderConfigured, Bt as getHookType, C as resolveAgentDeliveryPlan, Cn as isSystemEventContextChanged, Cr as registerAgentRunContext, Ct as normalizeHttpWebhookUrl, D as createOutboundSendDeps$1, Dt as normalizeOptionalAgentId, E as createDefaultDeps, En as requestHeartbeatNow, Er as resolveBootstrapWarningSignaturesSeen, Et as inferLegacyName, F as createReplyPrefixOptions, Fn as DEFAULT_INPUT_IMAGE_MIMES, Ft as stripLegacyDeliveryFields, Gr as resolveTtsProviderOrder, Gt as resolveSessionAuthProfileOverride, Hr as resolveTtsAutoMode, Ht as closeTrackedBrowserTabsForSessions, In as DEFAULT_INPUT_MAX_REDIRECTS, Ir as clearBootstrapSnapshot, J as dispatchInboundMessage, Jn as stopSubagentsForRequester, Jr as textToSpeech, Kr as setTtsEnabled, L as buildHistoryContextFromEntries, Ln as DEFAULT_INPUT_TIMEOUT_MS, Lr as clearBootstrapSnapshotOnSessionRollover, Mt as migrateLegacyCronPayload, Nt as buildDeliveryFromLegacyPayload, Or as getAcpSessionManager, Ot as normalizeOptionalSessionKey, Pn as DEFAULT_INPUT_IMAGE_MAX_BYTES, Pr as resolveUserTimezone, Pt as hasLegacyDeliveryHints, Qr as getActiveTaskCount, Qt as parseVerboseOverride, Rn as extractFileContentFromSource, Rr as getTtsProvider, Rt as buildSafeExternalPrompt, Sn as enqueueSystemEvent, Sr as onAgentEvent, St as writeRestartSentinel, T as createOutboundSendDeps, Tt as normalizeCronJobPatch, Un as normalizeSendPolicy, Ur as resolveTtsConfig, Ut as applyBrowserProxyPaths, Vn as resolveInputFileLimits, Vr as resolveTtsApiKey, Vt as isExternalHookSession, Wn as resolveSendPolicy, Wr as resolveTtsPrefsPath, Wt as persistBrowserProxyFiles, X as getTotalPendingReplies, Xr as OPENAI_TTS_VOICES, Xt as applyModelOverrideToSessionEntry, Y as createReplyDispatcher, Yr as OPENAI_TTS_MODELS, Zn as countActiveDescendantRuns, Zt as applyVerboseOverride, _ as requestBodyErrorToText, _t as formatDoctorNonInteractiveHint, a as getPluginToolMeta, ai as CommandLane, an as setGatewaySigusr1RestartPolicy, at as ensureOutboundSessionEntry, br as emitAgentEvent, bt as summarizeRestartSentinel, c as loadOpenClawPlugins, cn as unbindThreadBindingsBySessionKey, cr as runSubagentAnnounceFlow, dn as loadProviderUsageSummary, dr as clearSessionQueues, dt as resolveOutboundChannelPlugin, ei as getTotalQueueSize, en as deferGatewayRestartUntilIdle, er as initSubagentRegistry, et as getCliSessionId, fr as buildOutboundSessionContext, g as readJsonBodyWithLimit, gr as waitForEmbeddedPiRunEnd, gt as consumeRestartSentinel, h as handleSlackHttpRequest, hn as formatZonedTimestamp, hr as getActiveEmbeddedRunCount, ht as runWithModelFallback, ii as waitForActiveTasks, in as scheduleGatewaySigusr1Restart, j as resolveAgentAvatar, jn as ACP_SESSION_IDENTITY_RENDERER_VERSION, jt as normalizeRequiredName, kr as resolveAgentSessionDirs, kt as normalizeOptionalText, l as createPluginRuntime, ln as normalizeGroupActivation, lr as resolveAnnounceTargetFromKey, lt as resolveOutboundTarget, mr as abortEmbeddedPiRun, n as applyToolPolicyPipeline, ni as resetAllLanes, nn as isGatewaySigusr1RestartExternallyAllowed, nr as listDescendantRunsForRequester, nt as runCliAgent, o as resolvePluginTools, oi as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, on as setPreRestartDeferralCheck, ot as resolveOutboundSessionRoute, p as resolveAgentOutboundIdentity, pr as runEmbeddedPiAgent, pt as resetDirectoryCache, qn as isAbortRequestText, qr as setTtsProvider, r as buildDefaultToolPolicyPipelineSteps, ri as setCommandLaneConcurrency, rn as markGatewaySigusr1RestartHandled, rt as createOpenClawTools, sn as triggerOpenClawRestart, sr as resolveAgentTimeoutMs, ti as markGatewayDraining, tn as emitGatewayRestart, tt as setCliSessionId, ui as stripHeartbeatToken, ur as readLatestAssistantReply, ut as resolveSessionDeliveryTarget, vr as resolveCronStyleNow, vt as formatRestartSentinelMessage, w as resolveAgentOutboundTarget, wt as normalizeCronJobCreate, x as agentCommandFromIngress, xr as getAgentRunContext, yr as clearAgentRunContext, zn as extractImageContentFromSource, zr as isTtsEnabled, zt as detectSuspiciousPatterns } from "./compact-
|
|
19
|
-
import { i as resolveWhatsAppAccount } from "./accounts-
|
|
20
|
-
import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin, v as buildChannelAccountBindings } from "./plugins-
|
|
18
|
+
import { $ as buildBareSessionResetPrompt, $t as consumeGatewaySigusr1RestartAuthorization, Ar as resolveAgentIdentity, At as normalizePayloadToSystemText, Bn as normalizeMimeList, Br as isTtsProviderConfigured, Bt as getHookType, C as resolveAgentDeliveryPlan, Cn as isSystemEventContextChanged, Cr as registerAgentRunContext, Ct as normalizeHttpWebhookUrl, D as createOutboundSendDeps$1, Dt as normalizeOptionalAgentId, E as createDefaultDeps, En as requestHeartbeatNow, Er as resolveBootstrapWarningSignaturesSeen, Et as inferLegacyName, F as createReplyPrefixOptions, Fn as DEFAULT_INPUT_IMAGE_MIMES, Ft as stripLegacyDeliveryFields, Gr as resolveTtsProviderOrder, Gt as resolveSessionAuthProfileOverride, Hr as resolveTtsAutoMode, Ht as closeTrackedBrowserTabsForSessions, In as DEFAULT_INPUT_MAX_REDIRECTS, Ir as clearBootstrapSnapshot, J as dispatchInboundMessage, Jn as stopSubagentsForRequester, Jr as textToSpeech, Kr as setTtsEnabled, L as buildHistoryContextFromEntries, Ln as DEFAULT_INPUT_TIMEOUT_MS, Lr as clearBootstrapSnapshotOnSessionRollover, Mt as migrateLegacyCronPayload, Nt as buildDeliveryFromLegacyPayload, Or as getAcpSessionManager, Ot as normalizeOptionalSessionKey, Pn as DEFAULT_INPUT_IMAGE_MAX_BYTES, Pr as resolveUserTimezone, Pt as hasLegacyDeliveryHints, Qr as getActiveTaskCount, Qt as parseVerboseOverride, Rn as extractFileContentFromSource, Rr as getTtsProvider, Rt as buildSafeExternalPrompt, Sn as enqueueSystemEvent, Sr as onAgentEvent, St as writeRestartSentinel, T as createOutboundSendDeps, Tt as normalizeCronJobPatch, Un as normalizeSendPolicy, Ur as resolveTtsConfig, Ut as applyBrowserProxyPaths, Vn as resolveInputFileLimits, Vr as resolveTtsApiKey, Vt as isExternalHookSession, Wn as resolveSendPolicy, Wr as resolveTtsPrefsPath, Wt as persistBrowserProxyFiles, X as getTotalPendingReplies, Xr as OPENAI_TTS_VOICES, Xt as applyModelOverrideToSessionEntry, Y as createReplyDispatcher, Yr as OPENAI_TTS_MODELS, Zn as countActiveDescendantRuns, Zt as applyVerboseOverride, _ as requestBodyErrorToText, _t as formatDoctorNonInteractiveHint, a as getPluginToolMeta, ai as CommandLane, an as setGatewaySigusr1RestartPolicy, at as ensureOutboundSessionEntry, br as emitAgentEvent, bt as summarizeRestartSentinel, c as loadOpenClawPlugins, cn as unbindThreadBindingsBySessionKey, cr as runSubagentAnnounceFlow, dn as loadProviderUsageSummary, dr as clearSessionQueues, dt as resolveOutboundChannelPlugin, ei as getTotalQueueSize, en as deferGatewayRestartUntilIdle, er as initSubagentRegistry, et as getCliSessionId, fr as buildOutboundSessionContext, g as readJsonBodyWithLimit, gr as waitForEmbeddedPiRunEnd, gt as consumeRestartSentinel, h as handleSlackHttpRequest, hn as formatZonedTimestamp, hr as getActiveEmbeddedRunCount, ht as runWithModelFallback, ii as waitForActiveTasks, in as scheduleGatewaySigusr1Restart, j as resolveAgentAvatar, jn as ACP_SESSION_IDENTITY_RENDERER_VERSION, jt as normalizeRequiredName, kr as resolveAgentSessionDirs, kt as normalizeOptionalText, l as createPluginRuntime, ln as normalizeGroupActivation, lr as resolveAnnounceTargetFromKey, lt as resolveOutboundTarget, mr as abortEmbeddedPiRun, n as applyToolPolicyPipeline, ni as resetAllLanes, nn as isGatewaySigusr1RestartExternallyAllowed, nr as listDescendantRunsForRequester, nt as runCliAgent, o as resolvePluginTools, oi as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, on as setPreRestartDeferralCheck, ot as resolveOutboundSessionRoute, p as resolveAgentOutboundIdentity, pr as runEmbeddedPiAgent, pt as resetDirectoryCache, qn as isAbortRequestText, qr as setTtsProvider, r as buildDefaultToolPolicyPipelineSteps, ri as setCommandLaneConcurrency, rn as markGatewaySigusr1RestartHandled, rt as createOpenClawTools, sn as triggerOpenClawRestart, sr as resolveAgentTimeoutMs, ti as markGatewayDraining, tn as emitGatewayRestart, tt as setCliSessionId, ui as stripHeartbeatToken, ur as readLatestAssistantReply, ut as resolveSessionDeliveryTarget, vr as resolveCronStyleNow, vt as formatRestartSentinelMessage, w as resolveAgentOutboundTarget, wt as normalizeCronJobCreate, x as agentCommandFromIngress, xr as getAgentRunContext, yr as clearAgentRunContext, zn as extractImageContentFromSource, zr as isTtsEnabled, zt as detectSuspiciousPatterns } from "./compact-BBdhRYXH.js";
|
|
19
|
+
import { i as resolveWhatsAppAccount } from "./accounts-CGMgxUfN.js";
|
|
20
|
+
import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin, v as buildChannelAccountBindings } from "./plugins-Bv9ZfJVO.js";
|
|
21
21
|
import "./logging-BdnOSVPD.js";
|
|
22
|
-
import "./send-
|
|
23
|
-
import "./send-
|
|
24
|
-
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-
|
|
25
|
-
import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-
|
|
26
|
-
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled } from "./diagnostic-
|
|
27
|
-
import "./accounts-
|
|
28
|
-
import { c as detectMime } from "./image-ops-
|
|
29
|
-
import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-
|
|
30
|
-
import "./pi-model-discovery-
|
|
22
|
+
import "./send-DExcQWAf.js";
|
|
23
|
+
import "./send-Don_FZgW.js";
|
|
24
|
+
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-gotbjCau.js";
|
|
25
|
+
import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-BSlI6o2D.js";
|
|
26
|
+
import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled } from "./diagnostic-CFCd8W0m.js";
|
|
27
|
+
import "./accounts-B_Mf6Ybe.js";
|
|
28
|
+
import { c as detectMime } from "./image-ops-sooGTpsU.js";
|
|
29
|
+
import { b as resolveCronStorePath, x as saveCronStore, y as loadCronStore } from "./send-DgUi3bl8.js";
|
|
30
|
+
import "./pi-model-discovery-qGBDJI9t.js";
|
|
31
31
|
import { _ as normalizeGatewayClientMode, f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-6rkF5KkO.js";
|
|
32
|
-
import "./pi-embedded-helpers-
|
|
33
|
-
import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-
|
|
32
|
+
import "./pi-embedded-helpers-BUubsAcJ.js";
|
|
33
|
+
import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-Ey0spRTA.js";
|
|
34
34
|
import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-BCkWN5F6.js";
|
|
35
|
-
import "./chrome-
|
|
35
|
+
import "./chrome-CjADilJt.js";
|
|
36
36
|
import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-BRTAbJuN.js";
|
|
37
37
|
import { t as safeEqualSecret } from "./secret-equal-C6Ey0YcX.js";
|
|
38
|
-
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-
|
|
39
|
-
import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-
|
|
40
|
-
import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-
|
|
41
|
-
import { d as mergeGatewayTailscaleConfig, l as ensureGatewayStartupAuth, u as mergeGatewayAuthConfig } from "./server-context-
|
|
38
|
+
import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-CoMmrqa1.js";
|
|
39
|
+
import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-DrZBk8aE.js";
|
|
40
|
+
import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-DkciOmKe.js";
|
|
41
|
+
import { d as mergeGatewayTailscaleConfig, l as ensureGatewayStartupAuth, u as mergeGatewayAuthConfig } from "./server-context-DDDYJ1E5.js";
|
|
42
42
|
import { f as hasBinary } from "./frontmatter-ukO4UPgE.js";
|
|
43
43
|
import "./env-overrides-DliONB2B.js";
|
|
44
|
-
import { n as assertNoPathAliasEscape } from "./path-alias-guards-
|
|
45
|
-
import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-
|
|
46
|
-
import "./paths-
|
|
44
|
+
import { n as assertNoPathAliasEscape } from "./path-alias-guards-BndjEKU2.js";
|
|
45
|
+
import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-C3DzmT-s.js";
|
|
46
|
+
import "./paths-B-3rcnCY.js";
|
|
47
47
|
import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-BCIqtHJW.js";
|
|
48
48
|
import { o as isErrno, r as formatErrorMessage } from "./errors-DMBofubI.js";
|
|
49
|
-
import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-
|
|
50
|
-
import { n as SsrFBlockedError } from "./proxy-env-
|
|
51
|
-
import { n as cleanOldMedia } from "./store-
|
|
52
|
-
import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-
|
|
49
|
+
import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DZPN9PEp.js";
|
|
50
|
+
import { n as SsrFBlockedError } from "./proxy-env-C4Sv8mbU.js";
|
|
51
|
+
import { n as cleanOldMedia } from "./store-BxDf7hdp.js";
|
|
52
|
+
import { n as inspectPortUsage, o as formatPortDiagnostics, t as ensurePortAvailable } from "./ports-JXKx9QTu.js";
|
|
53
53
|
import { t as movePathToTrash } from "./trash-BvQCk4Sz.js";
|
|
54
|
-
import "./server-middleware-
|
|
55
|
-
import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-
|
|
56
|
-
import { $ as resolveExplicitAgentSessionKey, A as cleanupArchivedSessionTranscripts, B as jsonUtf8Bytes, C as mergeDeliveryContext, D as archiveFileOnDisk, F as stripEnvelopeFromMessage, H as evaluateSessionFreshness, I as stripEnvelopeFromMessages, J as mergeSessionEntry, M as readSessionPreviewItemsFromTranscript, O as archiveSessionTranscripts, P as resolveSessionTranscriptCandidates, Q as resolveAgentMainSessionKey, R as stripInlineDirectiveTagsForDisplay, T as normalizeSessionDeliveryFields, W as resolveSessionResetPolicy, X as setSessionRuntimeModel, Z as canonicalizeMainSessionAlias, et as resolveMainSessionKey, j as readSessionMessages, k as capArrayByJsonBytes, n as parseSessionThreadInfo, o as archiveRemovedSessionTranscripts, p as updateSessionStore, rt as snapshotSessionOrigin, s as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKeyFromConfig, ut as cleanStaleLockFiles, x as deliveryContextFromSession, z as stripInlineDirectiveTagsFromMessageForDisplay } from "./sessions-
|
|
57
|
-
import "./accounts-
|
|
54
|
+
import "./server-middleware-CUHXrp2x.js";
|
|
55
|
+
import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-D-hzuOc8.js";
|
|
56
|
+
import { $ as resolveExplicitAgentSessionKey, A as cleanupArchivedSessionTranscripts, B as jsonUtf8Bytes, C as mergeDeliveryContext, D as archiveFileOnDisk, F as stripEnvelopeFromMessage, H as evaluateSessionFreshness, I as stripEnvelopeFromMessages, J as mergeSessionEntry, M as readSessionPreviewItemsFromTranscript, O as archiveSessionTranscripts, P as resolveSessionTranscriptCandidates, Q as resolveAgentMainSessionKey, R as stripInlineDirectiveTagsForDisplay, T as normalizeSessionDeliveryFields, W as resolveSessionResetPolicy, X as setSessionRuntimeModel, Z as canonicalizeMainSessionAlias, et as resolveMainSessionKey, j as readSessionMessages, k as capArrayByJsonBytes, n as parseSessionThreadInfo, o as archiveRemovedSessionTranscripts, p as updateSessionStore, rt as snapshotSessionOrigin, s as loadSessionStore, t as extractDeliveryInfo, tt as resolveMainSessionKeyFromConfig, ut as cleanStaleLockFiles, x as deliveryContextFromSession, z as stripInlineDirectiveTagsFromMessageForDisplay } from "./sessions-BJu8U8kz.js";
|
|
57
|
+
import "./accounts-NKTm9o4M.js";
|
|
58
58
|
import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-CA9zLiBI.js";
|
|
59
59
|
import { i as normalizeInputProvenance } from "./input-provenance-CFnw8yhY.js";
|
|
60
60
|
import "./chat-envelope-Ccu0M1Es.js";
|
|
61
|
-
import { o as estimateBase64DecodedBytes } from "./tool-images-
|
|
61
|
+
import { o as estimateBase64DecodedBytes } from "./tool-images-ByGbgP3W.js";
|
|
62
62
|
import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-Bkhiq_gH.js";
|
|
63
|
-
import "./models-config-
|
|
64
|
-
import "./exec-approvals-allowlist-
|
|
65
|
-
import "./exec-safe-bin-runtime-policy-
|
|
66
|
-
import { n as loadModelCatalog } from "./model-catalog-
|
|
67
|
-
import "./fetch-
|
|
68
|
-
import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-
|
|
69
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
70
|
-
import { b as extractTextFromChatContent } from "./image-
|
|
63
|
+
import "./models-config-ioRkhhh4.js";
|
|
64
|
+
import "./exec-approvals-allowlist-BTePmA7R.js";
|
|
65
|
+
import "./exec-safe-bin-runtime-policy-B8a4-DkO.js";
|
|
66
|
+
import { n as loadModelCatalog } from "./model-catalog-Crm5h6fz.js";
|
|
67
|
+
import "./fetch-CLpizcRC.js";
|
|
68
|
+
import { g as registerUnhandledRejectionHandler } from "./audio-transcription-runner-Cl9Pu_e3.js";
|
|
69
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-CTJIkmOy.js";
|
|
70
|
+
import { b as extractTextFromChatContent } from "./image-C-OScNLH.js";
|
|
71
71
|
import "./tool-display-C82F9dil.js";
|
|
72
|
-
import "./api-key-rotation-
|
|
72
|
+
import "./api-key-rotation-DsHx0Ttu.js";
|
|
73
73
|
import "./proxy-fetch-D5sLhh0l.js";
|
|
74
|
-
import "./ir-
|
|
74
|
+
import "./ir-MJchm-P0.js";
|
|
75
75
|
import "./render-CumKrTIx.js";
|
|
76
|
-
import { a as ToolInputError } from "./target-errors-
|
|
77
|
-
import { r as isRestartEnabled } from "./commands-
|
|
78
|
-
import "./commands-registry-
|
|
76
|
+
import { a as ToolInputError } from "./target-errors-N10oAD8K.js";
|
|
77
|
+
import { r as isRestartEnabled } from "./commands-C-YxTe08.js";
|
|
78
|
+
import "./commands-registry-WI8KXlO7.js";
|
|
79
79
|
import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-cBObXwSm.js";
|
|
80
|
-
import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-
|
|
81
|
-
import "./sqlite-
|
|
82
|
-
import { $ as validateNodePairApproveParams, $t as summarizeDeviceTokens, A as validateCronRunParams, At as validateWizardCancelParams, B as validateExecApprovalRequestParams, Bt as buildDeviceAuthPayload, C as validateConfigSchemaLookupResult, Ct as validateTalkConfigParams, D as validateCronAddParams, Dt as validateWakeParams, E as validateConnectParams, Et as validateUpdateRunParams, F as validateDevicePairListParams, Ft as ErrorCodes, G as validateExecApprovalsSetParams, Gt as ensureDeviceToken, H as validateExecApprovalsGetParams, Ht as normalizeDeviceMetadataForAuth, I as validateDevicePairRejectParams, It as errorShape, J as validateNodeDescribeParams, Jt as rejectDevicePairing, K as validateLogsTailParams, Kt as getPairedDevice, L as validateDevicePairRemoveParams, Lt as CHAT_SEND_SESSION_KEY_MAX_LENGTH, M as validateCronStatusParams, Mt as validateWizardStartParams, N as validateCronUpdateParams, Nt as validateWizardStatusParams, O as validateCronListParams, Ot as validateWebLoginStartParams, P as validateDevicePairApproveParams, Pt as PROTOCOL_VERSION, Q as validateNodeListParams, Qt as rotateDeviceToken, R as validateDeviceTokenRevokeParams, S as validateConfigSchemaLookupParams, St as validateSkillsUpdateParams, T as validateConfigSetParams, Tt as validateToolsCatalogParams, U as validateExecApprovalsNodeGetParams, V as validateExecApprovalResolveParams, Vt as buildDeviceAuthPayloadV3, W as validateExecApprovalsNodeSetParams, Wt as approveDevicePairing, X as validateNodeInvokeParams, Xt as requestDevicePairing, Y as validateNodeEventParams, Yt as removePairedDevice, Z as validateNodeInvokeResultParams, Zt as revokeDeviceToken, _ as validateChatInjectParams, _t as validateSessionsResolveParams, a as validateAgentWaitParams, an as deriveDeviceIdFromPublicKey, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, cn as verifyDeviceSignature, ct as validateSecretsResolveParams, d as validateAgentsListParams, dt as validateSessionsCompactParams, en as updatePairedDeviceMetadata, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsDeleteParams, g as validateChatHistoryParams, gt as validateSessionsResetParams, h as validateChatAbortParams, ht as validateSessionsPreviewParams, i as validateAgentParams, it as validateNodeRenameParams, j as validateCronRunsParams, jt as validateWizardNextParams, k as validateCronRemoveParams, kt as validateWebLoginWaitParams, l as validateAgentsFilesListParams, lt as validateSecretsResolveResult, m as validateChannelsStatusParams, mt as validateSessionsPatchParams, n as formatValidationErrors, nn as roleScopesAllow, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsListParams, q as validateModelsListParams, qt as listDevicePairing, r as validateAgentIdentityParams, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, sn as normalizeDevicePublicKeyBase64Url, st as validateRequestFrame, tn as verifyDeviceToken, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSendParams, v as validateChatSendParams, vt as validateSessionsUsageParams, w as validateConfigSchemaParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams, z as validateDeviceTokenRotateParams, zt as parseSessionLabel } from "./client-
|
|
83
|
-
import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-
|
|
80
|
+
import { a as loadCombinedSessionStoreForGateway, c as resolveGatewaySessionStoreTarget, f as computeBackoff, i as listSessionsFromStore, l as resolveSessionModelRef, o as loadSessionEntry, p as sleepWithAbort, r as listAgentsForGateway, s as pruneLegacyStoreKeys, t as canonicalizeSpawnedByForAgent, u as lookupContextTokens } from "./session-utils-DqcL4tRB.js";
|
|
81
|
+
import "./sqlite-B6J7wlgb.js";
|
|
82
|
+
import { $ as validateNodePairApproveParams, $t as summarizeDeviceTokens, A as validateCronRunParams, At as validateWizardCancelParams, B as validateExecApprovalRequestParams, Bt as buildDeviceAuthPayload, C as validateConfigSchemaLookupResult, Ct as validateTalkConfigParams, D as validateCronAddParams, Dt as validateWakeParams, E as validateConnectParams, Et as validateUpdateRunParams, F as validateDevicePairListParams, Ft as ErrorCodes, G as validateExecApprovalsSetParams, Gt as ensureDeviceToken, H as validateExecApprovalsGetParams, Ht as normalizeDeviceMetadataForAuth, I as validateDevicePairRejectParams, It as errorShape, J as validateNodeDescribeParams, Jt as rejectDevicePairing, K as validateLogsTailParams, Kt as getPairedDevice, L as validateDevicePairRemoveParams, Lt as CHAT_SEND_SESSION_KEY_MAX_LENGTH, M as validateCronStatusParams, Mt as validateWizardStartParams, N as validateCronUpdateParams, Nt as validateWizardStatusParams, O as validateCronListParams, Ot as validateWebLoginStartParams, P as validateDevicePairApproveParams, Pt as PROTOCOL_VERSION, Q as validateNodeListParams, Qt as rotateDeviceToken, R as validateDeviceTokenRevokeParams, S as validateConfigSchemaLookupParams, St as validateSkillsUpdateParams, T as validateConfigSetParams, Tt as validateToolsCatalogParams, U as validateExecApprovalsNodeGetParams, V as validateExecApprovalResolveParams, Vt as buildDeviceAuthPayloadV3, W as validateExecApprovalsNodeSetParams, Wt as approveDevicePairing, X as validateNodeInvokeParams, Xt as requestDevicePairing, Y as validateNodeEventParams, Yt as removePairedDevice, Z as validateNodeInvokeResultParams, Zt as revokeDeviceToken, _ as validateChatInjectParams, _t as validateSessionsResolveParams, a as validateAgentWaitParams, an as deriveDeviceIdFromPublicKey, at as validatePollParams, b as validateConfigGetParams, bt as validateSkillsInstallParams, c as validateAgentsFilesGetParams, cn as verifyDeviceSignature, ct as validateSecretsResolveParams, d as validateAgentsListParams, dt as validateSessionsCompactParams, en as updatePairedDeviceMetadata, et as validateNodePairListParams, f as validateAgentsUpdateParams, ft as validateSessionsDeleteParams, g as validateChatHistoryParams, gt as validateSessionsResetParams, h as validateChatAbortParams, ht as validateSessionsPreviewParams, i as validateAgentParams, it as validateNodeRenameParams, j as validateCronRunsParams, jt as validateWizardNextParams, k as validateCronRemoveParams, kt as validateWebLoginWaitParams, l as validateAgentsFilesListParams, lt as validateSecretsResolveResult, m as validateChannelsStatusParams, mt as validateSessionsPatchParams, n as formatValidationErrors, nn as roleScopesAllow, nt as validateNodePairRequestParams, o as validateAgentsCreateParams, ot as validatePushTestParams, p as validateChannelsLogoutParams, pt as validateSessionsListParams, q as validateModelsListParams, qt as listDevicePairing, r as validateAgentIdentityParams, rt as validateNodePairVerifyParams, s as validateAgentsDeleteParams, sn as normalizeDevicePublicKeyBase64Url, st as validateRequestFrame, tn as verifyDeviceToken, tt as validateNodePairRejectParams, u as validateAgentsFilesSetParams, ut as validateSendParams, v as validateChatSendParams, vt as validateSessionsUsageParams, w as validateConfigSchemaParams, wt as validateTalkModeParams, x as validateConfigPatchParams, xt as validateSkillsStatusParams, y as validateConfigApplyParams, yt as validateSkillsBinsParams, z as validateDeviceTokenRotateParams, zt as parseSessionLabel } from "./client-DaFloLVI.js";
|
|
83
|
+
import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-B56A9tyz.js";
|
|
84
84
|
import "./pairing-token-fl66UgDc.js";
|
|
85
85
|
import "./fetch-CT-djTs1.js";
|
|
86
|
-
import { a as readChannelAllowFromStoreSync } from "./pairing-store-
|
|
86
|
+
import { a as readChannelAllowFromStoreSync } from "./pairing-store-BsYNiJyH.js";
|
|
87
87
|
import { a as mergeExecApprovalsSocketDefaults, d as readExecApprovalsSnapshot, g as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-C9sQPnw_.js";
|
|
88
|
-
import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-
|
|
89
|
-
import { n as resolveSystemRunCommand } from "./system-run-command-
|
|
88
|
+
import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-B7eOQ14A.js";
|
|
89
|
+
import { n as resolveSystemRunCommand } from "./system-run-command-BlvZfJeb.js";
|
|
90
90
|
import { n as formatTokenCount, r as formatUsd } from "./usage-format-EdDmn0JB.js";
|
|
91
|
-
import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-
|
|
92
|
-
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-
|
|
93
|
-
import { t as listAgentWorkspaceDirs } from "./workspace-dirs
|
|
94
|
-
import { t as getChannelActivity } from "./channel-activity-
|
|
91
|
+
import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-C7_32HvU.js";
|
|
92
|
+
import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-CSPrerKx.js";
|
|
93
|
+
import { t as listAgentWorkspaceDirs } from "./workspace-dirs--0e3kMf7.js";
|
|
94
|
+
import { t as getChannelActivity } from "./channel-activity-ClJu0F_1.js";
|
|
95
95
|
import { n as normalizePollInput } from "./polls-CPccP3Bz.js";
|
|
96
|
-
import "./tables-
|
|
97
|
-
import "./server-lifecycle-
|
|
96
|
+
import "./tables-DVqUjPRa.js";
|
|
97
|
+
import "./server-lifecycle-5QwrD-pI.js";
|
|
98
98
|
import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-CiDn7D2Z.js";
|
|
99
|
-
import { n as resolveMessageChannelSelection } from "./channel-selection-
|
|
100
|
-
import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-
|
|
101
|
-
import "./send-
|
|
102
|
-
import "./outbound-attachment-
|
|
99
|
+
import { n as resolveMessageChannelSelection } from "./channel-selection-DHlVN8Pr.js";
|
|
100
|
+
import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-BAHkcVP4.js";
|
|
101
|
+
import "./send-Cms8uhN1.js";
|
|
102
|
+
import "./outbound-attachment-Bui79r_g.js";
|
|
103
103
|
import "./delivery-queue-B_HOp2X3.js";
|
|
104
|
-
import "./send-
|
|
104
|
+
import "./send-Dlp3HAiX.js";
|
|
105
105
|
import "./proxy-CUsDSClP.js";
|
|
106
106
|
import "./timeouts-DEnpCqGd.js";
|
|
107
|
-
import { n as GATEWAY_AUTH_SURFACE_PATHS, p as isKnownSecretTargetId, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-
|
|
108
|
-
import "./command-secret-targets-
|
|
109
|
-
import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-
|
|
107
|
+
import { n as GATEWAY_AUTH_SURFACE_PATHS, p as isKnownSecretTargetId, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-DM4YW0m9.js";
|
|
108
|
+
import "./command-secret-targets-CsIlET0p.js";
|
|
109
|
+
import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-BJ2MHcp9.js";
|
|
110
110
|
import "./prompt-style-ezqCM_Sr.js";
|
|
111
|
-
import "./pairing-labels-
|
|
112
|
-
import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-
|
|
113
|
-
import { i as resolveMemorySearchConfig } from "./manager-
|
|
111
|
+
import "./pairing-labels-DvrRVH1N.js";
|
|
112
|
+
import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-DjSgQlDO.js";
|
|
113
|
+
import { i as resolveMemorySearchConfig } from "./manager-Mu3eMmUj.js";
|
|
114
114
|
import { t as formatDocsLink } from "./links-BUkYLQQF.js";
|
|
115
115
|
import { n as runCommandWithRuntime } from "./cli-utils-CI_KkT8q.js";
|
|
116
116
|
import { t as formatHelpExamples } from "./help-format-B08o9IQj.js";
|
|
117
117
|
import { n as withProgress } from "./progress-BNL5DRrQ.js";
|
|
118
|
-
import { t as buildWorkspaceSkillStatus } from "./skills-status-
|
|
118
|
+
import { t as buildWorkspaceSkillStatus } from "./skills-status-n9vgDHer.js";
|
|
119
119
|
import { i as onHeartbeatEvent, r as getLastHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-B3tx2v3N.js";
|
|
120
120
|
import { t as ensureOpenClawCliOnPath } from "./path-env-CYGiAYuP.js";
|
|
121
121
|
import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-DYhQ651h.js";
|
|
122
122
|
import { n as inheritOptionFromParent } from "./command-options-DEPpN8NK.js";
|
|
123
123
|
import { t as WizardCancelledError } from "./prompts-ULYkmWPj.js";
|
|
124
124
|
import { t as resolveChannelDefaultAccountId } from "./helpers-BAv58r5B.js";
|
|
125
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
126
|
-
import { t as isWithinDir } from "./path-safety-
|
|
127
|
-
import "./install-safe-path-
|
|
128
|
-
import "./skill-scanner-
|
|
129
|
-
import { n as formatConfigIssueLines } from "./issue-format-
|
|
130
|
-
import { t as buildChannelAccountSnapshot } from "./status-
|
|
131
|
-
import "./channels-status-issues-
|
|
132
|
-
import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-
|
|
133
|
-
import "./daemon-install-helpers-
|
|
125
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-iby7tWX6.js";
|
|
126
|
+
import { t as isWithinDir } from "./path-safety-FANXxHHr.js";
|
|
127
|
+
import "./install-safe-path-NpGSerww.js";
|
|
128
|
+
import "./skill-scanner-CTA9_1Ad.js";
|
|
129
|
+
import { n as formatConfigIssueLines } from "./issue-format-BhYUpe8G.js";
|
|
130
|
+
import { t as buildChannelAccountSnapshot } from "./status-CzDUyBhZ.js";
|
|
131
|
+
import "./channels-status-issues-CmDh358n.js";
|
|
132
|
+
import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-sxLRRmfh.js";
|
|
133
|
+
import "./daemon-install-helpers-BWyx8Sx7.js";
|
|
134
134
|
import "./runtime-guard-kzIyHhvr.js";
|
|
135
|
-
import "./gateway-install-token-
|
|
136
|
-
import "./systemd-
|
|
137
|
-
import "./service-
|
|
138
|
-
import "./lifecycle-core-
|
|
139
|
-
import "./systemd-hints-
|
|
135
|
+
import "./gateway-install-token-DUJ-X-CS.js";
|
|
136
|
+
import "./systemd-QfmEIyC_.js";
|
|
137
|
+
import "./service-VB8hrx3m.js";
|
|
138
|
+
import "./lifecycle-core-BDRJ-gZl.js";
|
|
139
|
+
import "./systemd-hints-C8DMAujY.js";
|
|
140
140
|
import { t as parsePort$1 } from "./parse-port-DnJYkByg.js";
|
|
141
|
-
import { n as addGatewayServiceCommands } from "./daemon-cli-
|
|
142
|
-
import { t as probeGateway } from "./probe-
|
|
143
|
-
import "./diagnostics-
|
|
141
|
+
import { n as addGatewayServiceCommands } from "./daemon-cli-Di0mFZWs.js";
|
|
142
|
+
import { t as probeGateway } from "./probe-BSiLGREe.js";
|
|
143
|
+
import "./diagnostics-CJLP-HQK.js";
|
|
144
144
|
import "./table-n1r43DsC.js";
|
|
145
145
|
import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-e4-5Q3_T.js";
|
|
146
|
-
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-
|
|
147
|
-
import { t as discoverGatewayBeacons } from "./bonjour-discovery-
|
|
148
|
-
import { t as resolveConfiguredSecretInputString } from "./resolve-configured-secret-input-string-
|
|
149
|
-
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-
|
|
150
|
-
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-
|
|
151
|
-
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-
|
|
152
|
-
import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-
|
|
153
|
-
import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-
|
|
154
|
-
import "./onboarding.secret-input-
|
|
155
|
-
import { t as runOnboardingWizard } from "./onboarding-
|
|
156
|
-
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-
|
|
146
|
+
import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-Bto9UlKB.js";
|
|
147
|
+
import { t as discoverGatewayBeacons } from "./bonjour-discovery-DBClG9uw.js";
|
|
148
|
+
import { t as resolveConfiguredSecretInputString } from "./resolve-configured-secret-input-string-DvKJxAtp.js";
|
|
149
|
+
import { i as pickGatewaySelfPresence, r as getStatusSummary } from "./status-BvATDhyx.js";
|
|
150
|
+
import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-CqfjbU3N.js";
|
|
151
|
+
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B1qVA62q.js";
|
|
152
|
+
import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-CkpkengK.js";
|
|
153
|
+
import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-BC8kvHYq.js";
|
|
154
|
+
import "./onboarding.secret-input-yXmtdEMi.js";
|
|
155
|
+
import { t as runOnboardingWizard } from "./onboarding-BV3dioI3.js";
|
|
156
|
+
import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-JhqWOAwU.js";
|
|
157
157
|
import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-C9AnxMKs.js";
|
|
158
|
-
import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-
|
|
159
|
-
import { n as collectEnabledInsecureOrDangerousFlags } from "./audit-
|
|
160
|
-
import "./node-service-
|
|
161
|
-
import "./status.update-
|
|
162
|
-
import { t as installSkill } from "./skills-install-
|
|
163
|
-
import { t as runGatewayUpdate } from "./update-runner-
|
|
164
|
-
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-
|
|
165
|
-
import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-
|
|
158
|
+
import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-DdF7xJQa.js";
|
|
159
|
+
import { n as collectEnabledInsecureOrDangerousFlags } from "./audit-DtKtvGnO.js";
|
|
160
|
+
import "./node-service-DCfQospz.js";
|
|
161
|
+
import "./status.update-DndHNWm3.js";
|
|
162
|
+
import { t as installSkill } from "./skills-install-xhIs9n_2.js";
|
|
163
|
+
import { t as runGatewayUpdate } from "./update-runner-CCB_wRmi.js";
|
|
164
|
+
import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-ST8Op53v.js";
|
|
165
|
+
import { n as forceFreePortAndWait, r as waitForPortBindable } from "./ports-CFvWMNlt.js";
|
|
166
166
|
import { spawn, spawnSync } from "node:child_process";
|
|
167
167
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
168
168
|
import os from "node:os";
|
|
@@ -171,7 +171,7 @@ import * as fsSync from "node:fs";
|
|
|
171
171
|
import fs from "node:fs";
|
|
172
172
|
import chalk from "chalk";
|
|
173
173
|
import { isDeepStrictEqual } from "node:util";
|
|
174
|
-
import
|
|
174
|
+
import fsPromises from "node:fs/promises";
|
|
175
175
|
import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
|
|
176
176
|
import { z } from "zod";
|
|
177
177
|
import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
|
|
@@ -1313,7 +1313,7 @@ function resolveCheckIntervalMs(cfg) {
|
|
|
1313
1313
|
}
|
|
1314
1314
|
async function readState(statePath) {
|
|
1315
1315
|
try {
|
|
1316
|
-
const raw = await
|
|
1316
|
+
const raw = await fsPromises.readFile(statePath, "utf-8");
|
|
1317
1317
|
const parsed = JSON.parse(raw);
|
|
1318
1318
|
return parsed && typeof parsed === "object" ? parsed : {};
|
|
1319
1319
|
} catch {
|
|
@@ -1394,7 +1394,7 @@ async function runAutoUpdateCommand(params) {
|
|
|
1394
1394
|
path.join(params.root, "dist", "index.mjs")
|
|
1395
1395
|
];
|
|
1396
1396
|
for (const candidate of candidates) try {
|
|
1397
|
-
await
|
|
1397
|
+
await fsPromises.access(candidate);
|
|
1398
1398
|
argv.push(execPath, candidate, ...baseArgs);
|
|
1399
1399
|
break;
|
|
1400
1400
|
} catch {}
|
|
@@ -4620,7 +4620,7 @@ function resolveCronRunLogPath(params) {
|
|
|
4620
4620
|
}
|
|
4621
4621
|
const writesByPath = /* @__PURE__ */ new Map();
|
|
4622
4622
|
async function setSecureFileMode(filePath) {
|
|
4623
|
-
await
|
|
4623
|
+
await fsPromises.chmod(filePath, 384).catch(() => void 0);
|
|
4624
4624
|
}
|
|
4625
4625
|
const DEFAULT_CRON_RUN_LOG_MAX_BYTES = 2e6;
|
|
4626
4626
|
const DEFAULT_CRON_RUN_LOG_KEEP_LINES = 2e3;
|
|
@@ -4644,30 +4644,30 @@ async function drainPendingWrite(filePath) {
|
|
|
4644
4644
|
if (pending) await pending.catch(() => void 0);
|
|
4645
4645
|
}
|
|
4646
4646
|
async function pruneIfNeeded(filePath, opts) {
|
|
4647
|
-
const stat = await
|
|
4647
|
+
const stat = await fsPromises.stat(filePath).catch(() => null);
|
|
4648
4648
|
if (!stat || stat.size <= opts.maxBytes) return;
|
|
4649
|
-
const lines = (await
|
|
4649
|
+
const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
|
|
4650
4650
|
const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
|
|
4651
4651
|
const { randomBytes } = await import("node:crypto");
|
|
4652
4652
|
const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
|
|
4653
|
-
await
|
|
4653
|
+
await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, {
|
|
4654
4654
|
encoding: "utf-8",
|
|
4655
4655
|
mode: 384
|
|
4656
4656
|
});
|
|
4657
4657
|
await setSecureFileMode(tmp);
|
|
4658
|
-
await
|
|
4658
|
+
await fsPromises.rename(tmp, filePath);
|
|
4659
4659
|
await setSecureFileMode(filePath);
|
|
4660
4660
|
}
|
|
4661
4661
|
async function appendCronRunLog(filePath, entry, opts) {
|
|
4662
4662
|
const resolved = path.resolve(filePath);
|
|
4663
4663
|
const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
|
|
4664
4664
|
const runDir = path.dirname(resolved);
|
|
4665
|
-
await
|
|
4665
|
+
await fsPromises.mkdir(runDir, {
|
|
4666
4666
|
recursive: true,
|
|
4667
4667
|
mode: 448
|
|
4668
4668
|
});
|
|
4669
|
-
await
|
|
4670
|
-
await
|
|
4669
|
+
await fsPromises.chmod(runDir, 448).catch(() => void 0);
|
|
4670
|
+
await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, {
|
|
4671
4671
|
encoding: "utf-8",
|
|
4672
4672
|
mode: 384
|
|
4673
4673
|
});
|
|
@@ -4765,7 +4765,7 @@ function filterRunLogEntries(entries, opts) {
|
|
|
4765
4765
|
async function readCronRunLogEntriesPage(filePath, opts) {
|
|
4766
4766
|
await drainPendingWrite(filePath);
|
|
4767
4767
|
const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
|
|
4768
|
-
const raw = await
|
|
4768
|
+
const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
|
|
4769
4769
|
const statuses = normalizeRunStatuses(opts);
|
|
4770
4770
|
const deliveryStatuses = normalizeDeliveryStatuses(opts);
|
|
4771
4771
|
const query = opts?.query?.trim().toLowerCase() ?? "";
|
|
@@ -4801,7 +4801,7 @@ async function readCronRunLogEntriesPageAll(opts) {
|
|
|
4801
4801
|
const query = opts.query?.trim().toLowerCase() ?? "";
|
|
4802
4802
|
const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
|
|
4803
4803
|
const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
|
|
4804
|
-
const jsonlFiles = (await
|
|
4804
|
+
const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
|
|
4805
4805
|
if (jsonlFiles.length === 0) return {
|
|
4806
4806
|
entries: [],
|
|
4807
4807
|
total: 0,
|
|
@@ -4812,7 +4812,7 @@ async function readCronRunLogEntriesPageAll(opts) {
|
|
|
4812
4812
|
};
|
|
4813
4813
|
await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
|
|
4814
4814
|
const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
|
|
4815
|
-
return parseAllRunLogEntries(await
|
|
4815
|
+
return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
|
|
4816
4816
|
}))).flat(), {
|
|
4817
4817
|
statuses,
|
|
4818
4818
|
deliveryStatuses,
|
|
@@ -10390,7 +10390,7 @@ function resolveWorkspaceFilePathResultOrThrow(params) {
|
|
|
10390
10390
|
}
|
|
10391
10391
|
async function resolveWorkspaceRealPath(workspaceDir) {
|
|
10392
10392
|
try {
|
|
10393
|
-
return await
|
|
10393
|
+
return await fsPromises.realpath(workspaceDir);
|
|
10394
10394
|
} catch {
|
|
10395
10395
|
return path.resolve(workspaceDir);
|
|
10396
10396
|
}
|
|
@@ -10419,7 +10419,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
10419
10419
|
};
|
|
10420
10420
|
let candidateLstat;
|
|
10421
10421
|
try {
|
|
10422
|
-
candidateLstat = await
|
|
10422
|
+
candidateLstat = await fsPromises.lstat(candidatePath);
|
|
10423
10423
|
} catch (err) {
|
|
10424
10424
|
return resolveWorkspaceFilePathResultOrThrow({
|
|
10425
10425
|
error: err,
|
|
@@ -10430,7 +10430,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
10430
10430
|
if (candidateLstat.isSymbolicLink()) {
|
|
10431
10431
|
let targetReal;
|
|
10432
10432
|
try {
|
|
10433
|
-
targetReal = await
|
|
10433
|
+
targetReal = await fsPromises.realpath(candidatePath);
|
|
10434
10434
|
} catch (err) {
|
|
10435
10435
|
return resolveWorkspaceFilePathResultOrThrow({
|
|
10436
10436
|
error: err,
|
|
@@ -10440,7 +10440,7 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
10440
10440
|
}
|
|
10441
10441
|
let targetStat;
|
|
10442
10442
|
try {
|
|
10443
|
-
targetStat = await
|
|
10443
|
+
targetStat = await fsPromises.stat(targetReal);
|
|
10444
10444
|
} catch (err) {
|
|
10445
10445
|
return resolveWorkspaceFilePathResultOrThrow({
|
|
10446
10446
|
error: err,
|
|
@@ -10478,13 +10478,13 @@ async function resolveAgentWorkspaceFilePath(params) {
|
|
|
10478
10478
|
return {
|
|
10479
10479
|
kind: "ready",
|
|
10480
10480
|
requestPath,
|
|
10481
|
-
ioPath: await
|
|
10481
|
+
ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
|
|
10482
10482
|
workspaceReal
|
|
10483
10483
|
};
|
|
10484
10484
|
}
|
|
10485
10485
|
async function statFileSafely(filePath) {
|
|
10486
10486
|
try {
|
|
10487
|
-
const [stat, lstat] = await Promise.all([
|
|
10487
|
+
const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
|
|
10488
10488
|
if (lstat.isSymbolicLink() || !stat.isFile()) return null;
|
|
10489
10489
|
if (stat.nlink > 1) return null;
|
|
10490
10490
|
if (!sameFileIdentity(stat, lstat)) return null;
|
|
@@ -10578,7 +10578,7 @@ function respondAgentNotFound(respond, agentId) {
|
|
|
10578
10578
|
async function moveToTrashBestEffort(pathname) {
|
|
10579
10579
|
if (!pathname) return;
|
|
10580
10580
|
try {
|
|
10581
|
-
await
|
|
10581
|
+
await fsPromises.access(pathname);
|
|
10582
10582
|
} catch {
|
|
10583
10583
|
return;
|
|
10584
10584
|
}
|
|
@@ -10654,7 +10654,7 @@ const agentsHandlers = {
|
|
|
10654
10654
|
dir: workspaceDir,
|
|
10655
10655
|
ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
|
|
10656
10656
|
});
|
|
10657
|
-
await
|
|
10657
|
+
await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
|
|
10658
10658
|
await writeConfigFile(nextConfig);
|
|
10659
10659
|
const safeName = sanitizeIdentityLine(rawName);
|
|
10660
10660
|
const emoji = resolveOptionalStringParam(params.emoji);
|
|
@@ -10667,7 +10667,7 @@ const agentsHandlers = {
|
|
|
10667
10667
|
...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
|
|
10668
10668
|
""
|
|
10669
10669
|
];
|
|
10670
|
-
await
|
|
10670
|
+
await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
|
|
10671
10671
|
respond(true, {
|
|
10672
10672
|
ok: true,
|
|
10673
10673
|
agentId,
|
|
@@ -10702,9 +10702,9 @@ const agentsHandlers = {
|
|
|
10702
10702
|
});
|
|
10703
10703
|
if (avatar) {
|
|
10704
10704
|
const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
|
|
10705
|
-
await
|
|
10705
|
+
await fsPromises.mkdir(workspace, { recursive: true });
|
|
10706
10706
|
const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
|
|
10707
|
-
await
|
|
10707
|
+
await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
|
|
10708
10708
|
}
|
|
10709
10709
|
respond(true, {
|
|
10710
10710
|
ok: true,
|
|
@@ -10828,7 +10828,7 @@ const agentsHandlers = {
|
|
|
10828
10828
|
const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
|
|
10829
10829
|
if (!resolved) return;
|
|
10830
10830
|
const { agentId, workspaceDir, name } = resolved;
|
|
10831
|
-
await
|
|
10831
|
+
await fsPromises.mkdir(workspaceDir, { recursive: true });
|
|
10832
10832
|
const filePath = path.join(workspaceDir, name);
|
|
10833
10833
|
const resolvedPath = await resolveWorkspaceFilePathOrRespond({
|
|
10834
10834
|
respond,
|
|
@@ -13392,14 +13392,14 @@ function isRollingLogFile(file) {
|
|
|
13392
13392
|
return ROLLING_LOG_RE.test(path.basename(file));
|
|
13393
13393
|
}
|
|
13394
13394
|
async function resolveLogFile(file) {
|
|
13395
|
-
if (await
|
|
13395
|
+
if (await fsPromises.stat(file).catch(() => null)) return file;
|
|
13396
13396
|
if (!isRollingLogFile(file)) return file;
|
|
13397
13397
|
const dir = path.dirname(file);
|
|
13398
|
-
const entries = await
|
|
13398
|
+
const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
|
|
13399
13399
|
if (!entries) return file;
|
|
13400
13400
|
return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
|
|
13401
13401
|
const fullPath = path.join(dir, entry.name);
|
|
13402
|
-
const fileStat = await
|
|
13402
|
+
const fileStat = await fsPromises.stat(fullPath).catch(() => null);
|
|
13403
13403
|
return fileStat ? {
|
|
13404
13404
|
path: fullPath,
|
|
13405
13405
|
mtimeMs: fileStat.mtimeMs
|
|
@@ -13407,7 +13407,7 @@ async function resolveLogFile(file) {
|
|
|
13407
13407
|
}))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
|
|
13408
13408
|
}
|
|
13409
13409
|
async function readLogSlice(params) {
|
|
13410
|
-
const stat = await
|
|
13410
|
+
const stat = await fsPromises.stat(params.file).catch(() => null);
|
|
13411
13411
|
if (!stat) return {
|
|
13412
13412
|
cursor: 0,
|
|
13413
13413
|
size: 0,
|
|
@@ -13445,7 +13445,7 @@ async function readLogSlice(params) {
|
|
|
13445
13445
|
truncated,
|
|
13446
13446
|
reset
|
|
13447
13447
|
};
|
|
13448
|
-
const handle = await
|
|
13448
|
+
const handle = await fsPromises.open(params.file, "r");
|
|
13449
13449
|
try {
|
|
13450
13450
|
let prefix = "";
|
|
13451
13451
|
if (start > 0) {
|
|
@@ -14428,7 +14428,7 @@ const nodeHandlers = {
|
|
|
14428
14428
|
const p = params;
|
|
14429
14429
|
const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
|
|
14430
14430
|
await respondUnavailableOnThrow(respond, async () => {
|
|
14431
|
-
const { handleNodeEvent } = await import("./server-node-events-
|
|
14431
|
+
const { handleNodeEvent } = await import("./server-node-events-D8EKx-Ef.js");
|
|
14432
14432
|
const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
|
|
14433
14433
|
await handleNodeEvent({
|
|
14434
14434
|
deps: context.deps,
|
|
@@ -17567,7 +17567,7 @@ function normalizeAgentPayload(payload) {
|
|
|
17567
17567
|
async function startBrowserControlServerIfEnabled() {
|
|
17568
17568
|
if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
|
|
17569
17569
|
const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
|
|
17570
|
-
const mod = override ? await import(override) : await import("./server-
|
|
17570
|
+
const mod = override ? await import(override) : await import("./server-DUXr6A6B.js");
|
|
17571
17571
|
const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
|
|
17572
17572
|
const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
|
|
17573
17573
|
if (!start) return null;
|
|
@@ -17800,7 +17800,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
|
|
|
17800
17800
|
if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
|
|
17801
17801
|
const candidate = path.join(rootReal, rel);
|
|
17802
17802
|
try {
|
|
17803
|
-
const st = await
|
|
17803
|
+
const st = await fsPromises.lstat(candidate);
|
|
17804
17804
|
if (st.isSymbolicLink()) return null;
|
|
17805
17805
|
if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
|
|
17806
17806
|
} catch {}
|
|
@@ -17837,8 +17837,8 @@ async function resolveA2uiRoot() {
|
|
|
17837
17837
|
for (const dir of candidates) try {
|
|
17838
17838
|
const indexPath = path.join(dir, "index.html");
|
|
17839
17839
|
const bundlePath = path.join(dir, "a2ui.bundle.js");
|
|
17840
|
-
await
|
|
17841
|
-
await
|
|
17840
|
+
await fsPromises.stat(indexPath);
|
|
17841
|
+
await fsPromises.stat(bundlePath);
|
|
17842
17842
|
return dir;
|
|
17843
17843
|
} catch {}
|
|
17844
17844
|
return null;
|
|
@@ -17847,7 +17847,7 @@ async function resolveA2uiRootReal() {
|
|
|
17847
17847
|
if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
|
|
17848
17848
|
if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
|
|
17849
17849
|
const root = await resolveA2uiRoot();
|
|
17850
|
-
cachedA2uiRootReal = root ? await
|
|
17850
|
+
cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
|
|
17851
17851
|
cachedA2uiResolvedAtMs = Date.now();
|
|
17852
17852
|
resolvingA2uiRoot = null;
|
|
17853
17853
|
return cachedA2uiRootReal;
|
|
@@ -18068,13 +18068,13 @@ function normalizeBasePath(rawPath) {
|
|
|
18068
18068
|
}
|
|
18069
18069
|
async function prepareCanvasRoot(rootDir) {
|
|
18070
18070
|
await ensureDir(rootDir);
|
|
18071
|
-
const rootReal = await
|
|
18071
|
+
const rootReal = await fsPromises.realpath(rootDir);
|
|
18072
18072
|
try {
|
|
18073
18073
|
const indexPath = path.join(rootReal, "index.html");
|
|
18074
|
-
await
|
|
18074
|
+
await fsPromises.stat(indexPath);
|
|
18075
18075
|
} catch {
|
|
18076
18076
|
try {
|
|
18077
|
-
await
|
|
18077
|
+
await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
|
|
18078
18078
|
} catch {}
|
|
18079
18079
|
}
|
|
18080
18080
|
return rootReal;
|
|
@@ -21309,7 +21309,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
|
|
|
21309
21309
|
}
|
|
21310
21310
|
async function readLockPayload(lockPath) {
|
|
21311
21311
|
try {
|
|
21312
|
-
const raw = await
|
|
21312
|
+
const raw = await fsPromises.readFile(lockPath, "utf8");
|
|
21313
21313
|
const parsed = JSON.parse(raw);
|
|
21314
21314
|
if (typeof parsed.pid !== "number") return null;
|
|
21315
21315
|
if (typeof parsed.createdAt !== "string") return null;
|
|
@@ -21344,11 +21344,11 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
21344
21344
|
const platform = opts.platform ?? process.platform;
|
|
21345
21345
|
const port = opts.port;
|
|
21346
21346
|
const { lockPath, configPath } = resolveGatewayLockPath(env);
|
|
21347
|
-
await
|
|
21347
|
+
await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
|
|
21348
21348
|
const startedAt = Date.now();
|
|
21349
21349
|
let lastPayload = null;
|
|
21350
21350
|
while (Date.now() - startedAt < timeoutMs) try {
|
|
21351
|
-
const handle = await
|
|
21351
|
+
const handle = await fsPromises.open(lockPath, "wx");
|
|
21352
21352
|
const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
|
|
21353
21353
|
const payload = {
|
|
21354
21354
|
pid: process.pid,
|
|
@@ -21362,7 +21362,7 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
21362
21362
|
configPath,
|
|
21363
21363
|
release: async () => {
|
|
21364
21364
|
await handle.close().catch(() => void 0);
|
|
21365
|
-
await
|
|
21365
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
21366
21366
|
}
|
|
21367
21367
|
};
|
|
21368
21368
|
} catch (err) {
|
|
@@ -21371,7 +21371,7 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
21371
21371
|
const ownerPid = lastPayload?.pid;
|
|
21372
21372
|
const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
|
|
21373
21373
|
if (ownerStatus === "dead" && ownerPid) {
|
|
21374
|
-
await
|
|
21374
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
21375
21375
|
continue;
|
|
21376
21376
|
}
|
|
21377
21377
|
if (ownerStatus !== "alive") {
|
|
@@ -21381,13 +21381,13 @@ async function acquireGatewayLock(opts = {}) {
|
|
|
21381
21381
|
stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
|
|
21382
21382
|
}
|
|
21383
21383
|
if (!stale) try {
|
|
21384
|
-
const st = await
|
|
21384
|
+
const st = await fsPromises.stat(lockPath);
|
|
21385
21385
|
stale = Date.now() - st.mtimeMs > staleMs;
|
|
21386
21386
|
} catch {
|
|
21387
21387
|
stale = false;
|
|
21388
21388
|
}
|
|
21389
21389
|
if (stale) {
|
|
21390
|
-
await
|
|
21390
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
21391
21391
|
continue;
|
|
21392
21392
|
}
|
|
21393
21393
|
}
|
|
@@ -23825,7 +23825,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
|
|
|
23825
23825
|
if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
|
|
23826
23826
|
if (!minimalTestGateway) (async () => {
|
|
23827
23827
|
const { recoverPendingDeliveries } = await import("./delivery-queue-B_HOp2X3.js").then((n) => n.n);
|
|
23828
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
23828
|
+
const { deliverOutboundPayloads } = await import("./deliver-BSlI6o2D.js").then((n) => n.n);
|
|
23829
23829
|
await recoverPendingDeliveries({
|
|
23830
23830
|
deliver: deliverOutboundPayloads,
|
|
23831
23831
|
log: log.child("delivery-recovery"),
|