@lawpath-tech/openclaw 2026.2.21-31 → 2026.2.21-32
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-CGBT0wQ4.js → accounts-D8ryuxvJ.js} +7 -7
- package/dist/{accounts-CAR30ERb.js → accounts-Dl14M6E6.js} +1 -1
- package/dist/{accounts-BQX482gP.js → accounts-E1DMCEDO.js} +1 -1
- package/dist/{acp-cli-DZV917OP.js → acp-cli-hedESiET.js} +6 -6
- package/dist/{agent-scope-BGlpyppa.js → agent-scope-B6jLdNuI.js} +18 -18
- package/dist/{agents-BP8GDc9z.js → agents-DWpMpnrU.js} +4 -4
- package/dist/{agents.config-Bz7K-hIv.js → agents.config-DfN81iaS.js} +2 -2
- package/dist/{agents.config-BelTNn6K.js → agents.config-bQuerf1-.js} +1 -1
- package/dist/{api-key-rotation-CMe3cUAn.js → api-key-rotation-ddrC-1k5.js} +1 -1
- package/dist/{audio-preflight-Djsieqbl.js → audio-preflight-DRE31Ab_.js} +28 -28
- package/dist/{audio-preflight-DP74Yvkp.js → audio-preflight-Dp9KYMCX.js} +4 -4
- package/dist/{audit-W6GUNtGq.js → audit-DqzfLnre.js} +23 -23
- package/dist/{auth-choice-D1nW1tnt.js → auth-choice-BWs44j21.js} +8 -8
- package/dist/{auth-choice-CBUsciQJ.js → auth-choice-CNEPjZq2.js} +1 -1
- package/dist/{auth-token-3sJLQq8Y.js → auth-token-Il_1hz__.js} +1 -1
- package/dist/{banner-C18cJKYR.js → banner-CxaRxgic.js} +1 -1
- package/dist/{bindings-D_OoALBE.js → bindings-D_90DJ1-.js} +1 -1
- package/dist/{browser-cli-pa0mgoQY.js → browser-cli-DRksx_yW.js} +9 -9
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +8 -8
- package/dist/bundled/session-memory/handler.js +8 -8
- package/dist/{call-BVSmc2vl.js → call-CYa4YbMh.js} +9 -9
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{channel-options-Dh4UX17R.js → channel-options-731cZrV3.js} +2 -2
- package/dist/{channel-options-DUJnpe5D.js → channel-options-DOP9meV_.js} +1 -1
- package/dist/{channel-selection-B3CpzNsC.js → channel-selection-NCqPAi5U.js} +1 -1
- package/dist/{channel-web-wLJAIBDS.js → channel-web-BGJ5ln5L.js} +17 -17
- package/dist/{channels-cli-B3GeraPZ.js → channels-cli-BSR5Ss_g.js} +75 -75
- package/dist/{channels-cli-7lL-U0bT.js → channels-cli-D3RDDRf1.js} +6 -6
- package/dist/{channels-status-issues-C4_sbL0E.js → channels-status-issues-CNE14g1e.js} +1 -1
- package/dist/{chrome-C9MCXK8d.js → chrome-BlXdvPOB.js} +2 -2
- package/dist/{chrome-BukFhWVN.js → chrome-DAmaIuXa.js} +7 -7
- package/dist/{clawbot-cli-B2jNAgQu.js → clawbot-cli-__trjQJ4.js} +4 -4
- package/dist/cli/daemon-cli.js +1 -1
- package/dist/{cli-C9y6JSoj.js → cli-C7e7H1JP.js} +3 -3
- package/dist/{cli-BdmFE8Ie.js → cli-DnIh8_UI.js} +62 -62
- package/dist/{client-DkL-GDcp.js → client-BW8Wuj5N.js} +1 -1
- package/dist/{command-registry-D-PJPg1t.js → command-registry-Q4A7-DBA.js} +9 -9
- package/dist/{commands-DHoTLUfu.js → commands-KvUzKZ-E.js} +1 -1
- package/dist/{commands-registry-C6MwKIm9.js → commands-registry-DVVMuhaG.js} +3 -3
- package/dist/{completion-cli-CA5pvA6W.js → completion-cli-JhFn-BzZ.js} +12 -12
- package/dist/{completion-cli-zfVgI7-n.js → completion-cli-dC9YBc-k.js} +2 -2
- package/dist/{config-CkqfHk27.js → config-JupjCURB.js} +2 -2
- package/dist/{config-cli-CgMtqspq.js → config-cli-DMLSe-zW.js} +1 -1
- package/dist/{config-cli-BPrhK0hV.js → config-cli-DOvNIX0v.js} +4 -4
- package/dist/{config-guard-C5fqJ2Ra.js → config-guard-5XdCrtj_.js} +12 -12
- package/dist/{config-validation-cyW76mmN.js → config-validation-B1WJ3f4s.js} +1 -1
- package/dist/{configure-yDD4TKIJ.js → configure-Bvsehc2l.js} +15 -15
- package/dist/{configure-P0T5xCKn.js → configure-DjTsdvi-.js} +3 -3
- package/dist/{control-service-CPT8eogY.js → control-service-C7XguOvd.js} +4 -4
- package/dist/{control-ui-assets-BcSek9LQ.js → control-ui-assets-BLVZXE2I.js} +1 -1
- package/dist/{cron-cli-B8A_gdlC.js → cron-cli-DJY2332p.js} +10 -10
- package/dist/{daemon-cli-BY4RqUnr.js → daemon-cli-BWUQX0oT.js} +11 -11
- package/dist/{daemon-runtime-b5AIw6-c.js → daemon-runtime-DWX-qIBl.js} +10 -10
- package/dist/{deliver-BLmoUvp-.js → deliver-BP564y6d.js} +1 -1
- package/dist/{deliver-DPIPJHQH.js → deliver-DKhy3kV4.js} +7 -7
- package/dist/{devices-cli-lm3S1JQu.js → devices-cli-D4oN5nE1.js} +6 -6
- package/dist/{diagnostics-BTTjVvNB.js → diagnostics-DqqmUDc7.js} +5 -5
- package/dist/{directory-cli-BV3bixZh.js → directory-cli-Cn5w5bQ0.js} +7 -7
- package/dist/{dm-policy-shared-CrbkZ-FV.js → dm-policy-shared-CysWxa2H.js} +2 -2
- package/dist/{dns-cli-D7X1eTm3.js → dns-cli-CYB5gA5O.js} +3 -3
- package/dist/{dock-B1xpMkYP.js → dock-CX_o0bdi.js} +4 -4
- package/dist/{docs-cli-C_3NO2uV.js → docs-cli-Dsn3U8-1.js} +1 -1
- package/dist/{doctor-completion-wNJ24zG1.js → doctor-completion-ZNTlXnGL.js} +1 -1
- package/dist/{doctor-completion-QnB3fOSm.js → doctor-completion-zUNacbyu.js} +2 -2
- package/dist/{doctor-config-flow-BB3nWQcZ.js → doctor-config-flow-C9h7ENJ-.js} +10 -10
- package/dist/entry.js +1 -1
- package/dist/{exec-approvals-cli-TT3Gh9kR.js → exec-approvals-cli-BXXdOl4u.js} +13 -13
- package/dist/extensionAPI.js +3 -3
- package/dist/{fs-safe-CUjO1ca2.js → fs-safe-CTDvb1DF.js} +6 -6
- package/dist/{gateway-cli-jzI2iY9a.js → gateway-cli-B8-2FWEZ.js} +10 -10
- package/dist/{gateway-cli-abohiHMm.js → gateway-cli-BXP02v7b.js} +132 -132
- package/dist/{gateway-rpc-BGGmDgbQ.js → gateway-rpc-CqPT9Cep.js} +1 -1
- package/dist/{health-ChDsDryb.js → health-BFLhZBCV.js} +13 -13
- package/dist/{health-BJ6SHHDr.js → health-Bm_bIcyw.js} +1 -1
- package/dist/{hooks-cli-DuRDIltL.js → hooks-cli-BVjpIkaS.js} +76 -76
- package/dist/{hooks-cli-BmuxgZBH.js → hooks-cli-DyN1Bq_w.js} +4 -4
- package/dist/{image-hH4ugSJI.js → image-DL65NdIM.js} +1 -1
- package/dist/{image-DC9YnAwO.js → image-DtVdv4CQ.js} +3 -3
- package/dist/{image-ops-B4PbaJHR.js → image-ops-Uvt51OHH.js} +10 -10
- package/dist/index.js +72 -72
- package/dist/{inspect-gLKB4R6Z.js → inspect-VKHaN3HT.js} +4 -4
- package/dist/{install-safe-path-tCLiMpmO.js → install-safe-path-Qqr_t_tH.js} +11 -11
- package/dist/{installs-Bbb02byQ.js → installs-BamQ1KDR.js} +10 -10
- package/dist/{ir-D72mYI93.js → ir-1SG-TkUZ.js} +6 -6
- package/dist/{lifecycle-core-DNgy-uKO.js → lifecycle-core-DZJF3omV.js} +5 -5
- package/dist/llm-slug-generator.js +8 -8
- package/dist/{local-roots-B6Q8Hrfc.js → local-roots-25wkka6O.js} +2 -2
- package/dist/{login-Bz2k49Y4.js → login-BThY9qqp.js} +3 -3
- package/dist/{login-qr-L9yhuI9H.js → login-qr-BOOn03RH.js} +5 -5
- package/dist/{logs-cli-B2PPoAkv.js → logs-cli-DoDfF8hD.js} +7 -7
- package/dist/{manager-CDo24VZE.js → manager-BVtzk7_v.js} +13 -13
- package/dist/{markdown-tables-CXWxrKp3.js → markdown-tables-MNYCbYg1.js} +1 -1
- package/dist/{memory-cli-8SCKR9xc.js → memory-cli-CS7LI30B.js} +12 -12
- package/dist/{model-BKG0edkX.js → model-MOoXNngW.js} +1 -1
- package/dist/{model-catalog-CjwzHKkB.js → model-catalog-CzLbr1ZD.js} +4 -4
- package/dist/{model-picker-NGiZaAei.js → model-picker-bpc3jJ5m.js} +3 -3
- package/dist/{model-selection-0qDmOMXI.js → model-selection-C1pdWy7b.js} +9 -9
- package/dist/{models-BpqbY6s6.js → models-Bd3CLEWM.js} +2 -2
- package/dist/{models-cli-COanmcGm.js → models-cli-4QX1LFRs.js} +72 -72
- package/dist/{models-cli-DqWWTCao.js → models-cli-D__CoxU_.js} +5 -5
- package/dist/{models-config-CTi1zIkq.js → models-config-BVp1ZtTh.js} +7 -7
- package/dist/{node-cli-Cqkqlb01.js → node-cli-D-N_WPoP.js} +28 -28
- package/dist/{node-service-YmmWwF_4.js → node-service-BESGjvfV.js} +1 -1
- package/dist/{nodes-cli-xRiWzu3G.js → nodes-cli-Cn4uY_Gx.js} +10 -10
- package/dist/{nodes-screen-C-rbZoYt.js → nodes-screen-kFzB7013.js} +4 -4
- package/dist/{npm-registry-spec-Dw7Zv5pY.js → npm-registry-spec-pqZV9KaL.js} +9 -9
- package/dist/{onboard-UEtBiCoJ.js → onboard-DDzVmEvx.js} +2 -2
- package/dist/{onboard-wCY6TSre.js → onboard-DJUKlsWz.js} +13 -13
- package/dist/{onboard-channels-BJ-tZka8.js → onboard-channels-BqW3maPJ.js} +5 -5
- package/dist/{onboard-channels-CPma01ab.js → onboard-channels-CrfL2B6W.js} +1 -1
- package/dist/{onboard-custom-KUI3ky6Y.js → onboard-custom-D7KcpLUZ.js} +3 -3
- package/dist/{onboard-helpers-CuawFqeV.js → onboard-helpers-C2-IAGyl.js} +8 -8
- package/dist/{onboard-hooks-Cjnt0UN3.js → onboard-hooks-Cf_rZ0y2.js} +1 -1
- package/dist/{onboard-remote-ClWpZWND.js → onboard-remote-DujGEJSZ.js} +1 -1
- package/dist/{onboard-skills-wCr1UcGc.js → onboard-skills-BCOMycP2.js} +4 -4
- package/dist/{onboarding-Di4SkJUj.js → onboarding-0IAGtYhr.js} +3 -3
- package/dist/{onboarding-Dp6k5p-a.js → onboarding-w8peVpJ9.js} +13 -13
- package/dist/{onboarding.finalize-G-q87JA2.js → onboarding.finalize-CwtvbQBP.js} +74 -74
- package/dist/{onboarding.finalize-DshqLGqp.js → onboarding.finalize-De4it5U3.js} +8 -8
- package/dist/{onboarding.gateway-config-7sVZcOhj.js → onboarding.gateway-config-BJ0SMGbj.js} +14 -14
- package/dist/{openai-model-default-CZOgt9C7.js → openai-model-default-DagaQbb0.js} +2 -2
- package/dist/{openclaw-root-CQJwyH9q.js → openclaw-root-CbWxAStx.js} +2 -2
- package/dist/{outbound-BiC9-qyo.js → outbound-DPGxP4j6.js} +4 -4
- package/dist/{plugin-sdk/outbound-attachment-1oBost2D.js → outbound-attachment-D07lPNUZ.js} +2 -2
- package/dist/{pairing-cli-B5reDhJF.js → pairing-cli-BZwhRsWv.js} +8 -8
- package/dist/{pairing-labels-UbwdcASX.js → pairing-labels-Cf9ie2Yo.js} +1 -1
- package/dist/{pairing-store-IkE0_gB1.js → pairing-store-BzMeXbOB.js} +2 -2
- package/dist/{pairing-token-DGufCZxz.js → pairing-token-DAVfcYo5.js} +7 -7
- package/dist/{paths-CIvEoL0m.js → paths-BsnfCNkx.js} +1 -1
- package/dist/{pi-auth-json-C5hwfgoJ.js → pi-auth-json-BBbOI_P4.js} +3 -3
- package/dist/{pi-embedded-C7TfFIPO.js → pi-embedded-CIsGkiaB.js} +200 -43
- package/dist/{pi-embedded-helpers-BDEpQxcD.js → pi-embedded-helpers-B9uwWqnh.js} +6 -6
- package/dist/{pi-embedded-helpers-DR_3fJko.js → pi-embedded-helpers-HnqhrewN.js} +4 -4
- package/dist/{pi-embedded-BAqpVR_m.js → pi-embedded-lJXJAe8z.js} +214 -57
- package/dist/{pi-tools.policy-CrKxTriv.js → pi-tools.policy-BU3gaxu3.js} +4 -4
- package/dist/{plugin-auto-enable-CU5zcL-D.js → plugin-auto-enable-Dkg7tNsW.js} +2 -2
- package/dist/{plugin-registry-BdQI8-bG.js → plugin-registry-BNUYtj9H.js} +3 -3
- package/dist/{plugin-registry-CFiYBSX2.js → plugin-registry-DjJ5pV-y.js} +1 -1
- package/dist/plugin-sdk/{accounts-cFYVb3Ir.js → accounts-BdyAJ80w.js} +1 -1
- package/dist/plugin-sdk/{accounts-owMdcC84.js → accounts-CDDBR5Pk.js} +1 -1
- package/dist/plugin-sdk/{accounts-CIV6d4kn.js → accounts-CNg4Pivg.js} +3 -3
- package/dist/plugin-sdk/{active-listener-n6hyqnXA.js → active-listener-C2nnC9Ax.js} +1 -1
- package/dist/plugin-sdk/{agent-scope-DNY1MYCy.js → agent-scope-CtPfsirh.js} +2 -2
- package/dist/plugin-sdk/{api-key-rotation-nmjAMTZA.js → api-key-rotation-R4AkTIjD.js} +1 -1
- package/dist/plugin-sdk/{audio-preflight-BkbKy5kx.js → audio-preflight-BAMNt6M5.js} +24 -24
- package/dist/plugin-sdk/{bindings-CopQpHHX.js → bindings-BoFVi5SB.js} +2 -2
- package/dist/plugin-sdk/{channel-activity-CrDvXjCQ.js → channel-activity-t_OI1MQf.js} +1 -1
- package/dist/plugin-sdk/{channel-web-DtyyUoWA.js → channel-web-hWtosBa_.js} +22 -22
- package/dist/plugin-sdk/{chrome-CrOYUXQ2.js → chrome-D0tUj9ji.js} +3 -3
- package/dist/plugin-sdk/{chunk-D4rztYS_.js → chunk-CoyesYaI.js} +1 -1
- package/dist/plugin-sdk/{command-format-A8fPp85k.js → command-format-BZHLj2Pv.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-BgL5BgCb.js → commands-registry-DhpIXuI8.js} +4 -4
- package/dist/plugin-sdk/{config-CpE4TWH0.js → config-C-kB5yPz.js} +9 -9
- package/dist/plugin-sdk/{deliver-DTKyGKVr.js → deliver-BHg_hqJG.js} +10 -10
- package/dist/plugin-sdk/{diagnostic-AkXUmNj3.js → diagnostic-Bkobf9sL.js} +1 -1
- package/dist/plugin-sdk/{image-D-2tr3lg.js → image-DJgspIhI.js} +4 -4
- package/dist/plugin-sdk/{image-ops-D4rLqyFG.js → image-ops-BeZ1nzVS.js} +1 -1
- package/dist/plugin-sdk/index.js +53 -53
- package/dist/plugin-sdk/{ir-hakANnEW.js → ir-CRPo3dMY.js} +4 -4
- package/dist/plugin-sdk/{local-roots-CnaI2qJk.js → local-roots-C5Ju-AZh.js} +3 -3
- package/dist/plugin-sdk/{login-CcPkuK_e.js → login-ZAWRtiUn.js} +7 -7
- package/dist/plugin-sdk/{login-qr-C6rEbZ_4.js → login-qr-Vep4Qyfk.js} +9 -9
- package/dist/plugin-sdk/{manager-D0UeotCy.js → manager-BiSIuKTu.js} +8 -8
- package/dist/plugin-sdk/{manifest-registry-COeXOYi0.js → manifest-registry-DJWLGnsy.js} +1 -1
- package/dist/plugin-sdk/{markdown-tables-Bf31F9r6.js → markdown-tables-D3ber0Yy.js} +1 -1
- package/dist/plugin-sdk/{message-channel-CMtCA18K.js → message-channel-BvbVXKrt.js} +1 -1
- package/dist/plugin-sdk/{model-selection-CneSW_JC.js → model-selection-QOKxGwpD.js} +4 -4
- package/dist/{outbound-attachment-91Q9pKkZ.js → plugin-sdk/outbound-attachment-Dukb2BCs.js} +2 -2
- package/dist/plugin-sdk/{outbound-ChKX7wv_.js → outbound-simNZ392.js} +7 -7
- package/dist/plugin-sdk/{pi-auth-json-DfDP_Pzq.js → pi-auth-json-DjRxrq8j.js} +5 -5
- package/dist/plugin-sdk/{pi-embedded-helpers-idRp2oNz.js → pi-embedded-helpers-onFghmXi.js} +17 -17
- package/dist/plugin-sdk/{plugins-CCHKO6PS.js → plugins-Cmzpj_lq.js} +4 -4
- package/dist/plugin-sdk/{pw-ai-DC87yDnd.js → pw-ai-MetkkJzy.js} +8 -8
- package/dist/plugin-sdk/{qmd-manager-CnTnX_JH.js → qmd-manager-CD1M3q9a.js} +4 -4
- package/dist/plugin-sdk/{registry-BlMOtcPL.js → registry-BX2vORAB.js} +2 -2
- package/dist/plugin-sdk/{replies-OoosoUz9.js → replies-_91oZTzt.js} +7 -6
- package/dist/plugin-sdk/{reply-C_4ajFUt.js → reply-CKIG0ycG.js} +272 -115
- package/dist/plugin-sdk/{reply-prefix-G9ruZ2EI.js → reply-prefix-DuegEkbr.js} +1 -1
- package/dist/plugin-sdk/{resolve-outbound-target-D9fgJ-GG.js → resolve-outbound-target-CeT5UKn8.js} +2 -2
- package/dist/plugin-sdk/{resolve-route-yBLQIeuf.js → resolve-route-DxmOOAQ3.js} +3 -3
- package/dist/plugin-sdk/{retry-BG4opKt7.js → retry-DOt8b7_o.js} +1 -1
- package/dist/plugin-sdk/{runner-BkVA5r9t.js → runner-DycIbJjS.js} +9 -9
- package/dist/plugin-sdk/{send-C40m59QO.js → send-5KyVAcYY.js} +10 -10
- package/dist/plugin-sdk/{send-C9Q83PfF.js → send-BUW2Leik.js} +26 -7
- package/dist/plugin-sdk/{send-CgLOABgR.js → send-DWnqhh6N.js} +10 -10
- package/dist/plugin-sdk/{send-CiTMY1uN.js → send-Du8i1Fom.js} +7 -7
- package/dist/plugin-sdk/{send-b1mZbvoC.js → send-Fch4vj7_.js} +6 -6
- package/dist/plugin-sdk/{session-DBbj6znF.js → session-PaIae3bL.js} +4 -4
- package/dist/plugin-sdk/{skill-commands-Cu6XAfOe.js → skill-commands-CNFldYrK.js} +5 -5
- package/dist/plugin-sdk/{skills-BTu_-5jA.js → skills-CJCz6K_W.js} +7 -7
- package/dist/plugin-sdk/slack/monitor/events/channels.d.ts +1 -0
- package/dist/plugin-sdk/slack/monitor/events/members.d.ts +1 -0
- package/dist/plugin-sdk/slack/monitor/events/pins.d.ts +1 -0
- package/dist/plugin-sdk/slack/monitor/events/reactions.d.ts +1 -0
- package/dist/plugin-sdk/slack/monitor/events.d.ts +2 -0
- package/dist/plugin-sdk/slack/monitor/message-handler.d.ts +2 -0
- package/dist/plugin-sdk/slack/monitor/provider.d.ts +6 -0
- package/dist/plugin-sdk/slack/monitor/replies.d.ts +2 -0
- package/dist/plugin-sdk/slack/monitor/types.d.ts +4 -0
- package/dist/plugin-sdk/slack/threading.d.ts +9 -0
- package/dist/plugin-sdk/{sqlite-CH3lxc5D.js → sqlite-Bmy459sE.js} +1 -1
- package/dist/plugin-sdk/{store-DDOdV26p.js → store-B_h0hmNL.js} +2 -2
- package/dist/plugin-sdk/{subsystem-DoAZkah-.js → subsystem-DJYuxViY.js} +1 -1
- package/dist/plugin-sdk/{tables-DAJbUPhT.js → tables-DCBJv1Oa.js} +1 -1
- package/dist/plugin-sdk/{target-errors-CeKndUCY.js → target-errors-gEAboF7P.js} +2 -2
- package/dist/plugin-sdk/{thinking-lC2HmTea.js → thinking-D8Se3YVf.js} +5 -5
- package/dist/plugin-sdk/{tokens-Dag82kdi.js → tokens-Cx0xANZO.js} +1 -1
- package/dist/plugin-sdk/{tool-images-D_St2NkT.js → tool-images-CIoUqeS9.js} +2 -2
- package/dist/plugin-sdk/{tool-loop-detection-BAz1GNFQ.js → tool-loop-detection-B_Opna2S.js} +2 -2
- package/dist/plugin-sdk/web-HBE7hmNI.js +65 -0
- package/dist/plugin-sdk/{whatsapp-actions-CicFq_6w.js → whatsapp-actions-DqfQYPke.js} +21 -21
- package/dist/{plugins-DufH79A4.js → plugins-BYw4LpqC.js} +2 -2
- package/dist/{plugins-cli-CmrER-zr.js → plugins-cli-CKU99tGc.js} +71 -71
- package/dist/{plugins-cli-B03aSLgf.js → plugins-cli-DBrRLw_b.js} +4 -4
- package/dist/{ports-tyVdO5z0.js → ports-CJyNmOL8.js} +2 -2
- package/dist/{ports-B6fsVJW2.js → ports-CbYVfAGi.js} +1 -1
- package/dist/{program-Djk08-l7.js → program-CuRfrHul.js} +9 -9
- package/dist/{program-context-DlRS1tcr.js → program-context-Ct_MVt2A.js} +40 -40
- package/dist/{prompt-select-styled-CMszn2hx.js → prompt-select-styled-BhdDmaM8.js} +4 -4
- package/dist/{prompt-select-styled-JkMJPt68.js → prompt-select-styled-Cb9hZTTU.js} +37 -37
- package/dist/{provider-auth-helpers-ZV7-WRyR.js → provider-auth-helpers-B7bEwRrS.js} +5 -5
- package/dist/{provider-auth-helpers-36LOZ6SL.js → provider-auth-helpers-CPkc9hAj.js} +1 -1
- package/dist/{push-apns-Cm-ZTdUp.js → push-apns-BqDXb4kj.js} +4 -4
- package/dist/{push-apns-TUUEPpx1.js → push-apns-Cor1JBvm.js} +1 -1
- package/dist/{pw-ai-Dp9c5KD_.js → pw-ai-BLLeU82T.js} +1 -1
- package/dist/{pw-ai-fTf_Sq93.js → pw-ai-CWMnNfVs.js} +7 -7
- package/dist/{qmd-manager-CNVBA7OI.js → qmd-manager-D72OxpMn.js} +18 -18
- package/dist/{qr-cli-BQpNL00w.js → qr-cli-jnAlWxJ1.js} +1 -1
- package/dist/{register.agent-7Pku8mId.js → register.agent-BY4qQIyM.js} +81 -81
- package/dist/{register.agent-DsFrb0R7.js → register.agent-CPhQWbIL.js} +8 -8
- package/dist/register.configure-CtqFfgvY.js +147 -0
- package/dist/{register.configure-BMfcA9Sh.js → register.configure-d_7CE6cU.js} +8 -8
- package/dist/{register.maintenance-DfoSO5fo.js → register.maintenance-BiQeKBPQ.js} +84 -84
- package/dist/{register.maintenance-BFSQHBgH.js → register.maintenance-CQVF8TPW.js} +10 -10
- package/dist/{register.message-C-5P7V4g.js → register.message-5XIQHlJd.js} +4 -4
- package/dist/{register.message-BTCpZ8RW.js → register.message-CprmJPCV.js} +63 -63
- package/dist/{register.onboard-CVXaGmEF.js → register.onboard-D4hhxM8J.js} +6 -6
- package/dist/{register.onboard-CTO-qkWZ.js → register.onboard-DpvOjkyQ.js} +74 -74
- package/dist/{register.setup-BzaCK19n.js → register.setup-D3PpeeN2.js} +6 -6
- package/dist/{register.setup-Dg1Ud7ox.js → register.setup-MPlYCmF_.js} +77 -77
- package/dist/{register.status-health-sessions-DjwY1WQe.js → register.status-health-sessions-BE5frGYt.js} +5 -5
- package/dist/{register.status-health-sessions-IymXWaoK.js → register.status-health-sessions-BUzgM9fv.js} +75 -75
- package/dist/{register.subclis-Bw1N3fIn.js → register.subclis-BVUvjO4p.js} +9 -9
- package/dist/{replies-MVPArv-r.js → replies-9ipbTXMP.js} +5 -4
- package/dist/{replies-DtFxhHfI.js → replies-BCd0AxfK.js} +5 -4
- package/dist/{replies-DKKNtkun.js → replies-BVBgaEtE.js} +5 -4
- package/dist/{replies-DhmTgroV.js → replies-CSjH2EQ6.js} +5 -4
- package/dist/{reply-pTxrsMtG.js → reply-C7XZ5Kp3.js} +325 -168
- package/dist/{reply-prefix-CbuTBmdm.js → reply-prefix-CJc9NzGX.js} +1 -1
- package/dist/{resolve-route-DuqgZ7wS.js → resolve-route-C5pUt_LC.js} +2 -2
- package/dist/{routes-Bh-1i4ub.js → routes-BgjaVwmu.js} +8 -8
- package/dist/{rpc-RAW16k0Y.js → rpc-DrpAw2Te.js} +1 -1
- package/dist/{run-main-DnYUey0K.js → run-main-CmSuw5Re.js} +16 -16
- package/dist/{runner-CLY-9j7g.js → runner-CcRtHLpd.js} +1 -1
- package/dist/{runner-CXGYviGa.js → runner-fLI-fZ-v.js} +20 -20
- package/dist/{sandbox-Dbz4ladn.js → sandbox-B1lVufmT.js} +18 -18
- package/dist/{sandbox-cli-Dx1942n8.js → sandbox-cli--odc2cPK.js} +20 -20
- package/dist/{security-cli-Ci7ujUBk.js → security-cli-s6yE26pJ.js} +36 -36
- package/dist/{send-CTGeWUSD.js → send-B3u53ZAu.js} +20 -1
- package/dist/{send-i695V0Ow.js → send-BilxFvrd.js} +13 -13
- package/dist/{send-Cr8R-bMi.js → send-CAuzoyQe.js} +20 -1
- package/dist/{send-D_FU_HIa.js → send-D6r6s6Nf.js} +20 -1
- package/dist/{send-H5TFGeHl.js → send-DAb8zkAc.js} +6 -6
- package/dist/{send-ElgbtTa_.js → send-UJWeL6fz.js} +6 -6
- package/dist/{send-BGmblGeb.js → send-YdmCYGSj.js} +6 -6
- package/dist/{send-CKGUBMnM.js → send-_y-b5SXH.js} +24 -5
- package/dist/{server-context-BN_KGt0e.js → server-context-DFBpyKBE.js} +5 -5
- package/dist/{server-node-events-Dhbdspn_.js → server-node-events-DeVBy3RG.js} +4 -4
- package/dist/{server-node-events-DQYNf8b_.js → server-node-events-E7ENYs3y.js} +63 -63
- package/dist/{service-x8sNoic1.js → service-Bs5m4_g0.js} +15 -15
- package/dist/{session-SFd4vyTd.js → session-Gi1pc_jn.js} +2 -2
- package/dist/{session-dirs-DoK1aPxY.js → session-dirs-DMMeC5kT.js} +1 -1
- package/dist/{session-dirs-CFHymbM9.js → session-dirs-Dz06Isny.js} +16 -16
- package/dist/{sessions-CwvGRwvW.js → sessions-fj33u4f-.js} +13 -13
- package/dist/{shared-BlqeHl3I.js → shared-BYm87AKE.js} +1 -1
- package/dist/{shared-D-u4KNkt.js → shared-Btbxw_J6.js} +3 -3
- package/dist/{skill-commands-VCmL7mMC.js → skill-commands-27Clp6Hw.js} +5 -5
- package/dist/{skill-scanner-CMBwwxis.js → skill-scanner-BRf3FyA6.js} +5 -5
- package/dist/{skills-DhT6my9R.js → skills-DO1RiQMB.js} +4 -4
- package/dist/{skills-cli-AXXW1-ib.js → skills-cli-D8Z6O8tz.js} +7 -7
- package/dist/{skills-install-CHhkAUEW.js → skills-install-D2uuaBF9.js} +3 -3
- package/dist/{skills-status-B90dNffv.js → skills-status-C9NLYboA.js} +1 -1
- package/dist/{sqlite-CzeIEe5A.js → sqlite-DCO2j-0b.js} +12 -12
- package/dist/{status-KRRAxPjg.js → status-DQmoPN3T.js} +25 -25
- package/dist/{status-D32_SxwC.js → status-DUJLCUGg.js} +2 -2
- package/dist/{status-C-PQHlxh.js → status-Di2Pqiji.js} +1 -1
- package/dist/{status-CFnZ8E56.js → status-DppGMZ2s.js} +3 -3
- package/dist/{status.update-BdxnLoXT.js → status.update-CkYiGnzE.js} +3 -3
- package/dist/{store-YBnR7qvG.js → store-CLuh0zX0.js} +5 -5
- package/dist/{subagent-registry-DkjybHrK.js → subagent-registry-D3Pj0bnZ.js} +200 -43
- package/dist/{system-cli-CNufxt6H.js → system-cli-DQpLuBbA.js} +11 -11
- package/dist/{systemd-_79iBiaB.js → systemd-Blg-bgkO.js} +5 -5
- package/dist/{systemd-hints--ykZ9med.js → systemd-hints-pRBdkBPI.js} +6 -6
- package/dist/{systemd-linger--ZF5kAeJ.js → systemd-linger-DqOrhpC-.js} +1 -1
- package/dist/{tables-LYKSFoqx.js → tables-DhRyfXvl.js} +1 -1
- package/dist/{target-errors-BrrPOPT5.js → target-errors-DKUMw1tA.js} +4 -4
- package/dist/{tool-images-BCkPMulQ.js → tool-images-Cdj7iZ0t.js} +1 -1
- package/dist/{tui-BfllwI0b.js → tui-DbvXHepE.js} +7 -7
- package/dist/{tui-cli-DM4ahQxS.js → tui-cli-CIqa9qRn.js} +28 -28
- package/dist/{update-BNGNVRaT.js → update-CqhqeDij.js} +3 -3
- package/dist/{update-check-CEFJiPeh.js → update-check-DOy5cGkD.js} +5 -5
- package/dist/{update-cli-DXd4fNuS.js → update-cli-CsicqPiK.js} +10 -10
- package/dist/{update-cli-DMrRvy-m.js → update-cli-DJIsdQeJ.js} +94 -94
- package/dist/{web-Dsgry4ji.js → web-DRLO5z6-.js} +3 -3
- package/dist/{web-IfDcZx01.js → web-DShT68Ix.js} +3 -3
- package/dist/{web-DCNwbuhj.js → web-EGziWSH9.js} +8 -8
- package/dist/web-lXypZuaq.js +109 -0
- package/dist/{webhooks-cli-Ay0jR658.js → webhooks-cli-BJ1WiH3W.js} +4 -4
- package/dist/{whatsapp-actions-Dsvkb9dr.js → whatsapp-actions-lSqVUZ_h.js} +15 -15
- package/dist/{with-timeout-n3bwhefQ.js → with-timeout-OwJVCBFG.js} +1 -1
- package/dist/{workspace-dirs-DbX5fBAC.js → workspace-dirs-CuYuE5F1.js} +1 -1
- package/dist/{wsl-C4424szg.js → wsl-BbXxnokd.js} +2 -2
- package/package.json +1 -1
- package/dist/plugin-sdk/web-BlY2wNrk.js +0 -65
- package/dist/register.configure-CJ6IYgGS.js +0 -147
- package/dist/web-CCqlC0N_.js +0 -109
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { c as resolveGatewayLaunchAgentLabel, f as resolveGatewayWindowsTaskName, p as resolveLegacyGatewayLaunchAgentLabels, t as GATEWAY_LAUNCH_AGENT_LABEL, u as resolveGatewayServiceDescription } from "./constants-CEbQvI8z.js";
|
|
2
|
-
import { _ as toPosixPath, a as readSystemdServiceRuntime, c as stopSystemdService, f as splitArgsPreservingQuotes, g as formatLine, h as resolveHomeDir, i as readSystemdServiceExecStart, l as uninstallSystemdService, m as resolveGatewayStateDir, n as isSystemdServiceEnabled, p as parseKeyValueOutput, s as restartSystemdService, t as installSystemdService, v as writeFormattedLines, y as execFileUtf8 } from "./systemd-
|
|
2
|
+
import { _ as toPosixPath, a as readSystemdServiceRuntime, c as stopSystemdService, f as splitArgsPreservingQuotes, g as formatLine, h as resolveHomeDir, i as readSystemdServiceExecStart, l as uninstallSystemdService, m as resolveGatewayStateDir, n as isSystemdServiceEnabled, p as parseKeyValueOutput, s as restartSystemdService, t as installSystemdService, v as writeFormattedLines, y as execFileUtf8 } from "./systemd-Blg-bgkO.js";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import
|
|
4
|
+
import fsPromises from "node:fs/promises";
|
|
5
5
|
|
|
6
6
|
//#region src/daemon/launchd-plist.ts
|
|
7
7
|
const plistEscape = (value) => value.replaceAll("&", "&").replaceAll("<", "<").replaceAll(">", ">").replaceAll("\"", """).replaceAll("'", "'");
|
|
@@ -14,7 +14,7 @@ const renderEnvDict = (env) => {
|
|
|
14
14
|
};
|
|
15
15
|
async function readLaunchAgentProgramArgumentsFromFile(plistPath) {
|
|
16
16
|
try {
|
|
17
|
-
const plist = await
|
|
17
|
+
const plist = await fsPromises.readFile(plistPath, "utf8");
|
|
18
18
|
const programMatch = plist.match(/<key>ProgramArguments<\/key>\s*<array>([\s\S]*?)<\/array>/i);
|
|
19
19
|
if (!programMatch) return null;
|
|
20
20
|
const args = Array.from(programMatch[1].matchAll(/<string>([\s\S]*?)<\/string>/gi)).map((match) => plistUnescape(match[1] ?? "").trim());
|
|
@@ -128,7 +128,7 @@ async function isLaunchAgentListed(args) {
|
|
|
128
128
|
async function launchAgentPlistExists(env) {
|
|
129
129
|
try {
|
|
130
130
|
const plistPath = resolveLaunchAgentPlistPath(env);
|
|
131
|
-
await
|
|
131
|
+
await fsPromises.access(plistPath);
|
|
132
132
|
return true;
|
|
133
133
|
} catch {
|
|
134
134
|
return false;
|
|
@@ -188,7 +188,7 @@ async function uninstallLaunchAgent({ env, stdout }) {
|
|
|
188
188
|
]);
|
|
189
189
|
await execLaunchctl(["unload", plistPath]);
|
|
190
190
|
try {
|
|
191
|
-
await
|
|
191
|
+
await fsPromises.access(plistPath);
|
|
192
192
|
} catch {
|
|
193
193
|
stdout.write(`LaunchAgent not found at ${plistPath}\n`);
|
|
194
194
|
return;
|
|
@@ -197,8 +197,8 @@ async function uninstallLaunchAgent({ env, stdout }) {
|
|
|
197
197
|
const trashDir = path.join(home, ".Trash");
|
|
198
198
|
const dest = path.join(trashDir, `${label}.plist`);
|
|
199
199
|
try {
|
|
200
|
-
await
|
|
201
|
-
await
|
|
200
|
+
await fsPromises.mkdir(trashDir, { recursive: true });
|
|
201
|
+
await fsPromises.rename(plistPath, dest);
|
|
202
202
|
stdout.write(`${formatLine("Moved LaunchAgent to Trash", dest)}\n`);
|
|
203
203
|
} catch {
|
|
204
204
|
stdout.write(`LaunchAgent remains at ${plistPath} (could not move)\n`);
|
|
@@ -221,7 +221,7 @@ async function stopLaunchAgent({ stdout, env }) {
|
|
|
221
221
|
}
|
|
222
222
|
async function installLaunchAgent({ env, stdout, programArguments, workingDirectory, environment, description }) {
|
|
223
223
|
const { logDir, stdoutPath, stderrPath } = resolveGatewayLogPaths(env);
|
|
224
|
-
await
|
|
224
|
+
await fsPromises.mkdir(logDir, { recursive: true });
|
|
225
225
|
const domain = resolveGuiDomain();
|
|
226
226
|
const label = resolveLaunchAgentLabel({ env });
|
|
227
227
|
for (const legacyLabel of resolveLegacyGatewayLaunchAgentLabels(env.OPENCLAW_PROFILE)) {
|
|
@@ -233,11 +233,11 @@ async function installLaunchAgent({ env, stdout, programArguments, workingDirect
|
|
|
233
233
|
]);
|
|
234
234
|
await execLaunchctl(["unload", legacyPlistPath]);
|
|
235
235
|
try {
|
|
236
|
-
await
|
|
236
|
+
await fsPromises.unlink(legacyPlistPath);
|
|
237
237
|
} catch {}
|
|
238
238
|
}
|
|
239
239
|
const plistPath = resolveLaunchAgentPlistPathForLabel(env, label);
|
|
240
|
-
await
|
|
240
|
+
await fsPromises.mkdir(path.dirname(plistPath), { recursive: true });
|
|
241
241
|
const plist = buildLaunchAgentPlist({
|
|
242
242
|
label,
|
|
243
243
|
comment: resolveGatewayServiceDescription({
|
|
@@ -251,7 +251,7 @@ async function installLaunchAgent({ env, stdout, programArguments, workingDirect
|
|
|
251
251
|
stderrPath,
|
|
252
252
|
environment
|
|
253
253
|
});
|
|
254
|
-
await
|
|
254
|
+
await fsPromises.writeFile(plistPath, plist, "utf8");
|
|
255
255
|
await execLaunchctl([
|
|
256
256
|
"bootout",
|
|
257
257
|
domain,
|
|
@@ -408,7 +408,7 @@ function resolveTaskUser(env) {
|
|
|
408
408
|
async function readScheduledTaskCommand(env) {
|
|
409
409
|
const scriptPath = resolveTaskScriptPath(env);
|
|
410
410
|
try {
|
|
411
|
-
const content = await
|
|
411
|
+
const content = await fsPromises.readFile(scriptPath, "utf8");
|
|
412
412
|
let workingDirectory = "";
|
|
413
413
|
let commandLine = "";
|
|
414
414
|
const environment = {};
|
|
@@ -476,7 +476,7 @@ async function assertSchtasksAvailable() {
|
|
|
476
476
|
async function installScheduledTask({ env, stdout, programArguments, workingDirectory, environment, description }) {
|
|
477
477
|
await assertSchtasksAvailable();
|
|
478
478
|
const scriptPath = resolveTaskScriptPath(env);
|
|
479
|
-
await
|
|
479
|
+
await fsPromises.mkdir(path.dirname(scriptPath), { recursive: true });
|
|
480
480
|
const script = buildTaskScript({
|
|
481
481
|
description: resolveGatewayServiceDescription({
|
|
482
482
|
env,
|
|
@@ -487,7 +487,7 @@ async function installScheduledTask({ env, stdout, programArguments, workingDire
|
|
|
487
487
|
workingDirectory,
|
|
488
488
|
environment
|
|
489
489
|
});
|
|
490
|
-
await
|
|
490
|
+
await fsPromises.writeFile(scriptPath, script, "utf8");
|
|
491
491
|
const taskName = resolveTaskName(env);
|
|
492
492
|
const baseArgs = [
|
|
493
493
|
"/Create",
|
|
@@ -539,7 +539,7 @@ async function uninstallScheduledTask({ env, stdout }) {
|
|
|
539
539
|
]);
|
|
540
540
|
const scriptPath = resolveTaskScriptPath(env);
|
|
541
541
|
try {
|
|
542
|
-
await
|
|
542
|
+
await fsPromises.unlink(scriptPath);
|
|
543
543
|
stdout.write(`${formatLine("Removed task script", scriptPath)}\n`);
|
|
544
544
|
} catch {
|
|
545
545
|
stdout.write(`Task script not found at ${scriptPath}\n`);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { G as toPinoLikeLogger, I as success, O as danger, V as getChildLogger, c as ensureDir, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
2
2
|
import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
|
|
3
|
-
import { H as VERSION } from "./config-
|
|
4
|
-
import { d as resolveDefaultWebAuthDir, f as resolveWebCredsBackupPath, l as readCredsJsonRaw, p as resolveWebCredsPath, s as maybeRestoreCredsFromBackup } from "./accounts-
|
|
3
|
+
import { H as VERSION } from "./config-JupjCURB.js";
|
|
4
|
+
import { d as resolveDefaultWebAuthDir, f as resolveWebCredsBackupPath, l as readCredsJsonRaw, p as resolveWebCredsPath, s as maybeRestoreCredsFromBackup } from "./accounts-D8ryuxvJ.js";
|
|
5
5
|
import fs from "node:fs";
|
|
6
6
|
import { randomUUID } from "node:crypto";
|
|
7
7
|
import { DisconnectReason, fetchLatestBaileysVersion, makeCacheableSignalKeyStore, makeWASocket, useMultiFileAuthState } from "@whiskeysockets/baileys";
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { rt as pathExists } from "./entry.js";
|
|
2
2
|
import { t as runCommandWithTimeout } from "./exec-X8f1jCG3.js";
|
|
3
|
-
import { bt as trimLogTail } from "./subagent-registry-
|
|
3
|
+
import { bt as trimLogTail } from "./subagent-registry-D3Pj0bnZ.js";
|
|
4
4
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-B68X-xpb.js";
|
|
5
5
|
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-DdZ89jPG.js";
|
|
6
6
|
import os from "node:os";
|
|
@@ -1,16 +1,16 @@
|
|
|
1
1
|
import { h as pathExists } from "./utils-BlC2Fskb.js";
|
|
2
|
-
import { K as trimLogTail } from "./reply-
|
|
2
|
+
import { K as trimLogTail } from "./reply-C7XZ5Kp3.js";
|
|
3
3
|
import { t as runCommandWithTimeout } from "./exec-DwGfeG8v.js";
|
|
4
|
-
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-
|
|
5
|
-
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-
|
|
4
|
+
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BLVZXE2I.js";
|
|
5
|
+
import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-DOy5cGkD.js";
|
|
6
6
|
import os from "node:os";
|
|
7
7
|
import path from "node:path";
|
|
8
|
-
import
|
|
8
|
+
import fsPromises from "node:fs/promises";
|
|
9
9
|
|
|
10
10
|
//#region src/infra/package-json.ts
|
|
11
11
|
async function readPackageVersion(root) {
|
|
12
12
|
try {
|
|
13
|
-
const raw = await
|
|
13
|
+
const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
|
|
14
14
|
const parsed = JSON.parse(raw);
|
|
15
15
|
return typeof parsed?.version === "string" ? parsed.version : null;
|
|
16
16
|
} catch {
|
|
@@ -19,7 +19,7 @@ async function readPackageVersion(root) {
|
|
|
19
19
|
}
|
|
20
20
|
async function readPackageName(root) {
|
|
21
21
|
try {
|
|
22
|
-
const raw = await
|
|
22
|
+
const raw = await fsPromises.readFile(path.join(root, "package.json"), "utf-8");
|
|
23
23
|
const name = JSON.parse(raw)?.name?.trim();
|
|
24
24
|
return name ? name : null;
|
|
25
25
|
} catch {
|
|
@@ -39,7 +39,7 @@ const NPM_GLOBAL_INSTALL_QUIET_FLAGS = [
|
|
|
39
39
|
];
|
|
40
40
|
async function tryRealpath(targetPath) {
|
|
41
41
|
try {
|
|
42
|
-
return await
|
|
42
|
+
return await fsPromises.realpath(targetPath);
|
|
43
43
|
} catch {
|
|
44
44
|
return path.resolve(targetPath);
|
|
45
45
|
}
|
|
@@ -140,7 +140,7 @@ async function cleanupGlobalRenameDirs(params) {
|
|
|
140
140
|
const prefix = `${GLOBAL_RENAME_PREFIX}${name}-`;
|
|
141
141
|
let entries = [];
|
|
142
142
|
try {
|
|
143
|
-
entries = await
|
|
143
|
+
entries = await fsPromises.readdir(root);
|
|
144
144
|
} catch {
|
|
145
145
|
return { removed };
|
|
146
146
|
}
|
|
@@ -148,8 +148,8 @@ async function cleanupGlobalRenameDirs(params) {
|
|
|
148
148
|
if (!entry.startsWith(prefix)) continue;
|
|
149
149
|
const target = path.join(root, entry);
|
|
150
150
|
try {
|
|
151
|
-
if (!(await
|
|
152
|
-
await
|
|
151
|
+
if (!(await fsPromises.lstat(target)).isDirectory()) continue;
|
|
152
|
+
await fsPromises.rm(target, {
|
|
153
153
|
recursive: true,
|
|
154
154
|
force: true
|
|
155
155
|
});
|
|
@@ -261,7 +261,7 @@ async function findPackageRoot(candidates) {
|
|
|
261
261
|
for (let i = 0; i < 12; i += 1) {
|
|
262
262
|
const pkgPath = path.join(current, "package.json");
|
|
263
263
|
try {
|
|
264
|
-
const raw = await
|
|
264
|
+
const raw = await fsPromises.readFile(pkgPath, "utf-8");
|
|
265
265
|
const name = JSON.parse(raw)?.name?.trim();
|
|
266
266
|
if (name && CORE_PACKAGE_NAMES.has(name)) return current;
|
|
267
267
|
} catch {}
|
|
@@ -543,7 +543,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
543
543
|
durationMs: Date.now() - startedAt
|
|
544
544
|
};
|
|
545
545
|
const manager = await detectPackageManager(gitRoot);
|
|
546
|
-
const preflightRoot = await
|
|
546
|
+
const preflightRoot = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-update-preflight-"));
|
|
547
547
|
const worktreeDir = path.join(preflightRoot, "worktree");
|
|
548
548
|
const worktreeStep = await runStep(step("preflight worktree", [
|
|
549
549
|
"git",
|
|
@@ -557,7 +557,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
557
557
|
], gitRoot));
|
|
558
558
|
steps.push(worktreeStep);
|
|
559
559
|
if (worktreeStep.exitCode !== 0) {
|
|
560
|
-
await
|
|
560
|
+
await fsPromises.rm(preflightRoot, {
|
|
561
561
|
recursive: true,
|
|
562
562
|
force: true
|
|
563
563
|
}).catch(() => {});
|
|
@@ -621,7 +621,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
621
621
|
cwd: gitRoot,
|
|
622
622
|
timeoutMs
|
|
623
623
|
}).catch(() => null);
|
|
624
|
-
await
|
|
624
|
+
await fsPromises.rm(preflightRoot, {
|
|
625
625
|
recursive: true,
|
|
626
626
|
force: true
|
|
627
627
|
}).catch(() => {});
|
|
@@ -769,7 +769,7 @@ async function runGatewayUpdate(opts = {}) {
|
|
|
769
769
|
durationMs: Date.now() - startedAt
|
|
770
770
|
};
|
|
771
771
|
const doctorEntry = path.join(gitRoot, "openclaw.mjs");
|
|
772
|
-
if (!await
|
|
772
|
+
if (!await fsPromises.stat(doctorEntry).then(() => true).catch(() => false)) {
|
|
773
773
|
steps.push({
|
|
774
774
|
name: "openclaw doctor entry",
|
|
775
775
|
command: `verify ${doctorEntry}`,
|
|
@@ -936,7 +936,7 @@ async function resolveAgentSessionDirs(stateDir) {
|
|
|
936
936
|
const agentsDir = path.join(stateDir, "agents");
|
|
937
937
|
let entries = [];
|
|
938
938
|
try {
|
|
939
|
-
entries = await
|
|
939
|
+
entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
|
|
940
940
|
} catch (err) {
|
|
941
941
|
if (err.code === "ENOENT") return [];
|
|
942
942
|
throw err;
|
|
@@ -2,13 +2,13 @@ import { y as resolveRequiredHomeDir } from "./paths-B4BZAPZh.js";
|
|
|
2
2
|
import { m as normalizeE164 } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import { c as normalizeMainKey, g as normalizeOptionalAccountId, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-DCt45XZa.js";
|
|
4
4
|
import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
|
|
5
|
-
import { Lt as resolveProcessScopedMap, Rt as isPidAlive } from "./model-selection-
|
|
5
|
+
import { Lt as resolveProcessScopedMap, Rt as isPidAlive } from "./model-selection-C1pdWy7b.js";
|
|
6
6
|
import { c as listDeliverableMessageChannels, l as normalizeMessageChannel } from "./message-channel-DzkrSzpL.js";
|
|
7
|
-
import { C as parseDurationMs, f as parseByteSize, i as loadConfig } from "./config-
|
|
7
|
+
import { C as parseDurationMs, f as parseByteSize, i as loadConfig } from "./config-JupjCURB.js";
|
|
8
8
|
import { t as normalizeChatType } from "./chat-type-DyovJwCt.js";
|
|
9
9
|
import { n as resolveConversationLabel } from "./conversation-label-Bn5j3lUT.js";
|
|
10
|
-
import { c as normalizeHyphenSlug, t as getChannelDock } from "./dock-
|
|
11
|
-
import { r as normalizeChannelId } from "./plugins-
|
|
10
|
+
import { c as normalizeHyphenSlug, t as getChannelDock } from "./dock-CX_o0bdi.js";
|
|
11
|
+
import { r as normalizeChannelId } from "./plugins-BYw4LpqC.js";
|
|
12
12
|
import { a as resolveSessionTranscriptPathInDir, c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, t as resolveDefaultSessionStorePath } from "./paths-C6eomcf_.js";
|
|
13
13
|
import { r as hasInterSessionUserProvenance } from "./input-provenance-BzbXHcaD.js";
|
|
14
14
|
import { n as extractToolCallNames, r as hasToolCall } from "./transcript-tools-INJPQ2KD.js";
|
|
@@ -16,7 +16,7 @@ import { t as emitSessionTranscriptUpdate } from "./transcript-events-DdnTeoR1.j
|
|
|
16
16
|
import fs from "node:fs";
|
|
17
17
|
import os from "node:os";
|
|
18
18
|
import path from "node:path";
|
|
19
|
-
import
|
|
19
|
+
import fsPromises from "node:fs/promises";
|
|
20
20
|
import crypto from "node:crypto";
|
|
21
21
|
import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
|
|
22
22
|
|
|
@@ -82,7 +82,7 @@ async function releaseHeldLock(normalizedSessionFile, held, opts = {}) {
|
|
|
82
82
|
await held.handle.close();
|
|
83
83
|
} catch {}
|
|
84
84
|
try {
|
|
85
|
-
await
|
|
85
|
+
await fsPromises.rm(held.lockPath, { force: true });
|
|
86
86
|
} catch {}
|
|
87
87
|
})();
|
|
88
88
|
try {
|
|
@@ -161,7 +161,7 @@ function registerCleanupHandlers() {
|
|
|
161
161
|
}
|
|
162
162
|
async function readLockPayload(lockPath) {
|
|
163
163
|
try {
|
|
164
|
-
const raw = await
|
|
164
|
+
const raw = await fsPromises.readFile(lockPath, "utf8");
|
|
165
165
|
const parsed = JSON.parse(raw);
|
|
166
166
|
const payload = {};
|
|
167
167
|
if (typeof parsed.pid === "number") payload.pid = parsed.pid;
|
|
@@ -198,7 +198,7 @@ async function cleanStaleLockFiles(params) {
|
|
|
198
198
|
const nowMs = params.nowMs ?? Date.now();
|
|
199
199
|
let entries = [];
|
|
200
200
|
try {
|
|
201
|
-
entries = await
|
|
201
|
+
entries = await fsPromises.readdir(sessionsDir, { withFileTypes: true });
|
|
202
202
|
} catch (err) {
|
|
203
203
|
if (err.code === "ENOENT") return {
|
|
204
204
|
locks: [],
|
|
@@ -217,7 +217,7 @@ async function cleanStaleLockFiles(params) {
|
|
|
217
217
|
removed: false
|
|
218
218
|
};
|
|
219
219
|
if (lockInfo.stale && removeStale) {
|
|
220
|
-
await
|
|
220
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
221
221
|
lockInfo.removed = true;
|
|
222
222
|
cleaned.push(lockInfo);
|
|
223
223
|
params.log?.warn?.(`removed stale session lock: ${lockPath} (${lockInfo.staleReasons.join(", ") || "unknown"})`);
|
|
@@ -236,10 +236,10 @@ async function acquireSessionWriteLock(params) {
|
|
|
236
236
|
const maxHoldMs = resolvePositiveMs(params.maxHoldMs, DEFAULT_MAX_HOLD_MS);
|
|
237
237
|
const sessionFile = path.resolve(params.sessionFile);
|
|
238
238
|
const sessionDir = path.dirname(sessionFile);
|
|
239
|
-
await
|
|
239
|
+
await fsPromises.mkdir(sessionDir, { recursive: true });
|
|
240
240
|
let normalizedDir = sessionDir;
|
|
241
241
|
try {
|
|
242
|
-
normalizedDir = await
|
|
242
|
+
normalizedDir = await fsPromises.realpath(sessionDir);
|
|
243
243
|
} catch {}
|
|
244
244
|
const normalizedSessionFile = path.join(normalizedDir, path.basename(sessionFile));
|
|
245
245
|
const lockPath = `${normalizedSessionFile}.lock`;
|
|
@@ -256,7 +256,7 @@ async function acquireSessionWriteLock(params) {
|
|
|
256
256
|
while (Date.now() - startedAt < timeoutMs) {
|
|
257
257
|
attempt += 1;
|
|
258
258
|
try {
|
|
259
|
-
const handle = await
|
|
259
|
+
const handle = await fsPromises.open(lockPath, "wx");
|
|
260
260
|
const createdAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
261
261
|
await handle.writeFile(JSON.stringify({
|
|
262
262
|
pid: process.pid,
|
|
@@ -276,7 +276,7 @@ async function acquireSessionWriteLock(params) {
|
|
|
276
276
|
} catch (err) {
|
|
277
277
|
if (err.code !== "EEXIST") throw err;
|
|
278
278
|
if (inspectLockPayload(await readLockPayload(lockPath), staleMs, Date.now()).stale) {
|
|
279
|
-
await
|
|
279
|
+
await fsPromises.rm(lockPath, { force: true });
|
|
280
280
|
continue;
|
|
281
281
|
}
|
|
282
282
|
const delay = Math.min(1e3, 50 * attempt);
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { f as defaultRuntime } from "./subsystem-Cu1fn6xi.js";
|
|
2
2
|
import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
|
|
3
3
|
import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-CEbQvI8z.js";
|
|
4
|
-
import { t as resolveGatewayService } from "./service-
|
|
4
|
+
import { t as resolveGatewayService } from "./service-Bs5m4_g0.js";
|
|
5
5
|
|
|
6
6
|
//#region src/cli/gateway-cli/shared.ts
|
|
7
7
|
const toOptionString = (value) => {
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { s as normalizeAgentId } from "./session-key-DCt45XZa.js";
|
|
2
|
-
import { n as listAgentIds } from "./agent-scope-
|
|
3
|
-
import { Kt as DEFAULT_PROVIDER, g as resolveModelRefFromString, r as buildModelAliasIndex, s as modelKey } from "./model-selection-
|
|
2
|
+
import { n as listAgentIds } from "./agent-scope-B6jLdNuI.js";
|
|
3
|
+
import { Kt as DEFAULT_PROVIDER, g as resolveModelRefFromString, r as buildModelAliasIndex, s as modelKey } from "./model-selection-C1pdWy7b.js";
|
|
4
4
|
import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
|
|
5
|
-
import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-
|
|
5
|
+
import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-JupjCURB.js";
|
|
6
6
|
|
|
7
7
|
//#region src/commands/models/shared.ts
|
|
8
8
|
const ensureFlagCompatibility = (opts) => {
|
|
@@ -1,11 +1,11 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { t as CONFIG_DIR, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
|
|
4
|
-
import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-
|
|
5
|
-
import { i as loadWorkspaceSkillEntries, n as buildWorkspaceSkillCommandSpecs, s as resolvePluginSkillDirs } from "./skills-
|
|
6
|
-
import { i as listChatCommands } from "./commands-registry-
|
|
7
|
-
import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-
|
|
8
|
-
import { t as listAgentWorkspaceDirs } from "./workspace-dirs-
|
|
4
|
+
import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-B6jLdNuI.js";
|
|
5
|
+
import { i as loadWorkspaceSkillEntries, n as buildWorkspaceSkillCommandSpecs, s as resolvePluginSkillDirs } from "./skills-DO1RiQMB.js";
|
|
6
|
+
import { i as listChatCommands } from "./commands-registry-DVVMuhaG.js";
|
|
7
|
+
import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-DAVfcYo5.js";
|
|
8
|
+
import { t as listAgentWorkspaceDirs } from "./workspace-dirs-CuYuE5F1.js";
|
|
9
9
|
import fs from "node:fs";
|
|
10
10
|
import os from "node:os";
|
|
11
11
|
import path from "node:path";
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { i as isPathInside } from "./legacy-names-u6U1_9U0.js";
|
|
2
2
|
import { i as hasErrnoCode } from "./errors-BF3TeRH2.js";
|
|
3
3
|
import path from "node:path";
|
|
4
|
-
import
|
|
4
|
+
import fsPromises from "node:fs/promises";
|
|
5
5
|
|
|
6
6
|
//#region src/security/skill-scanner.ts
|
|
7
7
|
const SCANNABLE_EXTENSIONS = new Set([
|
|
@@ -154,7 +154,7 @@ async function walkDirWithLimit(dirPath, maxFiles) {
|
|
|
154
154
|
while (stack.length > 0 && files.length < maxFiles) {
|
|
155
155
|
const currentDir = stack.pop();
|
|
156
156
|
if (!currentDir) break;
|
|
157
|
-
const entries = await
|
|
157
|
+
const entries = await fsPromises.readdir(currentDir, { withFileTypes: true });
|
|
158
158
|
for (const entry of entries) {
|
|
159
159
|
if (files.length >= maxFiles) break;
|
|
160
160
|
if (entry.name.startsWith(".") || entry.name === "node_modules") continue;
|
|
@@ -176,7 +176,7 @@ async function resolveForcedFiles(params) {
|
|
|
176
176
|
if (seen.has(includePath)) continue;
|
|
177
177
|
let st = null;
|
|
178
178
|
try {
|
|
179
|
-
st = await
|
|
179
|
+
st = await fsPromises.stat(includePath);
|
|
180
180
|
} catch (err) {
|
|
181
181
|
if (hasErrnoCode(err, "ENOENT")) continue;
|
|
182
182
|
throw err;
|
|
@@ -208,14 +208,14 @@ async function collectScannableFiles(dirPath, opts) {
|
|
|
208
208
|
async function readScannableSource(filePath, maxFileBytes) {
|
|
209
209
|
let st = null;
|
|
210
210
|
try {
|
|
211
|
-
st = await
|
|
211
|
+
st = await fsPromises.stat(filePath);
|
|
212
212
|
} catch (err) {
|
|
213
213
|
if (hasErrnoCode(err, "ENOENT")) return null;
|
|
214
214
|
throw err;
|
|
215
215
|
}
|
|
216
216
|
if (!st?.isFile() || st.size > maxFileBytes) return null;
|
|
217
217
|
try {
|
|
218
|
-
return await
|
|
218
|
+
return await fsPromises.readFile(filePath, "utf-8");
|
|
219
219
|
} catch (err) {
|
|
220
220
|
if (hasErrnoCode(err, "ENOENT")) return null;
|
|
221
221
|
throw err;
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as CONFIG_DIR, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
2
|
-
import { i as normalizeSkillFilter, n as resolveOpenClawPackageRootSync } from "./openclaw-root-
|
|
2
|
+
import { i as normalizeSkillFilter, n as resolveOpenClawPackageRootSync } from "./openclaw-root-CbWxAStx.js";
|
|
3
3
|
import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
|
|
4
4
|
import { d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, n as loadPluginManifestRegistry, u as normalizePluginsConfig } from "./manifest-registry-YRUqEw3J.js";
|
|
5
5
|
import { a as resolveOpenClawManifestBlock, c as resolveOpenClawManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseOpenClawManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveOpenClawManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveOpenClawManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-C_R2lwvR.js";
|
|
@@ -7,7 +7,7 @@ import { fileURLToPath } from "node:url";
|
|
|
7
7
|
import fs from "node:fs";
|
|
8
8
|
import os from "node:os";
|
|
9
9
|
import path from "node:path";
|
|
10
|
-
import
|
|
10
|
+
import fsPromises from "node:fs/promises";
|
|
11
11
|
import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
|
|
12
12
|
|
|
13
13
|
//#region src/agents/skills/frontmatter.ts
|
|
@@ -393,7 +393,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
|
|
|
393
393
|
const isLast = idx === parts.length - 1;
|
|
394
394
|
current = path.join(current, part);
|
|
395
395
|
try {
|
|
396
|
-
if ((await
|
|
396
|
+
if ((await fsPromises.lstat(current)).isSymbolicLink()) {
|
|
397
397
|
if (options?.allowFinalSymlink && isLast) return;
|
|
398
398
|
const target = await tryRealpath(current);
|
|
399
399
|
if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
|
|
@@ -407,7 +407,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
|
|
|
407
407
|
}
|
|
408
408
|
async function tryRealpath(value) {
|
|
409
409
|
try {
|
|
410
|
-
return await
|
|
410
|
+
return await fsPromises.realpath(value);
|
|
411
411
|
} catch {
|
|
412
412
|
return path.resolve(value);
|
|
413
413
|
}
|
|
@@ -3,13 +3,13 @@ import { B as theme, S as shortenHomePath } from "./utils-BlC2Fskb.js";
|
|
|
3
3
|
import "./registry-lBbEkQ26.js";
|
|
4
4
|
import { f as defaultRuntime } from "./subsystem-Cu1fn6xi.js";
|
|
5
5
|
import "./exec-DwGfeG8v.js";
|
|
6
|
-
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-
|
|
7
|
-
import "./model-selection-
|
|
6
|
+
import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-B6jLdNuI.js";
|
|
7
|
+
import "./model-selection-C1pdWy7b.js";
|
|
8
8
|
import "./github-copilot-token-D2zp6kMZ.js";
|
|
9
9
|
import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
|
|
10
10
|
import "./boolean-BsqeuxE6.js";
|
|
11
11
|
import "./env-C9RBJHeg.js";
|
|
12
|
-
import { i as loadConfig } from "./config-
|
|
12
|
+
import { i as loadConfig } from "./config-JupjCURB.js";
|
|
13
13
|
import "./manifest-registry-YRUqEw3J.js";
|
|
14
14
|
import { t as formatDocsLink } from "./links-DHovuBDt.js";
|
|
15
15
|
import { t as renderTable } from "./table-Csf_WEEY.js";
|
|
@@ -236,7 +236,7 @@ function registerSkillsCli(program) {
|
|
|
236
236
|
try {
|
|
237
237
|
const config = loadConfig();
|
|
238
238
|
const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
|
|
239
|
-
const { buildWorkspaceSkillStatus } = await import("./skills-status-
|
|
239
|
+
const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
|
|
240
240
|
const report = buildWorkspaceSkillStatus(workspaceDir, { config });
|
|
241
241
|
defaultRuntime.log(formatSkillsList(report, opts));
|
|
242
242
|
} catch (err) {
|
|
@@ -248,7 +248,7 @@ function registerSkillsCli(program) {
|
|
|
248
248
|
try {
|
|
249
249
|
const config = loadConfig();
|
|
250
250
|
const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
|
|
251
|
-
const { buildWorkspaceSkillStatus } = await import("./skills-status-
|
|
251
|
+
const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
|
|
252
252
|
const report = buildWorkspaceSkillStatus(workspaceDir, { config });
|
|
253
253
|
defaultRuntime.log(formatSkillInfo(report, name, opts));
|
|
254
254
|
} catch (err) {
|
|
@@ -260,7 +260,7 @@ function registerSkillsCli(program) {
|
|
|
260
260
|
try {
|
|
261
261
|
const config = loadConfig();
|
|
262
262
|
const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
|
|
263
|
-
const { buildWorkspaceSkillStatus } = await import("./skills-status-
|
|
263
|
+
const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
|
|
264
264
|
const report = buildWorkspaceSkillStatus(workspaceDir, { config });
|
|
265
265
|
defaultRuntime.log(formatSkillsCheck(report, opts));
|
|
266
266
|
} catch (err) {
|
|
@@ -272,7 +272,7 @@ function registerSkillsCli(program) {
|
|
|
272
272
|
try {
|
|
273
273
|
const config = loadConfig();
|
|
274
274
|
const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
|
|
275
|
-
const { buildWorkspaceSkillStatus } = await import("./skills-status-
|
|
275
|
+
const { buildWorkspaceSkillStatus } = await import("./skills-status-C9NLYboA.js").then((n) => n.n);
|
|
276
276
|
const report = buildWorkspaceSkillStatus(workspaceDir, { config });
|
|
277
277
|
defaultRuntime.log(formatSkillsList(report, {}));
|
|
278
278
|
} catch (err) {
|
|
@@ -1,12 +1,12 @@
|
|
|
1
1
|
import { c as ensureDir, g as resolveConfigDir, y as resolveUserPath } from "./utils-BlC2Fskb.js";
|
|
2
2
|
import { t as runCommandWithTimeout } from "./exec-DwGfeG8v.js";
|
|
3
3
|
import { d as hasBinary } from "./frontmatter-C_R2lwvR.js";
|
|
4
|
-
import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-
|
|
4
|
+
import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-DO1RiQMB.js";
|
|
5
5
|
import { t as fetchWithSsrFGuard } from "./fetch-guard-w97sP7Hz.js";
|
|
6
6
|
import { t as resolveBrewExecutable } from "./brew-DjNEjKAo.js";
|
|
7
7
|
import { t as isWithinDir } from "./path-safety-BqPJ8DDQ.js";
|
|
8
|
-
import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-
|
|
9
|
-
import { t as scanDirectoryWithSummary } from "./skill-scanner-
|
|
8
|
+
import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-Qqr_t_tH.js";
|
|
9
|
+
import { t as scanDirectoryWithSummary } from "./skill-scanner-BRf3FyA6.js";
|
|
10
10
|
import fs from "node:fs";
|
|
11
11
|
import path from "node:path";
|
|
12
12
|
import { pipeline } from "node:stream/promises";
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { t as CONFIG_DIR } from "./utils-BlC2Fskb.js";
|
|
3
3
|
import { t as createSubsystemLogger } from "./subsystem-Cu1fn6xi.js";
|
|
4
4
|
import { d as hasBinary } from "./frontmatter-C_R2lwvR.js";
|
|
5
|
-
import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-
|
|
5
|
+
import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-DO1RiQMB.js";
|
|
6
6
|
import { t as evaluateEntryMetadataRequirementsForCurrentPlatform } from "./entry-status-CAs6m3_l.js";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import { loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
|
|
@@ -4,7 +4,7 @@ import { s as resolveSessionTranscriptsDirForAgent } from "./paths-C6eomcf_.js";
|
|
|
4
4
|
import { createRequire } from "node:module";
|
|
5
5
|
import fs from "node:fs";
|
|
6
6
|
import path from "node:path";
|
|
7
|
-
import
|
|
7
|
+
import fsPromises from "node:fs/promises";
|
|
8
8
|
import crypto from "node:crypto";
|
|
9
9
|
|
|
10
10
|
//#region src/utils/run-with-concurrency.ts
|
|
@@ -55,7 +55,7 @@ function isFileMissingError(err) {
|
|
|
55
55
|
async function statRegularFile(absPath) {
|
|
56
56
|
let stat;
|
|
57
57
|
try {
|
|
58
|
-
stat = await
|
|
58
|
+
stat = await fsPromises.lstat(absPath);
|
|
59
59
|
} catch (err) {
|
|
60
60
|
if (isFileMissingError(err)) return { missing: true };
|
|
61
61
|
throw err;
|
|
@@ -90,7 +90,7 @@ function isMemoryPath(relPath) {
|
|
|
90
90
|
return normalized.startsWith("memory/");
|
|
91
91
|
}
|
|
92
92
|
async function walkDir(dir, files) {
|
|
93
|
-
const entries = await
|
|
93
|
+
const entries = await fsPromises.readdir(dir, { withFileTypes: true });
|
|
94
94
|
for (const entry of entries) {
|
|
95
95
|
const full = path.join(dir, entry.name);
|
|
96
96
|
if (entry.isSymbolicLink()) continue;
|
|
@@ -110,7 +110,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
110
110
|
const memoryDir = path.join(workspaceDir, "memory");
|
|
111
111
|
const addMarkdownFile = async (absPath) => {
|
|
112
112
|
try {
|
|
113
|
-
const stat = await
|
|
113
|
+
const stat = await fsPromises.lstat(absPath);
|
|
114
114
|
if (stat.isSymbolicLink() || !stat.isFile()) return;
|
|
115
115
|
if (!absPath.endsWith(".md")) return;
|
|
116
116
|
result.push(absPath);
|
|
@@ -119,12 +119,12 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
119
119
|
await addMarkdownFile(memoryFile);
|
|
120
120
|
await addMarkdownFile(altMemoryFile);
|
|
121
121
|
try {
|
|
122
|
-
const dirStat = await
|
|
122
|
+
const dirStat = await fsPromises.lstat(memoryDir);
|
|
123
123
|
if (!dirStat.isSymbolicLink() && dirStat.isDirectory()) await walkDir(memoryDir, result);
|
|
124
124
|
} catch {}
|
|
125
125
|
const normalizedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
|
|
126
126
|
if (normalizedExtraPaths.length > 0) for (const inputPath of normalizedExtraPaths) try {
|
|
127
|
-
const stat = await
|
|
127
|
+
const stat = await fsPromises.lstat(inputPath);
|
|
128
128
|
if (stat.isSymbolicLink()) continue;
|
|
129
129
|
if (stat.isDirectory()) {
|
|
130
130
|
await walkDir(inputPath, result);
|
|
@@ -138,7 +138,7 @@ async function listMemoryFiles(workspaceDir, extraPaths) {
|
|
|
138
138
|
for (const entry of result) {
|
|
139
139
|
let key = entry;
|
|
140
140
|
try {
|
|
141
|
-
key = await
|
|
141
|
+
key = await fsPromises.realpath(entry);
|
|
142
142
|
} catch {}
|
|
143
143
|
if (seen.has(key)) continue;
|
|
144
144
|
seen.add(key);
|
|
@@ -152,14 +152,14 @@ function hashText(value) {
|
|
|
152
152
|
async function buildFileEntry(absPath, workspaceDir) {
|
|
153
153
|
let stat;
|
|
154
154
|
try {
|
|
155
|
-
stat = await
|
|
155
|
+
stat = await fsPromises.stat(absPath);
|
|
156
156
|
} catch (err) {
|
|
157
157
|
if (isFileMissingError(err)) return null;
|
|
158
158
|
throw err;
|
|
159
159
|
}
|
|
160
160
|
let content;
|
|
161
161
|
try {
|
|
162
|
-
content = await
|
|
162
|
+
content = await fsPromises.readFile(absPath, "utf-8");
|
|
163
163
|
} catch (err) {
|
|
164
164
|
if (isFileMissingError(err)) return null;
|
|
165
165
|
throw err;
|
|
@@ -293,7 +293,7 @@ const log = createSubsystemLogger("memory");
|
|
|
293
293
|
async function listSessionFilesForAgent(agentId) {
|
|
294
294
|
const dir = resolveSessionTranscriptsDirForAgent(agentId);
|
|
295
295
|
try {
|
|
296
|
-
return (await
|
|
296
|
+
return (await fsPromises.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
|
|
297
297
|
} catch {
|
|
298
298
|
return [];
|
|
299
299
|
}
|
|
@@ -323,8 +323,8 @@ function extractSessionText(content) {
|
|
|
323
323
|
}
|
|
324
324
|
async function buildSessionEntry(absPath) {
|
|
325
325
|
try {
|
|
326
|
-
const stat = await
|
|
327
|
-
const lines = (await
|
|
326
|
+
const stat = await fsPromises.stat(absPath);
|
|
327
|
+
const lines = (await fsPromises.readFile(absPath, "utf-8")).split("\n");
|
|
328
328
|
const collected = [];
|
|
329
329
|
const lineMap = [];
|
|
330
330
|
for (let jsonlIdx = 0; jsonlIdx < lines.length; jsonlIdx++) {
|