winclaw 2026.3.16 → 2026.3.18
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-DLBe7Iqu.js → accounts-CO790By2.js} +1 -1
- package/dist/{accounts-3dw6Wt7z.js → accounts-CpVr4v3z.js} +1 -1
- package/dist/{accounts-CwcDKrII.js → accounts-D56YQyn8.js} +7 -7
- package/dist/{acp-cli-DJYDrN4p.js → acp-cli-C1suYXou.js} +8 -8
- package/dist/{agent-scope-BjM05Snq.js → agent-scope-DMzhkNwl.js} +17 -17
- package/dist/{agents.config-SJHFouLt.js → agents.config-CxXq-sKs.js} +2 -2
- package/dist/{api-key-rotation-DF1fmKqf.js → api-key-rotation-CirBQV5-.js} +1 -1
- package/dist/{audio-preflight-DeRje3xF.js → audio-preflight-C8-gU1ab.js} +34 -34
- package/dist/{audio-transcription-runner-BU8VYzG0.js → audio-transcription-runner-DJbn-fP-.js} +23 -23
- package/dist/{audit-DvYeSXje.js → audit-B0zW_DIt.js} +29 -29
- package/dist/{auth-C-QV87h1.js → auth-BXzrYbOm.js} +1 -1
- package/dist/{auth-choice-B1JZnOHT.js → auth-choice-BnfQ9_Fs.js} +13 -13
- package/dist/{auth-choice-CxCit0ql.js → auth-choice-CaFmZC0x.js} +11 -11
- package/dist/{auth-choice.apply-helpers-Br5qWGgq.js → auth-choice.apply-helpers-B5KA46-n.js} +1 -1
- package/dist/{auth-token-Cn9QODzQ.js → auth-token-zUe8Mvp4.js} +1 -1
- package/dist/{bonjour-discovery-C1WIomge.js → bonjour-discovery-D9sghQjb.js} +1 -1
- package/dist/{browser-cli-CZ6R-R2T.js → browser-cli-OE9iDeqa.js} +12 -12
- package/dist/build-info.json +3 -3
- package/dist/{call-jAJr36nx.js → call-C8L99wK_.js} +10 -10
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-account-context-DMSK5tU0.js → channel-account-context-hGeSF90h.js} +5 -5
- package/dist/{channel-activity-BY9NbA5P.js → channel-activity-pAfPnsFe.js} +1 -1
- package/dist/{channel-options-CdWrfvRn.js → channel-options-KfxiF24L.js} +3 -3
- package/dist/{channel-selection-BDtnIRMd.js → channel-selection-DYo85GcI.js} +1 -1
- package/dist/{channel-web-SLvzOB5j.js → channel-web-D9RC09YD.js} +16 -16
- package/dist/{channels-cli-C31DXRqg.js → channels-cli-CauZyprt.js} +92 -92
- package/dist/{channels-status-issues-BRENJAql.js → channels-status-issues-Cm2fEB2I.js} +1 -1
- package/dist/{chrome-gS-mqtxv.js → chrome-CmfmicCj.js} +4 -4
- package/dist/{clawbot-cli-4XKqFn_L.js → clawbot-cli-DW-gbSm9.js} +11 -11
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-BDlx0GUm.js → cli-BXfS6qH4.js} +72 -72
- package/dist/{client-D_fo1kMD.js → client-2l5l_bWZ.js} +2 -2
- package/dist/{command-secret-targets-D7iBOOeC.js → command-secret-targets-BcHicQgO.js} +4 -4
- package/dist/{commands-d2key1Fi.js → commands-BwQQ7zsb.js} +1 -1
- package/dist/{commands-registry-DoX1u5EK.js → commands-registry-kZrnrPW-.js} +3 -3
- package/dist/{completion-cli-mZttziur.js → completion-cli-nWflWwec.js} +12 -12
- package/dist/{config-cli-Blrff9_M.js → config-cli-CgQuzX4m.js} +7 -7
- package/dist/{config-guard-DpyHzZgr.js → config-guard-CvRJKs5I.js} +16 -16
- package/dist/{config-validation-Bt4XebQP.js → config-validation-COqZI-3k.js} +3 -3
- package/dist/{configure-CgriDtEu.js → configure-Yz1uRYAS.js} +17 -17
- package/dist/{control-ui-assets-6YLru-BI.js → control-ui-assets-CiqT4mr0.js} +1 -1
- package/dist/{cron-cli-pu0xNwsh.js → cron-cli-C2KrIadm.js} +11 -11
- package/dist/{daemon-cli-BGmhSUqA.js → daemon-cli-BZy9_0qR.js} +16 -16
- package/dist/{daemon-install-DfiW_6PW.js → daemon-install-CXEpgnB7.js} +4 -4
- package/dist/{daemon-install-helpers-Bl9cC3_Q.js → daemon-install-helpers-Bv4Qh6_r.js} +11 -11
- package/dist/{deliver-DtuFQmP0.js → deliver-Cm4_BUT9.js} +7 -7
- package/dist/deliver-runtime-bxa4rgnd.js +61 -0
- package/dist/deps-send-discord.runtime-DzG7vr7G.js +36 -0
- package/dist/deps-send-imessage.runtime-B16Ik-ma.js +35 -0
- package/dist/deps-send-signal.runtime-pNZUY-kK.js +34 -0
- package/dist/deps-send-slack.runtime-BoxG0Kyp.js +32 -0
- package/dist/{deps-send-telegram.runtime-vb0X3z6l.js → deps-send-telegram.runtime-DdJwe8vB.js} +16 -16
- package/dist/deps-send-whatsapp.runtime-Bgy2Wad4.js +118 -0
- package/dist/{devices-cli-CwEZdH3y.js → devices-cli-CsqL8oBY.js} +8 -8
- package/dist/{diagnostic-ZmgAleHj.js → diagnostic-Dmvr-EE7.js} +1 -1
- package/dist/{diagnostics-DL2w3coK.js → diagnostics-CVtJiuf5.js} +5 -5
- package/dist/{directory-cli-H75fTu05.js → directory-cli-MLZQmRpd.js} +7 -7
- package/dist/{dns-cli-CNvoAap-.js → dns-cli-CpRrV_iL.js} +5 -5
- package/dist/{dock-CU6afu_e.js → dock-DxyPdXq3.js} +4 -4
- package/dist/{docs-cli-tBPHkJcK.js → docs-cli-QUOcRevY.js} +4 -4
- package/dist/{doctor-completion-DsiThFl_.js → doctor-completion-CfJmmmmt.js} +2 -2
- package/dist/{doctor-config-flow-D_TTmWrS.js → doctor-config-flow-Bay1hXCR.js} +15 -15
- package/dist/{enable-BZdtz_oh.js → enable-DNUS3RyN.js} +1 -1
- package/dist/{exec-approvals-allowlist-C2KhlwHt.js → exec-approvals-allowlist-IIQJrrMK.js} +1 -1
- package/dist/{exec-approvals-cli-b0A1oefC.js → exec-approvals-cli-Bf91-ubw.js} +16 -16
- package/dist/{exec-safe-bin-runtime-policy-BLhaJ0EJ.js → exec-safe-bin-runtime-policy-DS35E0fx.js} +2 -2
- package/dist/{fetch-guard-CkHmJoEM.js → fetch-guard-BFaEFa50.js} +1 -1
- package/dist/{fs-safe-DDV_eBKQ.js → fs-safe-BYADg7n_.js} +24 -24
- package/dist/{gateway-cli--KGMZVfh.js → gateway-cli-wRl5czGj.js} +153 -153
- package/dist/{gateway-rpc-BAoGLm2y.js → gateway-rpc-BOJU6fOg.js} +1 -1
- package/dist/{health-BehFSuSQ.js → health-B5HHHsz7.js} +11 -11
- package/dist/{hooks-cli-CMDJpb_D.js → hooks-cli-CNcPXkyH.js} +80 -80
- package/dist/{hooks-status-jr72HwQw.js → hooks-status-C9sGL6HN.js} +1 -1
- package/dist/{image-BxZvMdUY.js → image-DTDQdHxB.js} +5 -5
- package/dist/{image-ops-CARXq-EU.js → image-ops-h79c4OIk.js} +10 -10
- package/dist/image-runtime-CzHFyAkE.js +55 -0
- package/dist/index.js +82 -82
- package/dist/{inspect-BmlkTbnz.js → inspect-DTfysg9O.js} +4 -4
- package/dist/{install-safe-path-D9OGWJOR.js → install-safe-path-DJYLJZtW.js} +25 -25
- package/dist/{installs-38JZgJ6W.js → installs-BuBPByL6.js} +9 -9
- package/dist/{ipv4-C977uOtV.js → ipv4-BN-OWG9I.js} +1 -1
- package/dist/{ir-DfwM6XrK.js → ir-BJBrcb_I.js} +8 -8
- package/dist/{issue-format-DTdRjgDJ.js → issue-format-CfzQEgtp.js} +1 -1
- package/dist/{json-files-CtksvmNE.js → json-files-Cxp4hRet.js} +8 -8
- package/dist/{lifecycle-core-DuQrE_wt.js → lifecycle-core-m4lfwkQ8.js} +5 -5
- package/dist/{local-roots-DUfgcCfd.js → local-roots-uJjC65ik.js} +3 -3
- package/dist/{login-BFRZk0oo.js → login-ByFtyCOK.js} +3 -3
- package/dist/{login-qr-DGurTWW8.js → login-qr-CeajpTHd.js} +6 -6
- package/dist/{logs-cli-BYxhWRmy.js → logs-cli-ByRj1nnI.js} +9 -9
- package/dist/{manager-D5x4oqR9.js → manager-BUltB-Vm.js} +14 -14
- package/dist/{manager-runtime-BboXoSzN.js → manager-runtime-CO-52VpC.js} +9 -9
- package/dist/{manifest-registry-Bc4-t_4c.js → manifest-registry-Dd_jTCh5.js} +1 -1
- package/dist/{memory-cli-ElCzQm5k.js → memory-cli-kBkdTCc7.js} +12 -12
- package/dist/{model-Cuyx9xlP.js → model-BA6Yax7x.js} +2 -2
- package/dist/{model-catalog-CfgDRJ71.js → model-catalog-BZ_SScDX.js} +3 -3
- package/dist/{model-picker-BrFxAc93.js → model-picker-DKzZv2JV.js} +4 -4
- package/dist/{model-selection-sZzgGuDI.js → model-selection-DMALgc-K.js} +16 -16
- package/dist/{models-cli-DbUiVw-b.js → models-cli-DA829TDw.js} +81 -81
- package/dist/{models-config-BY5CO6fC.js → models-config-CIsVY8hB.js} +6 -6
- package/dist/{node-cli-CD5bswZ6.js → node-cli-DIZ52VxS.js} +33 -33
- package/dist/{node-command-policy-CO4I99O1.js → node-command-policy-DRgKhxFr.js} +1 -1
- package/dist/{node-service-BccUWEHj.js → node-service-CI_ehT_R.js} +1 -1
- package/dist/{nodes-cli-l9GnY0xj.js → nodes-cli--eehfyio.js} +16 -16
- package/dist/{nodes-screen-xW9Lnkve.js → nodes-screen-KqNspuet.js} +7 -7
- package/dist/{npm-pack-install-DASAU22E.js → npm-pack-install-CiwNCfAW.js} +18 -18
- package/dist/{npm-resolution-D4qRZ8Gv.js → npm-resolution-6kF0AVL4.js} +4 -4
- package/dist/{onboard-BHdwshlM.js → onboard-DZp-aIrb.js} +6 -6
- package/dist/{onboard-channels-BEN6kpOJ.js → onboard-channels-CUXxPALE.js} +21 -21
- package/dist/{onboard-custom-DDb13qwV.js → onboard-custom-BlzXztLQ.js} +4 -4
- package/dist/{onboard-helpers-CX6ZDoPJ.js → onboard-helpers-DIvL4qNZ.js} +10 -10
- package/dist/{onboard-hooks-BgRE55Er.js → onboard-hooks-Cnalkue1.js} +4 -4
- package/dist/{onboard-remote-B1pCGXRE.js → onboard-remote-Ca4s7kWr.js} +4 -4
- package/dist/{onboard-skills-I9aUNuIp.js → onboard-skills-BHFTVPy5.js} +4 -4
- package/dist/{onboarding-C6U-xBFq.js → onboarding-bD4AvAyM.js} +14 -14
- package/dist/{onboarding.finalize-DfjvZ9OR.js → onboarding.finalize-iu06B7uV.js} +85 -85
- package/dist/{onboarding.gateway-config-B0gMI3E8.js → onboarding.gateway-config-BS0ZnbNK.js} +18 -18
- package/dist/{onboarding.secret-input-BGR0Nsbp.js → onboarding.secret-input-CCXqzUKD.js} +1 -1
- package/dist/{openai-model-default-Dxtb9ifJ.js → openai-model-default-CLkLITwY.js} +2 -2
- package/dist/{outbound-Bw2Ie-Pl.js → outbound-7SyTz8A1.js} +3 -3
- package/dist/{outbound-attachment-CrOocr8F.js → outbound-attachment-BbYK1pbD.js} +2 -2
- package/dist/{pairing-cli-CEqUQLFR.js → pairing-cli-CNUZJ5Pe.js} +8 -8
- package/dist/{pairing-labels-Bt187jaW.js → pairing-labels-Blr3N8M9.js} +1 -1
- package/dist/{pairing-store-DYBSZwK1.js → pairing-store-CO5T6xRl.js} +3 -3
- package/dist/{path-alias-guards-BS80tJKY.js → path-alias-guards-ByVIlbty.js} +3 -3
- package/dist/{path-safety-C_tWSbsj.js → path-safety-BzqN_jT0.js} +1 -1
- package/dist/{paths-DxdR1V10.js → paths-Dtw-Ctab.js} +9 -9
- package/dist/{pi-embedded-helpers-COBH2wUD.js → pi-embedded-helpers-ByLe6_4t.js} +6 -6
- package/dist/{pi-model-discovery-Dt2-gEPi.js → pi-model-discovery-QWKBpM19.js} +1 -1
- package/dist/{pi-model-discovery-runtime-CB7-ijgl.js → pi-model-discovery-runtime-DALJPKqG.js} +5 -5
- package/dist/{pi-tools.before-tool-call.runtime-CIJb-5Ya.js → pi-tools.before-tool-call.runtime-BarBBIAA.js} +5 -5
- package/dist/{pi-tools.policy-Cdy3Az5h.js → pi-tools.policy-CDC0KLfN.js} +5 -5
- package/dist/{plugin-auto-enable-BSZNVoA0.js → plugin-auto-enable-DzUsrf7B.js} +3 -3
- package/dist/{plugin-registry-CBthTgTt.js → plugin-registry-Dd1PDylO.js} +3 -3
- package/dist/plugin-sdk/feishu.js +2 -2
- package/dist/plugin-sdk/googlechat.js +2 -2
- package/dist/plugin-sdk/index.js +50 -50
- package/dist/plugin-sdk/matrix.js +2 -2
- package/dist/plugin-sdk/signal.js +2 -2
- package/dist/plugin-sdk/telegram.js +2 -2
- package/dist/plugin-sdk/twitch.js +2 -2
- package/dist/{plugins-BciWft73.js → plugins-BUdux3tD.js} +2 -2
- package/dist/{plugins-cli-DCcGwy7F.js → plugins-cli-C_OirXP_.js} +82 -82
- package/dist/{ports-CEwPkhlu.js → ports-DXt_AVSk.js} +1 -1
- package/dist/{ports-CCEnJo8a.js → ports-Dc3sky5h.js} +2 -2
- package/dist/{probe-BiWGmrZT.js → probe-CRMvvOZh.js} +2 -2
- package/dist/{program-context-D33fHL9b.js → program-context-YwMSXcLF.js} +41 -41
- package/dist/{prompt-select-styled-BQs9yQ-l.js → prompt-select-styled-DYZoWj3J.js} +40 -40
- package/dist/{provider-auth-helpers-hF8rOMzv.js → provider-auth-helpers-DY-WQ3Xr.js} +5 -5
- package/dist/{proxy-env-BkeMGpvY.js → proxy-env-CxZg3TjS.js} +1 -1
- package/dist/{push-apns-HdYa_Wuo.js → push-apns-DW7A5ryf.js} +5 -5
- package/dist/{pw-ai-DAgE9fdw.js → pw-ai-DvBIj8uc.js} +18 -18
- package/dist/{qmd-manager-DxnM6CIh.js → qmd-manager-BOGbQ8Gm.js} +20 -20
- package/dist/{qr-cli-Bba2kjl6.js → qr-cli-1AVyCYZF.js} +2 -2
- package/dist/{query-expansion-DPBe9T2H.js → query-expansion-Bug5CgbP.js} +12 -12
- package/dist/{redact-snapshot-ADLUcTmt.js → redact-snapshot-DA0TkG6R.js} +1 -1
- package/dist/{register.agent-Dk1fj6Yh.js → register.agent-D0ztMQtC.js} +97 -97
- package/dist/register.configure-n0C5wCmh.js +164 -0
- package/dist/{register.maintenance-DtgXaFrt.js → register.maintenance-CGE5Dlfu.js} +93 -93
- package/dist/{register.message-CpFUaWNH.js → register.message-BntJZN63.js} +73 -73
- package/dist/{register.onboard-DIRkHPpF.js → register.onboard-Co8fZ0PX.js} +18 -18
- package/dist/{register.setup-7DJgLItX.js → register.setup-BNtwRYOQ.js} +21 -21
- package/dist/{register.status-health-sessions-_YLjSW2a.js → register.status-health-sessions-CJcDVI_G.js} +87 -87
- package/dist/{reply-CgJoL4Ke.js → reply-BOdfdXaW.js} +149 -149
- package/dist/{rpc-BOeQe8QZ.js → rpc-DNTNQMVe.js} +1 -1
- package/dist/{runtime-DPBfRhDH.js → runtime-BNo0gba9.js} +3 -3
- package/dist/{runtime-config-collectors-CIBAYklr.js → runtime-config-collectors-Dr2Me501.js} +1 -1
- package/dist/{runtime-whatsapp-login.runtime-CmYfPtKZ.js → runtime-whatsapp-login.runtime-DsJ8QuoE.js} +7 -7
- package/dist/{runtime-whatsapp-outbound.runtime-Cbdxc1KK.js → runtime-whatsapp-outbound.runtime-CKVlTCIW.js} +15 -15
- package/dist/{sandbox-BEAOQQ5z.js → sandbox-C259T0mP.js} +18 -18
- package/dist/{sandbox-cli-B8zdFgkX.js → sandbox-cli-CbE47-Qs.js} +25 -25
- package/dist/{secrets-cli-DdsPzV0e.js → secrets-cli-sBX8YAod.js} +11 -11
- package/dist/{security-cli-XQx9Wvqd.js → security-cli-DbI9mZdE.js} +43 -43
- package/dist/{send-BaRTvSCp.js → send-BOLNh7SN.js} +11 -11
- package/dist/{send-BKbTlabc.js → send-Bg11STl9.js} +6 -6
- package/dist/{send-DQGGCAbX.js → send-CPamGgrh.js} +8 -8
- package/dist/{send-BN7TRXw_.js → send-DCZ1Z4sw.js} +5 -5
- package/dist/{send-DGH2w0wT.js → send-hAggyJ1h.js} +4 -4
- package/dist/{server-context-CmXEOTqC.js → server-context-B1sy4EZS.js} +12 -12
- package/dist/{server-DZJZNmNe.js → server-lSQTXpf2.js} +20 -20
- package/dist/{server-lifecycle-6EWajNMN.js → server-lifecycle-BHvC0TZP.js} +2 -2
- package/dist/{server-middleware-DQRuZDG_.js → server-middleware-DJroQh0U.js} +1 -1
- package/dist/{server-node-events-OrrVFv8o.js → server-node-events-BSS5RRN4.js} +73 -73
- package/dist/{service-BqlGUtYA.js → service-C01k3kw9.js} +15 -15
- package/dist/{session-CyPL2g_-.js → session-DJ2SCpyK.js} +1 -1
- package/dist/{sessions-B4vm2bHb.js → sessions-DtgNloM9.js} +15 -15
- package/dist/{shared-TLfIKoBr.js → shared-BTzqEz3-.js} +3 -3
- package/dist/{shared-DKOQnjoY.js → shared-CGCmWQI2.js} +1 -1
- package/dist/{skill-commands-QFSeglAp.js → skill-commands-DtSZM6N8.js} +5 -5
- package/dist/{skill-scanner-Cxf7IqSj.js → skill-scanner-CqspV0GZ.js} +6 -6
- package/dist/{skills-D2dkcKi5.js → skills-B3SRvP-E.js} +3 -3
- package/dist/{skills-cli-F1w2JhZd.js → skills-cli-Dh7iOOJQ.js} +5 -5
- package/dist/{skills-install-BetwaUqU.js → skills-install-D3tB49Fd.js} +6 -6
- package/dist/{skills-status-D8Nj34Fr.js → skills-status-Cko-3Ij4.js} +1 -1
- package/dist/{slash-commands.runtime-PR8E5Nh6.js → slash-commands.runtime-CRKiUuAl.js} +11 -11
- package/dist/slash-dispatch.runtime-BvGQRNv2.js +113 -0
- package/dist/{slash-skill-commands.runtime-DbcI7eXk.js → slash-skill-commands.runtime-vbQc7q-2.js} +15 -15
- package/dist/{status-BGAnHxKw.js → status-C8uqSDQL.js} +27 -27
- package/dist/{status.update-DUWVI4vj.js → status.update-D2PbaOqF.js} +2 -2
- package/dist/{store-agwqDWjp.js → store-BLTV3TiR.js} +5 -5
- package/dist/subagent-registry-runtime-Gr6avCdO.js +113 -0
- package/dist/{system-cli-Boo7idD9.js → system-cli-CGLTVSX4.js} +9 -9
- package/dist/{system-run-command-DQBUnDtQ.js → system-run-command-DRc-Pbim.js} +1 -1
- package/dist/{systemd-CaLRjLzI.js → systemd-BRwwr66q.js} +9 -9
- package/dist/{systemd-hints-8DdspQzG.js → systemd-hints-DaBVWXg4.js} +6 -6
- package/dist/{systemd-linger-BljEXZqb.js → systemd-linger-COb7MqOK.js} +1 -1
- package/dist/{tables-HXZXsBf9.js → tables-Jkk8fgdn.js} +1 -1
- package/dist/{tailnet-CwWtFpCl.js → tailnet-BSNItVDW.js} +1 -1
- package/dist/{plugin-sdk/target-errors-DHX90ooV.js → target-errors-C2Iup3up.js} +4 -4
- package/dist/{tool-images-D5XpYJWd.js → tool-images-Hu02Mrxq.js} +1 -1
- package/dist/{tui-C1B5UCZ7.js → tui-Bhy2Icd2.js} +6 -6
- package/dist/{tui-cli-CEKbHrVl.js → tui-cli-w3Kru54-.js} +32 -32
- package/dist/{update-BJcKcpwE.js → update-BWk0tS94.js} +3 -3
- package/dist/{update-cli-CqJgGsj7.js → update-cli-DD7VkvxQ.js} +103 -103
- package/dist/{update-runner-Hd3Gyd0K.js → update-runner-CSNYUJgH.js} +16 -16
- package/dist/web-Cbp2_dAJ.js +117 -0
- package/dist/{webhooks-cli-Ba5YBjM4.js → webhooks-cli-CEIlhs6l.js} +6 -6
- package/dist/{whatsapp-actions-CbAzl2Ef.js → whatsapp-actions-D0adbtDv.js} +17 -17
- package/dist/{winclaw-root-ExuHY0xi.js → winclaw-root-Dz4DRGIq.js} +8 -8
- package/dist/{with-timeout-r4hGcNco.js → with-timeout-CDYLG_JO.js} +3 -3
- package/dist/{workspace-BroUINli.js → workspace-c01QF_kP.js} +1 -1
- package/dist/{workspace-dirs-Cbc2KiPi.js → workspace-dirs---CM3Zs7.js} +1 -1
- package/dist/{ws-jOuSOOrR.js → ws-qa_Mt4Jq.js} +2 -2
- package/dist/{wsl-BTnv5ELc.js → wsl-Bv3MAjkn.js} +2 -2
- package/package.json +1 -1
- package/dist/deliver-runtime-CKBsj5Re.js +0 -61
- package/dist/deps-send-discord.runtime-BbR7HUu8.js +0 -36
- package/dist/deps-send-imessage.runtime-BzxnQinP.js +0 -35
- package/dist/deps-send-signal.runtime-Do2Uotqh.js +0 -34
- package/dist/deps-send-slack.runtime-TLCYOV2R.js +0 -32
- package/dist/deps-send-whatsapp.runtime-973hlb-d.js +0 -118
- package/dist/image-runtime-Dc-5quLU.js +0 -55
- package/dist/plugin-sdk/accounts-Bb5SWI1a.js +0 -46
- package/dist/plugin-sdk/accounts-C8ouK3T4.js +0 -288
- package/dist/plugin-sdk/accounts-iNxXh_zC.js +0 -35
- package/dist/plugin-sdk/active-listener-DZxf4qXs.js +0 -50
- package/dist/plugin-sdk/api-key-rotation-C-JV66uu.js +0 -181
- package/dist/plugin-sdk/audio-preflight-D85ZwT1C.js +0 -69
- package/dist/plugin-sdk/audio-transcription-runner-DKZV7mSA.js +0 -2176
- package/dist/plugin-sdk/audit-membership-runtime-CxP2fdgS.js +0 -58
- package/dist/plugin-sdk/channel-activity-B3mxXOyk.js +0 -94
- package/dist/plugin-sdk/channel-web-D90hKZdh.js +0 -2256
- package/dist/plugin-sdk/chrome-DOcNUPY5.js +0 -2415
- package/dist/plugin-sdk/commands-registry-_u5uYayG.js +0 -1125
- package/dist/plugin-sdk/config-DgBITxw8.js +0 -17957
- package/dist/plugin-sdk/deliver-B3nd7Yi7.js +0 -1719
- package/dist/plugin-sdk/deliver-runtime-fmY1FJEB.js +0 -32
- package/dist/plugin-sdk/deps-send-discord.runtime-Dx6g4YpI.js +0 -23
- package/dist/plugin-sdk/deps-send-imessage.runtime-BHbkwqmP.js +0 -22
- package/dist/plugin-sdk/deps-send-signal.runtime-DWqgaXVz.js +0 -21
- package/dist/plugin-sdk/deps-send-slack.runtime-CkQplnYm.js +0 -19
- package/dist/plugin-sdk/deps-send-telegram.runtime-DgpG9nnp.js +0 -24
- package/dist/plugin-sdk/deps-send-whatsapp.runtime-9HJ3xBHm.js +0 -57
- package/dist/plugin-sdk/diagnostic-DaodZSU4.js +0 -319
- package/dist/plugin-sdk/errors-D7zDdduc.js +0 -54
- package/dist/plugin-sdk/fetch-guard-CpjJUzbC.js +0 -156
- package/dist/plugin-sdk/fs-safe-ynDN1AOr.js +0 -352
- package/dist/plugin-sdk/image-DjurGZVX.js +0 -2314
- package/dist/plugin-sdk/image-ops-BYRi8Fyc.js +0 -584
- package/dist/plugin-sdk/image-runtime-B6plrrBM.js +0 -25
- package/dist/plugin-sdk/ir-BKz-tz6e.js +0 -1296
- package/dist/plugin-sdk/local-roots-CSAWMhCG.js +0 -186
- package/dist/plugin-sdk/logger-cN8CgKqt.js +0 -1163
- package/dist/plugin-sdk/login-CBxXcX0e.js +0 -57
- package/dist/plugin-sdk/login-qr-B-ltrPu8.js +0 -320
- package/dist/plugin-sdk/manager-runtime-DpqYZgTX.js +0 -15
- package/dist/plugin-sdk/manager-s1VuT7nE.js +0 -3929
- package/dist/plugin-sdk/outbound-U75V1TDj.js +0 -212
- package/dist/plugin-sdk/outbound-attachment-CIYwDm5I.js +0 -19
- package/dist/plugin-sdk/path-alias-guards-WXu8eYZ3.js +0 -43
- package/dist/plugin-sdk/paths-Brta7ydd.js +0 -166
- package/dist/plugin-sdk/pi-embedded-helpers-aHxmGqPa.js +0 -9627
- package/dist/plugin-sdk/pi-model-discovery-Daro1rXH.js +0 -134
- package/dist/plugin-sdk/pi-model-discovery-runtime-Bsuon2Ya.js +0 -8
- package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CvMJn1nm.js +0 -354
- package/dist/plugin-sdk/plugins-CEyDJxGL.js +0 -864
- package/dist/plugin-sdk/proxy-fetch-iSQrNgP-.js +0 -38
- package/dist/plugin-sdk/pw-ai-Bu9xWLzv.js +0 -1938
- package/dist/plugin-sdk/qmd-manager-A7m15SeJ.js +0 -1448
- package/dist/plugin-sdk/query-expansion-DngcFbkC.js +0 -1011
- package/dist/plugin-sdk/redact-CIb5VTTO.js +0 -319
- package/dist/plugin-sdk/reply-puZkwbXP.js +0 -100166
- package/dist/plugin-sdk/resolve-outbound-target-DsY2VMNK.js +0 -40
- package/dist/plugin-sdk/run-with-concurrency-BlfAoChN.js +0 -1994
- package/dist/plugin-sdk/runtime-whatsapp-login.runtime-Cag17ePS.js +0 -10
- package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-BsFAJa9O.js +0 -19
- package/dist/plugin-sdk/send-BHrMFgyB.js +0 -503
- package/dist/plugin-sdk/send-CU3d2q4n.js +0 -3135
- package/dist/plugin-sdk/send-CWxQ4uNT.js +0 -414
- package/dist/plugin-sdk/send-CxOWd6tg.js +0 -2587
- package/dist/plugin-sdk/send-DVKUnRRx.js +0 -540
- package/dist/plugin-sdk/session-CPEE9Abi.js +0 -169
- package/dist/plugin-sdk/skill-commands-DIznvAVl.js +0 -353
- package/dist/plugin-sdk/skills-BXV5R4NV.js +0 -1428
- package/dist/plugin-sdk/slash-commands.runtime-OYVeqt4Q.js +0 -13
- package/dist/plugin-sdk/slash-dispatch.runtime-kXTai5_i.js +0 -52
- package/dist/plugin-sdk/slash-skill-commands.runtime-bqPJNQON.js +0 -16
- package/dist/plugin-sdk/ssrf-BP6sfREo.js +0 -202
- package/dist/plugin-sdk/store-BWzXeAH3.js +0 -81
- package/dist/plugin-sdk/subagent-registry-runtime-BhvfDlM7.js +0 -52
- package/dist/plugin-sdk/tables-BAVh5Omo.js +0 -55
- package/dist/plugin-sdk/thinking-VCK882z5.js +0 -1206
- package/dist/plugin-sdk/tokens-B-D1YRTV.js +0 -52
- package/dist/plugin-sdk/tool-images-BA9cWkGK.js +0 -274
- package/dist/plugin-sdk/web-DxIVmGxu.js +0 -56
- package/dist/plugin-sdk/whatsapp-actions-dqkS6ARr.js +0 -80
- package/dist/register.configure-BGWLlNth.js +0 -164
- package/dist/slash-dispatch.runtime-DhEuAv5j.js +0 -113
- package/dist/subagent-registry-runtime-CIEv4AYa.js +0 -113
- package/dist/target-errors-CBmJmSTT.js +0 -195
- package/dist/web-CPaj9GNO.js +0 -117
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as normalizeAccountId } from "./session-key-CIXZm7v4.js";
|
|
2
|
-
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-
|
|
2
|
+
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-D56YQyn8.js";
|
|
3
3
|
|
|
4
4
|
//#region src/signal/accounts.ts
|
|
5
5
|
const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("signal");
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { _ as normalizeAccountId } from "./session-key-CIXZm7v4.js";
|
|
2
|
-
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-
|
|
2
|
+
import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-D56YQyn8.js";
|
|
3
3
|
|
|
4
4
|
//#region src/imessage/accounts.ts
|
|
5
5
|
const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("imessage");
|
|
@@ -6,7 +6,7 @@ import { _ as normalizeAccountId, g as DEFAULT_ACCOUNT_ID, v as normalizeOptiona
|
|
|
6
6
|
import { t as formatCliCommand } from "./command-format-BU9fEGrc.js";
|
|
7
7
|
import fs from "node:fs";
|
|
8
8
|
import path from "node:path";
|
|
9
|
-
import
|
|
9
|
+
import fsPromises from "node:fs/promises";
|
|
10
10
|
|
|
11
11
|
//#region src/routing/account-lookup.ts
|
|
12
12
|
function resolveAccountEntry(accounts, accountId) {
|
|
@@ -105,14 +105,14 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
|
|
|
105
105
|
maybeRestoreCredsFromBackup(resolvedAuthDir);
|
|
106
106
|
const credsPath = resolveWebCredsPath(resolvedAuthDir);
|
|
107
107
|
try {
|
|
108
|
-
await
|
|
108
|
+
await fsPromises.access(resolvedAuthDir);
|
|
109
109
|
} catch {
|
|
110
110
|
return false;
|
|
111
111
|
}
|
|
112
112
|
try {
|
|
113
|
-
const stats = await
|
|
113
|
+
const stats = await fsPromises.stat(credsPath);
|
|
114
114
|
if (!stats.isFile() || stats.size <= 1) return false;
|
|
115
|
-
const raw = await
|
|
115
|
+
const raw = await fsPromises.readFile(credsPath, "utf-8");
|
|
116
116
|
JSON.parse(raw);
|
|
117
117
|
return true;
|
|
118
118
|
} catch {
|
|
@@ -120,7 +120,7 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
|
|
|
120
120
|
}
|
|
121
121
|
}
|
|
122
122
|
async function clearLegacyBaileysAuthState(authDir) {
|
|
123
|
-
const entries = await
|
|
123
|
+
const entries = await fsPromises.readdir(authDir, { withFileTypes: true });
|
|
124
124
|
const shouldDelete = (name) => {
|
|
125
125
|
if (name === "oauth.json") return false;
|
|
126
126
|
if (name === "creds.json" || name === "creds.json.bak") return true;
|
|
@@ -130,7 +130,7 @@ async function clearLegacyBaileysAuthState(authDir) {
|
|
|
130
130
|
await Promise.all(entries.map(async (entry) => {
|
|
131
131
|
if (!entry.isFile()) return;
|
|
132
132
|
if (!shouldDelete(entry.name)) return;
|
|
133
|
-
await
|
|
133
|
+
await fsPromises.rm(path.join(authDir, entry.name), { force: true });
|
|
134
134
|
}));
|
|
135
135
|
}
|
|
136
136
|
async function logoutWeb(params) {
|
|
@@ -141,7 +141,7 @@ async function logoutWeb(params) {
|
|
|
141
141
|
return false;
|
|
142
142
|
}
|
|
143
143
|
if (params.isLegacyAuthDir) await clearLegacyBaileysAuthState(resolvedAuthDir);
|
|
144
|
-
else await
|
|
144
|
+
else await fsPromises.rm(resolvedAuthDir, {
|
|
145
145
|
recursive: true,
|
|
146
146
|
force: true
|
|
147
147
|
});
|
|
@@ -1,26 +1,26 @@
|
|
|
1
1
|
import "./paths-D358qawm.js";
|
|
2
2
|
import { p as theme } from "./globals-mxjDvm3x.js";
|
|
3
3
|
import { S as shortenHomePath, y as resolveUserPath } from "./utils-D2mWpsBR.js";
|
|
4
|
-
import "./agent-scope-
|
|
4
|
+
import "./agent-scope-DMzhkNwl.js";
|
|
5
5
|
import { d as defaultRuntime } from "./subsystem-notCuUgs.js";
|
|
6
|
-
import "./winclaw-root-
|
|
6
|
+
import "./winclaw-root-Dz4DRGIq.js";
|
|
7
7
|
import "./logger-B82a6bdc.js";
|
|
8
8
|
import "./exec-BQMqbouM.js";
|
|
9
|
-
import { $t as loadConfig } from "./model-selection-
|
|
9
|
+
import { $t as loadConfig } from "./model-selection-DMALgc-K.js";
|
|
10
10
|
import "./registry-IKNezRAG.js";
|
|
11
11
|
import "./github-copilot-token-CnG2OsWc.js";
|
|
12
12
|
import "./boolean-C6Pbt2Ue.js";
|
|
13
13
|
import "./env-oWPhHfdK.js";
|
|
14
14
|
import "./host-env-security-Zh9nrO6T.js";
|
|
15
15
|
import { r as VERSION } from "./env-vars-BCyi4V6_.js";
|
|
16
|
-
import "./manifest-registry-
|
|
16
|
+
import "./manifest-registry-Dd_jTCh5.js";
|
|
17
17
|
import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-C9d1B5oJ.js";
|
|
18
18
|
import { r as isKnownCoreToolId } from "./tool-catalog-BOZwge8c.js";
|
|
19
|
-
import "./tailnet-
|
|
20
|
-
import "./ws-
|
|
19
|
+
import "./tailnet-BSNItVDW.js";
|
|
20
|
+
import "./ws-qa_Mt4Jq.js";
|
|
21
21
|
import { n as resolveWindowsSpawnProgram, t as materializeWindowsSpawnProgram } from "./windows-spawn-i7m7Lua5.js";
|
|
22
|
-
import { t as GatewayClient } from "./client-
|
|
23
|
-
import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-
|
|
22
|
+
import { t as GatewayClient } from "./client-2l5l_bWZ.js";
|
|
23
|
+
import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-C8L99wK_.js";
|
|
24
24
|
import "./pairing-token-CLjS0Ugp.js";
|
|
25
25
|
import { t as formatDocsLink } from "./links-UVNtH_G6.js";
|
|
26
26
|
import { t as isMainModule } from "./is-main-TPRg8r91.js";
|
|
@@ -2,13 +2,13 @@ import { g as resolveStateDir, y as resolveRequiredHomeDir } from "./paths-D358q
|
|
|
2
2
|
import { h as pathExists, y as resolveUserPath } from "./utils-D2mWpsBR.js";
|
|
3
3
|
import { t as createSubsystemLogger } from "./subsystem-notCuUgs.js";
|
|
4
4
|
import { E as parseAgentSessionKey, T as isSubagentSessionKey, c as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, w as isCronSessionKey } from "./session-key-CIXZm7v4.js";
|
|
5
|
-
import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveWinClawPackageRoot } from "./winclaw-root-
|
|
5
|
+
import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveWinClawPackageRoot } from "./winclaw-root-Dz4DRGIq.js";
|
|
6
6
|
import { t as runCommandWithTimeout } from "./exec-BQMqbouM.js";
|
|
7
7
|
import { fileURLToPath } from "node:url";
|
|
8
8
|
import fs from "node:fs";
|
|
9
9
|
import os from "node:os";
|
|
10
10
|
import path from "node:path";
|
|
11
|
-
import
|
|
11
|
+
import fsPromises from "node:fs/promises";
|
|
12
12
|
|
|
13
13
|
//#region src/config/model-input.ts
|
|
14
14
|
function resolveAgentModelPrimaryValue(model) {
|
|
@@ -150,7 +150,7 @@ async function loadTemplate(name) {
|
|
|
150
150
|
const templateDir = await resolveWorkspaceTemplateDir();
|
|
151
151
|
const templatePath = path.join(templateDir, name);
|
|
152
152
|
try {
|
|
153
|
-
return stripFrontMatter(await
|
|
153
|
+
return stripFrontMatter(await fsPromises.readFile(templatePath, "utf-8"));
|
|
154
154
|
} catch {
|
|
155
155
|
throw new Error(`Missing workspace template: ${name} (${templatePath}). Ensure docs/reference/templates are packaged.`);
|
|
156
156
|
}
|
|
@@ -165,7 +165,7 @@ async function loadTemplate(name) {
|
|
|
165
165
|
}
|
|
166
166
|
async function writeFileIfMissing(filePath, content) {
|
|
167
167
|
try {
|
|
168
|
-
await
|
|
168
|
+
await fsPromises.writeFile(filePath, content, {
|
|
169
169
|
encoding: "utf-8",
|
|
170
170
|
flag: "wx"
|
|
171
171
|
});
|
|
@@ -177,7 +177,7 @@ async function writeFileIfMissing(filePath, content) {
|
|
|
177
177
|
}
|
|
178
178
|
async function fileExists(filePath) {
|
|
179
179
|
try {
|
|
180
|
-
await
|
|
180
|
+
await fsPromises.access(filePath);
|
|
181
181
|
return true;
|
|
182
182
|
} catch {
|
|
183
183
|
return false;
|
|
@@ -201,7 +201,7 @@ function parseWorkspaceOnboardingState(raw) {
|
|
|
201
201
|
}
|
|
202
202
|
async function readWorkspaceOnboardingState(statePath) {
|
|
203
203
|
try {
|
|
204
|
-
return parseWorkspaceOnboardingState(await
|
|
204
|
+
return parseWorkspaceOnboardingState(await fsPromises.readFile(statePath, "utf-8")) ?? { version: WORKSPACE_STATE_VERSION };
|
|
205
205
|
} catch (err) {
|
|
206
206
|
if (err.code !== "ENOENT") throw err;
|
|
207
207
|
return { version: WORKSPACE_STATE_VERSION };
|
|
@@ -215,20 +215,20 @@ async function isWorkspaceOnboardingCompleted(dir) {
|
|
|
215
215
|
return typeof state.onboardingCompletedAt === "string" && state.onboardingCompletedAt.trim().length > 0;
|
|
216
216
|
}
|
|
217
217
|
async function writeWorkspaceOnboardingState(statePath, state) {
|
|
218
|
-
await
|
|
218
|
+
await fsPromises.mkdir(path.dirname(statePath), { recursive: true });
|
|
219
219
|
const payload = `${JSON.stringify(state, null, 2)}\n`;
|
|
220
220
|
const tmpPath = `${statePath}.tmp-${process.pid}-${Date.now().toString(36)}`;
|
|
221
221
|
try {
|
|
222
|
-
await
|
|
223
|
-
await
|
|
222
|
+
await fsPromises.writeFile(tmpPath, payload, { encoding: "utf-8" });
|
|
223
|
+
await fsPromises.rename(tmpPath, statePath);
|
|
224
224
|
} catch (err) {
|
|
225
|
-
await
|
|
225
|
+
await fsPromises.unlink(tmpPath).catch(() => {});
|
|
226
226
|
throw err;
|
|
227
227
|
}
|
|
228
228
|
}
|
|
229
229
|
async function hasGitRepo(dir) {
|
|
230
230
|
try {
|
|
231
|
-
await
|
|
231
|
+
await fsPromises.stat(path.join(dir, ".git"));
|
|
232
232
|
return true;
|
|
233
233
|
} catch {
|
|
234
234
|
return false;
|
|
@@ -258,7 +258,7 @@ async function ensureGitRepo(dir, isBrandNewWorkspace) {
|
|
|
258
258
|
}
|
|
259
259
|
async function ensureAgentWorkspace(params) {
|
|
260
260
|
const dir = resolveUserPath(params?.dir?.trim() ? params.dir.trim() : DEFAULT_AGENT_WORKSPACE_DIR);
|
|
261
|
-
await
|
|
261
|
+
await fsPromises.mkdir(dir, { recursive: true });
|
|
262
262
|
if (!params?.ensureBootstrapFiles) return { dir };
|
|
263
263
|
const agentsPath = path.join(dir, DEFAULT_AGENTS_FILENAME);
|
|
264
264
|
const soulPath = path.join(dir, DEFAULT_SOUL_FILENAME);
|
|
@@ -285,7 +285,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
285
285
|
const paths = [...templatePaths, ...userContentPaths];
|
|
286
286
|
return (await Promise.all(paths.map(async (p) => {
|
|
287
287
|
try {
|
|
288
|
-
await
|
|
288
|
+
await fsPromises.access(p);
|
|
289
289
|
return true;
|
|
290
290
|
} catch {
|
|
291
291
|
return false;
|
|
@@ -318,7 +318,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
318
318
|
if (!state.bootstrapSeededAt && bootstrapExists) markState({ bootstrapSeededAt: nowIso() });
|
|
319
319
|
if (!state.onboardingCompletedAt && state.bootstrapSeededAt && !bootstrapExists) markState({ onboardingCompletedAt: nowIso() });
|
|
320
320
|
if (!state.bootstrapSeededAt && !state.onboardingCompletedAt && !bootstrapExists) {
|
|
321
|
-
const [identityContent, userContent] = await Promise.all([
|
|
321
|
+
const [identityContent, userContent] = await Promise.all([fsPromises.readFile(identityPath, "utf-8"), fsPromises.readFile(userPath, "utf-8")]);
|
|
322
322
|
const hasUserContent = await (async () => {
|
|
323
323
|
const indicators = [
|
|
324
324
|
path.join(dir, "memory"),
|
|
@@ -326,7 +326,7 @@ async function ensureAgentWorkspace(params) {
|
|
|
326
326
|
path.join(dir, ".git")
|
|
327
327
|
];
|
|
328
328
|
for (const indicator of indicators) try {
|
|
329
|
-
await
|
|
329
|
+
await fsPromises.access(indicator);
|
|
330
330
|
return true;
|
|
331
331
|
} catch {}
|
|
332
332
|
return false;
|
|
@@ -357,7 +357,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
|
|
|
357
357
|
for (const name of candidates) {
|
|
358
358
|
const filePath = path.join(resolvedDir, name);
|
|
359
359
|
try {
|
|
360
|
-
await
|
|
360
|
+
await fsPromises.access(filePath);
|
|
361
361
|
entries.push({
|
|
362
362
|
name,
|
|
363
363
|
filePath
|
|
@@ -370,7 +370,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
|
|
|
370
370
|
for (const entry of entries) {
|
|
371
371
|
let key = entry.filePath;
|
|
372
372
|
try {
|
|
373
|
-
key = await
|
|
373
|
+
key = await fsPromises.realpath(entry.filePath);
|
|
374
374
|
} catch {}
|
|
375
375
|
if (seen.has(key)) continue;
|
|
376
376
|
seen.add(key);
|
|
@@ -1,5 +1,5 @@
|
|
|
1
|
-
import { in as loadAgentIdentityFromWorkspace, rn as identityHasValues } from "./reply-
|
|
2
|
-
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
1
|
+
import { in as loadAgentIdentityFromWorkspace, rn as identityHasValues } from "./reply-BOdfdXaW.js";
|
|
2
|
+
import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-DMzhkNwl.js";
|
|
3
3
|
import { c as normalizeAgentId } from "./session-key-CIXZm7v4.js";
|
|
4
4
|
|
|
5
5
|
//#region src/commands/agents.config.ts
|
|
@@ -2,60 +2,60 @@ import "./paths-D358qawm.js";
|
|
|
2
2
|
import { a as logVerbose, c as shouldLogVerbose } from "./globals-mxjDvm3x.js";
|
|
3
3
|
import "./utils-D2mWpsBR.js";
|
|
4
4
|
import "./thinking-44rmAw5o.js";
|
|
5
|
-
import "./agent-scope-
|
|
5
|
+
import "./agent-scope-DMzhkNwl.js";
|
|
6
6
|
import "./subsystem-notCuUgs.js";
|
|
7
|
-
import "./winclaw-root-
|
|
7
|
+
import "./winclaw-root-Dz4DRGIq.js";
|
|
8
8
|
import "./logger-B82a6bdc.js";
|
|
9
9
|
import "./exec-BQMqbouM.js";
|
|
10
|
-
import "./model-selection-
|
|
10
|
+
import "./model-selection-DMALgc-K.js";
|
|
11
11
|
import "./registry-IKNezRAG.js";
|
|
12
12
|
import "./github-copilot-token-CnG2OsWc.js";
|
|
13
13
|
import "./boolean-C6Pbt2Ue.js";
|
|
14
14
|
import "./env-oWPhHfdK.js";
|
|
15
15
|
import "./host-env-security-Zh9nrO6T.js";
|
|
16
16
|
import "./env-vars-BCyi4V6_.js";
|
|
17
|
-
import "./manifest-registry-
|
|
18
|
-
import "./dock-
|
|
17
|
+
import "./manifest-registry-Dd_jTCh5.js";
|
|
18
|
+
import "./dock-DxyPdXq3.js";
|
|
19
19
|
import "./message-channel-C9d1B5oJ.js";
|
|
20
|
-
import "./plugins-
|
|
21
|
-
import "./sessions-
|
|
22
|
-
import { d as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-
|
|
23
|
-
import "./image-
|
|
24
|
-
import "./models-config-
|
|
25
|
-
import "./pi-embedded-helpers-
|
|
26
|
-
import "./sandbox-
|
|
20
|
+
import "./plugins-BUdux3tD.js";
|
|
21
|
+
import "./sessions-DtgNloM9.js";
|
|
22
|
+
import { d as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-DJbn-fP-.js";
|
|
23
|
+
import "./image-DTDQdHxB.js";
|
|
24
|
+
import "./models-config-CIsVY8hB.js";
|
|
25
|
+
import "./pi-embedded-helpers-ByLe6_4t.js";
|
|
26
|
+
import "./sandbox-C259T0mP.js";
|
|
27
27
|
import "./tool-catalog-BOZwge8c.js";
|
|
28
|
-
import "./chrome-
|
|
28
|
+
import "./chrome-CmfmicCj.js";
|
|
29
29
|
import "./tailscale-DZ6XAzwZ.js";
|
|
30
|
-
import "./tailnet-
|
|
31
|
-
import "./ws-
|
|
32
|
-
import "./auth-
|
|
33
|
-
import "./server-context-
|
|
30
|
+
import "./tailnet-BSNItVDW.js";
|
|
31
|
+
import "./ws-qa_Mt4Jq.js";
|
|
32
|
+
import "./auth-BXzrYbOm.js";
|
|
33
|
+
import "./server-context-B1sy4EZS.js";
|
|
34
34
|
import "./frontmatter-DKeT_3NA.js";
|
|
35
|
-
import "./skills-
|
|
36
|
-
import "./path-alias-guards-
|
|
37
|
-
import "./paths-
|
|
35
|
+
import "./skills-B3SRvP-E.js";
|
|
36
|
+
import "./path-alias-guards-ByVIlbty.js";
|
|
37
|
+
import "./paths-Dtw-Ctab.js";
|
|
38
38
|
import "./redact-BDmMjK3z.js";
|
|
39
39
|
import "./errors-B7K-Wp-z.js";
|
|
40
|
-
import "./fs-safe-
|
|
41
|
-
import "./proxy-env-
|
|
42
|
-
import "./image-ops-
|
|
43
|
-
import "./store-
|
|
44
|
-
import "./ports-
|
|
40
|
+
import "./fs-safe-BYADg7n_.js";
|
|
41
|
+
import "./proxy-env-CxZg3TjS.js";
|
|
42
|
+
import "./image-ops-h79c4OIk.js";
|
|
43
|
+
import "./store-BLTV3TiR.js";
|
|
44
|
+
import "./ports-Dc3sky5h.js";
|
|
45
45
|
import "./trash-CyMeC5UH.js";
|
|
46
|
-
import "./server-middleware-
|
|
47
|
-
import "./accounts-
|
|
48
|
-
import "./accounts-
|
|
46
|
+
import "./server-middleware-DJroQh0U.js";
|
|
47
|
+
import "./accounts-D56YQyn8.js";
|
|
48
|
+
import "./accounts-CpVr4v3z.js";
|
|
49
49
|
import "./logging-xYH6GmRT.js";
|
|
50
|
-
import "./accounts-
|
|
50
|
+
import "./accounts-CO790By2.js";
|
|
51
51
|
import "./paths-DU7PeCrd.js";
|
|
52
52
|
import "./chat-envelope-COWebMOw.js";
|
|
53
|
-
import "./tool-images-
|
|
53
|
+
import "./tool-images-Hu02Mrxq.js";
|
|
54
54
|
import "./tool-display-bEFG-U4B.js";
|
|
55
|
-
import "./fetch-guard-
|
|
56
|
-
import "./api-key-rotation-
|
|
57
|
-
import "./local-roots-
|
|
58
|
-
import "./model-catalog-
|
|
55
|
+
import "./fetch-guard-BFaEFa50.js";
|
|
56
|
+
import "./api-key-rotation-CirBQV5-.js";
|
|
57
|
+
import "./local-roots-uJjC65ik.js";
|
|
58
|
+
import "./model-catalog-BZ_SScDX.js";
|
|
59
59
|
import "./proxy-fetch-zulQ_7aB.js";
|
|
60
60
|
|
|
61
61
|
//#region src/media-understanding/audio-preflight.ts
|
package/dist/{audio-transcription-runner-BU8VYzG0.js → audio-transcription-runner-DJbn-fP-.js}
RENAMED
|
@@ -1,23 +1,23 @@
|
|
|
1
1
|
import { a as logVerbose, c as shouldLogVerbose, k as resolvePreferredWinClawTmpDir } from "./globals-mxjDvm3x.js";
|
|
2
|
-
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-
|
|
2
|
+
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-DMzhkNwl.js";
|
|
3
3
|
import { n as runExec } from "./exec-BQMqbouM.js";
|
|
4
|
-
import { A as normalizeGoogleModelId, d as normalizeProviderId, dn as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, fn as isInboundPathAllowed, mn as resolveIMessageAttachmentRoots, nt as requireApiKey, pn as mergeInboundPathRoots, rt as resolveApiKeyForProvider } from "./model-selection-
|
|
5
|
-
import { j as normalizeChatType } from "./plugins-
|
|
6
|
-
import { t as describeImageWithModel } from "./image-
|
|
4
|
+
import { A as normalizeGoogleModelId, d as normalizeProviderId, dn as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, fn as isInboundPathAllowed, mn as resolveIMessageAttachmentRoots, nt as requireApiKey, pn as mergeInboundPathRoots, rt as resolveApiKeyForProvider } from "./model-selection-DMALgc-K.js";
|
|
5
|
+
import { j as normalizeChatType } from "./plugins-BUdux3tD.js";
|
|
6
|
+
import { t as describeImageWithModel } from "./image-DTDQdHxB.js";
|
|
7
7
|
import { i as formatUncaughtError, n as extractErrorCode, s as readErrorName, t as collectErrorGraphCandidates } from "./errors-B7K-Wp-z.js";
|
|
8
|
-
import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-
|
|
8
|
+
import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-h79c4OIk.js";
|
|
9
9
|
import { n as fetchWithTimeout } from "./fetch-timeout-CHeFTo4J.js";
|
|
10
|
-
import { t as fetchWithSsrFGuard } from "./fetch-guard-
|
|
11
|
-
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-
|
|
12
|
-
import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-
|
|
13
|
-
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-
|
|
10
|
+
import { t as fetchWithSsrFGuard } from "./fetch-guard-BFaEFa50.js";
|
|
11
|
+
import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-CirBQV5-.js";
|
|
12
|
+
import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-uJjC65ik.js";
|
|
13
|
+
import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BZ_SScDX.js";
|
|
14
14
|
import { n as resolveProxyFetchFromEnv } from "./proxy-fetch-zulQ_7aB.js";
|
|
15
15
|
import process$1 from "node:process";
|
|
16
16
|
import { fileURLToPath } from "node:url";
|
|
17
17
|
import { constants } from "node:fs";
|
|
18
18
|
import os from "node:os";
|
|
19
19
|
import path from "node:path";
|
|
20
|
-
import
|
|
20
|
+
import fsPromises from "node:fs/promises";
|
|
21
21
|
import crypto from "node:crypto";
|
|
22
22
|
|
|
23
23
|
//#region src/auto-reply/templating.ts
|
|
@@ -971,7 +971,7 @@ var MediaAttachmentCache = class {
|
|
|
971
971
|
const size = await this.ensureLocalStat(entry);
|
|
972
972
|
if (entry.resolvedPath) {
|
|
973
973
|
if (size !== void 0 && size > params.maxBytes) throw new MediaUnderstandingSkipError("maxBytes", `Attachment ${params.attachmentIndex + 1} exceeds maxBytes ${params.maxBytes}`);
|
|
974
|
-
const buffer = await
|
|
974
|
+
const buffer = await fsPromises.readFile(entry.resolvedPath);
|
|
975
975
|
entry.buffer = buffer;
|
|
976
976
|
entry.bufferMime = entry.bufferMime ?? entry.attachment.mime ?? await detectMime({
|
|
977
977
|
buffer,
|
|
@@ -1041,10 +1041,10 @@ var MediaAttachmentCache = class {
|
|
|
1041
1041
|
prefix: "winclaw-media",
|
|
1042
1042
|
extension: path.extname(bufferResult.fileName || "") || ""
|
|
1043
1043
|
});
|
|
1044
|
-
await
|
|
1044
|
+
await fsPromises.writeFile(tmpPath, bufferResult.buffer);
|
|
1045
1045
|
entry.tempPath = tmpPath;
|
|
1046
1046
|
entry.tempCleanup = async () => {
|
|
1047
|
-
await
|
|
1047
|
+
await fsPromises.unlink(tmpPath).catch(() => {});
|
|
1048
1048
|
};
|
|
1049
1049
|
return {
|
|
1050
1050
|
path: tmpPath,
|
|
@@ -1091,12 +1091,12 @@ var MediaAttachmentCache = class {
|
|
|
1091
1091
|
if (entry.statSize !== void 0) return entry.statSize;
|
|
1092
1092
|
try {
|
|
1093
1093
|
const currentPath = entry.resolvedPath;
|
|
1094
|
-
const stat = await
|
|
1094
|
+
const stat = await fsPromises.stat(currentPath);
|
|
1095
1095
|
if (!stat.isFile()) {
|
|
1096
1096
|
entry.resolvedPath = void 0;
|
|
1097
1097
|
return;
|
|
1098
1098
|
}
|
|
1099
|
-
const canonicalPath = await
|
|
1099
|
+
const canonicalPath = await fsPromises.realpath(currentPath).catch(() => currentPath);
|
|
1100
1100
|
if (!isInboundPathAllowed({
|
|
1101
1101
|
filePath: canonicalPath,
|
|
1102
1102
|
roots: await this.getCanonicalLocalPathRoots()
|
|
@@ -1118,7 +1118,7 @@ var MediaAttachmentCache = class {
|
|
|
1118
1118
|
if (this.canonicalLocalPathRoots) return await this.canonicalLocalPathRoots;
|
|
1119
1119
|
this.canonicalLocalPathRoots = (async () => mergeInboundPathRoots(this.localPathRoots, await Promise.all(this.localPathRoots.map(async (root) => {
|
|
1120
1120
|
if (root.includes("*")) return root;
|
|
1121
|
-
return await
|
|
1121
|
+
return await fsPromises.realpath(root).catch(() => root);
|
|
1122
1122
|
}))))();
|
|
1123
1123
|
return await this.canonicalLocalPathRoots;
|
|
1124
1124
|
}
|
|
@@ -1129,7 +1129,7 @@ var MediaAttachmentCache = class {
|
|
|
1129
1129
|
async function fileExists(filePath) {
|
|
1130
1130
|
if (!filePath) return false;
|
|
1131
1131
|
try {
|
|
1132
|
-
await
|
|
1132
|
+
await fsPromises.stat(filePath);
|
|
1133
1133
|
return true;
|
|
1134
1134
|
} catch {
|
|
1135
1135
|
return false;
|
|
@@ -1237,7 +1237,7 @@ async function resolveCliOutput(params) {
|
|
|
1237
1237
|
const commandId = commandBase(params.command);
|
|
1238
1238
|
const fileOutput = commandId === "whisper-cli" ? resolveWhisperCppOutputPath(params.args) : commandId === "whisper" ? resolveWhisperOutputPath(params.args, params.mediaPath) : commandId === "parakeet-mlx" ? resolveParakeetOutputPath(params.args, params.mediaPath) : null;
|
|
1239
1239
|
if (fileOutput && await fileExists(fileOutput)) try {
|
|
1240
|
-
const content = await
|
|
1240
|
+
const content = await fsPromises.readFile(fileOutput, "utf8");
|
|
1241
1241
|
if (content.trim()) return content.trim();
|
|
1242
1242
|
} catch {}
|
|
1243
1243
|
if (commandId === "gemini") {
|
|
@@ -1546,10 +1546,10 @@ async function runCliEntry(params) {
|
|
|
1546
1546
|
timeoutMs
|
|
1547
1547
|
});
|
|
1548
1548
|
if (capability === "audio") assertMinAudioSize({
|
|
1549
|
-
size: (await
|
|
1549
|
+
size: (await fsPromises.stat(pathResult.path)).size,
|
|
1550
1550
|
attachmentIndex: params.attachmentIndex
|
|
1551
1551
|
});
|
|
1552
|
-
const outputDir = await
|
|
1552
|
+
const outputDir = await fsPromises.mkdtemp(path.join(resolvePreferredWinClawTmpDir(), "winclaw-media-cli-"));
|
|
1553
1553
|
const mediaPath = pathResult.path;
|
|
1554
1554
|
const outputBase = path.join(outputDir, path.parse(mediaPath).name);
|
|
1555
1555
|
const templCtx = {
|
|
@@ -1583,7 +1583,7 @@ async function runCliEntry(params) {
|
|
|
1583
1583
|
model: command
|
|
1584
1584
|
};
|
|
1585
1585
|
} finally {
|
|
1586
|
-
await
|
|
1586
|
+
await fsPromises.rm(outputDir, {
|
|
1587
1587
|
recursive: true,
|
|
1588
1588
|
force: true
|
|
1589
1589
|
}).catch(() => {});
|
|
@@ -1627,9 +1627,9 @@ function candidateBinaryNames(name) {
|
|
|
1627
1627
|
}
|
|
1628
1628
|
async function isExecutable(filePath) {
|
|
1629
1629
|
try {
|
|
1630
|
-
if (!(await
|
|
1630
|
+
if (!(await fsPromises.stat(filePath)).isFile()) return false;
|
|
1631
1631
|
if (process.platform === "win32") return true;
|
|
1632
|
-
await
|
|
1632
|
+
await fsPromises.access(filePath, constants.X_OK);
|
|
1633
1633
|
return true;
|
|
1634
1634
|
} catch {
|
|
1635
1635
|
return false;
|
|
@@ -1,36 +1,36 @@
|
|
|
1
1
|
import { g as resolveStateDir, m as resolveOAuthDir, o as resolveConfigPath } from "./paths-D358qawm.js";
|
|
2
|
-
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-
|
|
2
|
+
import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-DMzhkNwl.js";
|
|
3
3
|
import { c as normalizeAgentId } from "./session-key-CIXZm7v4.js";
|
|
4
|
-
import { $r as MAX_INCLUDE_DEPTH, En as normalizeNetworkMode, Gt as inspectPathPermissions, Kt as safeStat, Qr as INCLUDE_KEY, Qt as createConfigIO, Tn as isDangerousNetworkMode, Ut as formatPermissionDetail, Wt as formatPermissionRemediation, fr as normalizeTrustedSafeBinDirs } from "./model-selection-
|
|
4
|
+
import { $r as MAX_INCLUDE_DEPTH, En as normalizeNetworkMode, Gt as inspectPathPermissions, Kt as safeStat, Qr as INCLUDE_KEY, Qt as createConfigIO, Tn as isDangerousNetworkMode, Ut as formatPermissionDetail, Wt as formatPermissionRemediation, fr as normalizeTrustedSafeBinDirs } from "./model-selection-DMALgc-K.js";
|
|
5
5
|
import { A as hasConfiguredSecretInput } from "./registry-IKNezRAG.js";
|
|
6
6
|
import { t as formatCliCommand } from "./command-format-BU9fEGrc.js";
|
|
7
7
|
import { i as isPathInside, n as MANIFEST_KEY, r as extensionUsesSkippedScannerPath } from "./legacy-names-BG8snB-z.js";
|
|
8
|
-
import { d as normalizePluginsConfig } from "./manifest-registry-
|
|
9
|
-
import { l as normalizeStringEntries } from "./dock-
|
|
10
|
-
import { n as listChannelPlugins } from "./plugins-
|
|
11
|
-
import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-
|
|
12
|
-
import { a as resolveGatewayAuth } from "./auth-
|
|
8
|
+
import { d as normalizePluginsConfig } from "./manifest-registry-Dd_jTCh5.js";
|
|
9
|
+
import { l as normalizeStringEntries } from "./dock-DxyPdXq3.js";
|
|
10
|
+
import { n as listChannelPlugins } from "./plugins-BUdux3tD.js";
|
|
11
|
+
import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-C259T0mP.js";
|
|
12
|
+
import { a as resolveGatewayAuth } from "./auth-BXzrYbOm.js";
|
|
13
13
|
import { t as resolveGatewayCredentialsFromConfig } from "./credentials-C45WhjLr.js";
|
|
14
|
-
import { a as resolveProfile, c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-
|
|
15
|
-
import { i as loadWorkspaceSkillEntries } from "./skills-
|
|
16
|
-
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-
|
|
17
|
-
import { t as buildGatewayConnectionDetails } from "./call-
|
|
18
|
-
import { i as readChannelAllowFromStore } from "./pairing-store-
|
|
19
|
-
import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-
|
|
20
|
-
import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-
|
|
14
|
+
import { a as resolveProfile, c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-B1sy4EZS.js";
|
|
15
|
+
import { i as loadWorkspaceSkillEntries } from "./skills-B3SRvP-E.js";
|
|
16
|
+
import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-BwQQ7zsb.js";
|
|
17
|
+
import { t as buildGatewayConnectionDetails } from "./call-C8L99wK_.js";
|
|
18
|
+
import { i as readChannelAllowFromStore } from "./pairing-store-CO5T6xRl.js";
|
|
19
|
+
import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-DS35E0fx.js";
|
|
20
|
+
import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-CDC0KLfN.js";
|
|
21
21
|
import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CoifQXX-.js";
|
|
22
|
-
import { t as listAgentWorkspaceDirs } from "./workspace-dirs
|
|
22
|
+
import { t as listAgentWorkspaceDirs } from "./workspace-dirs---CM3Zs7.js";
|
|
23
23
|
import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-gv_rp-w_.js";
|
|
24
24
|
import { t as resolveChannelDefaultAccountId } from "./helpers-_v26w_1X.js";
|
|
25
|
-
import { t as scanDirectoryWithSummary } from "./skill-scanner-
|
|
26
|
-
import { t as probeGateway } from "./probe-
|
|
27
|
-
import { r as resolveNodeCommandAllowlist, t as DEFAULT_DANGEROUS_NODE_COMMANDS } from "./node-command-policy-
|
|
25
|
+
import { t as scanDirectoryWithSummary } from "./skill-scanner-CqspV0GZ.js";
|
|
26
|
+
import { t as probeGateway } from "./probe-CRMvvOZh.js";
|
|
27
|
+
import { r as resolveNodeCommandAllowlist, t as DEFAULT_DANGEROUS_NODE_COMMANDS } from "./node-command-policy-DRgKhxFr.js";
|
|
28
28
|
import { c as normalizeTelegramAllowFromEntry, s as isNumericTelegramUserId, t as isDiscordMutableAllowEntry } from "./mutable-allowlist-detectors-C7fvoibT.js";
|
|
29
29
|
import { t as inferParamBFromIdOrName } from "./model-param-b-CMJBkHox.js";
|
|
30
30
|
import path from "node:path";
|
|
31
31
|
import JSON5 from "json5";
|
|
32
|
-
import * as fs
|
|
33
|
-
import
|
|
32
|
+
import * as fs from "node:fs/promises";
|
|
33
|
+
import fsPromises from "node:fs/promises";
|
|
34
34
|
import { isIP } from "node:net";
|
|
35
35
|
|
|
36
36
|
//#region src/gateway/probe-auth.ts
|
|
@@ -1252,7 +1252,7 @@ async function collectIncludePathsRecursive(params) {
|
|
|
1252
1252
|
if (visited.has(resolved)) continue;
|
|
1253
1253
|
visited.add(resolved);
|
|
1254
1254
|
result.push(resolved);
|
|
1255
|
-
const rawText = await fs
|
|
1255
|
+
const rawText = await fs.readFile(resolved, "utf-8").catch(() => null);
|
|
1256
1256
|
if (!rawText) continue;
|
|
1257
1257
|
const nestedParsed = (() => {
|
|
1258
1258
|
try {
|
|
@@ -1287,7 +1287,7 @@ function expandTilde(p, env) {
|
|
|
1287
1287
|
}
|
|
1288
1288
|
async function readPluginManifestExtensions(pluginPath) {
|
|
1289
1289
|
const manifestPath = path.join(pluginPath, "package.json");
|
|
1290
|
-
const raw = await
|
|
1290
|
+
const raw = await fsPromises.readFile(manifestPath, "utf-8").catch(() => "");
|
|
1291
1291
|
if (!raw.trim()) return [];
|
|
1292
1292
|
const extensions = JSON.parse(raw)?.[MANIFEST_KEY]?.extensions;
|
|
1293
1293
|
if (!Array.isArray(extensions)) return [];
|
|
@@ -1309,7 +1309,7 @@ async function listInstalledPluginDirs(params) {
|
|
|
1309
1309
|
};
|
|
1310
1310
|
return {
|
|
1311
1311
|
extensionsDir,
|
|
1312
|
-
pluginDirs: (await
|
|
1312
|
+
pluginDirs: (await fsPromises.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
|
|
1313
1313
|
params.onReadError?.(err);
|
|
1314
1314
|
return [];
|
|
1315
1315
|
})).filter((entry) => entry.isDirectory()).map((entry) => entry.name).filter(Boolean)
|
|
@@ -1372,7 +1372,7 @@ function isPinnedRegistrySpec(spec) {
|
|
|
1372
1372
|
}
|
|
1373
1373
|
async function readInstalledPackageVersion(dir) {
|
|
1374
1374
|
try {
|
|
1375
|
-
const raw = await
|
|
1375
|
+
const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
|
|
1376
1376
|
const parsed = JSON.parse(raw);
|
|
1377
1377
|
return typeof parsed.version === "string" ? parsed.version : void 0;
|
|
1378
1378
|
} catch {
|
|
@@ -1408,10 +1408,10 @@ async function listWorkspaceSkillMarkdownFiles(workspaceDir) {
|
|
|
1408
1408
|
const visitedDirs = /* @__PURE__ */ new Set();
|
|
1409
1409
|
while (queue.length > 0 && skillFiles.length < MAX_WORKSPACE_SKILL_SCAN_FILES_PER_WORKSPACE) {
|
|
1410
1410
|
const dir = queue.shift();
|
|
1411
|
-
const dirRealPath = await
|
|
1411
|
+
const dirRealPath = await fsPromises.realpath(dir).catch(() => path.resolve(dir));
|
|
1412
1412
|
if (visitedDirs.has(dirRealPath)) continue;
|
|
1413
1413
|
visitedDirs.add(dirRealPath);
|
|
1414
|
-
const entries = await
|
|
1414
|
+
const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => []);
|
|
1415
1415
|
for (const entry of entries) {
|
|
1416
1416
|
if (entry.name.startsWith(".") || entry.name === "node_modules") continue;
|
|
1417
1417
|
const fullPath = path.join(dir, entry.name);
|
|
@@ -1420,7 +1420,7 @@ async function listWorkspaceSkillMarkdownFiles(workspaceDir) {
|
|
|
1420
1420
|
continue;
|
|
1421
1421
|
}
|
|
1422
1422
|
if (entry.isSymbolicLink()) {
|
|
1423
|
-
const stat = await
|
|
1423
|
+
const stat = await fsPromises.stat(fullPath).catch(() => null);
|
|
1424
1424
|
if (!stat) continue;
|
|
1425
1425
|
if (stat.isDirectory()) {
|
|
1426
1426
|
queue.push(fullPath);
|
|
@@ -1710,13 +1710,13 @@ async function collectWorkspaceSkillSymlinkEscapeFindings(params) {
|
|
|
1710
1710
|
const seenSkillPaths = /* @__PURE__ */ new Set();
|
|
1711
1711
|
for (const workspaceDir of workspaceDirs) {
|
|
1712
1712
|
const workspacePath = path.resolve(workspaceDir);
|
|
1713
|
-
const workspaceRealPath = await
|
|
1713
|
+
const workspaceRealPath = await fsPromises.realpath(workspacePath).catch(() => workspacePath);
|
|
1714
1714
|
const skillFilePaths = await listWorkspaceSkillMarkdownFiles(workspacePath);
|
|
1715
1715
|
for (const skillFilePath of skillFilePaths) {
|
|
1716
1716
|
const canonicalSkillPath = path.resolve(skillFilePath);
|
|
1717
1717
|
if (seenSkillPaths.has(canonicalSkillPath)) continue;
|
|
1718
1718
|
seenSkillPaths.add(canonicalSkillPath);
|
|
1719
|
-
const skillRealPath = await
|
|
1719
|
+
const skillRealPath = await fsPromises.realpath(canonicalSkillPath).catch(() => null);
|
|
1720
1720
|
if (!skillRealPath) continue;
|
|
1721
1721
|
if (isPathInside(workspaceRealPath, skillRealPath)) continue;
|
|
1722
1722
|
escapedSkillFiles.push({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { c as readTailscaleWhoisIdentity } from "./tailscale-DZ6XAzwZ.js";
|
|
2
2
|
import { t as safeEqualSecret } from "./secret-equal-CXJEZiWb.js";
|
|
3
|
-
import { n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, u as resolveClientIp } from "./ws-
|
|
3
|
+
import { n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, u as resolveClientIp } from "./ws-qa_Mt4Jq.js";
|
|
4
4
|
import { n as resolveGatewayCredentialsFromValues } from "./credentials-C45WhjLr.js";
|
|
5
5
|
|
|
6
6
|
//#region src/gateway/auth-rate-limit.ts
|