openclaw-multi-auto 1.6.7 → 1.6.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-BPt-s1cW.js → accounts-4vg8osA5.js} +7 -7
- package/dist/{accounts-CC3alHma.js → accounts-BgOnManD.js} +1 -1
- package/dist/{accounts-CNIODbBr.js → accounts-CXo4Ac3z.js} +1 -1
- package/dist/{acp-cli-DjB0ovMh.js → acp-cli-B2w71bEK.js} +8 -8
- package/dist/{agent-scope-CNJUPFcR.js → agent-scope-BbO_VBbv.js} +17 -17
- package/dist/{agents.config-Dh5Lcv4N.js → agents.config-y8kHMoox.js} +2 -2
- package/dist/{api-key-rotation-PzGuOQm_.js → api-key-rotation-CzacqD3s.js} +1 -1
- package/dist/{audio-preflight-BMvgEQ5j.js → audio-preflight-C58LeYZM.js} +4 -4
- package/dist/{audio-preflight-DOYiMo_d.js → audio-preflight-CiANHFx-.js} +34 -34
- package/dist/{audio-transcription-runner-gLFfz8fr.js → audio-transcription-runner-B8jbozH5.js} +1 -1
- package/dist/{audio-transcription-runner-sLK1yiya.js → audio-transcription-runner-B9-J1DUd.js} +23 -23
- package/dist/{audit-BSvn3dTQ.js → audit-BBbzzHkv.js} +29 -29
- package/dist/{auth-C_LDvTxu.js → auth-B_YGaEcP.js} +1 -1
- package/dist/{auth-choice-Bu5kPuhF.js → auth-choice-CV87PVB8.js} +11 -11
- package/dist/{auth-choice-fpoHu7pV.js → auth-choice-gf8aEhcg.js} +13 -13
- package/dist/{auth-choice.apply-helpers-RNa-mjTS.js → auth-choice.apply-helpers-IK7zIZHi.js} +1 -1
- package/dist/{auth-token-CktupXSw.js → auth-token-D2V9CMur.js} +1 -1
- package/dist/{bonjour-discovery-DvVDs7rm.js → bonjour-discovery-BC_XEtg4.js} +1 -1
- package/dist/{browser-cli-DuYjaYLJ.js → browser-cli-BEWtuR6r.js} +12 -12
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +6 -6
- package/dist/bundled/session-memory/handler.js +6 -6
- package/dist/{call-eK-5ynwM.js → call-YJ9zjeji.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-BQD0zpuF.js → channel-account-context-CJ_25Q5X.js} +5 -5
- package/dist/{channel-activity-w-iWKqZg.js → channel-activity-BHb0aL0J.js} +1 -1
- package/dist/{channel-options-o5oDDArl.js → channel-options-8OGfdfdc.js} +3 -3
- package/dist/{channel-selection-HaUsJ3kL.js → channel-selection-D21oKnM0.js} +1 -1
- package/dist/{channel-web-JuhY6j_M.js → channel-web-BXHQWjc6.js} +16 -16
- package/dist/{channels-cli-aZhDWAhv.js → channels-cli-ByTcIaZC.js} +92 -92
- package/dist/{channels-status-issues-Bi69DlUp.js → channels-status-issues-Cva3QRlu.js} +1 -1
- package/dist/{chrome-DxxEKrY7.js → chrome-CRBG2YP_.js} +8 -8
- package/dist/{chrome-CQR5U4Oc.js → chrome-DBMFZ1ho.js} +4 -4
- package/dist/{clawbot-cli-DJzN7m49.js → clawbot-cli-DpZDxNOd.js} +11 -11
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-fGEJw7Bh.js → cli-bsDX2k8k.js} +72 -72
- package/dist/{client-BEwDNigg.js → client-D9sBKoZI.js} +2 -2
- package/dist/{command-secret-targets-qpSAI_K2.js → command-secret-targets-SH5qP5X_.js} +4 -4
- package/dist/{commands-BaXA2bSJ.js → commands-DUzVNM-Q.js} +1 -1
- package/dist/{commands-registry-D-nkNP-x.js → commands-registry-C2INbVUe.js} +3 -3
- package/dist/{completion-cli-D-Vt6klA.js → completion-cli-4GVy2WHG.js} +12 -12
- package/dist/{config-cli-D7CkjeZo.js → config-cli-ByWpkmkG.js} +7 -7
- package/dist/{config-guard-B1hrQ4RG.js → config-guard-ofLFxSQh.js} +16 -16
- package/dist/{config-validation-CZ59Kb8S.js → config-validation-9QNDxE74.js} +3 -3
- package/dist/{configure-BTMq-WnT.js → configure-JiVnjIlt.js} +17 -17
- package/dist/{control-ui-assets-DR9xNC3f.js → control-ui-assets-D7bG2PFs.js} +1 -1
- package/dist/{cron-cli-CvFNRfgv.js → cron-cli-DuHdcQFw.js} +11 -11
- package/dist/{daemon-cli-Bb7Q2DPz.js → daemon-cli-Do_4dH0e.js} +15 -15
- package/dist/{daemon-install-mDWE60H-.js → daemon-install-C0_0OAHU.js} +4 -4
- package/dist/{daemon-install-helpers-BYWgt_7u.js → daemon-install-helpers-Pex1FHrG.js} +11 -11
- package/dist/{deliver-DuqANTNs.js → deliver-B05oD9oA.js} +7 -7
- package/dist/{deliver-DbdywYJE.js → deliver-ChbFOwjw.js} +1 -1
- package/dist/{deliver-runtime-BFs7iAZF.js → deliver-runtime-B80mXYrL.js} +3 -3
- package/dist/deliver-runtime-DGrrnFpY.js +61 -0
- package/dist/deps-send-discord.runtime-DAPWkSXf.js +36 -0
- package/dist/deps-send-imessage.runtime-DWqR6W7h.js +35 -0
- package/dist/deps-send-signal.runtime-Ce60L81Z.js +34 -0
- package/dist/deps-send-slack.runtime-s0pqdhHR.js +32 -0
- package/dist/{deps-send-telegram.runtime-TOpNwBFj.js → deps-send-telegram.runtime-IVPYXaID.js} +16 -16
- package/dist/{deps-send-whatsapp.runtime-DK8jqd14.js → deps-send-whatsapp.runtime-UBgpoWg9.js} +7 -7
- package/dist/deps-send-whatsapp.runtime-bRJ5Zed1.js +118 -0
- package/dist/{devices-cli-DVXzYwja.js → devices-cli-D0SxzElB.js} +8 -8
- package/dist/{diagnostic-CL9h6IXx.js → diagnostic-v2TGEcgC.js} +1 -1
- package/dist/{diagnostics-CwWdfrvB.js → diagnostics-CBcbp7BB.js} +5 -5
- package/dist/{directory-cli-DL2TKoz1.js → directory-cli-A0q9Ftjc.js} +7 -7
- package/dist/{dns-cli-DOHzu8H-.js → dns-cli-hyt6Wvvq.js} +5 -5
- package/dist/{dock-BR4hdehX.js → dock-SpSqP4RS.js} +4 -4
- package/dist/{docs-cli-D1S8CZJy.js → docs-cli-CJfXaxzc.js} +4 -4
- package/dist/{doctor-completion-CkEHCVMO.js → doctor-completion-CDRZEttH.js} +2 -2
- package/dist/{doctor-config-flow-DQNZsEku.js → doctor-config-flow-kZl_wy2A.js} +15 -15
- package/dist/{enable-V7r6GCwn.js → enable-B27E5MMW.js} +1 -1
- package/dist/{exec-approvals-allowlist-CtUT02un.js → exec-approvals-allowlist-BOUCQu6B.js} +1 -1
- package/dist/{exec-approvals-cli-CsCqi3wl.js → exec-approvals-cli-_cqBqjTA.js} +16 -16
- package/dist/{exec-safe-bin-runtime-policy-CSBwsuHS.js → exec-safe-bin-runtime-policy-CkhpnueN.js} +2 -2
- package/dist/{fetch-guard-Ca0W-yZr.js → fetch-guard-NyNh7p-s.js} +1 -1
- package/dist/{fs-safe-D_adQJX4.js → fs-safe-mG29clJ9.js} +24 -24
- package/dist/{gateway-cli-C5cq5Fv9.js → gateway-cli-94YTdTAa.js} +152 -152
- package/dist/{gateway-rpc-C32KFHnD.js → gateway-rpc-NhXLPpJx.js} +1 -1
- package/dist/{health-yuGFUIWJ.js → health-B99KJscL.js} +11 -11
- package/dist/{hooks-cli-CXWcvFYo.js → hooks-cli-C01QhY4h.js} +80 -80
- package/dist/{hooks-status-Bjjm7teR.js → hooks-status-CZNGtyrM.js} +1 -1
- package/dist/{image-CDKYPK1-.js → image-BaqqhHHh.js} +5 -5
- package/dist/{image-eT7Y-nP5.js → image-C7RmnYxa.js} +1 -1
- package/dist/{image-ops-BTwvusXV.js → image-ops-CKnT_r12.js} +10 -10
- package/dist/image-runtime-D9iVXh4M.js +55 -0
- package/dist/{image-runtime-BcAK3n8a.js → image-runtime-DtMbm7AR.js} +3 -3
- package/dist/index.js +82 -82
- package/dist/{inspect-lNlGLW_c.js → inspect-XHunUBlV.js} +4 -4
- package/dist/{install-safe-path-BNRYD-KJ.js → install-safe-path-om__n8TQ.js} +25 -25
- package/dist/{installs-BB_8nllr.js → installs-Z0VR0SY2.js} +9 -9
- package/dist/{ipv4-CPzn5xIX.js → ipv4-NJiClroF.js} +1 -1
- package/dist/{ir-BdjoGJyL.js → ir-ChJe1hY6.js} +8 -8
- package/dist/{issue-format-D_MHPECu.js → issue-format-G-7IkANX.js} +1 -1
- package/dist/{json-files-DIEpaxUj.js → json-files-D6M304Qd.js} +8 -8
- package/dist/{lifecycle-core-C2u5W-Xd.js → lifecycle-core-BcIuIPMF.js} +5 -5
- package/dist/llm-slug-generator.js +6 -6
- package/dist/{local-roots-_noFNwvo.js → local-roots-BCYAjsgu.js} +3 -3
- package/dist/{login-CbJ7lelX.js → login-D7cZyPrd.js} +3 -3
- package/dist/{login-qr-9cwofnkY.js → login-qr-DPVFxhjZ.js} +6 -6
- package/dist/{logs-cli-RYm8XZEC.js → logs-cli-CtEDxmDk.js} +9 -9
- package/dist/{manager-Dbz9CyPw.js → manager-CSnZM2Iw.js} +14 -14
- package/dist/{manager-runtime-DsniMUxY.js → manager-runtime-aMwRbhZ3.js} +9 -9
- package/dist/{manifest-registry-QfHOpQrg.js → manifest-registry-D74D25g7.js} +1 -1
- package/dist/{memory-cli-CLBPPSow.js → memory-cli-CCMIlraX.js} +12 -12
- package/dist/{model-CfB7nuUK.js → model-CnHxvu4o.js} +2 -2
- package/dist/{model-catalog-BH55qLYK.js → model-catalog-QXAt20Vy.js} +3 -3
- package/dist/{model-picker-D3xDEPDv.js → model-picker-ByrLHc9_.js} +4 -4
- package/dist/{model-selection-DZM1M4yx.js → model-selection-DqSNdtby.js} +16 -16
- package/dist/{models-cli-DlFeSGXD.js → models-cli-C0mrlgSL.js} +81 -81
- package/dist/{models-config-BLJwyO9D.js → models-config-5EhgxVMQ.js} +6 -6
- package/dist/{node-cli-Dcn7Lxvr.js → node-cli-DdKfRYhS.js} +33 -33
- package/dist/{node-command-policy-DfcI_g5B.js → node-command-policy-D-hu0n3w.js} +1 -1
- package/dist/{node-service-CIXWfpdM.js → node-service--hFCI8Ok.js} +1 -1
- package/dist/{nodes-cli-CtIY3Wdi.js → nodes-cli-BmjFvKQh.js} +16 -16
- package/dist/{nodes-screen-DgLXnfNX.js → nodes-screen-CCNot0xV.js} +7 -7
- package/dist/{npm-pack-install-BmT2Qku8.js → npm-pack-install-DSR8-nhr.js} +18 -18
- package/dist/{npm-resolution-Ch4kSz-J.js → npm-resolution-dr4H2dBm.js} +4 -4
- package/dist/{onboard-pvZeQwGW.js → onboard-CyDS1PdS.js} +6 -6
- package/dist/{onboard-channels-CZMeimvm.js → onboard-channels-QzPuUsu5.js} +21 -21
- package/dist/{onboard-custom-Bk9lP_gS.js → onboard-custom-pyXzjp5z.js} +4 -4
- package/dist/{onboard-helpers-C51uqagK.js → onboard-helpers-ByC3v1-U.js} +10 -10
- package/dist/{onboard-hooks-B4RFbzBs.js → onboard-hooks-C2cFv3_-.js} +4 -4
- package/dist/{onboard-remote-CmB2v7g1.js → onboard-remote-DHZv5w4W.js} +4 -4
- package/dist/{onboard-skills-B52kyElD.js → onboard-skills-D_R383gZ.js} +4 -4
- package/dist/{onboarding-BQS8Nd_E.js → onboarding-Df6qbE08.js} +14 -14
- package/dist/{onboarding.finalize-1BqhSubV.js → onboarding.finalize-DkEbxmLj.js} +85 -85
- package/dist/{onboarding.gateway-config-BIkI8VxE.js → onboarding.gateway-config-DttU83Zb.js} +18 -18
- package/dist/{onboarding.secret-input-Dz6lMbgK.js → onboarding.secret-input-BJILGy22.js} +1 -1
- package/dist/{openai-model-default-LC7S-YJ9.js → openai-model-default-uuDOWnTl.js} +2 -2
- package/dist/{openclaw-root-DG6I1Pl4.js → openclaw-root-DeEQQJyX.js} +8 -8
- package/dist/{outbound-C2sayF6_.js → outbound-B0HGMG3V.js} +3 -3
- package/dist/{outbound-attachment-BMKxLFNL.js → outbound-attachment-Ccf9O8B8.js} +2 -2
- package/dist/{pairing-cli-BiogXen1.js → pairing-cli-L76jWxbm.js} +8 -8
- package/dist/{pairing-labels-OxEX3p5e.js → pairing-labels-D9vsJ1yc.js} +1 -1
- package/dist/{pairing-store-CxcCXceV.js → pairing-store-qlIFCeZB.js} +3 -3
- package/dist/{path-alias-guards-CY88Htx_.js → path-alias-guards-BzAaCM2k.js} +3 -3
- package/dist/{path-safety-dy_YlK3a.js → path-safety-BtMBl7vC.js} +1 -1
- package/dist/{paths-C48pWRFv.js → paths-1ThfklTP.js} +9 -9
- package/dist/{pi-embedded-BQQa91aA.js → pi-embedded-BC_GWGuw.js} +24 -24
- package/dist/{pi-embedded-helpers-CLXm10bV.js → pi-embedded-helpers-CbIShbOM.js} +3 -3
- package/dist/{pi-embedded-helpers-CuG0ngBL.js → pi-embedded-helpers-DXrnVbBZ.js} +6 -6
- package/dist/{pi-model-discovery-Drm3mYtt.js → pi-model-discovery-BKbDxeIp.js} +1 -1
- package/dist/{pi-model-discovery-runtime-CCZ87Xog.js → pi-model-discovery-runtime-CpLmZvoC.js} +5 -5
- package/dist/{pi-tools.before-tool-call.runtime-CxMxsbgT.js → pi-tools.before-tool-call.runtime-81kH9GUj.js} +5 -5
- package/dist/{pi-tools.policy-DaB-Ff9f.js → pi-tools.policy-BC7YGcon.js} +5 -5
- package/dist/{plugin-auto-enable-DOlffoVt.js → plugin-auto-enable-CIeegxhY.js} +3 -3
- package/dist/{plugin-registry-DfKKSRKU.js → plugin-registry-D8JSGXQX.js} +3 -3
- package/dist/plugin-sdk/imessage.js +2 -2
- package/dist/plugin-sdk/mattermost.js +3 -3
- package/dist/plugin-sdk/signal.js +2 -2
- package/dist/{plugins-DaN4Jp7R.js → plugins-TLur5wHC.js} +2 -2
- package/dist/{plugins-cli-540srne6.js → plugins-cli-e8svgZ6i.js} +82 -82
- package/dist/{ports-DX1Cxj7W.js → ports-BE9ZTYml.js} +1 -1
- package/dist/{ports-B6f6PDVD.js → ports-CfTWPxj9.js} +2 -2
- package/dist/{program-context-iEkoyF3D.js → program-context-DNYbQrvx.js} +41 -41
- package/dist/{prompt-select-styled-C1MS6ea1.js → prompt-select-styled-B7A4T4-F.js} +40 -40
- package/dist/{provider-auth-helpers-BeZKOpzW.js → provider-auth-helpers-DolkcfyF.js} +5 -5
- package/dist/{proxy-env-R4DbTLy-.js → proxy-env-hdF2jCzB.js} +1 -1
- package/dist/{push-apns-wRpQOiqI.js → push-apns-COJt9ulg.js} +5 -5
- package/dist/{pw-ai-DP_aLfwB.js → pw-ai-CICkGw_S.js} +18 -18
- package/dist/{pw-ai-DNMjFMqH.js → pw-ai-D2wlMJtN.js} +1 -1
- package/dist/{qmd-manager-DP6UdQoL.js → qmd-manager-CT6j2ntm.js} +20 -20
- package/dist/{qr-cli-7lXeTSek.js → qr-cli-CKPDy5Oq.js} +2 -2
- package/dist/{query-expansion-bOaotSTR.js → query-expansion-DmxOigqX.js} +12 -12
- package/dist/{redact-snapshot-D6W9dz8Q.js → redact-snapshot-C6NRnnHx.js} +1 -1
- package/dist/{register.agent-Bjkfci3x.js → register.agent-D4BrsIbk.js} +97 -97
- package/dist/register.configure-B8qyHllb.js +164 -0
- package/dist/{register.maintenance-ErXA_uuU.js → register.maintenance-x2-poSUG.js} +93 -93
- package/dist/{register.message-vHhFsp94.js → register.message-NeUR5N0O.js} +73 -73
- package/dist/{register.onboard-BgvfFczx.js → register.onboard-Cdh-N4A9.js} +18 -18
- package/dist/{register.setup-Bel3kQD6.js → register.setup-B3ADFeTG.js} +21 -21
- package/dist/{register.status-health-sessions-BEhwEKZV.js → register.status-health-sessions-zRCJ2e-L.js} +86 -86
- package/dist/{reply-9D8ZuOqr.js → reply-BFrmGuXU.js} +149 -149
- package/dist/{rpc-BSqhmmbX.js → rpc-DUJUbW2t.js} +1 -1
- package/dist/{runtime-BHbS8ZHw.js → runtime-DTxtPm0I.js} +3 -3
- package/dist/{runtime-config-collectors-CXxR70dG.js → runtime-config-collectors-BEvlZaJw.js} +1 -1
- package/dist/{runtime-whatsapp-login.runtime-BkF8zMbl.js → runtime-whatsapp-login.runtime-DLNWSVqX.js} +7 -7
- package/dist/runtime-whatsapp-outbound.runtime-bK_Rub3q.js +32 -0
- package/dist/{sandbox-HvaJFfqL.js → sandbox-C0HLb5d5.js} +18 -18
- package/dist/{sandbox-cli-Cyu9YZx0.js → sandbox-cli-CHpGeoro.js} +25 -25
- package/dist/{secrets-cli-B-aLO0SY.js → secrets-cli-DgQQmw65.js} +11 -11
- package/dist/{security-cli-DZTjYQ-D.js → security-cli-W-7xXDn1.js} +42 -42
- package/dist/{send-BlhxqBI9.js → send-BUFnD0eE.js} +6 -6
- package/dist/{send-BcAN5-hD.js → send-CJrrDXqE.js} +11 -11
- package/dist/{send-CVzWMFl1.js → send-D3BV3zCy.js} +8 -8
- package/dist/{send-C9SevGlM.js → send-Ddtb8gLT.js} +4 -4
- package/dist/{send-7ekhdACO.js → send-tsYgRPrs.js} +5 -5
- package/dist/{server-ChrqZt3H.js → server-Bzgq55gk.js} +20 -20
- package/dist/{server-context-BhpOEoCB.js → server-context-DCpD_bA8.js} +12 -12
- package/dist/{server-lifecycle-BYHavdLd.js → server-lifecycle-B2SzHMkK.js} +2 -2
- package/dist/{server-middleware-BzsDWK_f.js → server-middleware-C_u_M_FK.js} +1 -1
- package/dist/{server-node-events-CN7o3YoN.js → server-node-events-BS0Yy6SL.js} +73 -73
- package/dist/{service-qQCNqvmY.js → service-DhcBUav5.js} +15 -15
- package/dist/{session-CdQJLohq.js → session-D6FZ4tQ8.js} +1 -1
- package/dist/{sessions-Fm2Lx117.js → sessions-CRTJuMXp.js} +15 -15
- package/dist/{shared-CWdEWtsZ.js → shared-BXXG3vT8.js} +3 -3
- package/dist/{shared-26KZSqMI.js → shared-DOUEV_Eq.js} +1 -1
- package/dist/{skill-commands-De4NUpNz.js → skill-commands-BgzZkiJz.js} +5 -5
- package/dist/{skill-scanner-BtrQE0gO.js → skill-scanner-DcrwF2Fr.js} +6 -6
- package/dist/{skills-Sy3onNq_.js → skills-4CjDh8J_.js} +3 -3
- package/dist/{skills-cli-DiN4xbFz.js → skills-cli-CRB7e30Z.js} +5 -5
- package/dist/{skills-install-DksQkSIq.js → skills-install-DOKJADrz.js} +6 -6
- package/dist/{skills-status-BZptMdLx.js → skills-status-BWqCvt0g.js} +1 -1
- package/dist/{slash-commands.runtime-Becs7mLt.js → slash-commands.runtime-DSjg6jg8.js} +11 -11
- package/dist/{slash-dispatch.runtime-B9Ygtzi4.js → slash-dispatch.runtime-CMK_EPYG.js} +6 -6
- package/dist/slash-dispatch.runtime-DcGK4xow.js +113 -0
- package/dist/{slash-skill-commands.runtime-BqcgqTMM.js → slash-skill-commands.runtime-DwvIfTev.js} +15 -15
- package/dist/{status-CaG5OT-N.js → status-BiX1kbtY.js} +26 -26
- package/dist/{status.update-DR8lt70f.js → status.update-QMbtfb38.js} +2 -2
- package/dist/{store-B7o63XvV.js → store-s4dlu9ZQ.js} +5 -5
- package/dist/subagent-registry-runtime-D5KDyK6C.js +113 -0
- package/dist/{subagent-registry-runtime-DL1Wv7nA.js → subagent-registry-runtime-DdGrQBnQ.js} +6 -6
- package/dist/{system-cli-CpyvQedP.js → system-cli-Dz6Xu0cZ.js} +9 -9
- package/dist/{system-run-command-B7_IasTx.js → system-run-command-MvTaWm_5.js} +1 -1
- package/dist/{systemd-DotMzkho.js → systemd-V-rr1rHU.js} +9 -9
- package/dist/{systemd-hints-B1n_Cmj7.js → systemd-hints-BanLoKAv.js} +6 -6
- package/dist/{systemd-linger-la785pXY.js → systemd-linger-CWkk4GBp.js} +1 -1
- package/dist/{tables-B3d05drH.js → tables-D6c57Lrs.js} +1 -1
- package/dist/{tailnet-CSHZafwU.js → tailnet-DuRcvzVE.js} +1 -1
- package/dist/{target-errors-CCgPtzPv.js → target-errors-u7pjywIy.js} +4 -4
- package/dist/{tool-images-Bhog1Yix.js → tool-images-6ceVT7-i.js} +1 -1
- package/dist/{tui-DoROfmXy.js → tui-DIVVG-0Y.js} +6 -6
- package/dist/{tui-cli-Axgy0FU4.js → tui-cli-DdB0uJii.js} +32 -32
- package/dist/{update-xgJWkTh1.js → update-C4nonzOq.js} +3 -3
- package/dist/{update-cli-Dudao0uZ.js → update-cli-B0ekEE4A.js} +102 -102
- package/dist/{update-runner-B_J4-cY6.js → update-runner-gVTOOfSH.js} +16 -16
- package/dist/web-C0Ki9gxL.js +117 -0
- package/dist/{web-Btj-e8kN.js → web-igmw_EhT.js} +6 -6
- package/dist/{webhooks-cli-HRhGQtAq.js → webhooks-cli-D2omOmfe.js} +6 -6
- package/dist/{whatsapp-actions-s6qkgp-7.js → whatsapp-actions-Ds8L0msY.js} +17 -17
- package/dist/{with-timeout-OltBBBXv.js → with-timeout-DW6XbMi-.js} +3 -3
- package/dist/{workspace-B3uGN7Xe.js → workspace-B7XBLNce.js} +1 -1
- package/dist/{workspace-dirs-0V-76Wmq.js → workspace-dirs-Ds-g-s99.js} +1 -1
- package/dist/{ws-BrCPoV7j.js → ws-BNW54x9_.js} +2 -2
- package/dist/{wsl-wYxPJ8EO.js → wsl-CgxzAzRe.js} +2 -2
- package/package.json +1 -1
- package/scripts/create-instance.sh +4 -1
- package/dist/deliver-runtime-CBjIBIWj.js +0 -61
- package/dist/deps-send-discord.runtime-Ch7m0GFO.js +0 -36
- package/dist/deps-send-imessage.runtime-BBXNUMFu.js +0 -35
- package/dist/deps-send-signal.runtime-DVVQsW-M.js +0 -34
- package/dist/deps-send-slack.runtime-Bm60sFNH.js +0 -32
- package/dist/deps-send-whatsapp.runtime-B2i2JcV5.js +0 -118
- package/dist/image-runtime-Csw6M1GE.js +0 -55
- package/dist/register.configure-BEkx9CQc.js +0 -164
- package/dist/runtime-whatsapp-outbound.runtime-CdzmGvC6.js +0 -32
- package/dist/slash-dispatch.runtime-BGHMR1xK.js +0 -113
- package/dist/subagent-registry-runtime-0qZtQB7_.js +0 -113
- package/dist/web-QKn04c6k.js +0 -117
package/dist/index.js
CHANGED
|
@@ -3,13 +3,13 @@ import "./paths-BBP4yd-2.js";
|
|
|
3
3
|
import { D as tryParseLogLevel, F as hasHelpOrVersion, I as hasRootVersionAlias, N as getVerboseFlag, P as hasFlag, f as isRich, j as getCommandPathWithRootOptions, p as theme, s as setVerbose, w as ALLOWED_LOG_LEVELS } from "./globals-BawKHR8h.js";
|
|
4
4
|
import { T as toWhatsappJid, l as escapeRegExp, m as normalizeE164, n as assertWebChannel } from "./utils-CokqDAE4.js";
|
|
5
5
|
import "./thinking-44rmAw5o.js";
|
|
6
|
-
import { St as resolveCommitHash, t as getReplyFromConfig, zt as createDefaultDeps } from "./reply-
|
|
7
|
-
import "./agent-scope-
|
|
6
|
+
import { St as resolveCommitHash, t as getReplyFromConfig, zt as createDefaultDeps } from "./reply-BFrmGuXU.js";
|
|
7
|
+
import "./agent-scope-BbO_VBbv.js";
|
|
8
8
|
import { d as defaultRuntime, l as visibleWidth, r as enableConsoleCapture } from "./subsystem-BiaB_3Ei.js";
|
|
9
|
-
import "./openclaw-root-
|
|
9
|
+
import "./openclaw-root-DeEQQJyX.js";
|
|
10
10
|
import "./logger-fgPrvtjf.js";
|
|
11
11
|
import { n as runExec, t as runCommandWithTimeout } from "./exec-Cu2obwh9.js";
|
|
12
|
-
import { $t as loadConfig, ci as loadDotEnv } from "./model-selection-
|
|
12
|
+
import { $t as loadConfig, ci as loadDotEnv } from "./model-selection-DqSNdtby.js";
|
|
13
13
|
import "./registry-CTtrVpZB.js";
|
|
14
14
|
import "./github-copilot-token-b6kJVrW-.js";
|
|
15
15
|
import { n as replaceCliName, r as resolveCliName } from "./command-format-Gp1OUMPH.js";
|
|
@@ -17,111 +17,111 @@ import "./boolean-BsqeuxE6.js";
|
|
|
17
17
|
import { r as normalizeEnv, t as isTruthyEnvValue } from "./env-CNF75H3c.js";
|
|
18
18
|
import "./host-env-security-DkAVVuaw.js";
|
|
19
19
|
import { r as VERSION } from "./env-vars-ausEv-bN.js";
|
|
20
|
-
import "./manifest-registry-
|
|
21
|
-
import "./dock-
|
|
20
|
+
import "./manifest-registry-D74D25g7.js";
|
|
21
|
+
import "./dock-SpSqP4RS.js";
|
|
22
22
|
import "./message-channel-S2KEwruz.js";
|
|
23
|
-
import "./send-
|
|
24
|
-
import "./plugins-
|
|
25
|
-
import { B as resolveSessionKey, l as saveSessionStore, o as loadSessionStore, z as deriveSessionKey } from "./sessions-
|
|
26
|
-
import { l as installUnhandledRejectionHandler, v as applyTemplate } from "./audio-transcription-runner-
|
|
27
|
-
import "./image-
|
|
28
|
-
import "./models-config-
|
|
29
|
-
import "./pi-embedded-helpers-
|
|
30
|
-
import "./sandbox-
|
|
23
|
+
import "./send-CJrrDXqE.js";
|
|
24
|
+
import "./plugins-TLur5wHC.js";
|
|
25
|
+
import { B as resolveSessionKey, l as saveSessionStore, o as loadSessionStore, z as deriveSessionKey } from "./sessions-CRTJuMXp.js";
|
|
26
|
+
import { l as installUnhandledRejectionHandler, v as applyTemplate } from "./audio-transcription-runner-B9-J1DUd.js";
|
|
27
|
+
import "./image-BaqqhHHh.js";
|
|
28
|
+
import "./models-config-5EhgxVMQ.js";
|
|
29
|
+
import "./pi-embedded-helpers-DXrnVbBZ.js";
|
|
30
|
+
import "./sandbox-C0HLb5d5.js";
|
|
31
31
|
import "./tool-catalog-IBWCA-2a.js";
|
|
32
|
-
import "./chrome-
|
|
32
|
+
import "./chrome-DBMFZ1ho.js";
|
|
33
33
|
import { l as ensureBinary, u as promptYesNo } from "./tailscale-OabIsy4o.js";
|
|
34
|
-
import "./tailnet-
|
|
35
|
-
import "./ws-
|
|
36
|
-
import "./auth-
|
|
37
|
-
import "./server-context-
|
|
34
|
+
import "./tailnet-DuRcvzVE.js";
|
|
35
|
+
import "./ws-BNW54x9_.js";
|
|
36
|
+
import "./auth-B_YGaEcP.js";
|
|
37
|
+
import "./server-context-DCpD_bA8.js";
|
|
38
38
|
import "./frontmatter-CPpXT7mj.js";
|
|
39
|
-
import "./skills-
|
|
40
|
-
import "./path-alias-guards-
|
|
41
|
-
import "./paths-
|
|
39
|
+
import "./skills-4CjDh8J_.js";
|
|
40
|
+
import "./path-alias-guards-BzAaCM2k.js";
|
|
41
|
+
import "./paths-1ThfklTP.js";
|
|
42
42
|
import "./redact-sDsI6gV3.js";
|
|
43
43
|
import { i as formatUncaughtError } from "./errors-BkPBAjci.js";
|
|
44
|
-
import "./fs-safe-
|
|
45
|
-
import "./proxy-env-
|
|
46
|
-
import "./image-ops-
|
|
47
|
-
import "./store-
|
|
48
|
-
import { i as handlePortError, n as describePortOwner, r as ensurePortAvailable, t as PortInUseError } from "./ports-
|
|
44
|
+
import "./fs-safe-mG29clJ9.js";
|
|
45
|
+
import "./proxy-env-hdF2jCzB.js";
|
|
46
|
+
import "./image-ops-CKnT_r12.js";
|
|
47
|
+
import "./store-s4dlu9ZQ.js";
|
|
48
|
+
import { i as handlePortError, n as describePortOwner, r as ensurePortAvailable, t as PortInUseError } from "./ports-CfTWPxj9.js";
|
|
49
49
|
import "./trash--gw0enoo.js";
|
|
50
|
-
import "./server-middleware-
|
|
51
|
-
import "./accounts-
|
|
52
|
-
import "./accounts-
|
|
50
|
+
import "./server-middleware-C_u_M_FK.js";
|
|
51
|
+
import "./accounts-4vg8osA5.js";
|
|
52
|
+
import "./accounts-BgOnManD.js";
|
|
53
53
|
import "./logging-D3KTM1pH.js";
|
|
54
|
-
import "./accounts-
|
|
55
|
-
import "./send-
|
|
54
|
+
import "./accounts-CXo4Ac3z.js";
|
|
55
|
+
import "./send-Ddtb8gLT.js";
|
|
56
56
|
import { c as resolveStorePath } from "./paths-D24h0XR4.js";
|
|
57
57
|
import "./chat-envelope-DL2R5pK6.js";
|
|
58
|
-
import "./tool-images-
|
|
58
|
+
import "./tool-images-6ceVT7-i.js";
|
|
59
59
|
import "./tool-display-D1uTM_Dm.js";
|
|
60
|
-
import "./fetch-guard-
|
|
61
|
-
import "./api-key-rotation-
|
|
62
|
-
import "./local-roots-
|
|
63
|
-
import "./model-catalog-
|
|
60
|
+
import "./fetch-guard-NyNh7p-s.js";
|
|
61
|
+
import "./api-key-rotation-CzacqD3s.js";
|
|
62
|
+
import "./local-roots-BCYAjsgu.js";
|
|
63
|
+
import "./model-catalog-QXAt20Vy.js";
|
|
64
64
|
import "./proxy-fetch-DVvCU_Cg.js";
|
|
65
65
|
import "./tokens-4XdPiPs_.js";
|
|
66
|
-
import "./deliver-
|
|
67
|
-
import "./commands-
|
|
68
|
-
import "./commands-registry-
|
|
69
|
-
import "./client-
|
|
70
|
-
import "./call-
|
|
66
|
+
import "./deliver-B05oD9oA.js";
|
|
67
|
+
import "./commands-DUzVNM-Q.js";
|
|
68
|
+
import "./commands-registry-C2INbVUe.js";
|
|
69
|
+
import "./client-D9sBKoZI.js";
|
|
70
|
+
import "./call-YJ9zjeji.js";
|
|
71
71
|
import "./pairing-token-9FncM-ur.js";
|
|
72
72
|
import "./fetch-D6Usyaj-.js";
|
|
73
|
-
import "./pairing-store-
|
|
73
|
+
import "./pairing-store-qlIFCeZB.js";
|
|
74
74
|
import "./exec-approvals-QfWL5pgV.js";
|
|
75
|
-
import "./exec-approvals-allowlist-
|
|
76
|
-
import "./exec-safe-bin-runtime-policy-
|
|
77
|
-
import "./nodes-screen-
|
|
78
|
-
import "./target-errors-
|
|
79
|
-
import "./system-run-command-
|
|
80
|
-
import "./diagnostic-
|
|
81
|
-
import "./with-timeout-
|
|
82
|
-
import "./send-
|
|
83
|
-
import "./model-
|
|
84
|
-
import "./pi-model-discovery-
|
|
85
|
-
import "./ir-
|
|
75
|
+
import "./exec-approvals-allowlist-BOUCQu6B.js";
|
|
76
|
+
import "./exec-safe-bin-runtime-policy-CkhpnueN.js";
|
|
77
|
+
import "./nodes-screen-CCNot0xV.js";
|
|
78
|
+
import "./target-errors-u7pjywIy.js";
|
|
79
|
+
import "./system-run-command-MvTaWm_5.js";
|
|
80
|
+
import "./diagnostic-v2TGEcgC.js";
|
|
81
|
+
import "./with-timeout-DW6XbMi-.js";
|
|
82
|
+
import "./send-D3BV3zCy.js";
|
|
83
|
+
import "./model-CnHxvu4o.js";
|
|
84
|
+
import "./pi-model-discovery-BKbDxeIp.js";
|
|
85
|
+
import "./ir-ChJe1hY6.js";
|
|
86
86
|
import "./render-Bwu_WxwA.js";
|
|
87
|
-
import "./channel-selection-
|
|
88
|
-
import "./plugin-auto-enable-
|
|
89
|
-
import "./send-
|
|
90
|
-
import "./outbound-attachment-
|
|
87
|
+
import "./channel-selection-D21oKnM0.js";
|
|
88
|
+
import "./plugin-auto-enable-CIeegxhY.js";
|
|
89
|
+
import "./send-tsYgRPrs.js";
|
|
90
|
+
import "./outbound-attachment-Ccf9O8B8.js";
|
|
91
91
|
import "./delivery-queue-5cgQEnOW.js";
|
|
92
|
-
import "./send-
|
|
93
|
-
import "./pi-tools.policy-
|
|
94
|
-
import "./channel-activity-
|
|
95
|
-
import "./tables-
|
|
92
|
+
import "./send-BUFnD0eE.js";
|
|
93
|
+
import "./pi-tools.policy-BC7YGcon.js";
|
|
94
|
+
import "./channel-activity-BHb0aL0J.js";
|
|
95
|
+
import "./tables-D6c57Lrs.js";
|
|
96
96
|
import "./proxy-CzncRRd4.js";
|
|
97
|
-
import "./skill-commands-
|
|
98
|
-
import "./workspace-dirs-
|
|
99
|
-
import "./runtime-config-collectors-
|
|
100
|
-
import "./command-secret-targets-
|
|
97
|
+
import "./skill-commands-BgzZkiJz.js";
|
|
98
|
+
import "./workspace-dirs-Ds-g-s99.js";
|
|
99
|
+
import "./runtime-config-collectors-BEvlZaJw.js";
|
|
100
|
+
import "./command-secret-targets-SH5qP5X_.js";
|
|
101
101
|
import "./session-cost-usage-BY7a_j5T.js";
|
|
102
|
-
import "./onboard-helpers-
|
|
102
|
+
import "./onboard-helpers-ByC3v1-U.js";
|
|
103
103
|
import "./prompt-style-C7TXsSbx.js";
|
|
104
|
-
import "./pairing-labels-
|
|
105
|
-
import "./memory-cli-
|
|
106
|
-
import "./manager-
|
|
107
|
-
import "./query-expansion-
|
|
104
|
+
import "./pairing-labels-D9vsJ1yc.js";
|
|
105
|
+
import "./memory-cli-CCMIlraX.js";
|
|
106
|
+
import "./manager-CSnZM2Iw.js";
|
|
107
|
+
import "./query-expansion-DmxOigqX.js";
|
|
108
108
|
import { t as formatDocsLink } from "./links-3lq_eIAs.js";
|
|
109
109
|
import "./cli-utils-Ca0KE-dW.js";
|
|
110
110
|
import "./help-format-BBTgeZ6Z.js";
|
|
111
111
|
import "./progress-DSt-glE7.js";
|
|
112
|
-
import "./server-lifecycle-
|
|
112
|
+
import "./server-lifecycle-B2SzHMkK.js";
|
|
113
113
|
import "./stagger-DL-XRpny.js";
|
|
114
|
-
import { r as waitForever, t as monitorWebChannel } from "./channel-web-
|
|
115
|
-
import "./outbound-
|
|
116
|
-
import "./session-
|
|
117
|
-
import "./login-
|
|
114
|
+
import { r as waitForever, t as monitorWebChannel } from "./channel-web-BXHQWjc6.js";
|
|
115
|
+
import "./outbound-B0HGMG3V.js";
|
|
116
|
+
import "./session-D6FZ4tQ8.js";
|
|
117
|
+
import "./login-D7cZyPrd.js";
|
|
118
118
|
import { t as isMainModule } from "./is-main-D5LnS2LP.js";
|
|
119
119
|
import { t as ensureOpenClawCliOnPath } from "./path-env-AnA7c9fb.js";
|
|
120
120
|
import { t as assertSupportedRuntime } from "./runtime-guard-DW_QSy-l.js";
|
|
121
|
-
import "./ports-
|
|
122
|
-
import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-
|
|
123
|
-
import "./plugin-registry-
|
|
124
|
-
import { n as resolveCliChannelOptions } from "./channel-options-
|
|
121
|
+
import "./ports-BE9ZTYml.js";
|
|
122
|
+
import { i as getCoreCliCommandsWithSubcommands, n as setProgramContext, o as registerProgramCommands, s as getSubCliCommandsWithSubcommands } from "./program-context-DNYbQrvx.js";
|
|
123
|
+
import "./plugin-registry-D8JSGXQX.js";
|
|
124
|
+
import { n as resolveCliChannelOptions } from "./channel-options-8OGfdfdc.js";
|
|
125
125
|
import process$1 from "node:process";
|
|
126
126
|
import { fileURLToPath } from "node:url";
|
|
127
127
|
import { Command, InvalidArgumentError } from "commander";
|
|
@@ -575,11 +575,11 @@ function shouldBypassConfigGuard(commandPath) {
|
|
|
575
575
|
return false;
|
|
576
576
|
}
|
|
577
577
|
function loadConfigGuardModule() {
|
|
578
|
-
configGuardModulePromise ??= import("./config-guard-
|
|
578
|
+
configGuardModulePromise ??= import("./config-guard-ofLFxSQh.js");
|
|
579
579
|
return configGuardModulePromise;
|
|
580
580
|
}
|
|
581
581
|
function loadPluginRegistryModule() {
|
|
582
|
-
pluginRegistryModulePromise ??= import("./plugin-registry-
|
|
582
|
+
pluginRegistryModulePromise ??= import("./plugin-registry-D8JSGXQX.js").then((n) => n.n);
|
|
583
583
|
return pluginRegistryModulePromise;
|
|
584
584
|
}
|
|
585
585
|
function getRootCommand(command) {
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel, n as GATEWAY_SERVICE_KIND, p as resolveGatewayWindowsTaskName, r as GATEWAY_SERVICE_MARKER } from "./constants-B6D1y3V2.js";
|
|
2
|
-
import { n as execSchtasks } from "./service-
|
|
2
|
+
import { n as execSchtasks } from "./service-DhcBUav5.js";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import
|
|
4
|
+
import fs from "node:fs/promises";
|
|
5
5
|
|
|
6
6
|
//#region src/daemon/inspect.ts
|
|
7
7
|
const EXTRA_MARKERS = [
|
|
@@ -76,14 +76,14 @@ function isLegacyLabel(label) {
|
|
|
76
76
|
}
|
|
77
77
|
async function readDirEntries(dir) {
|
|
78
78
|
try {
|
|
79
|
-
return await
|
|
79
|
+
return await fs.readdir(dir);
|
|
80
80
|
} catch {
|
|
81
81
|
return [];
|
|
82
82
|
}
|
|
83
83
|
}
|
|
84
84
|
async function readUtf8File(filePath) {
|
|
85
85
|
try {
|
|
86
|
-
return await
|
|
86
|
+
return await fs.readFile(filePath, "utf8");
|
|
87
87
|
} catch {
|
|
88
88
|
return null;
|
|
89
89
|
}
|
|
@@ -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-DeEQQJyX.js";
|
|
2
|
+
import { a as openWritableFileWithinRoot, t as SafeOpenError } from "./fs-safe-mG29clJ9.js";
|
|
3
|
+
import { n as resolveSafeBaseDir } from "./path-safety-BtMBl7vC.js";
|
|
4
4
|
import path from "node:path";
|
|
5
|
-
import
|
|
5
|
+
import fs 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 fs.stat(direct)).isDirectory()) return direct;
|
|
82
82
|
} catch {}
|
|
83
|
-
const dirs = (await
|
|
83
|
+
const dirs = (await fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.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 fs.stat(params.archivePath)).size > limits.maxArchiveBytes) throw new Error(ERROR_ARCHIVE_SIZE_EXCEEDS_LIMIT);
|
|
279
|
+
const buffer = await fs.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 fs.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 fs.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 fs.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 fs.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 fs.realpath(baseDir);
|
|
439
439
|
const validateDirectory = async (dirPath) => {
|
|
440
|
-
const dirLstat = await
|
|
440
|
+
const dirLstat = await fs.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 fs.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, y as resolveUserPath } from "./utils-CokqDAE4.js";
|
|
2
2
|
import { i as isPathInside, r as extensionUsesSkippedScannerPath } from "./legacy-names-BP9MiXaN.js";
|
|
3
|
-
import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-
|
|
4
|
-
import { S as validateRegistryNpmSpec } from "./skills-
|
|
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-
|
|
3
|
+
import { o as loadPluginManifest, s as resolvePackageExtensionEntries } from "./manifest-registry-D74D25g7.js";
|
|
4
|
+
import { S as validateRegistryNpmSpec } from "./skills-4CjDh8J_.js";
|
|
5
|
+
import { c as writeFileFromPathWithinRoot } from "./fs-safe-mG29clJ9.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-om__n8TQ.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-DSR8-nhr.js";
|
|
8
|
+
import { t as scanDirectoryWithSummary } from "./skill-scanner-DcrwF2Fr.js";
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
import
|
|
10
|
+
import fs 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 fs.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 fs.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 { Hn as parseCanonicalIpAddress, In as isIpv6Address, Mn as isCanonicalDottedDecimalIPv4 } from "./model-selection-
|
|
1
|
+
import { Hn as parseCanonicalIpAddress, In as isIpv6Address, Mn as isCanonicalDottedDecimalIPv4 } from "./model-selection-DqSNdtby.js";
|
|
2
2
|
import { o as getTailnetHostname } from "./tailscale-OabIsy4o.js";
|
|
3
3
|
|
|
4
4
|
//#region src/gateway/gateway-config-prompts.shared.ts
|
|
@@ -2,14 +2,14 @@ import { a as logVerbose, c as shouldLogVerbose } from "./globals-BawKHR8h.js";
|
|
|
2
2
|
import { y as resolveUserPath } from "./utils-CokqDAE4.js";
|
|
3
3
|
import { _ as normalizeAccountId } from "./session-key-CIXZm7v4.js";
|
|
4
4
|
import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-S2KEwruz.js";
|
|
5
|
-
import { r as normalizeChannelId } from "./plugins-
|
|
6
|
-
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-
|
|
7
|
-
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-
|
|
8
|
-
import { y as resolveAccountEntry } from "./accounts-
|
|
9
|
-
import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots } from "./local-roots-
|
|
5
|
+
import { r as normalizeChannelId } from "./plugins-TLur5wHC.js";
|
|
6
|
+
import { s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-mG29clJ9.js";
|
|
7
|
+
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-CKnT_r12.js";
|
|
8
|
+
import { y as resolveAccountEntry } from "./accounts-4vg8osA5.js";
|
|
9
|
+
import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots } from "./local-roots-BCYAjsgu.js";
|
|
10
10
|
import { fileURLToPath } from "node:url";
|
|
11
11
|
import path from "node:path";
|
|
12
|
-
import
|
|
12
|
+
import fs from "node:fs/promises";
|
|
13
13
|
import MarkdownIt from "markdown-it";
|
|
14
14
|
|
|
15
15
|
//#region src/markdown/fences.ts
|
|
@@ -387,7 +387,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
387
387
|
const roots = localRoots ?? getDefaultLocalRoots();
|
|
388
388
|
let resolved;
|
|
389
389
|
try {
|
|
390
|
-
resolved = await
|
|
390
|
+
resolved = await fs.realpath(mediaPath);
|
|
391
391
|
} catch {
|
|
392
392
|
resolved = path.resolve(mediaPath);
|
|
393
393
|
}
|
|
@@ -404,7 +404,7 @@ async function assertLocalMediaAllowed(mediaPath, localRoots) {
|
|
|
404
404
|
for (const root of roots) {
|
|
405
405
|
let resolvedRoot;
|
|
406
406
|
try {
|
|
407
|
-
resolvedRoot = await
|
|
407
|
+
resolvedRoot = await fs.realpath(root);
|
|
408
408
|
} catch {
|
|
409
409
|
resolvedRoot = path.resolve(root);
|
|
410
410
|
}
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import path from "node:path";
|
|
2
|
-
import
|
|
2
|
+
import fs 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 fs.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 fs.mkdir(path.dirname(filePath), mkdirOptions);
|
|
27
27
|
const tmp = `${filePath}.${randomUUID()}.tmp`;
|
|
28
28
|
try {
|
|
29
|
-
await
|
|
29
|
+
await fs.writeFile(tmp, payload, "utf8");
|
|
30
30
|
try {
|
|
31
|
-
await
|
|
31
|
+
await fs.chmod(tmp, mode);
|
|
32
32
|
} catch {}
|
|
33
|
-
await
|
|
33
|
+
await fs.rename(tmp, filePath);
|
|
34
34
|
try {
|
|
35
|
-
await
|
|
35
|
+
await fs.chmod(filePath, mode);
|
|
36
36
|
} catch {}
|
|
37
37
|
} finally {
|
|
38
|
-
await
|
|
38
|
+
await fs.rm(tmp, { force: true }).catch(() => void 0);
|
|
39
39
|
}
|
|
40
40
|
}
|
|
41
41
|
function createAsyncLock() {
|
|
@@ -1,14 +1,14 @@
|
|
|
1
1
|
import { d as resolveIsNixMode } from "./paths-BBP4yd-2.js";
|
|
2
2
|
import { d as colorize, f as isRich, g as getResolvedLoggerSettings, p as theme } from "./globals-BawKHR8h.js";
|
|
3
3
|
import { d as defaultRuntime } from "./subsystem-BiaB_3Ei.js";
|
|
4
|
-
import { $t as loadConfig } from "./model-selection-
|
|
4
|
+
import { $t as loadConfig } from "./model-selection-DqSNdtby.js";
|
|
5
5
|
import { t as formatCliCommand } from "./command-format-Gp1OUMPH.js";
|
|
6
6
|
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DWbOUxWG.js";
|
|
7
|
-
import { t as isWSL } from "./wsl-
|
|
7
|
+
import { t as isWSL } from "./wsl-CgxzAzRe.js";
|
|
8
8
|
import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel, p as resolveGatewayWindowsTaskName } from "./constants-B6D1y3V2.js";
|
|
9
|
-
import { r as isSystemdUserServiceAvailable } from "./systemd-
|
|
10
|
-
import { s as resolveGatewayLogPaths } from "./service-
|
|
11
|
-
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-
|
|
9
|
+
import { r as isSystemdUserServiceAvailable } from "./systemd-V-rr1rHU.js";
|
|
10
|
+
import { s as resolveGatewayLogPaths } from "./service-DhcBUav5.js";
|
|
11
|
+
import { a as checkTokenDrift, n as renderSystemdUnavailableHints } from "./systemd-hints-BanLoKAv.js";
|
|
12
12
|
import { t as parsePort } from "./parse-port-OBGBQwYB.js";
|
|
13
13
|
import { Writable } from "node:stream";
|
|
14
14
|
|
|
@@ -8,19 +8,19 @@ import "./github-copilot-token-BDioPmd6.js";
|
|
|
8
8
|
import "./legacy-names-DOC03BkU.js";
|
|
9
9
|
import "./thinking-BeGmb5k6.js";
|
|
10
10
|
import "./tokens-q32vI39c.js";
|
|
11
|
-
import { t as runEmbeddedPiAgent } from "./pi-embedded-
|
|
11
|
+
import { t as runEmbeddedPiAgent } from "./pi-embedded-BC_GWGuw.js";
|
|
12
12
|
import "./plugins-4Rj4OjLY.js";
|
|
13
13
|
import "./accounts-Tgelvk0C.js";
|
|
14
14
|
import "./send-6lz6rNVP.js";
|
|
15
15
|
import "./send-PE6cwoTe.js";
|
|
16
|
-
import "./deliver-
|
|
16
|
+
import "./deliver-ChbFOwjw.js";
|
|
17
17
|
import "./diagnostic-Co6Kghr-.js";
|
|
18
18
|
import "./accounts-C9HcPI9h.js";
|
|
19
19
|
import "./image-ops-BuUnEOE0.js";
|
|
20
20
|
import "./send-BHTiZcH3.js";
|
|
21
21
|
import "./pi-model-discovery-Dymwdjt0.js";
|
|
22
|
-
import "./pi-embedded-helpers-
|
|
23
|
-
import "./chrome-
|
|
22
|
+
import "./pi-embedded-helpers-CbIShbOM.js";
|
|
23
|
+
import "./chrome-CRBG2YP_.js";
|
|
24
24
|
import "./frontmatter-BkTfEZ93.js";
|
|
25
25
|
import "./skills-7ODkHQYp.js";
|
|
26
26
|
import "./path-alias-guards-BzvdLvTI.js";
|
|
@@ -32,8 +32,8 @@ import "./store-D89wDcz9.js";
|
|
|
32
32
|
import "./accounts-C_lW3Ag9.js";
|
|
33
33
|
import "./paths-Bkr-BCxW.js";
|
|
34
34
|
import "./tool-images-RZdHiZcG.js";
|
|
35
|
-
import "./image-
|
|
36
|
-
import "./audio-transcription-runner-
|
|
35
|
+
import "./image-C7RmnYxa.js";
|
|
36
|
+
import "./audio-transcription-runner-B8jbozH5.js";
|
|
37
37
|
import "./fetch-DuraYswo.js";
|
|
38
38
|
import "./fetch-guard-DWr0d00H.js";
|
|
39
39
|
import "./api-key-rotation-BJpKWXy0.js";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { g as resolveStateDir } from "./paths-BBP4yd-2.js";
|
|
2
2
|
import { k as resolvePreferredOpenClawTmpDir } from "./globals-BawKHR8h.js";
|
|
3
|
-
import { u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
4
|
-
import { c as detectMime, l as extensionForMime } from "./image-ops-
|
|
5
|
-
import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
3
|
+
import { u as resolveAgentWorkspaceDir } from "./agent-scope-BbO_VBbv.js";
|
|
4
|
+
import { c as detectMime, l as extensionForMime } from "./image-ops-CKnT_r12.js";
|
|
5
|
+
import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-NyNh7p-s.js";
|
|
6
6
|
import path from "node:path";
|
|
7
7
|
|
|
8
8
|
//#region src/media/read-response-with-limit.ts
|
|
@@ -1,10 +1,10 @@
|
|
|
1
1
|
import { l as success, n as info, t as danger } from "./globals-BawKHR8h.js";
|
|
2
2
|
import { d as defaultRuntime } from "./subsystem-BiaB_3Ei.js";
|
|
3
3
|
import { r as logInfo } from "./logger-fgPrvtjf.js";
|
|
4
|
-
import { $t as loadConfig } from "./model-selection-
|
|
4
|
+
import { $t as loadConfig } from "./model-selection-DqSNdtby.js";
|
|
5
5
|
import { t as formatCliCommand } from "./command-format-Gp1OUMPH.js";
|
|
6
|
-
import { i as resolveWhatsAppAccount, l as logoutWeb } from "./accounts-
|
|
7
|
-
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-
|
|
6
|
+
import { i as resolveWhatsAppAccount, l as logoutWeb } from "./accounts-4vg8osA5.js";
|
|
7
|
+
import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-D6FZ4tQ8.js";
|
|
8
8
|
import { DisconnectReason } from "@whiskeysockets/baileys";
|
|
9
9
|
|
|
10
10
|
//#region src/web/login.ts
|