openclaw-multi-auto 1.0.8 → 1.1.0
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-BVgYdU9W.js → accounts-BtEMxtPK.js} +1 -1
- package/dist/{accounts-BU-CeDai.js → accounts-CUYZBSKh.js} +1 -1
- package/dist/{accounts-DJaYqD2E.js → accounts-khXX75l1.js} +7 -7
- package/dist/{acp-cli-oWFHnS7i.js → acp-cli-CA2oCCEA.js} +8 -8
- package/dist/{agent-scope-BRElciAf.js → agent-scope-NQ9CtXYN.js} +17 -17
- package/dist/{agents-CujsWz9d.js → agents-BWVlofyv.js} +14 -14
- package/dist/{agents.config-C42STger.js → agents.config-QVfqc4C-.js} +2 -2
- package/dist/{api-key-rotation-BbuLHl0_.js → api-key-rotation-Vix80AUw.js} +1 -1
- package/dist/{audio-preflight-Yg1vzPE1.js → audio-preflight-DUtdCXjJ.js} +34 -34
- package/dist/{audio-transcription-runner-D1cvrZ6s.js → audio-transcription-runner-DYKvqK54.js} +23 -23
- package/dist/{audit-DtlAv66L.js → audit-oC--RZy0.js} +29 -29
- package/dist/{auth-Mj21c_GN.js → auth-YB6m93-M.js} +1 -1
- package/dist/{auth-choice-CEycltU4.js → auth-choice-CsSQLEkP.js} +13 -13
- package/dist/{auth-choice-CGHVedXa.js → auth-choice-gp-h1aBd.js} +11 -11
- package/dist/{auth-choice.apply-helpers-D4YQXYfc.js → auth-choice.apply-helpers-CPpuynsT.js} +1 -1
- package/dist/{auth-profiles-CdLTlJLc.js → auth-profiles-15pq9j9V.js} +16 -16
- package/dist/{auth-token-7kzDLVhb.js → auth-token-Bwn8N6KA.js} +1 -1
- package/dist/{banner-CpzKVd4-.js → banner-hcZ0XNXv.js} +2 -2
- package/dist/{bonjour-discovery-BuS9wF_p.js → bonjour-discovery-2btw06uD.js} +1 -1
- package/dist/{browser-cli-BVtbvQ3Z.js → browser-cli-C4PdLYHy.js} +12 -12
- package/dist/build-info.json +3 -3
- package/dist/{call-Dp9SDkqK.js → call-CZgRbVYm.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-ESLVGdUf.js → channel-account-context-BYiOuxnf.js} +5 -5
- package/dist/{channel-activity-LfmEkdDN.js → channel-activity-D9K6yeu8.js} +1 -1
- package/dist/{channel-options-CsYaFB_4.js → channel-options-DJkf_8wi.js} +3 -3
- package/dist/{channel-selection-DFJsYFPo.js → channel-selection-BpIsCVV5.js} +1 -1
- package/dist/{channel-web-DzRsJEE4.js → channel-web-wb1My1Yi.js} +17 -17
- package/dist/{channels-cli-CpfeOXtJ.js → channels-cli-DlQONtY9.js} +93 -93
- package/dist/{channels-status-issues-6V9ktlZD.js → channels-status-issues-Hj-GOSVm.js} +1 -1
- package/dist/{chrome-CyM61Cn2.js → chrome-L_icBVLq.js} +4 -4
- package/dist/{clawbot-cli-COtnakIJ.js → clawbot-cli-CyTZUVIJ.js} +11 -11
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-jnT1hYPO.js → cli-CNTrB-ni.js} +73 -73
- package/dist/{client-C-wA75vx.js → client-g0366Z73.js} +2 -2
- package/dist/{command-registry-g5tDqdAU.js → command-registry-VOmumlmD.js} +11 -11
- package/dist/{command-secret-targets-u3eWn-W3.js → command-secret-targets-CIMuIdbL.js} +4 -4
- package/dist/{commands-C8pWcFs_.js → commands-DU7At3rY.js} +1 -1
- package/dist/{commands-registry-J6nVL3BQ.js → commands-registry-B_WUa9KB.js} +3 -3
- package/dist/{completion-cli-DQsyli3B.js → completion-cli-pqdmKVTo.js} +13 -13
- package/dist/{config-cli-DUycVHoC.js → config-cli-BqznmzlM.js} +7 -7
- package/dist/{config-guard--Obk2MGi.js → config-guard-D8jiLjr7.js} +3 -3
- package/dist/{config-validation-iOxszdEd.js → config-validation-BngLiGoq.js} +3 -3
- package/dist/{configure-Al_pz_5z.js → configure-B--Umf_O.js} +17 -17
- package/dist/{control-ui-assets-DpjfNcTC.js → control-ui-assets-C9ewbI8z.js} +1 -1
- package/dist/{cron-cli-CQ5EZw_b.js → cron-cli-DCRPpI1m.js} +11 -11
- package/dist/{daemon-cli-Bb80Mzv5.js → daemon-cli-DtBzKM_d.js} +15 -15
- package/dist/{daemon-install-B09ifLcJ.js → daemon-install-ckPBUAjJ.js} +4 -4
- package/dist/{daemon-install-helpers-CYpECiEx.js → daemon-install-helpers-BWf-PrgA.js} +11 -11
- package/dist/{deliver-CxF9h9PE.js → deliver-b93aBgie.js} +7 -7
- package/dist/deliver-runtime-CdWd-JQI.js +61 -0
- package/dist/deps-send-discord.runtime-BltWu9GW.js +36 -0
- package/dist/deps-send-imessage.runtime-CdCif3t7.js +35 -0
- package/dist/deps-send-signal.runtime-fHqkSmMW.js +34 -0
- package/dist/deps-send-slack.runtime-CkyZO7ln.js +32 -0
- package/dist/{deps-send-telegram.runtime-B6wp3kx8.js → deps-send-telegram.runtime-C--B69CN.js} +16 -16
- package/dist/deps-send-whatsapp.runtime-BkoMLlCM.js +119 -0
- package/dist/{devices-cli-C0dUbeL4.js → devices-cli-D6V059Dh.js} +8 -8
- package/dist/{diagnostic-BfiudAAN.js → diagnostic-BpP9UBCE.js} +1 -1
- package/dist/{diagnostics-DCWM_8Ur.js → diagnostics---0c2_jo.js} +5 -5
- package/dist/{directory-cli-Dlws13Di.js → directory-cli-RYC34-EU.js} +7 -7
- package/dist/{dns-cli-But7QdAw.js → dns-cli-CElNoV5S.js} +5 -5
- package/dist/{dock-BbUkruOF.js → dock-nA2DVPCV.js} +4 -4
- package/dist/{docs-cli-Ck2IKAtw.js → docs-cli-Bv7ltPvi.js} +4 -4
- package/dist/{doctor-completion-Nat1HXE1.js → doctor-completion-CQIiN7rY.js} +2 -2
- package/dist/{doctor-config-flow-WCCoUXeB.js → doctor-config-flow-BOAryh5P.js} +15 -15
- package/dist/{enable-C3H8BtN4.js → enable-688HYBNS.js} +1 -1
- package/dist/entry.js +2 -2
- package/dist/{exec-approvals-allowlist-ySf2Yo5n.js → exec-approvals-allowlist-C0Eya3rT.js} +1 -1
- package/dist/{exec-approvals-cli-DhLLOys6.js → exec-approvals-cli-BYYerKp8.js} +16 -16
- package/dist/{exec-safe-bin-runtime-policy-DnXViOlF.js → exec-safe-bin-runtime-policy-BmJmfDRo.js} +2 -2
- package/dist/{fetch-D-SiVqBm.js → fetch-BhAHVdwx.js} +3 -3
- package/dist/{fetch-guard-CKYBfJ66.js → fetch-guard-BbBdhWz_.js} +1 -1
- package/dist/{fs-safe-jMDpsYew.js → fs-safe-CFLs-j60.js} +24 -24
- package/dist/{gateway-cli--atF6LYo.js → gateway-cli-DOYWSRqa.js} +153 -153
- package/dist/{gateway-rpc-DYyQQ1z9.js → gateway-rpc-w6t8Eq_1.js} +1 -1
- package/dist/{health-BDJ72U4Z.js → health-C1EstYHd.js} +11 -11
- package/dist/{hooks-cli-r0UX8B9a.js → hooks-cli-BFMve5sG.js} +81 -81
- package/dist/{hooks-status-CxBdpBry.js → hooks-status-DBnEWOEP.js} +1 -1
- package/dist/{image-CyHTO86Q.js → image-Bw71y73Q.js} +5 -5
- package/dist/{image-ops-pjs5W0CZ.js → image-ops-AJL9tN3_.js} +10 -10
- package/dist/image-runtime-6jhrqcle.js +55 -0
- package/dist/{inspect-BeU4yMp2.js → inspect-CUxeDA8c.js} +4 -4
- package/dist/{install-safe-path-BiL8OJvK.js → install-safe-path-BX58wFBl.js} +25 -25
- package/dist/{installs-BwKmG0Uy.js → installs-B-xr0Fzq.js} +9 -9
- package/dist/{ipv4-BoGwfnEw.js → ipv4-C4Yt-xid.js} +1 -1
- package/dist/{ir-Da7Ahsqc.js → ir-otKVkb4a.js} +8 -8
- package/dist/{issue-format-CJ89_-9v.js → issue-format-DSksfKiV.js} +1 -1
- package/dist/{json-files-CuJjdF_0.js → json-files-rR19q30D.js} +8 -8
- package/dist/{lifecycle-core-BzuWBBm8.js → lifecycle-core-DVwen0ks.js} +5 -5
- package/dist/{login-VkQ9MW3d.js → login-BcRaGQb6.js} +3 -3
- package/dist/{login-qr-BVMQ-xQz.js → login-qr-C9D47WEZ.js} +6 -6
- package/dist/{logs-cli-DWHhSnWs.js → logs-cli-B3TG2lp8.js} +9 -9
- package/dist/{manager-BUBwl6M6.js → manager-iwcRf3Xc.js} +14 -14
- package/dist/{manager-runtime-H9iQnw64.js → manager-runtime-D3KqpRT7.js} +9 -9
- package/dist/{manifest-registry-DVviqWVY.js → manifest-registry-CJb8odRF.js} +1 -1
- package/dist/{memory-cli-DarWCbU6.js → memory-cli-DGsJx7YM.js} +12 -12
- package/dist/{model-BLV8y_N-.js → model-B792l3Cn.js} +2 -2
- package/dist/{model-catalog-DTcBkUlX.js → model-catalog-DZ6kl2Ko.js} +3 -3
- package/dist/{model-picker-D-fTOOzb.js → model-picker-6fHys0wK.js} +4 -4
- package/dist/{models-CmjutMmh.js → models-DerrMmwF.js} +17 -17
- package/dist/{models-cli-BZFQX22p.js → models-cli-BkTZg_4v.js} +78 -78
- package/dist/{models-config-DNcDbV_G.js → models-config-Dabs9Kdv.js} +6 -6
- package/dist/{net-D5fSREu4.js → net-BAIqYNz0.js} +2 -2
- package/dist/{node-cli-Cnq-PJTp.js → node-cli-DoEq4zeG.js} +33 -33
- package/dist/{node-command-policy-B5BMBBJP.js → node-command-policy-DRhSc90G.js} +1 -1
- package/dist/{node-service-BpYZAvpl.js → node-service-CcgtNIeT.js} +1 -1
- package/dist/{nodes-cli-CkrDOWpv.js → nodes-cli--d9RiCnK.js} +16 -16
- package/dist/{nodes-screen-DfsQohWd.js → nodes-screen-BTND5VDq.js} +7 -7
- package/dist/{npm-pack-install-E-mkrZ55.js → npm-pack-install-CGUDOSKz.js} +18 -18
- package/dist/{npm-resolution-BUUmg5ON.js → npm-resolution-CAoULCWM.js} +4 -4
- package/dist/{onboard-DINGSS9R.js → onboard-CMZRkPVc.js} +6 -6
- package/dist/{onboard-channels-Di4MjWDY.js → onboard-channels-SlJu6XWJ.js} +21 -21
- package/dist/{onboard-custom-DITBQuWQ.js → onboard-custom-EzfL89yz.js} +4 -4
- package/dist/{onboard-helpers-DO7u2ZOy.js → onboard-helpers-lGpaVp03.js} +10 -10
- package/dist/{onboard-hooks-K02_ZWDq.js → onboard-hooks-B7TMiJoY.js} +4 -4
- package/dist/{onboard-remote-5-ugiSN2.js → onboard-remote-nvWS7on7.js} +4 -4
- package/dist/{onboard-skills-CSzbC2KZ.js → onboard-skills-hz91W03u.js} +4 -4
- package/dist/{onboarding-BM4dvUK6.js → onboarding-CTPuMVQI.js} +14 -14
- package/dist/{onboarding.finalize-p_RDh7ET.js → onboarding.finalize-DLzl5ZOg.js} +87 -87
- package/dist/{onboarding.gateway-config-DldlRfms.js → onboarding.gateway-config-C4MoTr60.js} +18 -18
- package/dist/{onboarding.secret-input-BIRIJiCU.js → onboarding.secret-input-BFD0OW4X.js} +1 -1
- package/dist/{openai-model-default-CY2Nk4cn.js → openai-model-default-h4LbSR7f.js} +2 -2
- package/dist/{openclaw-root-BFfBQ6FD.js → openclaw-root-BU3lu8pM.js} +8 -8
- package/dist/{outbound-attachment-DfWsfe2N.js → outbound-attachment-CAJBGcna.js} +2 -2
- package/dist/{outbound-DPdJe7e1.js → outbound-kbHYt1JW.js} +3 -3
- package/dist/{pairing-cli-D2VZxWg3.js → pairing-cli-CXbmkz7Z.js} +8 -8
- package/dist/{pairing-labels-D4rnJ5pJ.js → pairing-labels-CaPLIhlh.js} +1 -1
- package/dist/{pairing-store-BXArq4hn.js → pairing-store-Brs9aNn_.js} +3 -3
- package/dist/{path-alias-guards-DbNvNQar.js → path-alias-guards-DhIwq92y.js} +3 -3
- package/dist/{path-safety-ClQO4BB6.js → path-safety-BjIM4N4t.js} +1 -1
- package/dist/{paths-BB_1ZWOj.js → paths-Cv63xST_.js} +9 -9
- package/dist/{pi-embedded-helpers-oXDyXTD8.js → pi-embedded-helpers-DC2OtKrl.js} +6 -6
- package/dist/{pi-model-discovery-CECkJMCt.js → pi-model-discovery-DOb5RTev.js} +1 -1
- package/dist/{pi-model-discovery-runtime-g7UP-SFR.js → pi-model-discovery-runtime-DShjmiiF.js} +5 -5
- package/dist/{pi-tools.before-tool-call.runtime-Df7B-ggW.js → pi-tools.before-tool-call.runtime-B079pVah.js} +5 -5
- package/dist/{pi-tools.policy-CydUEzFi.js → pi-tools.policy-DZ-X86Va.js} +5 -5
- package/dist/{plugin-auto-enable-BE4ZVjAL.js → plugin-auto-enable-BCMqEDjQ.js} +3 -3
- package/dist/{plugin-registry-DXW3eyib.js → plugin-registry-BPlCWMur.js} +3 -3
- package/dist/plugin-sdk/discord.js +6 -6
- package/dist/plugin-sdk/feishu.js +2 -2
- package/dist/plugin-sdk/signal.js +2 -2
- package/dist/plugin-sdk/zalouser.js +2 -2
- package/dist/{plugins-VAZrrfgw.js → plugins-DCxT-37x.js} +2 -2
- package/dist/{plugins-cli-BQJOOVMx.js → plugins-cli-D9ILEfyb.js} +83 -83
- package/dist/{ports-DMkRSlnH.js → ports-BlCLhwbc.js} +1 -1
- package/dist/{ports-DogAV7pa.js → ports-CER5YPnN.js} +2 -2
- package/dist/{program-BA11qFx1.js → program-CV56xn7w.js} +81 -81
- package/dist/{prompt-select-styled-B0GS28ia.js → prompt-select-styled-BOa5I_PU.js} +40 -40
- package/dist/{provider-auth-helpers-CrGL-jik.js → provider-auth-helpers-c6mNCUXO.js} +5 -5
- package/dist/{proxy-env-wKO3g8Yv.js → proxy-env-BMrSVckF.js} +1 -1
- package/dist/{push-apns-BEwBjZ0a.js → push-apns-FOkPD05E.js} +5 -5
- package/dist/{pw-ai-CnbxziFP.js → pw-ai-CxBU3aK5.js} +18 -18
- package/dist/{qmd-manager-Dp6PJ8zQ.js → qmd-manager-DEJMqoGd.js} +20 -20
- package/dist/{qr-cli-CFz9kS5X.js → qr-cli-BD2jK4fg.js} +2 -2
- package/dist/{query-expansion-BrSWVbaE.js → query-expansion-1UTIWjP6.js} +12 -12
- package/dist/{redact-snapshot-Bs4goggz.js → redact-snapshot-D_qQD4A-.js} +1 -1
- package/dist/{register.agent-D641ju8B.js → register.agent-tbPA5YAy.js} +94 -94
- package/dist/register.configure-DuwRrXc2.js +165 -0
- package/dist/{register.maintenance-BFkk8MEH.js → register.maintenance-DrqDlV5b.js} +95 -95
- package/dist/{register.message-D5uE_Hop.js → register.message-CoKXNaU0.js} +74 -74
- package/dist/{register.onboard-zHFvSwFr.js → register.onboard-CSWOSL9O.js} +18 -18
- package/dist/{register.setup-uTbv3_P1.js → register.setup-DBx5JX6h.js} +21 -21
- package/dist/{register.status-health-sessions-CB7t-JQx.js → register.status-health-sessions-D1bPtfep.js} +88 -88
- package/dist/{register.subclis-MEiNmuy5.js → register.subclis-QGJNmjss.js} +31 -31
- package/dist/{rpc-DVfuVmy9.js → rpc-DkMrTUww.js} +1 -1
- package/dist/{run-main-mrvunzuy.js → run-main-CPftxqTe.js} +92 -92
- package/dist/{runtime-C87FQrrv.js → runtime-MAH2Oph4.js} +3 -3
- package/dist/{runtime-config-collectors-BQaC477D.js → runtime-config-collectors-BJMV6Mt1.js} +1 -1
- package/dist/{runtime-whatsapp-login.runtime-DjdgScUI.js → runtime-whatsapp-login.runtime-CGYWl9eB.js} +7 -7
- package/dist/{runtime-whatsapp-outbound.runtime-B74K7opl.js → runtime-whatsapp-outbound.runtime-hZEfYaRM.js} +15 -15
- package/dist/{sandbox-Ct-_lzi1.js → sandbox-0TbzPJaS.js} +18 -18
- package/dist/{sandbox-cli-C3RoXFRE.js → sandbox-cli-NLaxffXl.js} +25 -25
- package/dist/{secrets-cli-B3hqCxvs.js → secrets-cli-KLGbYet6.js} +11 -11
- package/dist/{security-cli-DcHIyXr7.js → security-cli-EIEkcYVb.js} +42 -42
- package/dist/{send-CnRP4P-G.js → send-BW-ZtYG3.js} +5 -5
- package/dist/{send-2zKwf9NW.js → send-BtZAqquW.js} +11 -11
- package/dist/{send-DAQAKa9Z.js → send-CxgWxXZc.js} +6 -6
- package/dist/{send-5o2p_xjn.js → send-DAMtu9kK.js} +4 -4
- package/dist/{send-u1Bo4CSn.js → send-sC6ka831.js} +8 -8
- package/dist/{server-context-8pDe2iyd.js → server-context-HJVwPQYn.js} +12 -12
- package/dist/{server-Ci4xtuR9.js → server-kUElNhlY.js} +20 -20
- package/dist/{server-lifecycle-k5daSrde.js → server-lifecycle-BE32unpZ.js} +2 -2
- package/dist/{server-middleware-DMiFT9xU.js → server-middleware-AS2VOYkK.js} +1 -1
- package/dist/{server-node-events-BmnPjNXE.js → server-node-events-DkbZzI6P.js} +74 -74
- package/dist/{service-BhOFtHSw.js → service-CyStNr3d.js} +15 -15
- package/dist/{session-DkOjpX3_.js → session-CaCx4rPH.js} +1 -1
- package/dist/{session-utils-DKRmXD2l.js → session-utils-CGqb1oeq.js} +6 -6
- package/dist/{sessions-svLGrv0Z.js → sessions-BV6HNW4h.js} +4 -4
- package/dist/{sessions-BOWPuhe5.js → sessions-BmVDW-7q.js} +15 -15
- package/dist/{shared-CjuadLFV.js → shared-DUQavBtY.js} +3 -3
- package/dist/{shared-CbAkLNrg.js → shared-JW74idb0.js} +1 -1
- package/dist/{skill-commands-TpUsdjev.js → skill-commands-WtIJG0CI.js} +5 -5
- package/dist/{skill-scanner-BZvvItef.js → skill-scanner-DIFsGcqE.js} +6 -6
- package/dist/{skills-DR-vacol.js → skills-7T9PwwL6.js} +3 -3
- package/dist/{skills-cli-oay0tY8Z.js → skills-cli-DPavvthL.js} +5 -5
- package/dist/{skills-install-Vmi7xYfa.js → skills-install-BoLfaoWv.js} +6 -6
- package/dist/{skills-status-BmN697ff.js → skills-status-CK5Gnf6i.js} +1 -1
- package/dist/{slash-commands.runtime-BfaheruW.js → slash-commands.runtime-CMGx2xHy.js} +11 -11
- package/dist/slash-dispatch.runtime-BAeJXa56.js +114 -0
- package/dist/{slash-skill-commands.runtime-D34BKAN-.js → slash-skill-commands.runtime-ChU2tck2.js} +15 -15
- package/dist/{status-BcQchPaC.js → status-Bp-K1BEf.js} +27 -27
- package/dist/{status.update-B20UBTDq.js → status.update-ZYUSggzS.js} +2 -2
- package/dist/{store-DDkqo1sO.js → store-DeASfYEV.js} +5 -5
- package/dist/{subagent-registry-CPxHbyN5.js → subagent-registry-8qHIVhRq.js} +149 -149
- package/dist/subagent-registry-runtime-DVomlbm6.js +114 -0
- package/dist/{system-cli-D2yIJoKU.js → system-cli-C2xNfuQM.js} +9 -9
- package/dist/{system-run-command-BmhbnLTE.js → system-run-command-BPWZk7KI.js} +1 -1
- package/dist/{systemd-DjWVSbAG.js → systemd-Cf-0XKYu.js} +9 -9
- package/dist/{systemd-hints-Do-aQ9jw.js → systemd-hints-CYllYKO0.js} +6 -6
- package/dist/{systemd-linger-DpmnYgKU.js → systemd-linger-zllO90bD.js} +1 -1
- package/dist/{tables-BxyIF0w4.js → tables-CV7Afb0h.js} +1 -1
- package/dist/{tailnet-0_FsdHP-.js → tailnet-DJFUq7_R.js} +1 -1
- package/dist/{target-errors-KOHiT_JA.js → target-errors-iVxliVqA.js} +4 -4
- package/dist/{tool-images-CNPfeCmU.js → tool-images-Bn6dB14u.js} +1 -1
- package/dist/{tui-DL6NZZEa.js → tui-DTVy-YhN.js} +6 -6
- package/dist/{tui-cli-BNAYhvpu.js → tui-cli-CexRLJ3a.js} +32 -32
- package/dist/{update-DlS-d52F.js → update-DijPxK0g.js} +3 -3
- package/dist/{update-cli-D8-DqIs2.js → update-cli-9NslG4yR.js} +104 -104
- package/dist/{update-runner-CzTQ7BJT.js → update-runner-B6_UqreW.js} +16 -16
- package/dist/web-DGoa03ue.js +118 -0
- package/dist/{webhooks-cli-QdaQhvbT.js → webhooks-cli-B4ZcXTtw.js} +6 -6
- package/dist/{whatsapp-actions-Bp8F0cOF.js → whatsapp-actions-Jm4VW1Ve.js} +17 -17
- package/dist/{with-timeout-BMMWHlH3.js → with-timeout-C8-tY12i.js} +3 -3
- package/dist/{workspace-v76gFdZu.js → workspace-CIGzK2_w.js} +1 -1
- package/dist/{workspace-dirs-Cz_Zgtg2.js → workspace-dirs-D4SMysgC.js} +1 -1
- package/dist/{wsl-CvQfS6aU.js → wsl-CsGe5QCP.js} +2 -2
- package/package.json +7 -9
- package/scripts/auth-monitor.sh +89 -0
- package/scripts/bench-cli-startup.ts +200 -0
- package/scripts/bench-model.ts +146 -0
- package/scripts/build-and-run-mac.sh +18 -0
- package/scripts/build-docs-list.mjs +14 -0
- package/scripts/build_icon.sh +59 -0
- package/scripts/bundle-a2ui.sh +95 -0
- package/scripts/canvas-a2ui-copy.ts +40 -0
- package/scripts/changelog-to-html.sh +91 -0
- package/scripts/check-channel-agnostic-boundaries.mjs +343 -0
- package/scripts/check-composite-action-input-interpolation.py +81 -0
- package/scripts/check-ingress-agent-owner-context.mjs +45 -0
- package/scripts/check-no-monolithic-plugin-sdk-entry-imports.ts +103 -0
- package/scripts/check-no-pairing-store-group-auth.mjs +180 -0
- package/scripts/check-no-random-messaging-tmp.mjs +89 -0
- package/scripts/check-no-raw-channel-fetch.mjs +107 -0
- package/scripts/check-no-raw-window-open.mjs +86 -0
- package/scripts/check-no-register-http-handler.mjs +38 -0
- package/scripts/check-pairing-account-scope.mjs +100 -0
- package/scripts/check-plugin-sdk-exports.mjs +157 -0
- package/scripts/check-ts-max-loc.ts +80 -0
- package/scripts/check-webhook-auth-body-order.mjs +55 -0
- package/scripts/ci-changed-scope.d.mts +9 -0
- package/scripts/ci-changed-scope.mjs +141 -0
- package/scripts/claude-auth-status.sh +280 -0
- package/scripts/clawlog.sh +321 -0
- package/scripts/clawtributors-map.json +40 -0
- package/scripts/codesign-mac-app.sh +289 -0
- package/scripts/codespell-dictionary.txt +3 -0
- package/scripts/codespell-ignore.txt +9 -0
- package/scripts/committer +117 -0
- package/scripts/copy-export-html-templates.ts +59 -0
- package/scripts/copy-hook-metadata.ts +55 -0
- package/scripts/copy-plugin-sdk-root-alias.mjs +10 -0
- package/scripts/create-dmg.sh +176 -0
- package/scripts/create-instance.sh +40 -51
- package/scripts/cron_usage_report.ts +273 -0
- package/scripts/debug-claude-usage.ts +391 -0
- package/scripts/dev/discord-acp-plain-language-smoke.ts +868 -0
- package/scripts/dev/gateway-smoke.ts +75 -0
- package/scripts/dev/gateway-ws-client.ts +132 -0
- package/scripts/dev/ios-node-e2e.ts +283 -0
- package/scripts/dev/ios-pull-gateway-log.sh +17 -0
- package/scripts/dev/test-device-pair-telegram.ts +62 -0
- package/scripts/docker/cleanup-smoke/Dockerfile +19 -0
- package/scripts/docker/cleanup-smoke/run.sh +35 -0
- package/scripts/docker/install-sh-common/cli-verify.sh +47 -0
- package/scripts/docker/install-sh-e2e/Dockerfile +17 -0
- package/scripts/docker/install-sh-e2e/run.sh +535 -0
- package/scripts/docker/install-sh-nonroot/Dockerfile +33 -0
- package/scripts/docker/install-sh-nonroot/run.sh +36 -0
- package/scripts/docker/install-sh-smoke/Dockerfile +25 -0
- package/scripts/docker/install-sh-smoke/run.sh +63 -0
- package/scripts/docs-i18n/doc_mode.go +272 -0
- package/scripts/docs-i18n/glossary.go +29 -0
- package/scripts/docs-i18n/go.mod +10 -0
- package/scripts/docs-i18n/go.sum +10 -0
- package/scripts/docs-i18n/html_translate.go +160 -0
- package/scripts/docs-i18n/main.go +273 -0
- package/scripts/docs-i18n/markdown_segments.go +131 -0
- package/scripts/docs-i18n/masking.go +89 -0
- package/scripts/docs-i18n/order.go +37 -0
- package/scripts/docs-i18n/placeholders.go +30 -0
- package/scripts/docs-i18n/process.go +202 -0
- package/scripts/docs-i18n/prompt.go +146 -0
- package/scripts/docs-i18n/segment.go +11 -0
- package/scripts/docs-i18n/tm.go +132 -0
- package/scripts/docs-i18n/translator.go +247 -0
- package/scripts/docs-i18n/util.go +81 -0
- package/scripts/docs-link-audit.mjs +233 -0
- package/scripts/docs-list.js +173 -0
- package/scripts/docs-spellcheck.sh +44 -0
- package/scripts/e2e/Dockerfile +30 -0
- package/scripts/e2e/Dockerfile.qr-import +13 -0
- package/scripts/e2e/doctor-install-switch-docker.sh +160 -0
- package/scripts/e2e/gateway-network-docker.sh +145 -0
- package/scripts/e2e/onboard-docker.sh +570 -0
- package/scripts/e2e/plugins-docker.sh +224 -0
- package/scripts/e2e/qr-import-docker.sh +11 -0
- package/scripts/firecrawl-compare.ts +139 -0
- package/scripts/generate-host-env-security-policy-swift.mjs +74 -0
- package/scripts/generate-secretref-credential-matrix.ts +14 -0
- package/scripts/ghsa-patch.mjs +168 -0
- package/scripts/install-maca.sh +174 -0
- package/scripts/install.ps1 +329 -0
- package/scripts/ios-configure-signing.sh +100 -0
- package/scripts/ios-team-id.sh +207 -0
- package/scripts/label-open-issues.ts +893 -0
- package/scripts/lib/callsite-guard.mjs +45 -0
- package/scripts/lib/pairing-guard-context.mjs +13 -0
- package/scripts/lib/ts-guard-utils.mjs +157 -0
- package/scripts/make_appcast.sh +70 -0
- package/scripts/mobile-reauth.sh +84 -0
- package/scripts/notarize-mac-artifact.sh +65 -0
- package/scripts/npm_publish.sh +48 -0
- package/scripts/package-mac-app.sh +280 -0
- package/scripts/package-mac-dist.sh +93 -0
- package/scripts/podman/openclaw.container.in +28 -0
- package/scripts/pr +1708 -0
- package/scripts/pr-merge +44 -0
- package/scripts/pr-prepare +40 -0
- package/scripts/pr-review +13 -0
- package/scripts/pre-commit/filter-staged-files.mjs +39 -0
- package/scripts/pre-commit/run-node-tool.sh +31 -0
- package/scripts/protocol-gen-swift.ts +247 -0
- package/scripts/protocol-gen.ts +51 -0
- package/scripts/readability-basic-compare.ts +66 -0
- package/scripts/recover-orphaned-processes.sh +191 -0
- package/scripts/release-check.ts +362 -0
- package/scripts/repro/tsx-name-repro.ts +3 -0
- package/scripts/restart-mac.sh +269 -0
- package/scripts/run-node.d.mts +22 -0
- package/scripts/run-node.mjs +263 -0
- package/scripts/run-openclaw-podman.sh +213 -0
- package/scripts/sandbox-browser-entrypoint.sh +127 -0
- package/scripts/sandbox-browser-setup.sh +7 -0
- package/scripts/sandbox-common-setup.sh +40 -0
- package/scripts/sandbox-setup.sh +7 -0
- package/scripts/setup-auth-system.sh +119 -0
- package/scripts/shell-helpers/README.md +226 -0
- package/scripts/shell-helpers/clawdock-helpers.sh +417 -0
- package/scripts/sparkle-build.ts +76 -0
- package/scripts/sqlite-vec-smoke.mjs +38 -0
- package/scripts/sync-dist.sh +171 -0
- package/scripts/sync-labels.ts +100 -0
- package/scripts/sync-moonshot-docs.ts +125 -0
- package/scripts/sync-plugin-versions.ts +108 -0
- package/scripts/systemd/openclaw-auth-monitor.service +14 -0
- package/scripts/systemd/openclaw-auth-monitor.timer +10 -0
- package/scripts/termux-auth-widget.sh +81 -0
- package/scripts/termux-quick-auth.sh +30 -0
- package/scripts/termux-sync-widget.sh +25 -0
- package/scripts/test-cleanup-docker.sh +14 -0
- package/scripts/test-force.ts +59 -0
- package/scripts/test-hotspots.mjs +83 -0
- package/scripts/test-install-sh-docker.sh +72 -0
- package/scripts/test-install-sh-e2e-docker.sh +29 -0
- package/scripts/test-live-gateway-models-docker.sh +33 -0
- package/scripts/test-live-models-docker.sh +34 -0
- package/scripts/test-parallel.mjs +468 -0
- package/scripts/test-perf-budget.mjs +127 -0
- package/scripts/test-shell-completion.ts +223 -0
- package/scripts/ui.js +203 -0
- package/scripts/update-clawtributors.ts +573 -0
- package/scripts/update-clawtributors.types.ts +36 -0
- package/scripts/update-package-with-mirror.sh +67 -0
- package/scripts/watch-node.d.mts +14 -0
- package/scripts/watch-node.mjs +92 -0
- package/scripts/write-build-info.ts +47 -0
- package/scripts/write-cli-compat.ts +74 -0
- package/scripts/write-cli-startup-metadata.ts +93 -0
- package/scripts/write-plugin-sdk-entry-dts.ts +60 -0
- package/scripts/zai-fallback-repro.ts +168 -0
- package/dist/deliver-runtime-DixuU_uB.js +0 -61
- package/dist/deps-send-discord.runtime-CDcLcDSt.js +0 -36
- package/dist/deps-send-imessage.runtime-BGPUVMIE.js +0 -35
- package/dist/deps-send-signal.runtime-DQDD44_O.js +0 -34
- package/dist/deps-send-slack.runtime-Cpy77gBG.js +0 -32
- package/dist/deps-send-whatsapp.runtime-D2sVAclS.js +0 -119
- package/dist/image-runtime-B2qh5seQ.js +0 -55
- package/dist/register.configure-BrDOSLIq.js +0 -165
- package/dist/slash-dispatch.runtime-D0xInkf3.js +0 -114
- package/dist/subagent-registry-runtime-SkB2tTaE.js +0 -114
- package/dist/web-DWiOofzq.js +0 -118
- package/install.sh +0 -293
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as normalizeAccountId } from "./session-key-k6urs9r-.js";
|
|
2
|
-
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-
|
|
2
|
+
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-khXX75l1.js";
|
|
3
3
|
|
|
4
4
|
//#region src/signal/accounts.ts
|
|
5
5
|
const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("signal");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as normalizeAccountId } from "./session-key-k6urs9r-.js";
|
|
2
|
-
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-
|
|
2
|
+
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-khXX75l1.js";
|
|
3
3
|
|
|
4
4
|
//#region src/imessage/accounts.ts
|
|
5
5
|
const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("imessage");
|
|
@@ -6,7 +6,7 @@ import { _ as normalizeAccountId, g as DEFAULT_ACCOUNT_ID, v as normalizeOptiona
|
|
|
6
6
|
import { f as jidToE164, v as resolveUserPath } from "./utils-6WlODK5w.js";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import fs from "node:fs";
|
|
9
|
-
import
|
|
9
|
+
import fsPromises from "node:fs/promises";
|
|
10
10
|
|
|
11
11
|
//#region src/routing/account-lookup.ts
|
|
12
12
|
function resolveAccountEntry(accounts, accountId) {
|
|
@@ -105,14 +105,14 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
|
|
|
105
105
|
maybeRestoreCredsFromBackup(resolvedAuthDir);
|
|
106
106
|
const credsPath = resolveWebCredsPath(resolvedAuthDir);
|
|
107
107
|
try {
|
|
108
|
-
await
|
|
108
|
+
await fsPromises.access(resolvedAuthDir);
|
|
109
109
|
} catch {
|
|
110
110
|
return false;
|
|
111
111
|
}
|
|
112
112
|
try {
|
|
113
|
-
const stats = await
|
|
113
|
+
const stats = await fsPromises.stat(credsPath);
|
|
114
114
|
if (!stats.isFile() || stats.size <= 1) return false;
|
|
115
|
-
const raw = await
|
|
115
|
+
const raw = await fsPromises.readFile(credsPath, "utf-8");
|
|
116
116
|
JSON.parse(raw);
|
|
117
117
|
return true;
|
|
118
118
|
} catch {
|
|
@@ -120,7 +120,7 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
async function clearLegacyBaileysAuthState(authDir) {
|
|
123
|
-
const entries = await
|
|
123
|
+
const entries = await fsPromises.readdir(authDir, { withFileTypes: true });
|
|
124
124
|
const shouldDelete = (name) => {
|
|
125
125
|
if (name === "oauth.json") return false;
|
|
126
126
|
if (name === "creds.json" || name === "creds.json.bak") return true;
|
|
@@ -130,7 +130,7 @@ async function clearLegacyBaileysAuthState(authDir) {
|
|
|
130
130
|
await Promise.all(entries.map(async (entry) => {
|
|
131
131
|
if (!entry.isFile()) return;
|
|
132
132
|
if (!shouldDelete(entry.name)) return;
|
|
133
|
-
await
|
|
133
|
+
await fsPromises.rm(path.join(authDir, entry.name), { force: true });
|
|
134
134
|
}));
|
|
135
135
|
}
|
|
136
136
|
async function logoutWeb(params) {
|
|
@@ -141,7 +141,7 @@ async function logoutWeb(params) {
|
|
|
141
141
|
return false;
|
|
142
142
|
}
|
|
143
143
|
if (params.isLegacyAuthDir) await clearLegacyBaileysAuthState(resolvedAuthDir);
|
|
144
|
-
else await
|
|
144
|
+
else await fsPromises.rm(resolvedAuthDir, {
|
|
145
145
|
recursive: true,
|
|
146
146
|
force: true
|
|
147
147
|
});
|
|
@@ -3,10 +3,10 @@ import "./paths-BMo6kTge.js";
|
|
|
3
3
|
import { d as defaultRuntime } from "./subsystem-BmoaLBy-.js";
|
|
4
4
|
import "./boolean-DtWR5bt3.js";
|
|
5
5
|
import { n as isMainModule } from "./entry.js";
|
|
6
|
-
import { z as loadConfig } from "./auth-profiles-
|
|
7
|
-
import "./agent-scope-
|
|
6
|
+
import { z as loadConfig } from "./auth-profiles-15pq9j9V.js";
|
|
7
|
+
import "./agent-scope-NQ9CtXYN.js";
|
|
8
8
|
import { v as resolveUserPath, x as shortenHomePath } from "./utils-6WlODK5w.js";
|
|
9
|
-
import "./openclaw-root-
|
|
9
|
+
import "./openclaw-root-BU3lu8pM.js";
|
|
10
10
|
import "./logger-9wCpWqHD.js";
|
|
11
11
|
import "./exec-GR2kPVc1.js";
|
|
12
12
|
import "./registry-C3qkO1RG.js";
|
|
@@ -14,13 +14,13 @@ import "./github-copilot-token-Byc_YVYE.js";
|
|
|
14
14
|
import "./host-env-security-lcjXF83D.js";
|
|
15
15
|
import { t as VERSION } from "./version-DdJhsIqk.js";
|
|
16
16
|
import "./env-vars-mSSOl7Rv.js";
|
|
17
|
-
import "./manifest-registry-
|
|
17
|
+
import "./manifest-registry-CJb8odRF.js";
|
|
18
18
|
import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CIqYyQ36.js";
|
|
19
|
-
import { t as GatewayClient } from "./client-
|
|
20
|
-
import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-
|
|
19
|
+
import { t as GatewayClient } from "./client-g0366Z73.js";
|
|
20
|
+
import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-CZgRbVYm.js";
|
|
21
21
|
import "./pairing-token-BXrId5bQ.js";
|
|
22
|
-
import "./net-
|
|
23
|
-
import "./tailnet-
|
|
22
|
+
import "./net-BAIqYNz0.js";
|
|
23
|
+
import "./tailnet-DJFUq7_R.js";
|
|
24
24
|
import { r as isKnownCoreToolId } from "./tool-catalog-C04U7H3F.js";
|
|
25
25
|
import { n as resolveWindowsSpawnProgram, t as materializeWindowsSpawnProgram } from "./windows-spawn-BTikdM3p.js";
|
|
26
26
|
import { t as formatDocsLink } from "./links-D_JFKt7M.js";
|
|
@@ -2,13 +2,13 @@ import { g as resolveStateDir, y as resolveRequiredHomeDir } from "./paths-BMo6k
|
|
|
2
2
|
import { t as createSubsystemLogger } from "./subsystem-BmoaLBy-.js";
|
|
3
3
|
import { E as parseAgentSessionKey, T as isSubagentSessionKey, c as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, w as isCronSessionKey } from "./session-key-k6urs9r-.js";
|
|
4
4
|
import { m as pathExists, v as resolveUserPath } from "./utils-6WlODK5w.js";
|
|
5
|
-
import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveOpenClawPackageRoot } from "./openclaw-root-
|
|
5
|
+
import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveOpenClawPackageRoot } from "./openclaw-root-BU3lu8pM.js";
|
|
6
6
|
import { t as runCommandWithTimeout } from "./exec-GR2kPVc1.js";
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
import os from "node:os";
|
|
9
9
|
import path from "node:path";
|
|
10
10
|
import fs from "node:fs";
|
|
11
|
-
import
|
|
11
|
+
import fsPromises from "node:fs/promises";
|
|
12
12
|
|
|
13
13
|
//#region src/config/model-input.ts
|
|
14
14
|
function resolveAgentModelPrimaryValue(model) {
|
|
@@ -150,7 +150,7 @@ async function loadTemplate(name) {
|
|
|
150
150
|
const templateDir = await resolveWorkspaceTemplateDir();
|
|
151
151
|
const templatePath = path.join(templateDir, name);
|
|
152
152
|
try {
|
|
153
|
-
return stripFrontMatter(await
|
|
153
|
+
return stripFrontMatter(await fsPromises.readFile(templatePath, "utf-8"));
|
|
154
154
|
} catch {
|
|
155
155
|
throw new Error(`Missing workspace template: ${name} (${templatePath}). Ensure docs/reference/templates are packaged.`);
|
|
156
156
|
}
|
|
@@ -165,7 +165,7 @@ async function loadTemplate(name) {
|
|
|
165
165
|
}
|
|
166
166
|
async function writeFileIfMissing(filePath, content) {
|
|
167
167
|
try {
|
|
168
|
-
await
|
|
168
|
+
await fsPromises.writeFile(filePath, content, {
|
|
169
169
|
encoding: "utf-8",
|
|
170
170
|
flag: "wx"
|
|
171
171
|
});
|
|
@@ -177,7 +177,7 @@ async function writeFileIfMissing(filePath, content) {
|
|
|
177
177
|
}
|
|
178
178
|
async function fileExists(filePath) {
|
|
179
179
|
try {
|
|
180
|
-
await
|
|
180
|
+
await fsPromises.access(filePath);
|
|
181
181
|
return true;
|
|
182
182
|
} catch {
|
|
183
183
|
return false;
|
|
@@ -201,7 +201,7 @@ function parseWorkspaceOnboardingState(raw) {
|
|
|
201
201
|
}
|
|
202
202
|
async function readWorkspaceOnboardingState(statePath) {
|
|
203
203
|
try {
|
|
204
|
-
return parseWorkspaceOnboardingState(await
|
|
204
|
+
return parseWorkspaceOnboardingState(await fsPromises.readFile(statePath, "utf-8")) ?? { version: WORKSPACE_STATE_VERSION };
|
|
205
205
|
} catch (err) {
|
|
206
206
|
if (err.code !== "ENOENT") throw err;
|
|
207
207
|
return { version: WORKSPACE_STATE_VERSION };
|
|
@@ -215,20 +215,20 @@ async function isWorkspaceOnboardingCompleted(dir) {
|
|
|
215
215
|
return typeof state.onboardingCompletedAt === "string" && state.onboardingCompletedAt.trim().length > 0;
|
|
216
216
|
}
|
|
217
217
|
async function writeWorkspaceOnboardingState(statePath, state) {
|
|
218
|
-
await
|
|
218
|
+
await fsPromises.mkdir(path.dirname(statePath), { recursive: true });
|
|
219
219
|
const payload = `${JSON.stringify(state, null, 2)}\n`;
|
|
220
220
|
const tmpPath = `${statePath}.tmp-${process.pid}-${Date.now().toString(36)}`;
|
|
221
221
|
try {
|
|
222
|
-
await
|
|
223
|
-
await
|
|
222
|
+
await fsPromises.writeFile(tmpPath, payload, { encoding: "utf-8" });
|
|
223
|
+
await fsPromises.rename(tmpPath, statePath);
|
|
224
224
|
} catch (err) {
|
|
225
|
-
await
|
|
225
|
+
await fsPromises.unlink(tmpPath).catch(() => {});
|
|
226
226
|
throw err;
|
|
227
227
|
}
|
|
228
228
|
}
|
|
229
229
|
async function hasGitRepo(dir) {
|
|
230
230
|
try {
|
|
231
|
-
await
|
|
231
|
+
await fsPromises.stat(path.join(dir, ".git"));
|
|
232
232
|
return true;
|
|
233
233
|
} catch {
|
|
234
234
|
return false;
|
|
@@ -258,7 +258,7 @@ async function ensureGitRepo(dir, isBrandNewWorkspace) {
|
|
|
258
258
|
}
|
|
259
259
|
async function ensureAgentWorkspace(params) {
|
|
260
260
|
const dir = resolveUserPath(params?.dir?.trim() ? params.dir.trim() : DEFAULT_AGENT_WORKSPACE_DIR);
|
|
261
|
-
await
|
|
261
|
+
await fsPromises.mkdir(dir, { recursive: true });
|
|
262
262
|
if (!params?.ensureBootstrapFiles) return { dir };
|
|
263
263
|
const agentsPath = path.join(dir, DEFAULT_AGENTS_FILENAME);
|
|
264
264
|
const soulPath = path.join(dir, DEFAULT_SOUL_FILENAME);
|
|
@@ -285,7 +285,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
285
285
|
const paths = [...templatePaths, ...userContentPaths];
|
|
286
286
|
return (await Promise.all(paths.map(async (p) => {
|
|
287
287
|
try {
|
|
288
|
-
await
|
|
288
|
+
await fsPromises.access(p);
|
|
289
289
|
return true;
|
|
290
290
|
} catch {
|
|
291
291
|
return false;
|
|
@@ -318,7 +318,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
318
318
|
if (!state.bootstrapSeededAt && bootstrapExists) markState({ bootstrapSeededAt: nowIso() });
|
|
319
319
|
if (!state.onboardingCompletedAt && state.bootstrapSeededAt && !bootstrapExists) markState({ onboardingCompletedAt: nowIso() });
|
|
320
320
|
if (!state.bootstrapSeededAt && !state.onboardingCompletedAt && !bootstrapExists) {
|
|
321
|
-
const [identityContent, userContent] = await Promise.all([
|
|
321
|
+
const [identityContent, userContent] = await Promise.all([fsPromises.readFile(identityPath, "utf-8"), fsPromises.readFile(userPath, "utf-8")]);
|
|
322
322
|
const hasUserContent = await (async () => {
|
|
323
323
|
const indicators = [
|
|
324
324
|
path.join(dir, "memory"),
|
|
@@ -326,7 +326,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
326
326
|
path.join(dir, ".git")
|
|
327
327
|
];
|
|
328
328
|
for (const indicator of indicators) try {
|
|
329
|
-
await
|
|
329
|
+
await fsPromises.access(indicator);
|
|
330
330
|
return true;
|
|
331
331
|
} catch {}
|
|
332
332
|
return false;
|
|
@@ -357,7 +357,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
|
|
|
357
357
|
for (const name of candidates) {
|
|
358
358
|
const filePath = path.join(resolvedDir, name);
|
|
359
359
|
try {
|
|
360
|
-
await
|
|
360
|
+
await fsPromises.access(filePath);
|
|
361
361
|
entries.push({
|
|
362
362
|
name,
|
|
363
363
|
filePath
|
|
@@ -370,7 +370,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
|
|
|
370
370
|
for (const entry of entries) {
|
|
371
371
|
let key = entry.filePath;
|
|
372
372
|
try {
|
|
373
|
-
key = await
|
|
373
|
+
key = await fsPromises.realpath(entry.filePath);
|
|
374
374
|
} catch {}
|
|
375
375
|
if (seen.has(key)) continue;
|
|
376
376
|
seen.add(key);
|
|
@@ -1,25 +1,25 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { d as defaultRuntime } from "./subsystem-BmoaLBy-.js";
|
|
3
|
-
import { G as writeConfigFile, ar as resolveAuthStorePath, er as ensureAuthProfileStore } from "./auth-profiles-
|
|
3
|
+
import { G as writeConfigFile, ar as resolveAuthStorePath, er as ensureAuthProfileStore } from "./auth-profiles-15pq9j9V.js";
|
|
4
4
|
import { t as formatCliCommand } from "./command-format-CLEQe4bk.js";
|
|
5
|
-
import { a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
5
|
+
import { a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-NQ9CtXYN.js";
|
|
6
6
|
import { c as normalizeAgentId, g as DEFAULT_ACCOUNT_ID, t as DEFAULT_AGENT_ID } from "./session-key-k6urs9r-.js";
|
|
7
7
|
import { v as resolveUserPath, x as shortenHomePath } from "./utils-6WlODK5w.js";
|
|
8
|
-
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-
|
|
9
|
-
import { U as parseIdentityMarkdown, V as identityHasValues } from "./subagent-registry-
|
|
8
|
+
import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DCxT-37x.js";
|
|
9
|
+
import { U as parseIdentityMarkdown, V as identityHasValues } from "./subagent-registry-8qHIVhRq.js";
|
|
10
10
|
import { s as resolveSessionTranscriptsDirForAgent } from "./paths-DvFmz0MB.js";
|
|
11
|
-
import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-
|
|
11
|
+
import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-lGpaVp03.js";
|
|
12
12
|
import { t as WizardCancelledError } from "./prompts-l_pUOv42.js";
|
|
13
13
|
import { t as createClackPrompter } from "./clack-prompter-t5d11SiL.js";
|
|
14
14
|
import { t as resolveChannelDefaultAccountId } from "./helpers-D7MilaX-.js";
|
|
15
|
-
import { a as parseBindingSpecs, i as describeBinding, n as applyAgentBindings, o as removeAgentBindings, r as buildChannelBindings, t as requireValidConfigSnapshot } from "./config-validation-
|
|
16
|
-
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-
|
|
17
|
-
import { r as setupChannels } from "./onboard-channels-
|
|
15
|
+
import { a as parseBindingSpecs, i as describeBinding, n as applyAgentBindings, o as removeAgentBindings, r as buildChannelBindings, t as requireValidConfigSnapshot } from "./config-validation-BngLiGoq.js";
|
|
16
|
+
import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-QVfqc4C-.js";
|
|
17
|
+
import { r as setupChannels } from "./onboard-channels-SlJu6XWJ.js";
|
|
18
18
|
import { n as logConfigUpdated } from "./logging-DBqQTcKD.js";
|
|
19
19
|
import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-4mupmvzh.js";
|
|
20
|
-
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-
|
|
20
|
+
import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-gp-h1aBd.js";
|
|
21
21
|
import path from "node:path";
|
|
22
|
-
import
|
|
22
|
+
import fsPromises from "node:fs/promises";
|
|
23
23
|
|
|
24
24
|
//#region src/commands/agents.command-shared.ts
|
|
25
25
|
function createQuietRuntime(runtime) {
|
|
@@ -266,7 +266,7 @@ async function agentsUnbindCommand(opts, runtime = defaultRuntime) {
|
|
|
266
266
|
//#region src/commands/agents.commands.add.ts
|
|
267
267
|
async function fileExists(pathname) {
|
|
268
268
|
try {
|
|
269
|
-
await
|
|
269
|
+
await fsPromises.stat(pathname);
|
|
270
270
|
return true;
|
|
271
271
|
} catch {
|
|
272
272
|
return false;
|
|
@@ -408,8 +408,8 @@ async function agentsAddCommand(opts, runtime = defaultRuntime, params) {
|
|
|
408
408
|
message: `Copy auth profiles from "${defaultAgentId}"?`,
|
|
409
409
|
initialValue: false
|
|
410
410
|
})) {
|
|
411
|
-
await
|
|
412
|
-
await
|
|
411
|
+
await fsPromises.mkdir(path.dirname(destAuthPath), { recursive: true });
|
|
412
|
+
await fsPromises.copyFile(sourceAuthPath, destAuthPath);
|
|
413
413
|
await prompter.note(`Copied auth profiles from "${defaultAgentId}".`, "Auth profiles");
|
|
414
414
|
}
|
|
415
415
|
}
|
|
@@ -557,7 +557,7 @@ const coerceTrimmed = (value) => {
|
|
|
557
557
|
};
|
|
558
558
|
async function loadIdentityFromFile(filePath) {
|
|
559
559
|
try {
|
|
560
|
-
const parsed = parseIdentityMarkdown(await
|
|
560
|
+
const parsed = parseIdentityMarkdown(await fsPromises.readFile(filePath, "utf-8"));
|
|
561
561
|
if (!identityHasValues(parsed)) return null;
|
|
562
562
|
return parsed;
|
|
563
563
|
} catch {
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
1
|
+
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-NQ9CtXYN.js";
|
|
2
2
|
import { c as normalizeAgentId } from "./session-key-k6urs9r-.js";
|
|
3
|
-
import { H as loadAgentIdentityFromWorkspace, V as identityHasValues } from "./subagent-registry-
|
|
3
|
+
import { H as loadAgentIdentityFromWorkspace, V as identityHasValues } from "./subagent-registry-8qHIVhRq.js";
|
|
4
4
|
|
|
5
5
|
//#region src/commands/agents.config.ts
|
|
6
6
|
function findAgentEntryIndex(list, agentId) {
|
|
@@ -2,10 +2,10 @@ import { a as logVerbose, c as shouldLogVerbose } from "./globals-ENg_AXRt.js";
|
|
|
2
2
|
import "./paths-BMo6kTge.js";
|
|
3
3
|
import "./subsystem-BmoaLBy-.js";
|
|
4
4
|
import "./boolean-DtWR5bt3.js";
|
|
5
|
-
import "./auth-profiles-
|
|
6
|
-
import "./agent-scope-
|
|
5
|
+
import "./auth-profiles-15pq9j9V.js";
|
|
6
|
+
import "./agent-scope-NQ9CtXYN.js";
|
|
7
7
|
import "./utils-6WlODK5w.js";
|
|
8
|
-
import "./openclaw-root-
|
|
8
|
+
import "./openclaw-root-BU3lu8pM.js";
|
|
9
9
|
import "./logger-9wCpWqHD.js";
|
|
10
10
|
import "./exec-GR2kPVc1.js";
|
|
11
11
|
import "./registry-C3qkO1RG.js";
|
|
@@ -13,49 +13,49 @@ import "./github-copilot-token-Byc_YVYE.js";
|
|
|
13
13
|
import "./host-env-security-lcjXF83D.js";
|
|
14
14
|
import "./version-DdJhsIqk.js";
|
|
15
15
|
import "./env-vars-mSSOl7Rv.js";
|
|
16
|
-
import "./manifest-registry-
|
|
17
|
-
import "./dock-
|
|
16
|
+
import "./manifest-registry-CJb8odRF.js";
|
|
17
|
+
import "./dock-nA2DVPCV.js";
|
|
18
18
|
import "./frontmatter-D2o8_Jfu.js";
|
|
19
|
-
import "./skills-
|
|
20
|
-
import "./path-alias-guards-
|
|
19
|
+
import "./skills-7T9PwwL6.js";
|
|
20
|
+
import "./path-alias-guards-DhIwq92y.js";
|
|
21
21
|
import "./message-channel-CIqYyQ36.js";
|
|
22
|
-
import "./sessions-
|
|
23
|
-
import "./plugins-
|
|
24
|
-
import "./accounts-
|
|
25
|
-
import "./accounts-
|
|
22
|
+
import "./sessions-BmVDW-7q.js";
|
|
23
|
+
import "./plugins-DCxT-37x.js";
|
|
24
|
+
import "./accounts-khXX75l1.js";
|
|
25
|
+
import "./accounts-CUYZBSKh.js";
|
|
26
26
|
import "./logging-CcxUDNcI.js";
|
|
27
|
-
import "./accounts-
|
|
27
|
+
import "./accounts-BtEMxtPK.js";
|
|
28
28
|
import "./paths-DvFmz0MB.js";
|
|
29
29
|
import "./chat-envelope-D3RSz140.js";
|
|
30
|
-
import "./net-
|
|
31
|
-
import "./tailnet-
|
|
32
|
-
import "./image-ops-
|
|
33
|
-
import "./pi-embedded-helpers-
|
|
34
|
-
import "./sandbox-
|
|
30
|
+
import "./net-BAIqYNz0.js";
|
|
31
|
+
import "./tailnet-DJFUq7_R.js";
|
|
32
|
+
import "./image-ops-AJL9tN3_.js";
|
|
33
|
+
import "./pi-embedded-helpers-DC2OtKrl.js";
|
|
34
|
+
import "./sandbox-0TbzPJaS.js";
|
|
35
35
|
import "./tool-catalog-C04U7H3F.js";
|
|
36
|
-
import "./chrome-
|
|
36
|
+
import "./chrome-L_icBVLq.js";
|
|
37
37
|
import "./tailscale-aXobtl7f.js";
|
|
38
|
-
import "./auth-
|
|
39
|
-
import "./server-context-
|
|
40
|
-
import "./paths-
|
|
38
|
+
import "./auth-YB6m93-M.js";
|
|
39
|
+
import "./server-context-HJVwPQYn.js";
|
|
40
|
+
import "./paths-Cv63xST_.js";
|
|
41
41
|
import "./redact-TY4yJzrg.js";
|
|
42
42
|
import "./errors-BbXSsOtF.js";
|
|
43
|
-
import "./fs-safe-
|
|
44
|
-
import "./proxy-env-
|
|
45
|
-
import "./store-
|
|
46
|
-
import "./ports-
|
|
43
|
+
import "./fs-safe-CFLs-j60.js";
|
|
44
|
+
import "./proxy-env-BMrSVckF.js";
|
|
45
|
+
import "./store-DeASfYEV.js";
|
|
46
|
+
import "./ports-CER5YPnN.js";
|
|
47
47
|
import "./trash-C6zcuM95.js";
|
|
48
|
-
import "./server-middleware-
|
|
49
|
-
import "./tool-images-
|
|
48
|
+
import "./server-middleware-AS2VOYkK.js";
|
|
49
|
+
import "./tool-images-Bn6dB14u.js";
|
|
50
50
|
import "./thinking-CrcT589P.js";
|
|
51
|
-
import "./models-config-
|
|
52
|
-
import "./model-catalog-
|
|
53
|
-
import "./fetch-
|
|
54
|
-
import { _ as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-
|
|
55
|
-
import "./fetch-guard-
|
|
56
|
-
import "./image-
|
|
51
|
+
import "./models-config-Dabs9Kdv.js";
|
|
52
|
+
import "./model-catalog-DZ6kl2Ko.js";
|
|
53
|
+
import "./fetch-BhAHVdwx.js";
|
|
54
|
+
import { _ as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-DYKvqK54.js";
|
|
55
|
+
import "./fetch-guard-BbBdhWz_.js";
|
|
56
|
+
import "./image-Bw71y73Q.js";
|
|
57
57
|
import "./tool-display-CvlNC8XD.js";
|
|
58
|
-
import "./api-key-rotation-
|
|
58
|
+
import "./api-key-rotation-Vix80AUw.js";
|
|
59
59
|
import "./proxy-fetch-DezNPSn_.js";
|
|
60
60
|
|
|
61
61
|
//#region src/media-understanding/audio-preflight.ts
|
package/dist/{audio-transcription-runner-D1cvrZ6s.js → audio-transcription-runner-DYKvqK54.js}
RENAMED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { a as logVerbose, c as shouldLogVerbose, k as resolvePreferredOpenClawTmpDir } from "./globals-ENg_AXRt.js";
|
|
2
|
-
import { $ as mergeInboundPathRoots, Q as isInboundPathAllowed, Sr as normalizeProviderId, Vr as normalizeGoogleModelId, Z as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, et as resolveIMessageAttachmentRoots, mi as resolveApiKeyForProvider, pi as requireApiKey } from "./auth-profiles-
|
|
3
|
-
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-
|
|
2
|
+
import { $ as mergeInboundPathRoots, Q as isInboundPathAllowed, Sr as normalizeProviderId, Vr as normalizeGoogleModelId, Z as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, et as resolveIMessageAttachmentRoots, mi as resolveApiKeyForProvider, pi as requireApiKey } from "./auth-profiles-15pq9j9V.js";
|
|
3
|
+
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-NQ9CtXYN.js";
|
|
4
4
|
import { n as runExec } from "./exec-GR2kPVc1.js";
|
|
5
|
-
import { j as normalizeChatType } from "./plugins-
|
|
6
|
-
import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-
|
|
5
|
+
import { j as normalizeChatType } from "./plugins-DCxT-37x.js";
|
|
6
|
+
import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-AJL9tN3_.js";
|
|
7
7
|
import { i as formatUncaughtError, n as extractErrorCode, s as readErrorName, t as collectErrorGraphCandidates } from "./errors-BbXSsOtF.js";
|
|
8
|
-
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-
|
|
9
|
-
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia, t as MediaFetchError } from "./fetch-
|
|
8
|
+
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-DZ6kl2Ko.js";
|
|
9
|
+
import { a as getDefaultMediaLocalRoots, n as fetchRemoteMedia, t as MediaFetchError } from "./fetch-BhAHVdwx.js";
|
|
10
10
|
import { n as fetchWithTimeout } from "./fetch-timeout-Mawkd1Br.js";
|
|
11
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
12
|
-
import { t as describeImageWithModel } from "./image-
|
|
13
|
-
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-
|
|
11
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-BbBdhWz_.js";
|
|
12
|
+
import { t as describeImageWithModel } from "./image-Bw71y73Q.js";
|
|
13
|
+
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-Vix80AUw.js";
|
|
14
14
|
import { n as resolveProxyFetchFromEnv } from "./proxy-fetch-DezNPSn_.js";
|
|
15
15
|
import process$1 from "node:process";
|
|
16
16
|
import { fileURLToPath } from "node:url";
|
|
17
17
|
import os from "node:os";
|
|
18
18
|
import path from "node:path";
|
|
19
19
|
import { constants } from "node:fs";
|
|
20
|
-
import
|
|
20
|
+
import fsPromises from "node:fs/promises";
|
|
21
21
|
import crypto from "node:crypto";
|
|
22
22
|
|
|
23
23
|
//#region src/media-understanding/attachments.normalize.ts
|
|
@@ -426,7 +426,7 @@ var MediaAttachmentCache = class {
|
|
|
426
426
|
const size = await this.ensureLocalStat(entry);
|
|
427
427
|
if (entry.resolvedPath) {
|
|
428
428
|
if (size !== void 0 && size > params.maxBytes) throw new MediaUnderstandingSkipError("maxBytes", `Attachment ${params.attachmentIndex + 1} exceeds maxBytes ${params.maxBytes}`);
|
|
429
|
-
const buffer = await
|
|
429
|
+
const buffer = await fsPromises.readFile(entry.resolvedPath);
|
|
430
430
|
entry.buffer = buffer;
|
|
431
431
|
entry.bufferMime = entry.bufferMime ?? entry.attachment.mime ?? await detectMime({
|
|
432
432
|
buffer,
|
|
@@ -496,10 +496,10 @@ var MediaAttachmentCache = class {
|
|
|
496
496
|
prefix: "openclaw-media",
|
|
497
497
|
extension: path.extname(bufferResult.fileName || "") || ""
|
|
498
498
|
});
|
|
499
|
-
await
|
|
499
|
+
await fsPromises.writeFile(tmpPath, bufferResult.buffer);
|
|
500
500
|
entry.tempPath = tmpPath;
|
|
501
501
|
entry.tempCleanup = async () => {
|
|
502
|
-
await
|
|
502
|
+
await fsPromises.unlink(tmpPath).catch(() => {});
|
|
503
503
|
};
|
|
504
504
|
return {
|
|
505
505
|
path: tmpPath,
|
|
@@ -546,12 +546,12 @@ var MediaAttachmentCache = class {
|
|
|
546
546
|
if (entry.statSize !== void 0) return entry.statSize;
|
|
547
547
|
try {
|
|
548
548
|
const currentPath = entry.resolvedPath;
|
|
549
|
-
const stat = await
|
|
549
|
+
const stat = await fsPromises.stat(currentPath);
|
|
550
550
|
if (!stat.isFile()) {
|
|
551
551
|
entry.resolvedPath = void 0;
|
|
552
552
|
return;
|
|
553
553
|
}
|
|
554
|
-
const canonicalPath = await
|
|
554
|
+
const canonicalPath = await fsPromises.realpath(currentPath).catch(() => currentPath);
|
|
555
555
|
if (!isInboundPathAllowed({
|
|
556
556
|
filePath: canonicalPath,
|
|
557
557
|
roots: await this.getCanonicalLocalPathRoots()
|
|
@@ -573,7 +573,7 @@ var MediaAttachmentCache = class {
|
|
|
573
573
|
if (this.canonicalLocalPathRoots) return await this.canonicalLocalPathRoots;
|
|
574
574
|
this.canonicalLocalPathRoots = (async () => mergeInboundPathRoots(this.localPathRoots, await Promise.all(this.localPathRoots.map(async (root) => {
|
|
575
575
|
if (root.includes("*")) return root;
|
|
576
|
-
return await
|
|
576
|
+
return await fsPromises.realpath(root).catch(() => root);
|
|
577
577
|
}))))();
|
|
578
578
|
return await this.canonicalLocalPathRoots;
|
|
579
579
|
}
|
|
@@ -646,7 +646,7 @@ const MIN_AUDIO_FILE_BYTES = 1024;
|
|
|
646
646
|
async function fileExists(filePath) {
|
|
647
647
|
if (!filePath) return false;
|
|
648
648
|
try {
|
|
649
|
-
await
|
|
649
|
+
await fsPromises.stat(filePath);
|
|
650
650
|
return true;
|
|
651
651
|
} catch {
|
|
652
652
|
return false;
|
|
@@ -1237,7 +1237,7 @@ async function resolveCliOutput(params) {
|
|
|
1237
1237
|
const commandId = commandBase(params.command);
|
|
1238
1238
|
const fileOutput = commandId === "whisper-cli" ? resolveWhisperCppOutputPath(params.args) : commandId === "whisper" ? resolveWhisperOutputPath(params.args, params.mediaPath) : commandId === "parakeet-mlx" ? resolveParakeetOutputPath(params.args, params.mediaPath) : null;
|
|
1239
1239
|
if (fileOutput && await fileExists(fileOutput)) try {
|
|
1240
|
-
const content = await
|
|
1240
|
+
const content = await fsPromises.readFile(fileOutput, "utf8");
|
|
1241
1241
|
if (content.trim()) return content.trim();
|
|
1242
1242
|
} catch {}
|
|
1243
1243
|
if (commandId === "gemini") {
|
|
@@ -1546,10 +1546,10 @@ async function runCliEntry(params) {
|
|
|
1546
1546
|
timeoutMs
|
|
1547
1547
|
});
|
|
1548
1548
|
if (capability === "audio") assertMinAudioSize({
|
|
1549
|
-
size: (await
|
|
1549
|
+
size: (await fsPromises.stat(pathResult.path)).size,
|
|
1550
1550
|
attachmentIndex: params.attachmentIndex
|
|
1551
1551
|
});
|
|
1552
|
-
const outputDir = await
|
|
1552
|
+
const outputDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "openclaw-media-cli-"));
|
|
1553
1553
|
const mediaPath = pathResult.path;
|
|
1554
1554
|
const outputBase = path.join(outputDir, path.parse(mediaPath).name);
|
|
1555
1555
|
const templCtx = {
|
|
@@ -1583,7 +1583,7 @@ async function runCliEntry(params) {
|
|
|
1583
1583
|
model: command
|
|
1584
1584
|
};
|
|
1585
1585
|
} finally {
|
|
1586
|
-
await
|
|
1586
|
+
await fsPromises.rm(outputDir, {
|
|
1587
1587
|
recursive: true,
|
|
1588
1588
|
force: true
|
|
1589
1589
|
}).catch(() => {});
|
|
@@ -1627,9 +1627,9 @@ function candidateBinaryNames(name) {
|
|
|
1627
1627
|
}
|
|
1628
1628
|
async function isExecutable(filePath) {
|
|
1629
1629
|
try {
|
|
1630
|
-
if (!(await
|
|
1630
|
+
if (!(await fsPromises.stat(filePath)).isFile()) return false;
|
|
1631
1631
|
if (process.platform === "win32") return true;
|
|
1632
|
-
await
|
|
1632
|
+
await fsPromises.access(filePath, constants.X_OK);
|
|
1633
1633
|
return true;
|
|
1634
1634
|
} catch {
|
|
1635
1635
|
return false;
|