@bitseek/claw 1.2.0 → 1.2.1
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-B3zSNWIv.js → accounts-2NNZ6Hbp.js} +1 -1
- package/dist/{accounts-BQHz8_1_.js → accounts-Cv5CUnT4.js} +7 -7
- package/dist/{accounts-DTfEeXyO.js → accounts-NHpMJ0aq.js} +1 -1
- package/dist/{acp-cli-DYu2k7v9.js → acp-cli-B0u6no4K.js} +8 -8
- package/dist/{agent-scope-CJelRKYY.js → agent-scope-CY2-lUIY.js} +1 -1
- package/dist/{agents-B1UgGs6R.js → agents-Cweyfj22.js} +15 -15
- package/dist/{agents.config-CmUkQxtt.js → agents.config-DA3Y8w1t.js} +2 -2
- package/dist/{api-key-rotation-xfk-b2Sv.js → api-key-rotation-Cf7QM5M_.js} +1 -1
- package/dist/{audio-preflight-CHD1xVrt.js → audio-preflight-DdrORTn9.js} +4 -4
- package/dist/{audio-preflight-59K4nxSA.js → audio-preflight-SRgix4XS.js} +36 -36
- package/dist/{audio-transcription-runner-DwWOJBSn.js → audio-transcription-runner-CGsd7139.js} +1 -1
- package/dist/{audio-transcription-runner-DGyS5H3K.js → audio-transcription-runner-DkibzFT2.js} +22 -22
- package/dist/{audit-DJfP7KjJ.js → audit-TSVXvoTa.js} +29 -29
- package/dist/{auth-B3HDYw4G.js → auth-anvTU0Sb.js} +1 -1
- package/dist/{auth-choice-Ko0_UPIV.js → auth-choice-Bhzlukg0.js} +12 -12
- package/dist/{auth-choice-f6C6bI9v.js → auth-choice-CR6bBvDU.js} +14 -14
- package/dist/{auth-choice.apply-helpers-DR-eUj_5.js → auth-choice.apply-helpers-Du585kvU.js} +1 -1
- package/dist/{auth-profiles-D_x1_5v_.js → auth-profiles-CyG9VwU_.js} +16 -16
- package/dist/{auth-token-BqjY9MGq.js → auth-token-BIEjzQiE.js} +1 -1
- package/dist/{banner-DB1rGYKC.js → banner-D-ha13Xs.js} +2 -2
- package/dist/{bindings-Hx6KNJeg.js → bindings-DGvp9FdD.js} +1 -1
- package/dist/{bonjour-discovery-t-SAPCsb.js → bonjour-discovery-B68dCYTY.js} +1 -1
- package/dist/{browser-cli-CTlLlDFe.js → browser-cli-DREC4EVl.js} +12 -12
- package/dist/build-info.json +3 -3
- package/dist/{call-CzoM7hPS.js → call-CmAGfSJE.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-CiCkIxCu.js → channel-account-context-DNFdIaSr.js} +7 -6
- package/dist/{channel-account-context-D0zX-Gup.js → channel-account-context-etfgJrr_.js} +2 -1
- package/dist/{channel-options-DLPoMi6B.js → channel-options-6JzQN9nt.js} +3 -3
- package/dist/{channel-selection-D8KYuWir.js → channel-selection-DGtYwfd7.js} +1 -1
- package/dist/{channel-web-BMZ_oZSK.js → channel-web-oQImOucb.js} +18 -18
- package/dist/{channels-cli-sNDA9BU2.js → channels-cli-CzLX8jUv.js} +95 -95
- package/dist/{channels-status-issues-5n9kobSz.js → channels-status-issues-BMNB2aMG.js} +1 -1
- package/dist/{chrome-DuDCGdf-.js → chrome-DeZyLFsG.js} +4 -4
- package/dist/{chrome-CuMCXCQN.js → chrome-xatreDUO.js} +8 -8
- package/dist/{clawbot-cli-SIY_fH-I.js → clawbot-cli-H1Uj0ifV.js} +5 -5
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-Cjv-J_yg.js → cli-C2xvYknT.js} +76 -76
- package/dist/{client-BvL3EdiZ.js → client-vUKV2o6h.js} +2 -2
- package/dist/{command-registry-KfIoXPZE.js → command-registry-QcrBU_9X.js} +13 -13
- package/dist/{commands-C67IbXs7.js → commands-d8L0zY8O.js} +1 -1
- package/dist/{commands-registry-D0_D5hFV.js → commands-registry-C78O6aNi.js} +3 -3
- package/dist/{completion-cli-iCWrVHvc.js → completion-cli-BkWPjJyP.js} +13 -13
- package/dist/{completion-cli-SYxZGwWD.js → completion-cli-VWIJWtLM.js} +1 -1
- package/dist/{config-cli-5lP-lwj0.js → config-cli-B4WnAVfw.js} +7 -7
- package/dist/{config-guard-t_xLf16g.js → config-guard-RZw5NkPK.js} +3 -3
- package/dist/{config-validation-DkA3FBg8.js → config-validation-tb90Bzho.js} +3 -3
- package/dist/{configure-hI0hAw1W.js → configure-DuwIk56q.js} +17 -17
- package/dist/control-ui/assets/{index-DPyUb7lL.css → index-B5WC_0Be.css} +1 -1
- package/dist/control-ui/assets/{index-BlqD_sH7.js → index-DmJK8e2M.js} +2 -2
- package/dist/control-ui/assets/index-DmJK8e2M.js.map +1 -0
- package/dist/control-ui/index.html +2 -2
- package/dist/{control-ui-assets-M84PR-kz.js → control-ui-assets-Czpjuiah.js} +1 -1
- package/dist/{cron-cli-Bg88aQ8Y.js → cron-cli-D5MnhB5f.js} +12 -12
- package/dist/{daemon-cli-CFnqQB6M.js → daemon-cli-oCVkh3bg.js} +15 -15
- package/dist/{daemon-install-helpers-C1iBqd73.js → daemon-install-helpers-D5tste0V.js} +11 -11
- package/dist/{daemon-install-CdoMSH6S.js → daemon-install-vQ6KespE.js} +4 -4
- package/dist/{dashboard-CYa-ISxZ.js → dashboard-BstU6qkZ.js} +2 -2
- package/dist/{deliver-DTgCZWjU.js → deliver-H0xCFj4j.js} +7 -7
- package/dist/{deliver-Dyh8ZsLI.js → deliver-Z7543EnP.js} +1 -1
- package/dist/{devices-cli-9aOy3d7K.js → devices-cli-D6b6S-Iy.js} +8 -8
- package/dist/{diagnostic-Bvatw1Xn.js → diagnostic-DjxUqpmL.js} +1 -1
- package/dist/{diagnostics-DooDWHeF.js → diagnostics-vLzdmcgg.js} +5 -5
- package/dist/{directory-cli-Rk2cBm0A.js → directory-cli-D3o7BGMd.js} +8 -8
- package/dist/{dns-cli-BXhJBWtC.js → dns-cli-B5kqVfFd.js} +5 -5
- package/dist/{dock-DT8sACcR.js → dock-CoclJnwp.js} +4 -4
- package/dist/{docs-cli-D606Eb-M.js → docs-cli-CyjlhZAj.js} +4 -4
- package/dist/{doctor-completion-C7FCLVKC.js → doctor-completion-DGNL86eP.js} +1 -1
- package/dist/{doctor-completion-DNAwhmlY.js → doctor-completion-SBDS3edN.js} +2 -2
- package/dist/{doctor-config-flow-ePZ7ejQj.js → doctor-config-flow-DclZbGUP.js} +15 -15
- package/dist/{enable-CnvIWic7.js → enable-CKAw_GCd.js} +1 -1
- package/dist/entry.js +2 -2
- package/dist/{exec-approvals-allowlist-B4DS6FIn.js → exec-approvals-allowlist-CFjPSbxI.js} +1 -1
- package/dist/{exec-approvals-cli-Czp8csm7.js → exec-approvals-cli-U46MdeMi.js} +16 -16
- package/dist/{exec-safe-bin-runtime-policy-BP6ImlkB.js → exec-safe-bin-runtime-policy-CpMj95vJ.js} +2 -2
- package/dist/extensionAPI.js +6 -6
- package/dist/{fetch-DC-NMnAU.js → fetch-DOjg912W.js} +3 -3
- package/dist/{fetch-guard-B62rgaSw.js → fetch-guard-Csbz9pui.js} +1 -1
- package/dist/{fs-safe-CJDtl_QU.js → fs-safe-BqJ9egpm.js} +24 -24
- package/dist/{gateway-cli-BKhQZ6rL.js → gateway-cli-ADJ8WFzB.js} +267 -93
- package/dist/{gateway-cli-Cb1IDsaH.js → gateway-cli-D5wMqxbT.js} +423 -249
- package/dist/{gateway-rpc-BgV_ZJ92.js → gateway-rpc-DFqEAyI_.js} +1 -1
- package/dist/{health-DugDjq1f.js → health-Dzwp2cfK.js} +14 -14
- package/dist/{hooks-cli-VjmNvsLG.js → hooks-cli-DKAhHxZp.js} +84 -84
- package/dist/{hooks-status-DE20AAEu.js → hooks-status-6tcOdcYp.js} +1 -1
- package/dist/{image-BfqphdQM.js → image-BjuH1GKB.js} +5 -5
- package/dist/{image-DihIv8Eo.js → image-DQV2jl6F.js} +1 -1
- package/dist/{image-ops-BGTBZMuE.js → image-ops-B2L37gT8.js} +10 -10
- package/dist/index.js +1 -1
- package/dist/{inspect-DeP74OJO.js → inspect-DJUXn0vX.js} +4 -4
- package/dist/{install-safe-path-CWo3RPkH.js → install-safe-path-DVQh7rEs.js} +25 -25
- package/dist/{installs-BYqcA-ke.js → installs-jXfyPi74.js} +9 -9
- package/dist/{ipv4-BB1Ro6so.js → ipv4-DQS0lTwQ.js} +1 -1
- package/dist/{ir-DziC-P4Z.js → ir-CEwBpxhC.js} +6 -6
- package/dist/{issue-format-CqVkT3gT.js → issue-format-NBMJ5xAP.js} +1 -1
- package/dist/{json-files-CuJjdF_0.js → json-files-rR19q30D.js} +8 -8
- package/dist/{lifecycle-core-DAWYYqJl.js → lifecycle-core-oTVOKNSW.js} +5 -5
- package/dist/{login-CYfV0FRr.js → login-I5RlwiJn.js} +3 -3
- package/dist/{login-qr-DUSyrCPW.js → login-qr-CRjZn3ix.js} +6 -6
- package/dist/{logs-cli--IqfO6Fs.js → logs-cli-D2-73CiV.js} +9 -9
- package/dist/{manager-7hZXEYTj.js → manager-DWpiNvlg.js} +14 -14
- package/dist/{manifest-registry-Kbw8YPsZ.js → manifest-registry-CBF8Vfz8.js} +1 -1
- package/dist/{markdown-tables-BYHgyUjA.js → markdown-tables-DQlQMRGZ.js} +1 -1
- package/dist/{memory-cli-CuT-iG2F.js → memory-cli-BUrf60e_.js} +12 -12
- package/dist/{model-DmBmzJI6.js → model-DMZUvZJo.js} +2 -2
- package/dist/{model-catalog-D1X8r3WJ.js → model-catalog-DFi9HgWu.js} +3 -3
- package/dist/{model-picker-CrYHvOZH.js → model-picker-DFyoaAce.js} +4 -4
- package/dist/{models-BwUaRaeh.js → models-B-VHfTz-.js} +18 -18
- package/dist/{models-cli-DPvtAoJ-.js → models-cli-DQBbzn_p.js} +81 -81
- package/dist/{models-config-CmrBGsQs.js → models-config-AePb9RAo.js} +6 -6
- package/dist/{net-BXeYv7Iu.js → net-C75G4fup.js} +2 -2
- package/dist/{node-cli-Co4McDQy.js → node-cli-UnJ5obvj.js} +33 -33
- package/dist/{node-command-policy-D7hSN9B8.js → node-command-policy-DMwxqhrG.js} +1 -1
- package/dist/{node-service-CzRylWgI.js → node-service-83OYUi14.js} +1 -1
- package/dist/{nodes-cli-wABD1dZs.js → nodes-cli-U66EhW5E.js} +16 -16
- package/dist/{nodes-screen-DcxCMjOs.js → nodes-screen-BHwVUMr8.js} +7 -7
- package/dist/{npm-pack-install-BGN-e1vW.js → npm-pack-install-1gsZywqI.js} +18 -18
- package/dist/{npm-resolution-Dp9ywE7U.js → npm-resolution-ZwcMp-e1.js} +5 -5
- package/dist/{onboard-tlfs9gUN.js → onboard-1RaJpuJ4.js} +1 -1
- package/dist/{onboard-DfDL2v89.js → onboard-Ce_QcPvd.js} +6 -6
- package/dist/{onboard-channels-CjyJiI4i.js → onboard-channels-BLL6tVVk.js} +20 -20
- package/dist/{onboard-custom-WfZ3J4O7.js → onboard-custom-CltkNK3c.js} +3 -3
- package/dist/{onboard-custom.shared-D52ggtQF.js → onboard-custom.shared-CXzE62ZH.js} +2 -2
- package/dist/{onboard-helpers-CczYNQDJ.js → onboard-helpers-D8lLbK3A.js} +11 -11
- package/dist/{onboard-hooks-o0B0p8tR.js → onboard-hooks-DBif0Jq8.js} +4 -4
- package/dist/{onboard-remote-DTz_Z9Xl.js → onboard-remote-DpEjARZa.js} +3 -3
- package/dist/{onboard-skills-D70PenD-.js → onboard-skills-CL0tHf_N.js} +4 -4
- package/dist/{onboarding-H5cLNUFG.js → onboarding-Rub9MXWB.js} +1 -1
- package/dist/{onboarding-DNV-TKzA.js → onboarding-WDRpEgra.js} +13 -13
- package/dist/{onboarding.finalize-C6UdLnH3.js → onboarding.finalize-CWYrjSVx.js} +89 -89
- package/dist/{onboarding.finalize-DfZFzt37.js → onboarding.finalize-MTyP_Dr4.js} +3 -3
- package/dist/{onboarding.gateway-config-CnQR4xLI.js → onboarding.gateway-config-Ce8ndMkF.js} +18 -18
- package/dist/{openai-model-default-DqKKq57j.js → openai-model-default-XM-ZB1MD.js} +2 -2
- package/dist/{outbound-Dv-MM4iv.js → outbound-CHyBoNxD.js} +4 -4
- package/dist/{outbound-attachment-CXINK8df.js → outbound-attachment-DM-h2uQ1.js} +2 -2
- package/dist/{pairing-cli-BUHAN0R5.js → pairing-cli-DUMMuvWC.js} +9 -9
- package/dist/{pairing-labels-CFSUHOmk.js → pairing-labels-x4akYNb7.js} +1 -1
- package/dist/{pairing-store-BfzlN-z9.js → pairing-store-rFuiIoGM.js} +3 -3
- package/dist/{path-alias-guards-Cg9ZP1NN.js → path-alias-guards-laKq24fx.js} +3 -3
- package/dist/{path-safety-tZSbJG67.js → path-safety-BxYB92SS.js} +1 -1
- package/dist/{paths-BjoSX1aC.js → paths-B_L2Zoe-.js} +9 -9
- package/dist/{pi-embedded-xCcmCTnf.js → pi-embedded-CZAvX74y.js} +22 -22
- package/dist/{pi-embedded-helpers-C3sJPGXn.js → pi-embedded-helpers-BB2whkUz.js} +6 -6
- package/dist/{pi-embedded-helpers-Bmj18lhA.js → pi-embedded-helpers-DK1ft2pf.js} +3 -3
- package/dist/{pi-model-discovery-BZ2RCD_u.js → pi-model-discovery-RrejIg26.js} +1 -1
- package/dist/{pi-tools.policy-BH0D2kX0.js → pi-tools.policy-DRW8ya1z.js} +5 -5
- package/dist/{plugin-auto-enable-DER6qA6X.js → plugin-auto-enable-S_lBQAKI.js} +3 -3
- package/dist/{plugin-registry-CmucB2C0.js → plugin-registry-C2g1aLrK.js} +3 -3
- package/dist/{plugins-vsjS_m58.js → plugins-C4cYqW07.js} +2 -2
- package/dist/{plugins-cli-DJFtia9f.js → plugins-cli-Cdug93Mi.js} +86 -86
- package/dist/{ports-sCOQUaAP.js → ports-DRaxdQmm.js} +2 -2
- package/dist/{ports-zWusnrvP.js → ports-tfS1haOJ.js} +1 -1
- package/dist/{program-BkK1YIQS.js → program-L4hhvW67.js} +84 -84
- package/dist/{program-context-CFNQpYpG.js → program-context-BEPxCThZ.js} +7 -7
- package/dist/{prompt-select-styled-DlC5a1xd.js → prompt-select-styled-CYmsrkR3.js} +39 -39
- package/dist/{prompt-select-styled-DGdjezC8.js → prompt-select-styled-DTqU-r5T.js} +3 -3
- package/dist/{provider-auth-helpers-CJ2_W1oy.js → provider-auth-helpers-CNkIHUuF.js} +5 -5
- package/dist/{proxy-env-BQIJPH4j.js → proxy-env-BoopXu2J.js} +1 -1
- package/dist/{push-apns-BKjyYFyk.js → push-apns-DRX0c6-y.js} +5 -5
- package/dist/{pw-ai-pqeoAqm_.js → pw-ai-CMUrm_kS.js} +1 -1
- package/dist/{pw-ai-ITbRRqVN.js → pw-ai-DyGZ1pXu.js} +15 -15
- package/dist/{qmd-manager-BNohLpRA.js → qmd-manager-Bo22w5wm.js} +20 -20
- package/dist/{qr-cli-D-LqDNlm.js → qr-cli-EHSe4TmR.js} +1 -1
- package/dist/{query-expansion-BrM3X6-L.js → query-expansion-Ba9OpCm9.js} +12 -12
- package/dist/{redact-snapshot-D3QFNQl8.js → redact-snapshot-kY3aFpcF.js} +1 -1
- package/dist/{register.agent-C3K3DXul.js → register.agent-CaCz2lnX.js} +97 -97
- package/dist/register.configure-BHL2CNOY.js +174 -0
- package/dist/{register.init-ClMzXUKm.js → register.init-D4hlhvsq.js} +15 -15
- package/dist/{register.maintenance-Bb8amfJh.js → register.maintenance-DsxNo00b.js} +6 -6
- package/dist/{register.maintenance-zsZrRIaB.js → register.maintenance-MJR5bDWC.js} +99 -99
- package/dist/{register.message-CfRd6EM2.js → register.message-ChJGE4xV.js} +77 -77
- package/dist/{register.onboard-qFRFDsPK.js → register.onboard-4aB9FmjK.js} +2 -2
- package/dist/{register.onboard-BFM29BaY.js → register.onboard-CRCrMN8O.js} +18 -18
- package/dist/{register.setup-D0E9z_QW.js → register.setup-CCPeU8WO.js} +2 -2
- package/dist/{register.setup-Caqvvqmm.js → register.setup-DqRNRiXi.js} +21 -21
- package/dist/{register.start-CrwDVujg.js → register.start-D3IRihbV.js} +17 -17
- package/dist/{register.status-health-sessions-CWb4-Kgs.js → register.status-health-sessions-EhCB2a7v.js} +3 -3
- package/dist/{register.status-health-sessions-BBEF4th9.js → register.status-health-sessions-zD3z2YuT.js} +91 -91
- package/dist/{register.subclis-rB1Roe3w.js → register.subclis-D12iC4nF.js} +31 -31
- package/dist/{replies-Ckd7Lwt0.js → replies-BDnb0prE.js} +1 -1
- package/dist/{reply-prefix-DpXMFuAa.js → reply-prefix-H_GSyyzN.js} +1 -1
- package/dist/{resolve-route-Cnto8LMw.js → resolve-route-ByAwAiq5.js} +2 -2
- package/dist/{rpc-9G93KhBv.js → rpc-Bzb0JMJ_.js} +1 -1
- package/dist/{run-main-C02l3ZhV.js → run-main-C_fGUv-Y.js} +95 -95
- package/dist/{runtime-BI0xjrHi.js → runtime-Cx-7xFzl.js} +2 -2
- package/dist/{sandbox-CLIUxOtc.js → sandbox-BLqUWbp2.js} +18 -18
- package/dist/{sandbox-cli-MjHZjW2w.js → sandbox-cli-CEriRvUh.js} +26 -26
- package/dist/{secrets-cli-BFU9jh2A.js → secrets-cli-DG-NG8PH.js} +10 -10
- package/dist/{security-cli-DIfmEZrw.js → security-cli-C_Bc1U-7.js} +43 -43
- package/dist/{send-e1X1pfda.js → send-BCLu4NEE.js} +6 -6
- package/dist/{send-BpXRh0BM.js → send-BTswySBz.js} +11 -11
- package/dist/{send-CQJKPGw4.js → send-CZ2O-5pP.js} +6 -6
- package/dist/{send-sj8Hu26l.js → send-D0X-8aPh.js} +8 -8
- package/dist/{send-Cpaj_bKB.js → send-ZyB64ntO.js} +5 -5
- package/dist/{server-DbB5aXZq.js → server-CzDsmd9g.js} +19 -19
- package/dist/{server-context-DnPsW_Mg.js → server-context-DRq_OT33.js} +12 -12
- package/dist/{server-lifecycle-B2y6Fg7R.js → server-lifecycle-CcYnyYPQ.js} +2 -2
- package/dist/{server-middleware-CKSnhiM2.js → server-middleware-DHxnFjIL.js} +1 -1
- package/dist/{server-node-events-BwnXBzS2.js → server-node-events-B5xSV7Kq.js} +77 -77
- package/dist/{service-Wk285d-R.js → service-CZORJG4z.js} +15 -15
- package/dist/{session-meta-DF1WT4cr.js → session-meta-Cew1QAYN.js} +1 -1
- package/dist/{session-DNbfXbBi.js → session-nilNSQEL.js} +1 -1
- package/dist/{session-utils-BncMg1bn.js → session-utils-DxaIoRMp.js} +6 -6
- package/dist/{sessions-B2mnwD21.js → sessions-BXz4gdq6.js} +15 -15
- package/dist/{sessions-C2Xfck_9.js → sessions-DhD3eJDE.js} +4 -4
- package/dist/{shared-CJN2BLdi.js → shared-BZscafy-.js} +1 -1
- package/dist/{shared-BAdi_Ot7.js → shared-DvHQekWm.js} +3 -3
- package/dist/{skill-commands-CYucDd3C.js → skill-commands-Cpr3Poo2.js} +5 -5
- package/dist/{skill-scanner-BXOiOvI1.js → skill-scanner-0-AybMIe.js} +6 -6
- package/dist/{skills-BCgFAMj3.js → skills-D4S-gyVf.js} +3 -3
- package/dist/{skills-cli-CwbRKLum.js → skills-cli-B0jFsoo4.js} +5 -5
- package/dist/{skills-install-BQyeS7wB.js → skills-install-C6-Zzqoi.js} +6 -6
- package/dist/{skills-status-DG-bH5mO.js → skills-status-DQzBD0Y7.js} +1 -1
- package/dist/{status-B4v5QI5X.js → status-BfWqYNJf.js} +2 -2
- package/dist/{status-XGYDzhkW.js → status-Dw7ag8qn.js} +26 -26
- package/dist/{status.update-n2QPQr8w.js → status.update-B6whKviL.js} +2 -2
- package/dist/{status.update-DIamQqHr.js → status.update-C8qgou8r.js} +1 -1
- package/dist/{store-U8cs0QvT.js → store-TdzSHRPN.js} +5 -5
- package/dist/{subagent-registry-WD5F6cBf.js → subagent-registry-D6OfBLNb.js} +156 -156
- package/dist/{system-cli-C_5YHHhF.js → system-cli-BoamUpxz.js} +9 -9
- package/dist/{system-run-command-GKGzGztn.js → system-run-command-XHAlbx5q.js} +1 -1
- package/dist/{systemd-Dbwmb4TX.js → systemd-C4JtDaKk.js} +9 -9
- package/dist/{systemd-hints-VM2JkQxw.js → systemd-hints-ZHrBbXDd.js} +6 -6
- package/dist/{systemd-linger-DoeP9Z3f.js → systemd-linger-CD4viBmg.js} +1 -1
- package/dist/{tables-DVXe5x1J.js → tables-BOsRa7CS.js} +1 -1
- package/dist/{tailnet-C1XBcWue.js → tailnet-CfP3A6g2.js} +1 -1
- package/dist/{target-errors-C5LA-JI-.js → target-errors-DPJ9HFp9.js} +4 -4
- package/dist/{tool-images-CnpAosfi.js → tool-images-CmgHk8xk.js} +1 -1
- package/dist/{tui-kOoc7WBf.js → tui-GWJMI53u.js} +6 -6
- package/dist/{tui-cli-DeTfdnEG.js → tui-cli-CMrxH2Q_.js} +33 -33
- package/dist/{update-DFr19tQ1.js → update-CDWJ50iD.js} +3 -3
- package/dist/{update-cli-CUSnVFt4.js → update-cli-Dw_JHcRy.js} +22 -14
- package/dist/{update-cli-BlswPThb.js → update-cli-r3eyhSgp.js} +122 -114
- package/dist/{update-runner-CX6jOI_r.js → update-runner-CHxTFtW8.js} +34 -22
- package/dist/{update-runner-BA9B0S60.js → update-runner-CJua_LZ3.js} +19 -7
- package/dist/web-B4yuhy9a.js +125 -0
- package/dist/{web-CvYmNThc.js → web-De45Xhd1.js} +6 -6
- package/dist/{webhooks-cli-DLgCJq4n.js → webhooks-cli-B09BdLSk.js} +6 -6
- package/dist/{whatsapp-actions-B81EJMQI.js → whatsapp-actions-DUoWY7mE.js} +19 -19
- package/dist/{with-timeout-l0X_rwcb.js → with-timeout-B9qgOUui.js} +3 -3
- package/dist/{workspace-DWBFoy1G.js → workspace-A5CNJccm.js} +1 -1
- package/dist/{workspace-BHfqkuYN.js → workspace-DzeL98px.js} +23 -23
- package/dist/{workspace-dirs-BOgNOBjy.js → workspace-dirs-Bevk6X_8.js} +1 -1
- package/dist/{wsl-BDRu1-pk.js → wsl-DksyFTBT.js} +2 -2
- package/docs/install/index.md +12 -12
- package/docs/install/updating.md +32 -33
- package/docs/plans/2026-03-11-bitseek-update-package-design.md +25 -0
- package/package.json +1 -1
- package/dist/control-ui/assets/index-BlqD_sH7.js.map +0 -1
- package/dist/register.configure-aJItV_ZP.js +0 -174
- package/dist/web-DNL22pwf.js +0 -125
|
@@ -4,122 +4,122 @@ import { g as resolveStateDir, r as STATE_DIR, u as resolveGatewayPort, y as res
|
|
|
4
4
|
import { d as defaultRuntime, t as createSubsystemLogger, u as createNonExitingRuntime } from "./subsystem-DjdBljTA.js";
|
|
5
5
|
import { t as parseBooleanValue$1 } from "./boolean-DtWR5bt3.js";
|
|
6
6
|
import { r as isTruthyEnvValue } from "./entry.js";
|
|
7
|
-
import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-
|
|
7
|
+
import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-CyG9VwU_.js";
|
|
8
8
|
import { t as formatCliCommand } from "./command-format-CVXyxgq3.js";
|
|
9
|
-
import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-
|
|
9
|
+
import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-CY2-lUIY.js";
|
|
10
10
|
import { C as isCronSessionKey, E as resolveThreadParentSessionKey, T as parseAgentSessionKey, _ as normalizeOptionalAccountId, b as getSubagentDepth, c as normalizeAgentId, d as resolveThreadSessionKeys, f as sanitizeAgentId, g as normalizeAccountId$2, h as DEFAULT_ACCOUNT_ID, l as normalizeMainKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, s as isValidAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, v as isBlockedObjectKey, w as isSubagentSessionKey, x as isAcpSessionKey, y as deriveSessionChatType } from "./session-key-BLprDJYq.js";
|
|
11
11
|
import { C as sliceUtf16Safe, E as isPlainObject, S as sleep$1, T as truncateUtf16Safe, b as shortenHomeInString, c as escapeRegExp, p as normalizeE164, r as clampInt, t as CONFIG_DIR, u as isRecord$1, v as resolveUserPath, x as shortenHomePath } from "./utils-DIzy5B5o.js";
|
|
12
|
-
import { C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-
|
|
12
|
+
import { C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-DzeL98px.js";
|
|
13
13
|
import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-BJMfryJd.js";
|
|
14
14
|
import { n as runExec, r as spawnWithFallback, t as runCommandWithTimeout } from "./exec-CEAvKSx9.js";
|
|
15
15
|
import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-CulJ9J5l.js";
|
|
16
16
|
import { n as isDangerousHostEnvVarName } from "./host-env-security-CJMD0__Z.js";
|
|
17
17
|
import { t as VERSION } from "./version-CGDNfh5C.js";
|
|
18
18
|
import { E as triggerInternalHook, S as matchPluginCommand, _ as normalizePluginHttpPath, b as getPluginCommandSpecs, c as normalizeChannelId$1, d as getActivePluginRegistryKey, g as createPluginRegistry, m as setActivePluginRegistry, n as CHAT_CHANNEL_ORDER, p as requireActivePluginRegistry, s as normalizeAnyChannelId, u as getActivePluginRegistry, v as clearPluginCommands, w as createInternalHookEvent, x as listPluginCommands, y as executePluginCommand } from "./registry-7fg1BnMw.js";
|
|
19
|
-
import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-
|
|
20
|
-
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-
|
|
19
|
+
import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-CBF8Vfz8.js";
|
|
20
|
+
import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-CoclJnwp.js";
|
|
21
21
|
import { t as runTasksWithConcurrency } from "./run-with-concurrency-kzSMVKJz.js";
|
|
22
22
|
import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-KDiSpWTU.js";
|
|
23
|
-
import { i as buildModelAliasLines, n as resolveModel } from "./model-
|
|
24
|
-
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-
|
|
25
|
-
import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-
|
|
26
|
-
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-
|
|
23
|
+
import { i as buildModelAliasLines, n as resolveModel } from "./model-DMZUvZJo.js";
|
|
24
|
+
import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-RrejIg26.js";
|
|
25
|
+
import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-D4S-gyVf.js";
|
|
26
|
+
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-laKq24fx.js";
|
|
27
27
|
import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-0J6eKf3g.js";
|
|
28
|
-
import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-
|
|
28
|
+
import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-BXz4gdq6.js";
|
|
29
29
|
import { t as normalizeChatType } from "./chat-type-B5__aQIT.js";
|
|
30
30
|
import { n as resolveConversationLabel } from "./conversation-label-DarEmZ42.js";
|
|
31
31
|
import { t as resolveAccountEntry } from "./account-lookup-DndUerpe.js";
|
|
32
|
-
import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins-
|
|
33
|
-
import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-
|
|
34
|
-
import { r as resolveIMessageAccount } from "./accounts-
|
|
35
|
-
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-
|
|
36
|
-
import { t as buildChannelAccountBindings } from "./bindings-
|
|
37
|
-
import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-
|
|
38
|
-
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-
|
|
32
|
+
import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins-C4cYqW07.js";
|
|
33
|
+
import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-Cv5CUnT4.js";
|
|
34
|
+
import { r as resolveIMessageAccount } from "./accounts-2NNZ6Hbp.js";
|
|
35
|
+
import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-NHpMJ0aq.js";
|
|
36
|
+
import { t as buildChannelAccountBindings } from "./bindings-DGvp9FdD.js";
|
|
37
|
+
import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-ZyB64ntO.js";
|
|
38
|
+
import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-BTswySBz.js";
|
|
39
39
|
import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-CTtLmER4.js";
|
|
40
40
|
import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-C8z9KgIz.js";
|
|
41
|
-
import { r as writeJsonAtomic } from "./json-files-
|
|
41
|
+
import { r as writeJsonAtomic } from "./json-files-rR19q30D.js";
|
|
42
42
|
import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-DgzPL8Hc.js";
|
|
43
|
-
import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-
|
|
44
|
-
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-
|
|
45
|
-
import { r as isLoopbackHost } from "./net-
|
|
43
|
+
import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-vUKV2o6h.js";
|
|
44
|
+
import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-CmAGfSJE.js";
|
|
45
|
+
import { r as isLoopbackHost } from "./net-C75G4fup.js";
|
|
46
46
|
import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-BtL4tqu0.js";
|
|
47
47
|
import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-DyLBF_df.js";
|
|
48
|
-
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-
|
|
48
|
+
import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-B9qgOUui.js";
|
|
49
49
|
import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-_dzDDlFo.js";
|
|
50
|
-
import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-
|
|
51
|
-
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-
|
|
50
|
+
import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-H0xCFj4j.js";
|
|
51
|
+
import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-DjxUqpmL.js";
|
|
52
52
|
import { n as getDiagnosticSessionState } from "./diagnostic-session-state-Dx-rJXBO.js";
|
|
53
|
-
import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-
|
|
54
|
-
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-
|
|
55
|
-
import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isCompactionFailureError, x as isAuthPermanentErrorMessage, y as getApiErrorPayloadFingerprint, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-
|
|
56
|
-
import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-
|
|
57
|
-
import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-
|
|
58
|
-
import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-
|
|
59
|
-
import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-
|
|
53
|
+
import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-D0X-8aPh.js";
|
|
54
|
+
import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-B2L37gT8.js";
|
|
55
|
+
import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isCompactionFailureError, x as isAuthPermanentErrorMessage, y as getApiErrorPayloadFingerprint, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-BB2whkUz.js";
|
|
56
|
+
import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-BLqUWbp2.js";
|
|
57
|
+
import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-DeZyLFsG.js";
|
|
58
|
+
import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-DRq_OT33.js";
|
|
59
|
+
import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-B_L2Zoe-.js";
|
|
60
60
|
import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-Ck5U_y4i.js";
|
|
61
61
|
import { i as formatUncaughtError, r as formatErrorMessage, s as readErrorName } from "./errors-BJz45-qI.js";
|
|
62
|
-
import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-
|
|
63
|
-
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-
|
|
64
|
-
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-
|
|
65
|
-
import { i as resolveLsofCommandSync } from "./ports-
|
|
66
|
-
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-
|
|
62
|
+
import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-BqJ9egpm.js";
|
|
63
|
+
import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-BoopXu2J.js";
|
|
64
|
+
import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-TdzSHRPN.js";
|
|
65
|
+
import { i as resolveLsofCommandSync } from "./ports-DRaxdQmm.js";
|
|
66
|
+
import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CmgHk8xk.js";
|
|
67
67
|
import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-pYqswKJZ.js";
|
|
68
|
-
import { t as ensureOpenClawModelsJson } from "./models-config-
|
|
69
|
-
import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-
|
|
70
|
-
import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-
|
|
71
|
-
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-
|
|
72
|
-
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-
|
|
73
|
-
import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-
|
|
68
|
+
import { t as ensureOpenClawModelsJson } from "./models-config-AePb9RAo.js";
|
|
69
|
+
import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-CFjPSbxI.js";
|
|
70
|
+
import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-CpMj95vJ.js";
|
|
71
|
+
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-DFi9HgWu.js";
|
|
72
|
+
import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-DOjg912W.js";
|
|
73
|
+
import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$1, v as resolveAttachmentKind } from "./audio-transcription-runner-DkibzFT2.js";
|
|
74
74
|
import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-CZWuvzq4.js";
|
|
75
|
-
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
76
|
-
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-
|
|
75
|
+
import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-Csbz9pui.js";
|
|
76
|
+
import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-BjuH1GKB.js";
|
|
77
77
|
import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-0M664wep.js";
|
|
78
78
|
import { t as makeProxyFetch } from "./proxy-fetch-DEHZt1Tx.js";
|
|
79
|
-
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-
|
|
79
|
+
import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-H_GSyyzN.js";
|
|
80
80
|
import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-kLPohhLl.js";
|
|
81
|
-
import { n as resolveMarkdownTableMode } from "./markdown-tables-
|
|
82
|
-
import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-
|
|
83
|
-
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-
|
|
84
|
-
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-
|
|
85
|
-
import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-
|
|
81
|
+
import { n as resolveMarkdownTableMode } from "./markdown-tables-DQlQMRGZ.js";
|
|
82
|
+
import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-CEwBpxhC.js";
|
|
83
|
+
import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-DPJ9HFp9.js";
|
|
84
|
+
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-d8L0zY8O.js";
|
|
85
|
+
import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-C78O6aNi.js";
|
|
86
86
|
import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-sjEbnCyN.js";
|
|
87
87
|
import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BM2hI5N6.js";
|
|
88
88
|
import { n as retryAsync } from "./retry-DwXRBpwv.js";
|
|
89
89
|
import { n as formatTimeAgo } from "./format-relative-DlCMhQXD.js";
|
|
90
|
-
import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-
|
|
90
|
+
import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-rFuiIoGM.js";
|
|
91
91
|
import { d as resolveExecApprovals, f as resolveExecApprovalsFromFile, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval } from "./exec-approvals-HRn5F9dF.js";
|
|
92
|
-
import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-
|
|
92
|
+
import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-BHwVUMr8.js";
|
|
93
93
|
import { t as killProcessTree$1 } from "./kill-tree-BI7OGmGb.js";
|
|
94
|
-
import { t as formatExecCommand } from "./system-run-command-
|
|
94
|
+
import { t as formatExecCommand } from "./system-run-command-XHAlbx5q.js";
|
|
95
95
|
import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-DCXbzdeZ.js";
|
|
96
96
|
import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-B8vujEIl.js";
|
|
97
|
-
import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-
|
|
97
|
+
import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-DxaIoRMp.js";
|
|
98
98
|
import { c as hasNonzeroUsage, l as makeZeroUsageSnapshot, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary, s as deriveSessionTotalTokens, u as normalizeUsage } from "./session-cost-usage-BCEcVVJ6.js";
|
|
99
99
|
import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-JlIz56oG.js";
|
|
100
|
-
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-
|
|
100
|
+
import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-Cpr3Poo2.js";
|
|
101
101
|
import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-C-cvytUe.js";
|
|
102
102
|
import { t as buildOutboundMediaLoadOptions } from "./load-options-CDYtue-3.js";
|
|
103
103
|
import { n as normalizePollInput } from "./polls-CWOwBT3z.js";
|
|
104
|
-
import { t as convertMarkdownTables } from "./tables-
|
|
104
|
+
import { t as convertMarkdownTables } from "./tables-BOsRa7CS.js";
|
|
105
105
|
import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-BLYfoMmL.js";
|
|
106
106
|
import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-Cek4Eizw.js";
|
|
107
|
-
import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-
|
|
108
|
-
import { t as applyPluginAutoEnable } from "./plugin-auto-enable-
|
|
109
|
-
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-
|
|
110
|
-
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-
|
|
111
|
-
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-
|
|
107
|
+
import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DGtYwfd7.js";
|
|
108
|
+
import { t as applyPluginAutoEnable } from "./plugin-auto-enable-S_lBQAKI.js";
|
|
109
|
+
import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-CZ2O-5pP.js";
|
|
110
|
+
import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-BCLu4NEE.js";
|
|
111
|
+
import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-ByAwAiq5.js";
|
|
112
112
|
import { n as isSenderIdAllowed, r as mergeDmAllowFromSources, t as firstDefined$1 } from "./allow-from-CrohZBvI.js";
|
|
113
113
|
import { t as parseTimeoutMs } from "./parse-timeout-BLJlOyi9.js";
|
|
114
114
|
import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-DNm8Tp5o.js";
|
|
115
|
-
import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-
|
|
115
|
+
import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-DRW8ya1z.js";
|
|
116
116
|
import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CffcsSiI.js";
|
|
117
|
-
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-
|
|
118
|
-
import { r as detectBinary } from "./onboard-helpers-
|
|
119
|
-
import { t as resolvePairingIdLabel } from "./pairing-labels-
|
|
120
|
-
import { t as recordInboundSessionMetaSafe } from "./session-meta-
|
|
121
|
-
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-
|
|
122
|
-
import { r as resolveMemorySearchConfig } from "./manager-
|
|
117
|
+
import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-BDnb0prE.js";
|
|
118
|
+
import { r as detectBinary } from "./onboard-helpers-D8lLbK3A.js";
|
|
119
|
+
import { t as resolvePairingIdLabel } from "./pairing-labels-x4akYNb7.js";
|
|
120
|
+
import { t as recordInboundSessionMetaSafe } from "./session-meta-Cew1QAYN.js";
|
|
121
|
+
import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-BUrf60e_.js";
|
|
122
|
+
import { r as resolveMemorySearchConfig } from "./manager-DWpiNvlg.js";
|
|
123
123
|
import { i as resolveContextWindowInfo, n as CONTEXT_WINDOW_WARN_BELOW_TOKENS, r as evaluateContextWindowGuard, t as CONTEXT_WINDOW_HARD_MIN_TOKENS } from "./context-window-guard-Bs0PeDpo.js";
|
|
124
124
|
import { createRequire } from "node:module";
|
|
125
125
|
import { execFileSync, spawn, spawnSync } from "node:child_process";
|
|
@@ -129,7 +129,7 @@ import os, { homedir } from "node:os";
|
|
|
129
129
|
import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
|
|
130
130
|
import JSON5 from "json5";
|
|
131
131
|
import { inspect } from "node:util";
|
|
132
|
-
import
|
|
132
|
+
import fsPromises from "node:fs/promises";
|
|
133
133
|
import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
|
|
134
134
|
import crypto, { createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
|
|
135
135
|
import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
|
|
@@ -5074,7 +5074,7 @@ async function resolveAgentSessionDirs(stateDir) {
|
|
|
5074
5074
|
const agentsDir = path.join(stateDir, "agents");
|
|
5075
5075
|
let entries = [];
|
|
5076
5076
|
try {
|
|
5077
|
-
entries = await
|
|
5077
|
+
entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
|
|
5078
5078
|
} catch (err) {
|
|
5079
5079
|
if (err.code === "ENOENT") return [];
|
|
5080
5080
|
throw err;
|
|
@@ -8141,7 +8141,7 @@ async function sendTranscriptEcho(params) {
|
|
|
8141
8141
|
}
|
|
8142
8142
|
const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
|
|
8143
8143
|
try {
|
|
8144
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
8144
|
+
const { deliverOutboundPayloads } = await import("./deliver-H0xCFj4j.js").then((n) => n.n);
|
|
8145
8145
|
await deliverOutboundPayloads({
|
|
8146
8146
|
cfg,
|
|
8147
8147
|
channel: normalizedChannel,
|
|
@@ -12943,7 +12943,7 @@ async function resolveSandboxWorkdir(params) {
|
|
|
12943
12943
|
cwd: process.cwd(),
|
|
12944
12944
|
root: params.sandbox.workspaceDir
|
|
12945
12945
|
});
|
|
12946
|
-
if (!(await
|
|
12946
|
+
if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
|
|
12947
12947
|
const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
|
|
12948
12948
|
const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
|
|
12949
12949
|
return {
|
|
@@ -14187,13 +14187,13 @@ async function validateScriptFileForShellBleed(params) {
|
|
|
14187
14187
|
cwd: params.workdir,
|
|
14188
14188
|
root: params.workdir
|
|
14189
14189
|
});
|
|
14190
|
-
stat = await
|
|
14190
|
+
stat = await fsPromises.stat(absPath);
|
|
14191
14191
|
} catch {
|
|
14192
14192
|
return;
|
|
14193
14193
|
}
|
|
14194
14194
|
if (!stat.isFile()) return;
|
|
14195
14195
|
if (stat.size > 512 * 1024) return;
|
|
14196
|
-
const content = await
|
|
14196
|
+
const content = await fsPromises.readFile(absPath, "utf-8");
|
|
14197
14197
|
const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
|
|
14198
14198
|
if (first) {
|
|
14199
14199
|
const idx = first.index;
|
|
@@ -23282,7 +23282,7 @@ async function routeReply(params) {
|
|
|
23282
23282
|
const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
|
|
23283
23283
|
const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
|
|
23284
23284
|
try {
|
|
23285
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
23285
|
+
const { deliverOutboundPayloads } = await import("./deliver-H0xCFj4j.js").then((n) => n.n);
|
|
23286
23286
|
const outboundSession = buildOutboundSessionContext({
|
|
23287
23287
|
cfg,
|
|
23288
23288
|
agentId: resolvedAgentId,
|
|
@@ -23362,7 +23362,7 @@ async function emitResetCommandHooks(params) {
|
|
|
23362
23362
|
try {
|
|
23363
23363
|
const messages = [];
|
|
23364
23364
|
if (sessionFile) {
|
|
23365
|
-
const content = await
|
|
23365
|
+
const content = await fsPromises.readFile(sessionFile, "utf-8");
|
|
23366
23366
|
for (const line of content.split("\n")) {
|
|
23367
23367
|
if (!line.trim()) continue;
|
|
23368
23368
|
try {
|
|
@@ -24148,7 +24148,7 @@ async function createModelSelectionState(params) {
|
|
|
24148
24148
|
}
|
|
24149
24149
|
}
|
|
24150
24150
|
if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
|
|
24151
|
-
const { ensureAuthProfileStore } = await import("./auth-profiles-
|
|
24151
|
+
const { ensureAuthProfileStore } = await import("./auth-profiles-CyG9VwU_.js").then((n) => n.t);
|
|
24152
24152
|
const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
|
|
24153
24153
|
const providerKey = normalizeProviderId(provider);
|
|
24154
24154
|
if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
|
|
@@ -27744,7 +27744,7 @@ async function readJsonlFromPath(jsonlPath) {
|
|
|
27744
27744
|
if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
|
|
27745
27745
|
throw new Error("jsonlPath outside allowed roots");
|
|
27746
27746
|
}
|
|
27747
|
-
const canonical = await
|
|
27747
|
+
const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
|
|
27748
27748
|
if (!isInboundPathAllowed({
|
|
27749
27749
|
filePath: canonical,
|
|
27750
27750
|
roots
|
|
@@ -27752,7 +27752,7 @@ async function readJsonlFromPath(jsonlPath) {
|
|
|
27752
27752
|
if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
|
|
27753
27753
|
throw new Error("jsonlPath outside allowed roots");
|
|
27754
27754
|
}
|
|
27755
|
-
return await
|
|
27755
|
+
return await fsPromises.readFile(canonical, "utf8");
|
|
27756
27756
|
}
|
|
27757
27757
|
const CanvasToolSchema = Type.Object({
|
|
27758
27758
|
action: stringEnum(CANVAS_ACTIONS),
|
|
@@ -28567,27 +28567,27 @@ function resolveRestartSentinelPath(env = process.env) {
|
|
|
28567
28567
|
}
|
|
28568
28568
|
async function writeRestartSentinel(payload, env = process.env) {
|
|
28569
28569
|
const filePath = resolveRestartSentinelPath(env);
|
|
28570
|
-
await
|
|
28570
|
+
await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
|
|
28571
28571
|
const data = {
|
|
28572
28572
|
version: 1,
|
|
28573
28573
|
payload
|
|
28574
28574
|
};
|
|
28575
|
-
await
|
|
28575
|
+
await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
|
|
28576
28576
|
return filePath;
|
|
28577
28577
|
}
|
|
28578
28578
|
async function readRestartSentinel(env = process.env) {
|
|
28579
28579
|
const filePath = resolveRestartSentinelPath(env);
|
|
28580
28580
|
try {
|
|
28581
|
-
const raw = await
|
|
28581
|
+
const raw = await fsPromises.readFile(filePath, "utf-8");
|
|
28582
28582
|
let parsed;
|
|
28583
28583
|
try {
|
|
28584
28584
|
parsed = JSON.parse(raw);
|
|
28585
28585
|
} catch {
|
|
28586
|
-
await
|
|
28586
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28587
28587
|
return null;
|
|
28588
28588
|
}
|
|
28589
28589
|
if (!parsed || parsed.version !== 1 || !parsed.payload) {
|
|
28590
|
-
await
|
|
28590
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28591
28591
|
return null;
|
|
28592
28592
|
}
|
|
28593
28593
|
return parsed;
|
|
@@ -28599,7 +28599,7 @@ async function consumeRestartSentinel(env = process.env) {
|
|
|
28599
28599
|
const filePath = resolveRestartSentinelPath(env);
|
|
28600
28600
|
const parsed = await readRestartSentinel(env);
|
|
28601
28601
|
if (!parsed) return null;
|
|
28602
|
-
await
|
|
28602
|
+
await fsPromises.unlink(filePath).catch(() => {});
|
|
28603
28603
|
return parsed;
|
|
28604
28604
|
}
|
|
28605
28605
|
function formatRestartSentinelMessage(payload) {
|
|
@@ -38790,18 +38790,18 @@ function appendImagePathsToPrompt(prompt, paths) {
|
|
|
38790
38790
|
return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
|
|
38791
38791
|
}
|
|
38792
38792
|
async function writeCliImages(images) {
|
|
38793
|
-
const tempDir = await
|
|
38793
|
+
const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
|
|
38794
38794
|
const paths = [];
|
|
38795
38795
|
for (let i = 0; i < images.length; i += 1) {
|
|
38796
38796
|
const image = images[i];
|
|
38797
38797
|
const ext = resolveImageExtension(image.mimeType);
|
|
38798
38798
|
const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
|
|
38799
38799
|
const buffer = Buffer.from(image.data, "base64");
|
|
38800
|
-
await
|
|
38800
|
+
await fsPromises.writeFile(filePath, buffer, { mode: 384 });
|
|
38801
38801
|
paths.push(filePath);
|
|
38802
38802
|
}
|
|
38803
38803
|
const cleanup = async () => {
|
|
38804
|
-
await
|
|
38804
|
+
await fsPromises.rm(tempDir, {
|
|
38805
38805
|
recursive: true,
|
|
38806
38806
|
force: true
|
|
38807
38807
|
});
|
|
@@ -42704,7 +42704,7 @@ async function deliverSessionMaintenanceWarning(params) {
|
|
|
42704
42704
|
return;
|
|
42705
42705
|
}
|
|
42706
42706
|
try {
|
|
42707
|
-
const { deliverOutboundPayloads } = await import("./deliver-
|
|
42707
|
+
const { deliverOutboundPayloads } = await import("./deliver-H0xCFj4j.js").then((n) => n.n);
|
|
42708
42708
|
const outboundSession = buildOutboundSessionContext({
|
|
42709
42709
|
cfg: params.cfg,
|
|
42710
42710
|
sessionKey: params.sessionKey
|
|
@@ -43211,7 +43211,7 @@ async function stageSandboxMedia(params) {
|
|
|
43211
43211
|
const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(CONFIG_DIR, "media", "remote-cache", sessionKey) : null;
|
|
43212
43212
|
const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
|
|
43213
43213
|
if (!effectiveWorkspaceDir) return;
|
|
43214
|
-
await
|
|
43214
|
+
await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
|
|
43215
43215
|
const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
|
|
43216
43216
|
cfg,
|
|
43217
43217
|
accountId: ctx.AccountId
|
|
@@ -43270,8 +43270,8 @@ async function stageLocalFileIntoRoot(params) {
|
|
|
43270
43270
|
}
|
|
43271
43271
|
async function stageRemoteFileIntoRoot(params) {
|
|
43272
43272
|
const tmpRoot = resolvePreferredOpenClawTmpDir();
|
|
43273
|
-
await
|
|
43274
|
-
const tmpDir = await
|
|
43273
|
+
await fsPromises.mkdir(tmpRoot, { recursive: true });
|
|
43274
|
+
const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
|
|
43275
43275
|
const tmpPath = path.join(tmpDir, "download");
|
|
43276
43276
|
try {
|
|
43277
43277
|
await scpFile(params.remoteHost, params.remotePath, tmpPath);
|
|
@@ -43282,7 +43282,7 @@ async function stageRemoteFileIntoRoot(params) {
|
|
|
43282
43282
|
maxBytes: params.maxBytes
|
|
43283
43283
|
});
|
|
43284
43284
|
} finally {
|
|
43285
|
-
await
|
|
43285
|
+
await fsPromises.rm(tmpDir, {
|
|
43286
43286
|
recursive: true,
|
|
43287
43287
|
force: true
|
|
43288
43288
|
}).catch(() => {});
|
|
@@ -47628,8 +47628,8 @@ async function describeStickerImage(params) {
|
|
|
47628
47628
|
const { provider, model } = resolved;
|
|
47629
47629
|
logVerbose(`telegram: describing sticker with ${provider}/${model}`);
|
|
47630
47630
|
try {
|
|
47631
|
-
const buffer = await
|
|
47632
|
-
const { describeImageWithModel } = await import("./image-
|
|
47631
|
+
const buffer = await fsPromises.readFile(imagePath);
|
|
47632
|
+
const { describeImageWithModel } = await import("./image-BjuH1GKB.js").then((n) => n.n);
|
|
47633
47633
|
return (await describeImageWithModel({
|
|
47634
47634
|
buffer,
|
|
47635
47635
|
fileName: "sticker.webp",
|
|
@@ -49218,7 +49218,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
|
|
|
49218
49218
|
const needsPreflightTranscription = !params.isDirectMessage && params.shouldRequireMention && hasAudioAttachment && !hasTypedText && params.mentionRegexes.length > 0;
|
|
49219
49219
|
let transcript;
|
|
49220
49220
|
if (needsPreflightTranscription) try {
|
|
49221
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
49221
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-SRgix4XS.js");
|
|
49222
49222
|
const audioUrls = audioAttachments.map((att) => att.url).filter((url) => typeof url === "string" && url.length > 0);
|
|
49223
49223
|
if (audioUrls.length > 0) transcript = await transcribeFirstAudio({
|
|
49224
49224
|
ctx: {
|
|
@@ -53794,27 +53794,27 @@ function createOutboundSendDepsFromCliSource(deps) {
|
|
|
53794
53794
|
function createDefaultDeps() {
|
|
53795
53795
|
return {
|
|
53796
53796
|
sendMessageWhatsApp: async (...args) => {
|
|
53797
|
-
const { sendMessageWhatsApp } = await import("./web-
|
|
53797
|
+
const { sendMessageWhatsApp } = await import("./web-B4yuhy9a.js");
|
|
53798
53798
|
return await sendMessageWhatsApp(...args);
|
|
53799
53799
|
},
|
|
53800
53800
|
sendMessageTelegram: async (...args) => {
|
|
53801
|
-
const { sendMessageTelegram } = await import("./send-
|
|
53801
|
+
const { sendMessageTelegram } = await import("./send-D0X-8aPh.js").then((n) => n.l);
|
|
53802
53802
|
return await sendMessageTelegram(...args);
|
|
53803
53803
|
},
|
|
53804
53804
|
sendMessageDiscord: async (...args) => {
|
|
53805
|
-
const { sendMessageDiscord } = await import("./send-
|
|
53805
|
+
const { sendMessageDiscord } = await import("./send-BTswySBz.js").then((n) => n.t);
|
|
53806
53806
|
return await sendMessageDiscord(...args);
|
|
53807
53807
|
},
|
|
53808
53808
|
sendMessageSlack: async (...args) => {
|
|
53809
|
-
const { sendMessageSlack } = await import("./send-
|
|
53809
|
+
const { sendMessageSlack } = await import("./send-ZyB64ntO.js").then((n) => n.n);
|
|
53810
53810
|
return await sendMessageSlack(...args);
|
|
53811
53811
|
},
|
|
53812
53812
|
sendMessageSignal: async (...args) => {
|
|
53813
|
-
const { sendMessageSignal } = await import("./send-
|
|
53813
|
+
const { sendMessageSignal } = await import("./send-CZ2O-5pP.js").then((n) => n.i);
|
|
53814
53814
|
return await sendMessageSignal(...args);
|
|
53815
53815
|
},
|
|
53816
53816
|
sendMessageIMessage: async (...args) => {
|
|
53817
|
-
const { sendMessageIMessage } = await import("./send-
|
|
53817
|
+
const { sendMessageIMessage } = await import("./send-BCLu4NEE.js").then((n) => n.n);
|
|
53818
53818
|
return await sendMessageIMessage(...args);
|
|
53819
53819
|
}
|
|
53820
53820
|
};
|
|
@@ -54955,10 +54955,10 @@ function estimateDurationSeconds(pcm) {
|
|
|
54955
54955
|
return pcm.length / (bytesPerSample * SAMPLE_RATE);
|
|
54956
54956
|
}
|
|
54957
54957
|
async function writeWavFile(pcm) {
|
|
54958
|
-
const tempDir = await
|
|
54958
|
+
const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
|
|
54959
54959
|
const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
|
|
54960
54960
|
const wav = buildWavBuffer(pcm);
|
|
54961
|
-
await
|
|
54961
|
+
await fsPromises.writeFile(filePath, wav);
|
|
54962
54962
|
scheduleTempCleanup(tempDir);
|
|
54963
54963
|
return {
|
|
54964
54964
|
path: filePath,
|
|
@@ -54967,7 +54967,7 @@ async function writeWavFile(pcm) {
|
|
|
54967
54967
|
}
|
|
54968
54968
|
function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
|
|
54969
54969
|
setTimeout(() => {
|
|
54970
|
-
|
|
54970
|
+
fsPromises.rm(tempDir, {
|
|
54971
54971
|
recursive: true,
|
|
54972
54972
|
force: true
|
|
54973
54973
|
}).catch((err) => {
|
|
@@ -59264,7 +59264,7 @@ function normalizeAllowList$1(list) {
|
|
|
59264
59264
|
async function detectRemoteHostFromCliPath(cliPath) {
|
|
59265
59265
|
try {
|
|
59266
59266
|
const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
|
|
59267
|
-
const content = await
|
|
59267
|
+
const content = await fsPromises.readFile(expanded, "utf8");
|
|
59268
59268
|
const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
|
|
59269
59269
|
if (userHostMatch) return userHostMatch[1];
|
|
59270
59270
|
return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
|
|
@@ -65886,7 +65886,7 @@ function readSlackExternalArgMenuToken(raw) {
|
|
|
65886
65886
|
}
|
|
65887
65887
|
let commandsRegistry;
|
|
65888
65888
|
async function getCommandsRegistry() {
|
|
65889
|
-
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-
|
|
65889
|
+
if (!commandsRegistry) commandsRegistry = await import("./commands-registry-C78O6aNi.js").then((n) => n.n);
|
|
65890
65890
|
return commandsRegistry;
|
|
65891
65891
|
}
|
|
65892
65892
|
function encodeSlackCommandArgValue(parts) {
|
|
@@ -66216,14 +66216,14 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66216
66216
|
const channelName = channelInfo?.name;
|
|
66217
66217
|
const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
|
|
66218
66218
|
const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
|
|
66219
|
-
import("./resolve-route-
|
|
66219
|
+
import("./resolve-route-ByAwAiq5.js").then((n) => n.r),
|
|
66220
66220
|
import("./inbound-context-sjEbnCyN.js").then((n) => n.n),
|
|
66221
66221
|
Promise.resolve().then(() => provider_dispatcher_exports)
|
|
66222
66222
|
]);
|
|
66223
66223
|
const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
|
|
66224
66224
|
import("./conversation-label-DarEmZ42.js").then((n) => n.t),
|
|
66225
|
-
import("./reply-prefix-
|
|
66226
|
-
import("./session-meta-
|
|
66225
|
+
import("./reply-prefix-H_GSyyzN.js").then((n) => n.n),
|
|
66226
|
+
import("./session-meta-Cew1QAYN.js").then((n) => n.n)
|
|
66227
66227
|
]);
|
|
66228
66228
|
const route = resolveAgentRoute({
|
|
66229
66229
|
cfg,
|
|
@@ -66288,9 +66288,9 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66288
66288
|
});
|
|
66289
66289
|
const deliverSlashPayloads = async (replies) => {
|
|
66290
66290
|
const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
|
|
66291
|
-
import("./replies-
|
|
66291
|
+
import("./replies-BDnb0prE.js").then((n) => n.r),
|
|
66292
66292
|
import("./chunk-kLPohhLl.js").then((n) => n.s),
|
|
66293
|
-
import("./markdown-tables-
|
|
66293
|
+
import("./markdown-tables-DQlQMRGZ.js").then((n) => n.t)
|
|
66294
66294
|
]);
|
|
66295
66295
|
await deliverSlackSlashReplies({
|
|
66296
66296
|
replies,
|
|
@@ -66343,7 +66343,7 @@ async function registerSlackMonitorSlashCommands(params) {
|
|
|
66343
66343
|
let nativeCommands = [];
|
|
66344
66344
|
if (nativeEnabled) {
|
|
66345
66345
|
reg = await getCommandsRegistry();
|
|
66346
|
-
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-
|
|
66346
|
+
const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Cpr3Poo2.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
|
|
66347
66347
|
nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
|
|
66348
66348
|
skillCommands,
|
|
66349
66349
|
provider: "slack"
|
|
@@ -69252,7 +69252,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
|
|
|
69252
69252
|
const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
|
|
69253
69253
|
let preflightTranscript;
|
|
69254
69254
|
if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
|
|
69255
|
-
const { transcribeFirstAudio } = await import("./audio-preflight-
|
|
69255
|
+
const { transcribeFirstAudio } = await import("./audio-preflight-SRgix4XS.js");
|
|
69256
69256
|
preflightTranscript = await transcribeFirstAudio({
|
|
69257
69257
|
ctx: {
|
|
69258
69258
|
MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
|
|
@@ -70614,7 +70614,7 @@ function resolveCommandHashPath(accountId, botIdentity) {
|
|
|
70614
70614
|
}
|
|
70615
70615
|
async function readCachedCommandHash(accountId, botIdentity) {
|
|
70616
70616
|
try {
|
|
70617
|
-
return (await
|
|
70617
|
+
return (await fsPromises.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
|
|
70618
70618
|
} catch {
|
|
70619
70619
|
return null;
|
|
70620
70620
|
}
|
|
@@ -70622,8 +70622,8 @@ async function readCachedCommandHash(accountId, botIdentity) {
|
|
|
70622
70622
|
async function writeCachedCommandHash(accountId, botIdentity, hash) {
|
|
70623
70623
|
const filePath = resolveCommandHashPath(accountId, botIdentity);
|
|
70624
70624
|
try {
|
|
70625
|
-
await
|
|
70626
|
-
await
|
|
70625
|
+
await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
|
|
70626
|
+
await fsPromises.writeFile(filePath, hash, "utf-8");
|
|
70627
70627
|
} catch {}
|
|
70628
70628
|
}
|
|
70629
70629
|
function syncTelegramMenuCommands(params) {
|
|
@@ -71461,7 +71461,7 @@ function safeParseState(raw) {
|
|
|
71461
71461
|
async function readTelegramUpdateOffset(params) {
|
|
71462
71462
|
const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
|
|
71463
71463
|
try {
|
|
71464
|
-
const parsed = safeParseState(await
|
|
71464
|
+
const parsed = safeParseState(await fsPromises.readFile(filePath, "utf-8"));
|
|
71465
71465
|
const expectedBotId = extractBotIdFromToken(params.botToken);
|
|
71466
71466
|
if (expectedBotId && parsed?.botId && parsed.botId !== expectedBotId) return null;
|
|
71467
71467
|
if (expectedBotId && parsed?.botId === null) return null;
|
|
@@ -71485,7 +71485,7 @@ async function writeTelegramUpdateOffset(params) {
|
|
|
71485
71485
|
async function deleteTelegramUpdateOffset(params) {
|
|
71486
71486
|
const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
|
|
71487
71487
|
try {
|
|
71488
|
-
await
|
|
71488
|
+
await fsPromises.unlink(filePath);
|
|
71489
71489
|
} catch (err) {
|
|
71490
71490
|
if (err.code === "ENOENT") return;
|
|
71491
71491
|
throw err;
|
|
@@ -71959,7 +71959,7 @@ function createWhatsAppLoginTool() {
|
|
|
71959
71959
|
force: Type.Optional(Type.Boolean())
|
|
71960
71960
|
}),
|
|
71961
71961
|
execute: async (_toolCallId, args) => {
|
|
71962
|
-
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-
|
|
71962
|
+
const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CRjZn3ix.js");
|
|
71963
71963
|
if ((args?.action ?? "start") === "wait") {
|
|
71964
71964
|
const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
|
|
71965
71965
|
return {
|
|
@@ -72034,23 +72034,23 @@ let webLoginQrPromise = null;
|
|
|
72034
72034
|
let webChannelPromise = null;
|
|
72035
72035
|
let whatsappActionsPromise = null;
|
|
72036
72036
|
function loadWebOutbound() {
|
|
72037
|
-
webOutboundPromise ??= import("./outbound-
|
|
72037
|
+
webOutboundPromise ??= import("./outbound-CHyBoNxD.js").then((n) => n.t);
|
|
72038
72038
|
return webOutboundPromise;
|
|
72039
72039
|
}
|
|
72040
72040
|
function loadWebLogin() {
|
|
72041
|
-
webLoginPromise ??= import("./login-
|
|
72041
|
+
webLoginPromise ??= import("./login-I5RlwiJn.js").then((n) => n.n);
|
|
72042
72042
|
return webLoginPromise;
|
|
72043
72043
|
}
|
|
72044
72044
|
function loadWebLoginQr() {
|
|
72045
|
-
webLoginQrPromise ??= import("./login-qr-
|
|
72045
|
+
webLoginQrPromise ??= import("./login-qr-CRjZn3ix.js");
|
|
72046
72046
|
return webLoginQrPromise;
|
|
72047
72047
|
}
|
|
72048
72048
|
function loadWebChannel() {
|
|
72049
|
-
webChannelPromise ??= import("./web-
|
|
72049
|
+
webChannelPromise ??= import("./web-B4yuhy9a.js");
|
|
72050
72050
|
return webChannelPromise;
|
|
72051
72051
|
}
|
|
72052
72052
|
function loadWhatsAppActions() {
|
|
72053
|
-
whatsappActionsPromise ??= import("./whatsapp-actions-
|
|
72053
|
+
whatsappActionsPromise ??= import("./whatsapp-actions-DUoWY7mE.js");
|
|
72054
72054
|
return whatsappActionsPromise;
|
|
72055
72055
|
}
|
|
72056
72056
|
function createRuntimeWhatsApp() {
|
|
@@ -73093,7 +73093,7 @@ function resolvePluginTools(params) {
|
|
|
73093
73093
|
//#endregion
|
|
73094
73094
|
//#region src/agents/apply-patch-update.ts
|
|
73095
73095
|
async function defaultReadFile(filePath) {
|
|
73096
|
-
return
|
|
73096
|
+
return fsPromises.readFile(filePath, "utf8");
|
|
73097
73097
|
}
|
|
73098
73098
|
async function applyUpdateHunk(filePath, chunks, options) {
|
|
73099
73099
|
const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
|
|
@@ -73414,7 +73414,7 @@ function resolvePatchFileOps(options) {
|
|
|
73414
73414
|
const workspaceOnly = options.workspaceOnly !== false;
|
|
73415
73415
|
return {
|
|
73416
73416
|
readFile: async (filePath) => {
|
|
73417
|
-
if (!workspaceOnly) return await
|
|
73417
|
+
if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
|
|
73418
73418
|
const opened = await openBoundaryFile({
|
|
73419
73419
|
absolutePath: filePath,
|
|
73420
73420
|
rootPath: options.cwd,
|
|
@@ -73429,7 +73429,7 @@ function resolvePatchFileOps(options) {
|
|
|
73429
73429
|
},
|
|
73430
73430
|
writeFile: async (filePath, content) => {
|
|
73431
73431
|
if (!workspaceOnly) {
|
|
73432
|
-
await
|
|
73432
|
+
await fsPromises.writeFile(filePath, content, "utf8");
|
|
73433
73433
|
return;
|
|
73434
73434
|
}
|
|
73435
73435
|
const relative = toRelativeSandboxPath(options.cwd, filePath);
|
|
@@ -73440,8 +73440,8 @@ function resolvePatchFileOps(options) {
|
|
|
73440
73440
|
encoding: "utf8"
|
|
73441
73441
|
});
|
|
73442
73442
|
},
|
|
73443
|
-
remove: (filePath) =>
|
|
73444
|
-
mkdirp: (dir) =>
|
|
73443
|
+
remove: (filePath) => fsPromises.rm(filePath),
|
|
73444
|
+
mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
|
|
73445
73445
|
};
|
|
73446
73446
|
}
|
|
73447
73447
|
async function ensureDir(filePath, ops) {
|
|
@@ -73741,7 +73741,7 @@ async function runBeforeToolCallHook(args) {
|
|
|
73741
73741
|
const params = args.params;
|
|
73742
73742
|
if (args.ctx?.sessionKey) {
|
|
73743
73743
|
const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Bwj7TezN.js");
|
|
73744
|
-
const { logToolLoopAction } = await import("./diagnostic-
|
|
73744
|
+
const { logToolLoopAction } = await import("./diagnostic-DjxUqpmL.js").then((n) => n.n);
|
|
73745
73745
|
const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-DLEs1CTw.js");
|
|
73746
73746
|
const sessionState = getDiagnosticSessionState({
|
|
73747
73747
|
sessionKey: args.ctx.sessionKey,
|
|
@@ -74312,7 +74312,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
|
|
|
74312
74312
|
if (!pathParam || !newText) throw err;
|
|
74313
74313
|
try {
|
|
74314
74314
|
const absolutePath = resolveHostEditPath(root, pathParam);
|
|
74315
|
-
const content = await
|
|
74315
|
+
const content = await fsPromises.readFile(absolutePath, "utf-8");
|
|
74316
74316
|
const hasNew = content.includes(newText);
|
|
74317
74317
|
const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
|
|
74318
74318
|
if (hasNew && !stillHasOld) return {
|
|
@@ -74415,14 +74415,14 @@ function createSandboxEditOperations(params) {
|
|
|
74415
74415
|
}
|
|
74416
74416
|
async function writeHostFile(absolutePath, content) {
|
|
74417
74417
|
const resolved = path.resolve(absolutePath);
|
|
74418
|
-
await
|
|
74419
|
-
await
|
|
74418
|
+
await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
|
|
74419
|
+
await fsPromises.writeFile(resolved, content, "utf-8");
|
|
74420
74420
|
}
|
|
74421
74421
|
function createHostWriteOperations(root, options) {
|
|
74422
74422
|
if (!(options?.workspaceOnly ?? false)) return {
|
|
74423
74423
|
mkdir: async (dir) => {
|
|
74424
74424
|
const resolved = path.resolve(dir);
|
|
74425
|
-
await
|
|
74425
|
+
await fsPromises.mkdir(resolved, { recursive: true });
|
|
74426
74426
|
},
|
|
74427
74427
|
writeFile: writeHostFile
|
|
74428
74428
|
};
|
|
@@ -74435,7 +74435,7 @@ function createHostWriteOperations(root, options) {
|
|
|
74435
74435
|
cwd: root,
|
|
74436
74436
|
root
|
|
74437
74437
|
});
|
|
74438
|
-
await
|
|
74438
|
+
await fsPromises.mkdir(resolved, { recursive: true });
|
|
74439
74439
|
},
|
|
74440
74440
|
writeFile: async (absolutePath, content) => {
|
|
74441
74441
|
await writeFileWithinRoot({
|
|
@@ -74451,12 +74451,12 @@ function createHostEditOperations(root, options) {
|
|
|
74451
74451
|
if (!(options?.workspaceOnly ?? false)) return {
|
|
74452
74452
|
readFile: async (absolutePath) => {
|
|
74453
74453
|
const resolved = path.resolve(absolutePath);
|
|
74454
|
-
return await
|
|
74454
|
+
return await fsPromises.readFile(resolved);
|
|
74455
74455
|
},
|
|
74456
74456
|
writeFile: writeHostFile,
|
|
74457
74457
|
access: async (absolutePath) => {
|
|
74458
74458
|
const resolved = path.resolve(absolutePath);
|
|
74459
|
-
await
|
|
74459
|
+
await fsPromises.access(resolved);
|
|
74460
74460
|
}
|
|
74461
74461
|
};
|
|
74462
74462
|
return {
|
|
@@ -75294,7 +75294,7 @@ async function repairSessionFileIfNeeded(params) {
|
|
|
75294
75294
|
};
|
|
75295
75295
|
let content;
|
|
75296
75296
|
try {
|
|
75297
|
-
content = await
|
|
75297
|
+
content = await fsPromises.readFile(sessionFile, "utf-8");
|
|
75298
75298
|
} catch (err) {
|
|
75299
75299
|
if (err?.code === "ENOENT") return {
|
|
75300
75300
|
repaired: false,
|
|
@@ -75342,15 +75342,15 @@ async function repairSessionFileIfNeeded(params) {
|
|
|
75342
75342
|
const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
|
|
75343
75343
|
const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
|
|
75344
75344
|
try {
|
|
75345
|
-
const stat = await
|
|
75346
|
-
await
|
|
75347
|
-
if (stat) await
|
|
75348
|
-
await
|
|
75349
|
-
if (stat) await
|
|
75350
|
-
await
|
|
75345
|
+
const stat = await fsPromises.stat(sessionFile).catch(() => null);
|
|
75346
|
+
await fsPromises.writeFile(backupPath, content, "utf-8");
|
|
75347
|
+
if (stat) await fsPromises.chmod(backupPath, stat.mode);
|
|
75348
|
+
await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
|
|
75349
|
+
if (stat) await fsPromises.chmod(tmpPath, stat.mode);
|
|
75350
|
+
await fsPromises.rename(tmpPath, sessionFile);
|
|
75351
75351
|
} catch (err) {
|
|
75352
75352
|
try {
|
|
75353
|
-
await
|
|
75353
|
+
await fsPromises.unlink(tmpPath);
|
|
75354
75354
|
} catch (cleanupErr) {
|
|
75355
75355
|
params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
|
|
75356
75356
|
}
|
|
@@ -76951,7 +76951,7 @@ async function prewarmSessionFile(sessionFile) {
|
|
|
76951
76951
|
if (!isSessionManagerCacheEnabled()) return;
|
|
76952
76952
|
if (isSessionManagerCached(sessionFile)) return;
|
|
76953
76953
|
try {
|
|
76954
|
-
const handle = await
|
|
76954
|
+
const handle = await fsPromises.open(sessionFile, "r");
|
|
76955
76955
|
try {
|
|
76956
76956
|
const buffer = Buffer$1.alloc(4096);
|
|
76957
76957
|
await handle.read(buffer, 0, buffer.length, 0);
|
|
@@ -77307,7 +77307,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
77307
77307
|
} catch (err) {
|
|
77308
77308
|
return fail(describeUnknownError(err));
|
|
77309
77309
|
}
|
|
77310
|
-
await
|
|
77310
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
77311
77311
|
const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
|
|
77312
77312
|
const sandbox = await resolveSandboxContext({
|
|
77313
77313
|
config: params.config,
|
|
@@ -77315,7 +77315,7 @@ async function compactEmbeddedPiSessionDirect(params) {
|
|
|
77315
77315
|
workspaceDir: resolvedWorkspace
|
|
77316
77316
|
});
|
|
77317
77317
|
const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
|
|
77318
|
-
await
|
|
77318
|
+
await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
|
|
77319
77319
|
await ensureSessionHeader({
|
|
77320
77320
|
sessionFile: params.sessionFile,
|
|
77321
77321
|
sessionId: params.sessionId,
|
|
@@ -78197,12 +78197,12 @@ function getQueuedFileWriter(writers, filePath) {
|
|
|
78197
78197
|
const existing = writers.get(filePath);
|
|
78198
78198
|
if (existing) return existing;
|
|
78199
78199
|
const dir = path.dirname(filePath);
|
|
78200
|
-
const ready =
|
|
78200
|
+
const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
|
|
78201
78201
|
let queue = Promise.resolve();
|
|
78202
78202
|
const writer = {
|
|
78203
78203
|
filePath,
|
|
78204
78204
|
write: (line) => {
|
|
78205
|
-
queue = queue.then(() => ready).then(() =>
|
|
78205
|
+
queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
|
|
78206
78206
|
}
|
|
78207
78207
|
};
|
|
78208
78208
|
writers.set(filePath, writer);
|
|
@@ -81120,7 +81120,7 @@ async function prepareSessionManagerForRun(params) {
|
|
|
81120
81120
|
return;
|
|
81121
81121
|
}
|
|
81122
81122
|
if (params.hadSessionFile && header && !hasAssistant) {
|
|
81123
|
-
await
|
|
81123
|
+
await fsPromises.writeFile(params.sessionFile, "", "utf-8");
|
|
81124
81124
|
sm.fileEntries = [header];
|
|
81125
81125
|
sm.byId?.clear?.();
|
|
81126
81126
|
sm.labelsById?.clear?.();
|
|
@@ -81854,7 +81854,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
81854
81854
|
const prevCwd = process.cwd();
|
|
81855
81855
|
const runAbortController = new AbortController();
|
|
81856
81856
|
log$3.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
|
|
81857
|
-
await
|
|
81857
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
81858
81858
|
const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
|
|
81859
81859
|
const sandbox = await resolveSandboxContext({
|
|
81860
81860
|
config: params.config,
|
|
@@ -81862,7 +81862,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
81862
81862
|
workspaceDir: resolvedWorkspace
|
|
81863
81863
|
});
|
|
81864
81864
|
const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
|
|
81865
|
-
await
|
|
81865
|
+
await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
|
|
81866
81866
|
let restoreSkillEnv;
|
|
81867
81867
|
process.chdir(effectiveWorkspace);
|
|
81868
81868
|
try {
|
|
@@ -82106,7 +82106,7 @@ async function runEmbeddedAttempt(params) {
|
|
|
82106
82106
|
sessionFile: params.sessionFile,
|
|
82107
82107
|
warn: (message) => log$3.warn(message)
|
|
82108
82108
|
});
|
|
82109
|
-
const hadSessionFile = await
|
|
82109
|
+
const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
|
|
82110
82110
|
const transcriptPolicy = resolveTranscriptPolicy({
|
|
82111
82111
|
modelApi: params.model?.api,
|
|
82112
82112
|
provider: params.provider,
|
|
@@ -83248,7 +83248,7 @@ async function runEmbeddedPiAgent(params) {
|
|
|
83248
83248
|
const copilotAuthRetry = authRetryPending;
|
|
83249
83249
|
authRetryPending = false;
|
|
83250
83250
|
attemptedThinking.add(thinkLevel);
|
|
83251
|
-
await
|
|
83251
|
+
await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
|
|
83252
83252
|
const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
|
|
83253
83253
|
const attempt = await runEmbeddedAttempt({
|
|
83254
83254
|
sessionId: params.sessionId,
|