wednesdayai 0.5.1-dev.41 → 0.5.1-dev.42
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/{agent-scope-DUbhjnHb.js → agent-scope-BJFJ0deZ.js} +18 -18
- package/dist/{agent-scope-CXfIHPTl.js → agent-scope-CoIdVzmg.js} +2 -2
- package/dist/{agent-turn-execute-8DU-jztX.js → agent-turn-execute-CIlMMXNu.js} +168 -168
- package/dist/{agent-turn-runner-y0WL6xuI.js → agent-turn-runner-BkWusthz.js} +3 -3
- package/dist/{agent-turn-runner-BJqs23F_.js → agent-turn-runner-FwkD42Me.js} +6 -6
- package/dist/{agent-turn-runner-DHc4lH66.js → agent-turn-runner-SxjOzPCD.js} +6 -6
- package/dist/{api-key-rotation-DAI1NT_a.js → api-key-rotation-1GnreUfv.js} +1 -1
- package/dist/{api-key-rotation-PK29aYV9.js → api-key-rotation-1bTDnvBU.js} +2 -2
- package/dist/{api-key-rotation-B8RAiYZ_.js → api-key-rotation-BWj1Itf-.js} +2 -2
- package/dist/{audio-preflight-DaYu-alJ.js → audio-preflight-CCjuApbs.js} +25 -25
- package/dist/{audio-preflight-Cio-wP6C.js → audio-preflight-CKxOmHZL.js} +22 -22
- package/dist/{audio-preflight-Bdn8EyXv.js → audio-preflight-cWE_jPq7.js} +14 -14
- package/dist/{audio-transcription-runner-MJ65xlDX.js → audio-transcription-runner-Bk1wu6OC.js} +8 -8
- package/dist/{audio-transcription-runner-DW04B1B-.js → audio-transcription-runner-DgFYIaIw.js} +12 -12
- package/dist/{audio-transcription-runner-D_-_mf4m.js → audio-transcription-runner-DrIyj8a5.js} +25 -25
- package/dist/build-info.json +3 -3
- package/dist/bundled/boot-md/handler.js +55 -55
- package/dist/bundled/bootstrap-extra-files/handler.js +4 -4
- package/dist/bundled/command-logger/handler.js +1 -1
- package/dist/bundled/session-journal/handler.js +55 -55
- package/dist/bundled/session-memory/handler.js +55 -55
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{chat-content-DtaSiJ_7.js → chat-content-B7yKTLAY.js} +9 -9
- package/dist/{chat-content-DIjp-kW-.js → chat-content-BdADRLL0.js} +17 -17
- package/dist/{chat-content-tQ21BnhN.js → chat-content-BgW4rG28.js} +24 -24
- package/dist/{chrome-DxiDoVpi.js → chrome-DNTX4D1k.js} +13 -13
- package/dist/{chrome-C9TkYQeh.js → chrome-DQ2kyZpc.js} +14 -14
- package/dist/{chrome-BRVJGvQa.js → chrome-W4kkryVf.js} +5 -5
- package/dist/{chunk-DCCRrNDr.js → chunk-BAxcOCcV.js} +3 -3
- package/dist/{chunk-CGvXEMAJ.js → chunk-BBj2TedD.js} +1 -1
- package/dist/{chunk-50mU2Avf.js → chunk-BEuk6eCG.js} +3 -3
- package/dist/{command-queue-De2GI8TP.js → command-queue-CRm1AADE.js} +1 -1
- package/dist/{command-queue-yDJ733aN.js → command-queue-D_saM8MV.js} +1 -1
- package/dist/{commands-registry-CzTzqbi9.js → commands-registry-C-BDBl_b.js} +2 -2
- package/dist/{commands-registry-C3LKhQLY.js → commands-registry-CtR9mXss.js} +2 -2
- package/dist/{commands-registry-BO2o7Un9.js → commands-registry-b4F_78R4.js} +1 -1
- package/dist/{config-D5tWLhng.js → config-CPcuaNsB.js} +26 -26
- package/dist/config.js +3 -3
- package/dist/{credentials-DdZjLLBj.js → credentials-2Kd9Ahu7.js} +1 -1
- package/dist/{credentials-BAWD9O8L.js → credentials-BhiiI_Nr.js} +1 -1
- package/dist/{credentials-GPboJeMC.js → credentials-U5jLZxJ-.js} +1 -1
- package/dist/{deliver-Cqo4_R0v.js → deliver-Ap_fWjsf.js} +14 -14
- package/dist/{deliver-x1MM90HA.js → deliver-BQSIZZRd.js} +11 -11
- package/dist/{deliver-DeMElZFE.js → deliver-BufoibUD.js} +15 -15
- package/dist/{diagnostic-Nq6B3DZr.js → diagnostic--vAGyKdB.js} +3 -3
- package/dist/{diagnostic-BqFtliY1.js → diagnostic-BSnQ1U_E.js} +3 -3
- package/dist/{plugin-sdk/errors-BcCM5PTR.js → errors-BzL6hu4G.js} +1 -1
- package/dist/{errors-D8k7j4A4.js → errors-DnOtx_vg.js} +1 -1
- package/dist/extensionAPI.js +40 -40
- package/dist/{fetch-TzOudNO4.js → fetch-BJ9kDOw8.js} +7 -7
- package/dist/{fetch-CLvElPgY.js → fetch-DJPbv7La.js} +1 -1
- package/dist/{fetch-Cpgrvssj.js → fetch-DQjTi7nc.js} +1 -1
- package/dist/{fetch-CHncmQms.js → fetch-DUVm-Rj1.js} +7 -7
- package/dist/{fetch-DG4n5iR6.js → fetch-DmpLwwor.js} +1 -1
- package/dist/{fetch-BzeUsif1.js → fetch-JiVpsY-F.js} +2 -2
- package/dist/{fetch-guard-kz-XQlCx.js → fetch-guard-BySb6coS.js} +2 -2
- package/dist/{fetch-guard-BZlxmZcA.js → fetch-guard-CRERUrFK.js} +2 -2
- package/dist/{fetch-guard-D49piGJ5.js → fetch-guard-Dn6Z6n6a.js} +1 -1
- package/dist/{frontmatter-BDLxOane.js → frontmatter-NYeLKFIP.js} +3 -3
- package/dist/{fs-safe-BH37Yhl8.js → fs-safe-C3qJHn62.js} +25 -25
- package/dist/{fs-safe-BjrptUz1.js → fs-safe-DOdeIkaS.js} +3 -3
- package/dist/{plugin-sdk/image-ops-1WkFRYfC.js → image-ops-BTgGxcIG.js} +2 -2
- package/dist/{image-ops-BWgZn39_.js → image-ops-DEUr_rAC.js} +1 -1
- package/dist/{plugin-sdk/ir-BnNIPrDz.js → ir-B0rUqFWs.js} +5 -5
- package/dist/{ir-vVwcX8JG.js → ir-Bra81NIe.js} +2 -2
- package/dist/{ir-Btci3Wse.js → ir-IKFrcD2H.js} +8 -8
- package/dist/{json-files-C3L53Qrl.js → json-files-DNv3G6Vg.js} +7 -7
- package/dist/{legacy-names-BKv-k5-D.js → legacy-names-D7ywm6_7.js} +1 -1
- package/dist/llm-slug-generator.js +55 -55
- package/dist/{manager-Nw8a10KA.js → manager-3Exjl08V.js} +7 -7
- package/dist/{manager-BPk0HUHz.js → manager-Cb_Lde6Q.js} +14 -14
- package/dist/{manager-DRfrqzWR.js → manager-DIIInXxQ.js} +4 -4
- package/dist/{markdown-tables-CzhZ9VCB.js → markdown-tables-7TebvIj0.js} +1 -1
- package/dist/{markdown-tables-BJqhUgli.js → markdown-tables-Crj_Y0Qx.js} +2 -2
- package/dist/{markdown-tables-By4yQcHS.js → markdown-tables-lzV8Hoxc.js} +2 -2
- package/dist/{model-selection-DkRYDpst.js → model-selection-DFW5CGMj.js} +1 -1
- package/dist/{model-selection-JA-6f5ss.js → model-selection-_StPBPAp.js} +9 -9
- package/dist/{models-config-Cbzv_acs.js → models-config-D3M9er_C.js} +2 -2
- package/dist/{models-config-TH00YNHC.js → models-config-DkEpc_7A.js} +7 -7
- package/dist/{models-config-BaSANr-E.js → models-config-tNRAxYqz.js} +1 -1
- package/dist/{nudge-Da1ePscI.js → nudge-B06CLLon.js} +9 -9
- package/dist/{nudge-DVGzMWUi.js → nudge-BR_K1LnT.js} +16 -16
- package/dist/{nudge-Chvj0Rw2.js → nudge-DklIe0bB.js} +10 -10
- package/dist/{outbound-attachment-DegoJUYB.js → outbound-attachment-BeSAM8qU.js} +1 -1
- package/dist/{outbound-attachment-CZwlqfbE.js → outbound-attachment-CCQDMmDH.js} +2 -2
- package/dist/{outbound-attachment-DAUmCye_.js → outbound-attachment-DFIzmC4e.js} +2 -2
- package/dist/{outbound-message-hooks-CIrC0qAA.js → outbound-message-hooks-Bn5_bObR.js} +5 -5
- package/dist/{outbound-message-hooks-Bqu2fu_R.js → outbound-message-hooks-C9zh-qk0.js} +4 -4
- package/dist/{outbound-message-hooks-bMw-LLuz.js → outbound-message-hooks-CrrbzX7U.js} +2 -2
- package/dist/{path-alias-guards-CGcezGX3.js → path-alias-guards-B9AcbQl6.js} +3 -3
- package/dist/{plugin-sdk/path-alias-guards-D1I2TIj4.js → path-alias-guards-aXY57qPv.js} +1 -1
- package/dist/{pi-embedded-BSVP6xD2.js → pi-embedded-CL5jkXds.js} +64 -64
- package/dist/{pi-embedded-W4tWwQw6.js → pi-embedded-DGpkqagr.js} +80 -80
- package/dist/{pi-embedded-utils-DF7kfQx2.js → pi-embedded-utils-CQ3KPjMe.js} +3 -3
- package/dist/{pi-embedded-utils-BF4B99Db.js → pi-embedded-utils-D9zLeiKy.js} +1 -1
- package/dist/{pi-embedded-utils-B6eeyw2H.js → pi-embedded-utils-DD7HmeWR.js} +3 -3
- package/dist/{pi-model-discovery-ym24jTFO.js → pi-model-discovery-BTuzuVh1.js} +1 -1
- package/dist/{pi-model-discovery-VTZCKDCd.js → pi-model-discovery-C4WE3mR2.js} +1 -1
- package/dist/{pi-model-discovery-B5oKc4R3.js → pi-model-discovery-DiGB5xAq.js} +1 -1
- package/dist/plugin-sdk/{agent-scope-BnbrZIzh.js → agent-scope-Cy5bPtkD.js} +1 -1
- package/dist/plugin-sdk/{agent-turn-execute-Bj1_MqWi.js → agent-turn-execute-Cr_GYkDb.js} +79 -79
- package/dist/plugin-sdk/{agent-turn-runner-zbex5xar.js → agent-turn-runner-CBR6kAt-.js} +6 -6
- package/dist/plugin-sdk/{api-key-rotation-Dpyf5O6z.js → api-key-rotation-BKcVxTy8.js} +2 -2
- package/dist/plugin-sdk/{audio-preflight-DlNHpUpW.js → audio-preflight-BVKGoA22.js} +23 -23
- package/dist/plugin-sdk/{audio-transcription-runner-BNWmQAJ3.js → audio-transcription-runner-Cvfignlt.js} +10 -10
- package/dist/plugin-sdk/{chrome-DwoV5WFU.js → chrome-Djvom4Ij.js} +6 -6
- package/dist/plugin-sdk/{chunk-CBTJQenE.js → chunk-Bh4ffo9K.js} +3 -3
- package/dist/plugin-sdk/{command-queue-hSL_BIod.js → command-queue-DxcAKezg.js} +1 -1
- package/dist/plugin-sdk/{commands-registry-vhM5U22x.js → commands-registry-CCiWhIrU.js} +2 -2
- package/dist/plugin-sdk/{credentials-oF38Hm9r.js → credentials-BFdx8hCQ.js} +1 -1
- package/dist/plugin-sdk/{deliver-CkQB8s_s.js → deliver-Cf-VdZA7.js} +14 -14
- package/dist/plugin-sdk/{diagnostic-nUTVaBEe.js → diagnostic-BpXW-Rhw.js} +3 -3
- package/dist/{errors-BWpk4nzX.js → plugin-sdk/errors-BH3DYZVB.js} +1 -1
- package/dist/plugin-sdk/{fetch-DV_cKD5m.js → fetch-B9WuvLLv.js} +7 -7
- package/dist/plugin-sdk/{fetch-BNHoA66Z.js → fetch-BxGJD3sH.js} +1 -1
- package/dist/plugin-sdk/{fetch-guard-Dpd7hJ0h.js → fetch-guard-CJhIVznN.js} +2 -2
- package/dist/plugin-sdk/{fs-safe-CnAPtYPG.js → fs-safe-BQ8e0fFk.js} +3 -3
- package/dist/{image-ops-C54shfkj.js → plugin-sdk/image-ops-CqatVl0e.js} +12 -12
- package/dist/{ir-SWdqg35s.js → plugin-sdk/ir-C1cLQG0N.js} +5 -5
- package/dist/plugin-sdk/{manager-uIw894nB.js → manager-xGWNrW5i.js} +7 -7
- package/dist/plugin-sdk/{markdown-tables-D6Jl1s9s.js → markdown-tables-DnMUQn1V.js} +2 -2
- package/dist/plugin-sdk/{model-auth-Beiv1ujI.js → model-auth-pNsZhRxq.js} +7 -7
- package/dist/plugin-sdk/{models-config-DrzOHxl5.js → models-config-d-LFEKVs.js} +2 -2
- package/dist/plugin-sdk/{nudge-czM3OOTT.js → nudge-BvirROp6.js} +8 -8
- package/dist/plugin-sdk/{openai-compatible-video-Dy57wpNv.js → openai-compatible-video-BxPbkLMy.js} +7 -7
- package/dist/plugin-sdk/{outbound-attachment-BoSR20RK.js → outbound-attachment-DkIWM5yK.js} +2 -2
- package/dist/plugin-sdk/{outbound-message-hooks-eUNVCJ0m.js → outbound-message-hooks-DsAvrOUy.js} +4 -4
- package/dist/{path-alias-guards-CgO2FpVx.js → plugin-sdk/path-alias-guards-CF0cvXKB.js} +1 -1
- package/dist/plugin-sdk/{pi-embedded-helpers-BRSkUtFR.js → pi-embedded-helpers-Ctve63Vr.js} +15 -15
- package/dist/plugin-sdk/{pi-embedded-utils-DcsHTJ1m.js → pi-embedded-utils-cecBA96E.js} +3 -3
- package/dist/plugin-sdk/{pi-model-discovery-HVno_0HD.js → pi-model-discovery-CMOEq078.js} +1 -1
- package/dist/plugin-sdk/provider-media-understanding.js +20 -20
- package/dist/plugin-sdk/{pw-ai-B1OqkFDb.js → pw-ai-Bl2Z9GYg.js} +10 -10
- package/dist/plugin-sdk/{qmd-manager-Ip6QnhA7.js → qmd-manager-DY9c1S_2.js} +8 -8
- package/dist/plugin-sdk/{qmd-scope-DMNjwnEQ.js → qmd-scope-C3rw3Qjd.js} +1 -1
- package/dist/plugin-sdk/{query-expansion-DV-ECmRb.js → query-expansion-BhXha2GI.js} +2 -2
- package/dist/plugin-sdk/{recorder-XQ8ZjG7j.js → recorder-DccHbgBz.js} +2 -2
- package/dist/plugin-sdk/{redact-C3T6IWmQ.js → redact-CXDVzhSq.js} +1 -1
- package/dist/plugin-sdk/{replies-HCqRS_IF.js → replies-CyyZdjYH.js} +5 -5
- package/dist/plugin-sdk/{reply-directives-Bn4oBJnk.js → reply-directives-CXKYiQC1.js} +2 -2
- package/dist/{reply-prefix-BTUna5vE.js → plugin-sdk/reply-prefix-DL3DiQEo.js} +1 -1
- package/dist/plugin-sdk/{resolve-route-Djrs4IWv.js → resolve-route-CsiTWvoi.js} +3 -3
- package/dist/plugin-sdk/{runs-DN-UxJ44.js → runs-ByM3uA8B.js} +8 -8
- package/dist/plugin-sdk/{send-DnJb7LiP.js → send-BwuMsQ_p.js} +8 -8
- package/dist/plugin-sdk/{send-AstP-BDn.js → send-D0UAWWai.js} +8 -8
- package/dist/plugin-sdk/{send-D3hVSNy0.js → send-Dgf6n9kX.js} +6 -6
- package/dist/plugin-sdk/{send-D5C72eu6.js → send-qUR5w2lM.js} +7 -7
- package/dist/plugin-sdk/{session-meta-pKpwf1nQ.js → session-meta-B_alDqcD.js} +1 -1
- package/dist/plugin-sdk/{sessions-BfBjVuaP.js → sessions-CkJfRajZ.js} +4 -4
- package/dist/plugin-sdk/{skill-commands-Bk_STwKa.js → skill-commands-D5O0FXiW.js} +4 -4
- package/dist/plugin-sdk/{skills-BArFQgKX.js → skills-ByCpoIW7.js} +6 -6
- package/dist/plugin-sdk/{ssrf-B2UnPTf3.js → ssrf-aLKAjCHj.js} +1 -1
- package/dist/plugin-sdk/{store-D8eITlWs.js → store-KaVQ5gHj.js} +2 -2
- package/dist/plugin-sdk/{subsystem-Btq0amiz.js → subsystem-DGPv0F8I.js} +4 -4
- package/dist/plugin-sdk/{tables-Bj_zeTwr.js → tables-CONj5xDV.js} +1 -1
- package/dist/plugin-sdk/{tokens-mfZMXas7.js → tokens-DUGBy1gM.js} +1 -1
- package/dist/plugin-sdk/{tool-loop-detection-CnFqoQKh.js → tool-loop-detection-Cl4-Vsd_.js} +1 -1
- package/dist/plugin-sdk/{user-run-recording-DQBPNzif.js → user-run-recording--8aaZMPs.js} +2 -2
- package/dist/plugin-sdk/{ws-DN6RmfyQ.js → ws-C7BGsi5P.js} +1 -1
- package/dist/{proxy-env-DKs0W5v1.js → proxy-env-Bw8nAERJ.js} +1 -1
- package/dist/{proxy-env-C0UK-5dm.js → proxy-env-RzbogHFe.js} +1 -1
- package/dist/{proxy-env-DtzLr6mZ.js → proxy-env-dFmQfhFb.js} +1 -1
- package/dist/{pw-ai-KPNOiYzf.js → pw-ai-B2n3DHPt.js} +12 -12
- package/dist/{pw-ai-CEk9Jaqd.js → pw-ai-C6ZFN6As.js} +13 -13
- package/dist/{pw-ai-8QlHyDLL.js → pw-ai-D55f0Pr9.js} +4 -4
- package/dist/{qmd-manager-BmiJlIMN.js → qmd-manager-BZSlXT1A.js} +23 -23
- package/dist/{qmd-manager-B_ED_NmL.js → qmd-manager-C4rOtrQS.js} +2 -2
- package/dist/{qmd-manager-BFUaPUn-.js → qmd-manager-jLSZ3VID.js} +10 -10
- package/dist/{qmd-scope-DLLTbQwp.js → qmd-scope-BN4oVeLu.js} +1 -1
- package/dist/{qmd-scope-CUCeRWxr.js → qmd-scope-BOfwIKTy.js} +1 -1
- package/dist/{query-expansion-DLN1Vjgr.js → query-expansion-BDAO12Ha.js} +11 -11
- package/dist/{query-expansion-BVj0lCGG.js → query-expansion-Dm_RIg6M.js} +1 -1
- package/dist/{query-expansion-CbOJZTFH.js → query-expansion-UPsVmvEm.js} +2 -2
- package/dist/{recorder-jnBdoV4s.js → recorder-Bp_onP2d.js} +2 -2
- package/dist/{recorder-BowlGHGe.js → recorder-DRV1SIKe.js} +1 -1
- package/dist/{recorder-CndF3Klo.js → recorder-DvYXNusz.js} +2 -2
- package/dist/{redact-C8xjZT-F.js → redact-CysJDryP.js} +1 -1
- package/dist/{redact-B6sHOW29.js → redact-D--orJnz.js} +1 -1
- package/dist/{replies-7qxW8HcU.js → replies-BL7cHT2h.js} +4 -4
- package/dist/{replies-CoEfccKv.js → replies-DAavcLc9.js} +5 -5
- package/dist/{replies-lKn2Mrkb.js → replies-DfoUf3N4.js} +5 -5
- package/dist/{reply-directives-BclP76MA.js → reply-directives-B_wfvntf.js} +2 -2
- package/dist/{reply-directives-DarQZxqY.js → reply-directives-D4Hftiqp.js} +1 -1
- package/dist/{reply-directives-Djre3xI1.js → reply-directives-DsGD4aw1.js} +2 -2
- package/dist/{plugin-sdk/reply-prefix-CCyygbH2.js → reply-prefix-C08CPcgE.js} +1 -1
- package/dist/{reply-prefix-DiyN1oc7.js → reply-prefix-gWrzAQtZ.js} +1 -1
- package/dist/{resolve-route-ClI5pltd.js → resolve-route-BP1OpZqn.js} +3 -3
- package/dist/{resolve-route-B15qdahX.js → resolve-route-D96zWGGF.js} +1 -1
- package/dist/{resolve-route-BmA3wi9D.js → resolve-route-RQpYXVl1.js} +4 -4
- package/dist/{runs-efmPtrdw.js → runs-Bf_VVVBE.js} +8 -8
- package/dist/{runs-5zWtWfx5.js → runs-CAO_rrxJ.js} +5 -5
- package/dist/{runs-DffCseDM.js → runs-DGr28sFu.js} +8 -8
- package/dist/{send-TVImOmCV.js → send-BOm8dqOB.js} +13 -13
- package/dist/{send-ChgWfhHL.js → send-C-m_74Nc.js} +8 -8
- package/dist/{send-B3c56zXa.js → send-C0kXNcyD.js} +8 -8
- package/dist/{send-CLnmNoGF.js → send-CNMPyQyQ.js} +7 -7
- package/dist/{send-Dy4zxtn3.js → send-CS1yI0B4.js} +6 -6
- package/dist/{send-BZrEBJKt.js → send-DFsyNWFI.js} +7 -7
- package/dist/{send-NLqVlKnJ.js → send-DYRbKT7y.js} +6 -6
- package/dist/{send-Co-6tb50.js → send-DkJqx60r.js} +8 -8
- package/dist/{send-Cl-ugSMv.js → send-Dv__vEQx.js} +5 -5
- package/dist/{send-DJypuRge.js → send-FQrlCKRx.js} +6 -6
- package/dist/{send-DdyIJ_uy.js → send-T9aTnSyS.js} +4 -4
- package/dist/{send-DkHxW8Pg.js → send-oHqfck_E.js} +6 -6
- package/dist/{session-meta-CE9Oi0tA.js → session-meta-BCY_pfg7.js} +1 -1
- package/dist/{session-meta-DgpwY0ah.js → session-meta-CyokAxEY.js} +1 -1
- package/dist/{session-meta-DDeeNkQv.js → session-meta-DVKEsZNl.js} +1 -1
- package/dist/{sessions-B-dL4q0P.js → sessions-A1wDmvXO.js} +1 -1
- package/dist/{sessions-DkSPJ2k9.js → sessions-CzjW7wiR.js} +4 -4
- package/dist/{sessions-BgTvNzNv.js → sessions-IqyeyMXp.js} +4 -4
- package/dist/{skill-commands-K9_D6a_V.js → skill-commands-BfK22Jmi.js} +4 -4
- package/dist/{skill-commands-1Axnvvz6.js → skill-commands-CZ8IAEbM.js} +2 -2
- package/dist/{skill-commands-BOG-33Ja.js → skill-commands-DYJDIogS.js} +5 -5
- package/dist/{skills-CrNvxe8D.js → skills-D6riKXOf.js} +6 -6
- package/dist/{skills-CMwL1GBr.js → skills-D7jLGkoP.js} +1 -1
- package/dist/{skills-Ci9t7Gax.js → skills-jb4bSwT6.js} +4 -4
- package/dist/{store-DJPbhmBq.js → store-Bt16sey6.js} +2 -2
- package/dist/{store-B6wZFu_5.js → store-CsI6l-8d.js} +7 -7
- package/dist/{subsystem-B9soUuXQ.js → subsystem-BTMrlJ-R.js} +7 -7
- package/dist/{tables-rCzAF-en.js → tables-BFlTcF5k.js} +1 -1
- package/dist/{tables-CYp9eWuv.js → tables-BTIafSNy.js} +1 -1
- package/dist/{tables-BaYGY_Hk.js → tables-tChtQWdX.js} +1 -1
- package/dist/{tokens-DwuYAzrE.js → tokens-C2ll8wSq.js} +1 -1
- package/dist/{tokens-KbWGDYPC.js → tokens-qfLiLlNv.js} +1 -1
- package/dist/{tool-loop-detection-B2G2F3vq.js → tool-loop-detection-CiexABx1.js} +1 -1
- package/dist/{tool-loop-detection-BwJFCGqI.js → tool-loop-detection-D0CRFNOH.js} +1 -1
- package/dist/{user-run-recording-Bax2KSZY.js → user-run-recording-CTOXtrSm.js} +1 -1
- package/dist/{user-run-recording-B_-S5l8q.js → user-run-recording-D-7cPbdf.js} +2 -2
- package/dist/{user-run-recording-DIqKTo0U.js → user-run-recording-DJedyUge.js} +2 -2
- package/dist/{workspace-D5PKyvm-.js → workspace-xnzx7wEV.js} +1 -1
- package/dist/{ws-CWxX8WDm.js → ws-CQigqc-W.js} +1 -1
- package/dist/{ws-CSU92Z2r.js → ws-D51UDdBH.js} +1 -1
- package/dist/{ws-CmKUpGwq.js → ws-DLbfGWAn.js} +1 -1
- package/extensions/acpx/package.json +1 -1
- package/extensions/anthropic/package.json +1 -1
- package/extensions/bifrost/package.json +1 -1
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/deepgram/package.json +1 -1
- package/extensions/deepinfra/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/diffs/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/dream-cycle/package.json +1 -1
- package/extensions/elevenlabs/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/gemini-search/package.json +1 -1
- package/extensions/google/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/grok-search/package.json +1 -1
- package/extensions/groq/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/package.json +1 -1
- package/extensions/kimi-search/package.json +1 -1
- package/extensions/kokoro/package.json +1 -1
- package/extensions/learning-core/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +1 -1
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/mistral/package.json +1 -1
- package/extensions/moonshot/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +1 -1
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +1 -1
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/openai/package.json +1 -1
- package/extensions/openai-realtime/package.json +1 -1
- package/extensions/openrouter/package.json +1 -1
- package/extensions/perplexity-search/package.json +1 -1
- package/extensions/searxng-search/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/synology-chat/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +1 -1
- package/extensions/twitch/package.json +1 -1
- package/extensions/ui-surfaces/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +1 -1
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zai/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +1 -1
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +1 -1
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
- package/dist/subsystem-cFv2jJm-.js +0 -2777
|
@@ -1,27 +1,27 @@
|
|
|
1
|
-
import { Ha as resolveSecretInputRef, Sr as acquireSessionWriteLock, Za as parseBooleanValue, a as createConfigIO, ba as formatCliCommand, c as loadConfig, k as getBlockedNetworkModeReason, m as writeConfigFile, pa as resolveSecretRefValues, st as CHANNEL_IDS, va as secretRefKey } from "./config-
|
|
1
|
+
import { Ha as resolveSecretInputRef, Sr as acquireSessionWriteLock, Za as parseBooleanValue, a as createConfigIO, ba as formatCliCommand, c as loadConfig, k as getBlockedNetworkModeReason, m as writeConfigFile, pa as resolveSecretRefValues, st as CHANNEL_IDS, va as secretRefKey } from "./config-CPcuaNsB.js";
|
|
2
2
|
import { r as STATE_DIR, u as resolveGatewayPort } from "./paths-C7aURmuZ.js";
|
|
3
|
-
import { E as truncateUtf16Safe, Z as openBoundaryFile, b as resolveUserPath, nt as resolvePathViaExistingAncestorSync, o as defaultRuntime, t as createSubsystemLogger } from "./subsystem-
|
|
4
|
-
import { D as runExec, Y as normalizeAgentId, Z as resolveAgentIdFromSessionKey, _ as DEFAULT_IDENTITY_FILENAME, b as DEFAULT_USER_FILENAME, d as resolveSessionAgentId, g as DEFAULT_HEARTBEAT_FILENAME, h as DEFAULT_BOOTSTRAP_FILENAME, m as DEFAULT_AGENT_WORKSPACE_DIR, p as DEFAULT_AGENTS_FILENAME, r as resolveAgentConfig, v as DEFAULT_SOUL_FILENAME, x as ensureAgentWorkspace, y as DEFAULT_TOOLS_FILENAME } from "./agent-scope-
|
|
5
|
-
import { It as canonicalizeMainSessionAlias, Lt as resolveAgentMainSessionKey, g as sanitizeToolCallIdsForCloudCodeAssist } from "./sessions-
|
|
6
|
-
import { A as DEFAULT_DOWNLOAD_DIR, B as DEFAULT_AI_SNAPSHOT_MAX_CHARS, C as ensureChromeExtensionRelayServer, D as PROFILE_POST_RESTART_WS_TIMEOUT_MS, E as PROFILE_ATTACH_RETRY_TIMEOUT_MS, F as resolveWritablePathWithinRoot, G as DEFAULT_OPENCLAW_BROWSER_PROFILE_NAME, H as DEFAULT_BROWSER_EVALUATE_ENABLED, L as normalizeBrowserFormField, M as DEFAULT_UPLOAD_DIR, N as resolveExistingPathsWithinRoot, O as resolveCdpReachabilityTimeouts, R as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, T as CDP_JSON_NEW_TIMEOUT_MS, U as DEFAULT_OPENCLAW_BROWSER_COLOR, V as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, W as DEFAULT_OPENCLAW_BROWSER_ENABLED, _ as withBrowserNavigationPolicy, a as resolveOpenClawUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchOpenClawChrome, j as DEFAULT_TRACE_DIR, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopOpenClawChrome, p as snapshotAria, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS } from "./chrome-
|
|
7
|
-
import { r as isLoopbackHost } from "./ws-
|
|
8
|
-
import { n as resolveGatewayCredentialsFromValues } from "./credentials-
|
|
9
|
-
import { d as resolveSandboxPath, h as sanitizeEnvVars, o as syncSkillsToWorkspace, u as resolveSandboxInputPath } from "./skills-
|
|
10
|
-
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-
|
|
11
|
-
import { r as formatErrorMessage, t as extractErrorCode } from "./errors-
|
|
12
|
-
import { n as SsrFBlockedError } from "./proxy-env-
|
|
13
|
-
import { i as getImageMetadata, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-
|
|
14
|
-
import { i as saveMediaBuffer, n as ensureMediaDir } from "./store-
|
|
3
|
+
import { E as truncateUtf16Safe, Z as openBoundaryFile, b as resolveUserPath, nt as resolvePathViaExistingAncestorSync, o as defaultRuntime, t as createSubsystemLogger } from "./subsystem-BTMrlJ-R.js";
|
|
4
|
+
import { D as runExec, Y as normalizeAgentId, Z as resolveAgentIdFromSessionKey, _ as DEFAULT_IDENTITY_FILENAME, b as DEFAULT_USER_FILENAME, d as resolveSessionAgentId, g as DEFAULT_HEARTBEAT_FILENAME, h as DEFAULT_BOOTSTRAP_FILENAME, m as DEFAULT_AGENT_WORKSPACE_DIR, p as DEFAULT_AGENTS_FILENAME, r as resolveAgentConfig, v as DEFAULT_SOUL_FILENAME, x as ensureAgentWorkspace, y as DEFAULT_TOOLS_FILENAME } from "./agent-scope-BJFJ0deZ.js";
|
|
5
|
+
import { It as canonicalizeMainSessionAlias, Lt as resolveAgentMainSessionKey, g as sanitizeToolCallIdsForCloudCodeAssist } from "./sessions-IqyeyMXp.js";
|
|
6
|
+
import { A as DEFAULT_DOWNLOAD_DIR, B as DEFAULT_AI_SNAPSHOT_MAX_CHARS, C as ensureChromeExtensionRelayServer, D as PROFILE_POST_RESTART_WS_TIMEOUT_MS, E as PROFILE_ATTACH_RETRY_TIMEOUT_MS, F as resolveWritablePathWithinRoot, G as DEFAULT_OPENCLAW_BROWSER_PROFILE_NAME, H as DEFAULT_BROWSER_EVALUATE_ENABLED, L as normalizeBrowserFormField, M as DEFAULT_UPLOAD_DIR, N as resolveExistingPathsWithinRoot, O as resolveCdpReachabilityTimeouts, R as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, T as CDP_JSON_NEW_TIMEOUT_MS, U as DEFAULT_OPENCLAW_BROWSER_COLOR, V as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, W as DEFAULT_OPENCLAW_BROWSER_ENABLED, _ as withBrowserNavigationPolicy, a as resolveOpenClawUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchOpenClawChrome, j as DEFAULT_TRACE_DIR, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopOpenClawChrome, p as snapshotAria, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS } from "./chrome-DNTX4D1k.js";
|
|
7
|
+
import { r as isLoopbackHost } from "./ws-D51UDdBH.js";
|
|
8
|
+
import { n as resolveGatewayCredentialsFromValues } from "./credentials-2Kd9Ahu7.js";
|
|
9
|
+
import { d as resolveSandboxPath, h as sanitizeEnvVars, o as syncSkillsToWorkspace, u as resolveSandboxInputPath } from "./skills-jb4bSwT6.js";
|
|
10
|
+
import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-B9AcbQl6.js";
|
|
11
|
+
import { r as formatErrorMessage, t as extractErrorCode } from "./errors-DnOtx_vg.js";
|
|
12
|
+
import { n as SsrFBlockedError } from "./proxy-env-Bw8nAERJ.js";
|
|
13
|
+
import { i as getImageMetadata, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-BTgGxcIG.js";
|
|
14
|
+
import { i as saveMediaBuffer, n as ensureMediaDir } from "./store-CsI6l-8d.js";
|
|
15
15
|
import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-D91c_y3Q.js";
|
|
16
16
|
import { t as generateSecureToken } from "./secure-random-CYWiC9Ek.js";
|
|
17
17
|
import { n as resolveWindowsSpawnProgram, t as materializeWindowsSpawnProgram } from "./windows-spawn-BD9EiDok.js";
|
|
18
|
-
import { r as writeJsonAtomic } from "./json-files-
|
|
18
|
+
import { r as writeJsonAtomic } from "./json-files-DNv3G6Vg.js";
|
|
19
19
|
import { o as normalizeThinkLevel } from "./thinking-BOHpxvdU.js";
|
|
20
20
|
import crypto, { createHash, timingSafeEqual } from "node:crypto";
|
|
21
21
|
import fs, { existsSync } from "node:fs";
|
|
22
22
|
import os from "node:os";
|
|
23
23
|
import path, { posix } from "node:path";
|
|
24
|
-
import
|
|
24
|
+
import fs$1 from "node:fs/promises";
|
|
25
25
|
import { spawn } from "node:child_process";
|
|
26
26
|
import express from "express";
|
|
27
27
|
|
|
@@ -1151,7 +1151,7 @@ function isModuleNotFoundError(err) {
|
|
|
1151
1151
|
}
|
|
1152
1152
|
async function loadPwAiModule(mode) {
|
|
1153
1153
|
try {
|
|
1154
|
-
return await import("./pw-ai-
|
|
1154
|
+
return await import("./pw-ai-C6ZFN6As.js");
|
|
1155
1155
|
} catch (err) {
|
|
1156
1156
|
if (mode === "soft") return null;
|
|
1157
1157
|
if (isModuleNotFoundError(err)) return null;
|
|
@@ -1309,7 +1309,7 @@ async function withPlaywrightRouteContext(params) {
|
|
|
1309
1309
|
//#endregion
|
|
1310
1310
|
//#region src/browser/routes/output-paths.ts
|
|
1311
1311
|
async function ensureOutputRootDir(rootDir) {
|
|
1312
|
-
await
|
|
1312
|
+
await fs$1.mkdir(rootDir, { recursive: true });
|
|
1313
1313
|
}
|
|
1314
1314
|
async function resolveWritableOutputPathOrRespond(params) {
|
|
1315
1315
|
if (params.ensureRootDir) await ensureOutputRootDir(params.rootDir);
|
|
@@ -3516,7 +3516,7 @@ function createProfileAvailability({ opts, profile, state, getProfileState, setP
|
|
|
3516
3516
|
//#region src/browser/server-context.reset.ts
|
|
3517
3517
|
async function closePlaywrightBrowserConnection() {
|
|
3518
3518
|
try {
|
|
3519
|
-
await (await import("./pw-ai-
|
|
3519
|
+
await (await import("./pw-ai-C6ZFN6As.js")).closePlaywrightBrowserConnection();
|
|
3520
3520
|
} catch {}
|
|
3521
3521
|
}
|
|
3522
3522
|
function createProfileResetOps({ profile, getProfileState, stopRunningBrowser, isHttpReachable, resolveOpenClawUserDataDir }) {
|
|
@@ -4226,7 +4226,7 @@ async function withRegistryLock(registryPath, fn) {
|
|
|
4226
4226
|
}
|
|
4227
4227
|
async function readRegistryFromFile(registryPath, mode) {
|
|
4228
4228
|
try {
|
|
4229
|
-
const raw = await
|
|
4229
|
+
const raw = await fs$1.readFile(registryPath, "utf-8");
|
|
4230
4230
|
const parsed = JSON.parse(raw);
|
|
4231
4231
|
if (isRegistryFile(parsed)) return parsed;
|
|
4232
4232
|
if (mode === "fallback") return { entries: [] };
|
|
@@ -5850,7 +5850,7 @@ function formatSandboxToolPolicyBlockedMessage(params) {
|
|
|
5850
5850
|
//#endregion
|
|
5851
5851
|
//#region src/agents/sandbox/workspace.ts
|
|
5852
5852
|
async function ensureSandboxWorkspace(workspaceDir, seedFrom, skipBootstrap) {
|
|
5853
|
-
await
|
|
5853
|
+
await fs$1.mkdir(workspaceDir, { recursive: true });
|
|
5854
5854
|
if (seedFrom) {
|
|
5855
5855
|
const seed = resolveUserPath(seedFrom);
|
|
5856
5856
|
const files = [
|
|
@@ -5866,7 +5866,7 @@ async function ensureSandboxWorkspace(workspaceDir, seedFrom, skipBootstrap) {
|
|
|
5866
5866
|
const src = path.join(seed, name);
|
|
5867
5867
|
const dest = path.join(workspaceDir, name);
|
|
5868
5868
|
try {
|
|
5869
|
-
await
|
|
5869
|
+
await fs$1.access(dest);
|
|
5870
5870
|
} catch {
|
|
5871
5871
|
try {
|
|
5872
5872
|
const opened = await openBoundaryFile({
|
|
@@ -5877,7 +5877,7 @@ async function ensureSandboxWorkspace(workspaceDir, seedFrom, skipBootstrap) {
|
|
|
5877
5877
|
if (!opened.ok) continue;
|
|
5878
5878
|
try {
|
|
5879
5879
|
const content = fs.readFileSync(opened.fd, "utf-8");
|
|
5880
|
-
await
|
|
5880
|
+
await fs$1.writeFile(dest, content, {
|
|
5881
5881
|
encoding: "utf-8",
|
|
5882
5882
|
flag: "wx"
|
|
5883
5883
|
});
|
|
@@ -5916,7 +5916,7 @@ async function ensureSandboxWorkspaceLayout(params) {
|
|
|
5916
5916
|
const message = error instanceof Error ? error.message : JSON.stringify(error);
|
|
5917
5917
|
defaultRuntime.error?.(`Sandbox skill sync failed: ${message}`);
|
|
5918
5918
|
}
|
|
5919
|
-
} else await
|
|
5919
|
+
} else await fs$1.mkdir(workspaceDir, { recursive: true });
|
|
5920
5920
|
return {
|
|
5921
5921
|
agentWorkspaceDir,
|
|
5922
5922
|
scopeKey,
|
|
@@ -5926,7 +5926,7 @@ async function ensureSandboxWorkspaceLayout(params) {
|
|
|
5926
5926
|
}
|
|
5927
5927
|
async function resolveSandboxDockerUser(params) {
|
|
5928
5928
|
if (params.docker.user?.trim()) return params.docker;
|
|
5929
|
-
const stat = params.stat ?? ((workspaceDir) =>
|
|
5929
|
+
const stat = params.stat ?? ((workspaceDir) => fs$1.stat(workspaceDir));
|
|
5930
5930
|
try {
|
|
5931
5931
|
const workspaceStat = await stat(params.workspaceDir);
|
|
5932
5932
|
const uid = Number.isInteger(workspaceStat.uid) ? workspaceStat.uid : null;
|
|
@@ -1,14 +1,14 @@
|
|
|
1
|
-
import { c as loadConfig } from "./config-
|
|
2
|
-
import { at as isPathInside, it as isNotFoundPathError, mt as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger, u as CONFIG_DIR } from "./subsystem-
|
|
3
|
-
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-
|
|
4
|
-
import { a as isErrno } from "./errors-
|
|
5
|
-
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
6
|
-
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-
|
|
1
|
+
import { c as loadConfig } from "./config-CPcuaNsB.js";
|
|
2
|
+
import { at as isPathInside, it as isNotFoundPathError, mt as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger, u as CONFIG_DIR } from "./subsystem-BTMrlJ-R.js";
|
|
3
|
+
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-D51UDdBH.js";
|
|
4
|
+
import { a as isErrno } from "./errors-DnOtx_vg.js";
|
|
5
|
+
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-C3qJHn62.js";
|
|
6
|
+
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-Bw8nAERJ.js";
|
|
7
7
|
import { createHmac } from "node:crypto";
|
|
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 fs$1 from "node:fs/promises";
|
|
12
12
|
import { execFileSync, spawn } from "node:child_process";
|
|
13
13
|
import net from "node:net";
|
|
14
14
|
import http, { createServer } from "node:http";
|
|
@@ -66,28 +66,28 @@ function invalidPath(scopeLabel) {
|
|
|
66
66
|
}
|
|
67
67
|
async function resolveRealPathIfExists(targetPath) {
|
|
68
68
|
try {
|
|
69
|
-
return await
|
|
69
|
+
return await fs$1.realpath(targetPath);
|
|
70
70
|
} catch {
|
|
71
71
|
return;
|
|
72
72
|
}
|
|
73
73
|
}
|
|
74
74
|
async function resolveTrustedRootRealPath(rootDir) {
|
|
75
75
|
try {
|
|
76
|
-
const rootLstat = await
|
|
76
|
+
const rootLstat = await fs$1.lstat(rootDir);
|
|
77
77
|
if (!rootLstat.isDirectory() || rootLstat.isSymbolicLink()) return;
|
|
78
|
-
return await
|
|
78
|
+
return await fs$1.realpath(rootDir);
|
|
79
79
|
} catch {
|
|
80
80
|
return;
|
|
81
81
|
}
|
|
82
82
|
}
|
|
83
83
|
async function validateCanonicalPathWithinRoot(params) {
|
|
84
84
|
try {
|
|
85
|
-
const candidateLstat = await
|
|
85
|
+
const candidateLstat = await fs$1.lstat(params.candidatePath);
|
|
86
86
|
if (candidateLstat.isSymbolicLink()) return "invalid";
|
|
87
87
|
if (params.expect === "directory" && !candidateLstat.isDirectory()) return "invalid";
|
|
88
88
|
if (params.expect === "file" && !candidateLstat.isFile()) return "invalid";
|
|
89
89
|
if (params.expect === "file" && candidateLstat.nlink > 1) return "invalid";
|
|
90
|
-
const candidateRealPath = await
|
|
90
|
+
const candidateRealPath = await fs$1.realpath(params.candidatePath);
|
|
91
91
|
return isPathInside(params.rootRealPath, candidateRealPath) ? "ok" : "invalid";
|
|
92
92
|
} catch (err) {
|
|
93
93
|
return isNotFoundPathError(err) ? "not-found" : "invalid";
|
|
@@ -165,7 +165,7 @@ async function resolveCheckedPathsWithinRoot(params) {
|
|
|
165
165
|
};
|
|
166
166
|
if (!rootRealPath || !raw || !path.isAbsolute(raw)) return lexicalPathResult;
|
|
167
167
|
try {
|
|
168
|
-
const resolvedExistingPath = await
|
|
168
|
+
const resolvedExistingPath = await fs$1.realpath(raw);
|
|
169
169
|
const relativePath = path.relative(rootRealPath, resolvedExistingPath);
|
|
170
170
|
if (!isInRoot(relativePath)) return lexicalPathResult;
|
|
171
171
|
return {
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { H as isPathInside, V as isNotFoundPathError, Z as CONFIG_DIR, mt as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger } from "./subsystem-
|
|
2
|
-
import { U as loadConfig } from "./model-selection-
|
|
3
|
-
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-
|
|
4
|
-
import { a as isErrno } from "./errors-
|
|
5
|
-
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
6
|
-
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-
|
|
1
|
+
import { H as isPathInside, V as isNotFoundPathError, Z as CONFIG_DIR, mt as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
|
|
2
|
+
import { U as loadConfig } from "./model-selection-DFW5CGMj.js";
|
|
3
|
+
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-CQigqc-W.js";
|
|
4
|
+
import { a as isErrno } from "./errors-B_bbUZmd.js";
|
|
5
|
+
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-CFEZK0gv.js";
|
|
6
|
+
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-RzbogHFe.js";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import syncFs from "node:fs";
|
|
9
9
|
import os from "node:os";
|
|
@@ -13,7 +13,7 @@ import { createHmac } from "node:crypto";
|
|
|
13
13
|
import net from "node:net";
|
|
14
14
|
import http, { createServer } from "node:http";
|
|
15
15
|
import https from "node:https";
|
|
16
|
-
import WebSocket, { WebSocketServer } from "ws";
|
|
16
|
+
import WebSocket$1, { WebSocketServer } from "ws";
|
|
17
17
|
|
|
18
18
|
//#region src/browser/constants.ts
|
|
19
19
|
const DEFAULT_OPENCLAW_BROWSER_ENABLED = true;
|
|
@@ -501,7 +501,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
501
501
|
let extensionWs = null;
|
|
502
502
|
const cdpClients = /* @__PURE__ */ new Set();
|
|
503
503
|
const connectedTargets = /* @__PURE__ */ new Map();
|
|
504
|
-
const extensionConnected = () => extensionWs?.readyState === WebSocket.OPEN;
|
|
504
|
+
const extensionConnected = () => extensionWs?.readyState === WebSocket$1.OPEN;
|
|
505
505
|
const hasConnectedTargets = () => connectedTargets.size > 0;
|
|
506
506
|
let extensionDisconnectCleanupTimer = null;
|
|
507
507
|
const extensionReconnectWaiters = /* @__PURE__ */ new Set();
|
|
@@ -553,7 +553,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
553
553
|
let nextExtensionId = 1;
|
|
554
554
|
const sendToExtension = async (payload) => {
|
|
555
555
|
const ws = extensionWs;
|
|
556
|
-
if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
|
|
556
|
+
if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
|
|
557
557
|
ws.send(JSON.stringify(payload));
|
|
558
558
|
return await new Promise((resolve, reject) => {
|
|
559
559
|
const timer = setTimeout(() => {
|
|
@@ -570,12 +570,12 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
570
570
|
const broadcastToCdpClients = (evt) => {
|
|
571
571
|
const msg = JSON.stringify(evt);
|
|
572
572
|
for (const ws of cdpClients) {
|
|
573
|
-
if (ws.readyState !== WebSocket.OPEN) continue;
|
|
573
|
+
if (ws.readyState !== WebSocket$1.OPEN) continue;
|
|
574
574
|
ws.send(msg);
|
|
575
575
|
}
|
|
576
576
|
};
|
|
577
577
|
const sendResponseToCdp = (ws, res) => {
|
|
578
|
-
if (ws.readyState !== WebSocket.OPEN) return;
|
|
578
|
+
if (ws.readyState !== WebSocket$1.OPEN) return;
|
|
579
579
|
ws.send(JSON.stringify(res));
|
|
580
580
|
};
|
|
581
581
|
const dropConnectedTargetSession = (sessionId) => {
|
|
@@ -829,7 +829,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
829
829
|
rejectUpgrade(socket, 401, "Unauthorized");
|
|
830
830
|
return;
|
|
831
831
|
}
|
|
832
|
-
if (extensionWs && extensionWs.readyState !== WebSocket.OPEN) {
|
|
832
|
+
if (extensionWs && extensionWs.readyState !== WebSocket$1.OPEN) {
|
|
833
833
|
try {
|
|
834
834
|
extensionWs.terminate();
|
|
835
835
|
} catch {}
|
|
@@ -862,7 +862,7 @@ async function ensureChromeExtensionRelayServer(opts) {
|
|
|
862
862
|
clearExtensionDisconnectCleanupTimer();
|
|
863
863
|
flushExtensionReconnectWaiters(true);
|
|
864
864
|
const ping = setInterval(() => {
|
|
865
|
-
if (ws.readyState !== WebSocket.OPEN) return;
|
|
865
|
+
if (ws.readyState !== WebSocket$1.OPEN) return;
|
|
866
866
|
ws.send(JSON.stringify({ method: "ping" }));
|
|
867
867
|
}, 5e3);
|
|
868
868
|
ws.on("message", (data) => {
|
|
@@ -1218,7 +1218,7 @@ function openCdpWebSocket(wsUrl, opts) {
|
|
|
1218
1218
|
const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
|
|
1219
1219
|
const handshakeTimeoutMs = typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : CDP_WS_HANDSHAKE_TIMEOUT_MS;
|
|
1220
1220
|
const agent = getDirectAgentForCdp(wsUrl);
|
|
1221
|
-
return new WebSocket(wsUrl, {
|
|
1221
|
+
return new WebSocket$1(wsUrl, {
|
|
1222
1222
|
handshakeTimeout: handshakeTimeoutMs,
|
|
1223
1223
|
...Object.keys(headers).length ? { headers } : {},
|
|
1224
1224
|
...agent ? { agent } : {}
|
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
import { H as isPathInside, V as isNotFoundPathError, Z as CONFIG_DIR, mt as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
|
|
2
|
-
import { U as loadConfig } from "./model-selection-
|
|
3
|
-
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-
|
|
4
|
-
import { a as isErrno } from "./errors-
|
|
5
|
-
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-
|
|
6
|
-
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-
|
|
2
|
+
import { U as loadConfig } from "./model-selection-_StPBPAp.js";
|
|
3
|
+
import { n as isLoopbackAddress, r as isLoopbackHost, t as rawDataToString } from "./ws-DLbfGWAn.js";
|
|
4
|
+
import { a as isErrno } from "./errors-BzL6hu4G.js";
|
|
5
|
+
import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-DOdeIkaS.js";
|
|
6
|
+
import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, t as hasProxyEnvConfigured } from "./proxy-env-dFmQfhFb.js";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import syncFs from "node:fs";
|
|
9
9
|
import os from "node:os";
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { i as chunkTextByBreakResolver, r as avoidTrailingHighSurrogateBreak, t as createSubsystemLogger } from "./subsystem-
|
|
2
|
+
import { i as chunkTextByBreakResolver, r as avoidTrailingHighSurrogateBreak, t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
|
|
3
3
|
import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
|
|
4
|
-
import { G as normalizeAccountId } from "./workspace-
|
|
5
|
-
import { Or as resolveAccountEntry, Pr as INTERNAL_MESSAGE_CHANNEL } from "./model-selection-
|
|
4
|
+
import { G as normalizeAccountId } from "./workspace-xnzx7wEV.js";
|
|
5
|
+
import { Or as resolveAccountEntry, Pr as INTERNAL_MESSAGE_CHANNEL } from "./model-selection-_StPBPAp.js";
|
|
6
6
|
import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-B64kVeCJ.js";
|
|
7
7
|
|
|
8
8
|
//#region src/auto-reply/chunk.ts
|
|
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
|
2
2
|
import { nt as normalizeAccountId } from "./agent-scope-Js3kUihf.js";
|
|
3
3
|
import { i as chunkTextByBreakResolver, r as avoidTrailingHighSurrogateBreak, t as createSubsystemLogger } from "./subsystem-DynBFcQj.js";
|
|
4
4
|
import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
|
|
5
|
-
import { Mr as resolveAccountEntry, Rr as INTERNAL_MESSAGE_CHANNEL } from "./model-selection-
|
|
5
|
+
import { Mr as resolveAccountEntry, Rr as INTERNAL_MESSAGE_CHANNEL } from "./model-selection-DFW5CGMj.js";
|
|
6
6
|
import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-C9CqDW38.js";
|
|
7
7
|
|
|
8
8
|
//#region src/auto-reply/chunk.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { lr as INTERNAL_MESSAGE_CHANNEL, rr as resolveAccountEntry } from "./config-
|
|
3
|
-
import { i as chunkTextByBreakResolver, r as avoidTrailingHighSurrogateBreak, t as createSubsystemLogger } from "./subsystem-
|
|
2
|
+
import { lr as INTERNAL_MESSAGE_CHANNEL, rr as resolveAccountEntry } from "./config-CPcuaNsB.js";
|
|
3
|
+
import { i as chunkTextByBreakResolver, r as avoidTrailingHighSurrogateBreak, t as createSubsystemLogger } from "./subsystem-BTMrlJ-R.js";
|
|
4
4
|
import { n as resolveProcessScopedMap } from "./plain-object-Doc_YkH1.js";
|
|
5
|
-
import { at as normalizeAccountId } from "./agent-scope-
|
|
5
|
+
import { at as normalizeAccountId } from "./agent-scope-BJFJ0deZ.js";
|
|
6
6
|
import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-CBLPPBpH.js";
|
|
7
7
|
|
|
8
8
|
//#region src/auto-reply/chunk.ts
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { a as logLaneTaskCompleted, i as logLaneEnqueue, r as logLaneDequeue, t as diag } from "./diagnostic-
|
|
2
|
+
import { a as logLaneTaskCompleted, i as logLaneEnqueue, r as logLaneDequeue, t as diag } from "./diagnostic-BSnQ1U_E.js";
|
|
3
3
|
import { t as CommandLane } from "./lanes-DBBnME5O.js";
|
|
4
4
|
|
|
5
5
|
//#region src/process/command-queue.ts
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { t as CommandLane } from "./lanes-DWpYhh13.js";
|
|
3
|
-
import { a as logLaneTaskCompleted, i as logLaneEnqueue, r as logLaneDequeue, t as diag } from "./diagnostic
|
|
3
|
+
import { a as logLaneTaskCompleted, i as logLaneEnqueue, r as logLaneDequeue, t as diag } from "./diagnostic--vAGyKdB.js";
|
|
4
4
|
|
|
5
5
|
//#region src/process/command-queue.ts
|
|
6
6
|
var command_queue_exports = /* @__PURE__ */ __exportAll({
|
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { An as normalizeChannelId, En as listChannelDocks, Fi as resolveConfiguredModelRef, Ga as DEFAULT_MODEL, Ka as DEFAULT_PROVIDER, gt as getActivePluginRegistry } from "./config-
|
|
3
|
-
import { m as escapeRegExp } from "./subsystem-
|
|
2
|
+
import { An as normalizeChannelId, En as listChannelDocks, Fi as resolveConfiguredModelRef, Ga as DEFAULT_MODEL, Ka as DEFAULT_PROVIDER, gt as getActivePluginRegistry } from "./config-CPcuaNsB.js";
|
|
3
|
+
import { m as escapeRegExp } from "./subsystem-BTMrlJ-R.js";
|
|
4
4
|
import { n as resolveProcessScopedMap, t as isPlainObject } from "./plain-object-Doc_YkH1.js";
|
|
5
5
|
import { r as listThinkingLevels } from "./thinking-BOHpxvdU.js";
|
|
6
6
|
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
|
-
import { tt as escapeRegExp } from "./subsystem-
|
|
2
|
+
import { tt as escapeRegExp } from "./subsystem-DynBFcQj.js";
|
|
3
3
|
import { n as resolveProcessScopedMap, t as isPlainObject } from "./plain-object-Doc_YkH1.js";
|
|
4
|
-
import { Da as DEFAULT_PROVIDER, Ea as DEFAULT_MODEL, Ut as getActivePluginRegistry, Zn as listChannelDocks, tr as normalizeChannelId, u as resolveConfiguredModelRef } from "./model-selection-
|
|
4
|
+
import { Da as DEFAULT_PROVIDER, Ea as DEFAULT_MODEL, Ut as getActivePluginRegistry, Zn as listChannelDocks, tr as normalizeChannelId, u as resolveConfiguredModelRef } from "./model-selection-_StPBPAp.js";
|
|
5
5
|
import { r as listThinkingLevels } from "./thinking-CcoiS9V4.js";
|
|
6
6
|
|
|
7
7
|
//#region src/config/commands.ts
|
|
@@ -1,7 +1,7 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { tt as escapeRegExp } from "./subsystem-DynBFcQj.js";
|
|
3
3
|
import { n as resolveProcessScopedMap, t as isPlainObject } from "./plain-object-Doc_YkH1.js";
|
|
4
|
-
import { Ma as DEFAULT_PROVIDER, Wt as getActivePluginRegistry, ar as normalizeChannelId, ja as DEFAULT_MODEL, tr as listChannelDocks, u as resolveConfiguredModelRef } from "./model-selection-
|
|
4
|
+
import { Ma as DEFAULT_PROVIDER, Wt as getActivePluginRegistry, ar as normalizeChannelId, ja as DEFAULT_MODEL, tr as listChannelDocks, u as resolveConfiguredModelRef } from "./model-selection-DFW5CGMj.js";
|
|
5
5
|
import { r as listThinkingLevels } from "./thinking-D6R5MauW.js";
|
|
6
6
|
|
|
7
7
|
//#region src/config/commands.ts
|
|
@@ -1,8 +1,8 @@
|
|
|
1
1
|
import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
|
|
2
2
|
import { _ as resolveStateDir, b as resolveRequiredHomeDir, c as resolveDefaultConfigCandidates, g as resolveOAuthPath, h as resolveOAuthDir, n as DEFAULT_GATEWAY_PORT, o as resolveConfigPath, v as expandHomePrefix } from "./paths-C7aURmuZ.js";
|
|
3
|
-
import { G as INCLUDE_KEY, J as isBlockedObjectKey, K as readConfigIncludeFileWithGuards, L as getChildLogger, Q as openBoundaryFileSync, U as normalizeConfigPaths, V as createFileLogWriter, W as ConfigIncludeError, Y as isPathInside$1, _ as normalizeE164, at as isPathInside$2, b as resolveUserPath, ct as applyConfigEnvVars, dt as MissingEnvVarError, ft as containsEnvVarReference, g as isRecord$3, k as logVerbose, m as escapeRegExp, n as stripAnsi, pt as resolveConfigEnvVars, q as resolveConfigIncludes, t as createSubsystemLogger, ut as sanitizeHostExecEnv, w as sleep, y as resolveConfigDir } from "./subsystem-
|
|
3
|
+
import { G as INCLUDE_KEY, J as isBlockedObjectKey, K as readConfigIncludeFileWithGuards, L as getChildLogger, Q as openBoundaryFileSync, U as normalizeConfigPaths, V as createFileLogWriter, W as ConfigIncludeError, Y as isPathInside$1, _ as normalizeE164, at as isPathInside$2, b as resolveUserPath, ct as applyConfigEnvVars, dt as MissingEnvVarError, ft as containsEnvVarReference, g as isRecord$3, k as logVerbose, m as escapeRegExp, n as stripAnsi, pt as resolveConfigEnvVars, q as resolveConfigIncludes, t as createSubsystemLogger, ut as sanitizeHostExecEnv, w as sleep, y as resolveConfigDir } from "./subsystem-BTMrlJ-R.js";
|
|
4
4
|
import { n as resolveProcessScopedMap, t as isPlainObject$2 } from "./plain-object-Doc_YkH1.js";
|
|
5
|
-
import { B as RAW_PEER_KEY_PREFIX, D as runExec, F as resolveAgentModelPrimaryValue, I as toAgentModelListLike, K as expandIdentityLinksToMatchKeys, L as DEFAULT_AGENT_ID, Y as normalizeAgentId, _t as stripAgentSessionKeyPrefix, a as resolveAgentEffectiveModelPrimary, at as normalizeAccountId$1, c as resolveDefaultAgentId, ht as parseAgentSessionKey, it as DEFAULT_ACCOUNT_ID, n as listAgentIds, ot as normalizeOptionalAccountId, r as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
5
|
+
import { B as RAW_PEER_KEY_PREFIX, D as runExec, F as resolveAgentModelPrimaryValue, I as toAgentModelListLike, K as expandIdentityLinksToMatchKeys, L as DEFAULT_AGENT_ID, Y as normalizeAgentId, _t as stripAgentSessionKeyPrefix, a as resolveAgentEffectiveModelPrimary, at as normalizeAccountId$1, c as resolveDefaultAgentId, ht as parseAgentSessionKey, it as DEFAULT_ACCOUNT_ID, n as listAgentIds, ot as normalizeOptionalAccountId, r as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-BJFJ0deZ.js";
|
|
6
6
|
import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-Dk0djIhM.js";
|
|
7
7
|
import { n as resolveConversationLabel, r as normalizeChatType } from "./conversation-label-BkRfLUVO.js";
|
|
8
8
|
import { createRequire } from "node:module";
|
|
@@ -13,7 +13,7 @@ import path from "node:path";
|
|
|
13
13
|
import { isDeepStrictEqual } from "node:util";
|
|
14
14
|
import JSON5 from "json5";
|
|
15
15
|
import dotenv from "dotenv";
|
|
16
|
-
import
|
|
16
|
+
import fs$1 from "node:fs/promises";
|
|
17
17
|
import { execFileSync, spawn } from "node:child_process";
|
|
18
18
|
import { fileURLToPath } from "node:url";
|
|
19
19
|
import { getOAuthApiKey, getOAuthProviders } from "@mariozechner/pi-ai/oauth";
|
|
@@ -907,7 +907,7 @@ function isCreatedAtStale(createdAt, staleMs) {
|
|
|
907
907
|
}
|
|
908
908
|
async function readLockPayload$1(lockPath) {
|
|
909
909
|
try {
|
|
910
|
-
const raw = await
|
|
910
|
+
const raw = await fs$1.readFile(lockPath, "utf8");
|
|
911
911
|
const parsed = JSON.parse(raw);
|
|
912
912
|
if (typeof parsed.pid !== "number" || typeof parsed.createdAt !== "string") return null;
|
|
913
913
|
const payload = {
|
|
@@ -924,7 +924,7 @@ async function readLockPayload$1(lockPath) {
|
|
|
924
924
|
}
|
|
925
925
|
async function chmodIfSupported(filePath, mode) {
|
|
926
926
|
try {
|
|
927
|
-
await
|
|
927
|
+
await fs$1.chmod(filePath, mode);
|
|
928
928
|
} catch (err) {
|
|
929
929
|
if (process.platform === "win32") return;
|
|
930
930
|
throw err;
|
|
@@ -933,15 +933,15 @@ async function chmodIfSupported(filePath, mode) {
|
|
|
933
933
|
async function resolveNormalizedFilePath(filePath, options) {
|
|
934
934
|
const resolved = path.resolve(filePath);
|
|
935
935
|
const dir = path.dirname(resolved);
|
|
936
|
-
if (options.directoryMode === void 0) await
|
|
936
|
+
if (options.directoryMode === void 0) await fs$1.mkdir(dir, { recursive: true });
|
|
937
937
|
else {
|
|
938
|
-
await
|
|
938
|
+
await fs$1.mkdir(dir, {
|
|
939
939
|
recursive: true,
|
|
940
940
|
mode: options.directoryMode
|
|
941
941
|
});
|
|
942
942
|
await chmodIfSupported(dir, options.directoryMode);
|
|
943
943
|
}
|
|
944
|
-
const realDir = await
|
|
944
|
+
const realDir = await fs$1.realpath(dir);
|
|
945
945
|
return path.join(realDir, path.basename(resolved));
|
|
946
946
|
}
|
|
947
947
|
async function isStaleLock(lockPath, staleMs) {
|
|
@@ -956,7 +956,7 @@ async function isStaleLock(lockPath, staleMs) {
|
|
|
956
956
|
return false;
|
|
957
957
|
}
|
|
958
958
|
try {
|
|
959
|
-
const stat = await
|
|
959
|
+
const stat = await fs$1.stat(lockPath);
|
|
960
960
|
return Date.now() - stat.mtimeMs > staleMs;
|
|
961
961
|
} catch {
|
|
962
962
|
return true;
|
|
@@ -980,7 +980,7 @@ async function releaseHeldLock$1(normalizedFile) {
|
|
|
980
980
|
throw emitLockReleaseWarning("close", current.lockPath, err);
|
|
981
981
|
}
|
|
982
982
|
try {
|
|
983
|
-
await
|
|
983
|
+
await fs$1.rm(current.lockPath, { force: true });
|
|
984
984
|
} catch (err) {
|
|
985
985
|
current.count = 1;
|
|
986
986
|
throw emitLockReleaseWarning("remove", current.lockPath, err);
|
|
@@ -1003,7 +1003,7 @@ async function acquireFileLock(filePath, options) {
|
|
|
1003
1003
|
let attempt = 0;
|
|
1004
1004
|
let staleReclaims = 0;
|
|
1005
1005
|
while (attempt < attempts) try {
|
|
1006
|
-
const handle = await
|
|
1006
|
+
const handle = await fs$1.open(lockPath, "wx");
|
|
1007
1007
|
try {
|
|
1008
1008
|
await handle.writeFile(JSON.stringify({
|
|
1009
1009
|
pid: process.pid,
|
|
@@ -1012,7 +1012,7 @@ async function acquireFileLock(filePath, options) {
|
|
|
1012
1012
|
}, null, 2), "utf8");
|
|
1013
1013
|
} catch (writeErr) {
|
|
1014
1014
|
await handle.close().catch(() => void 0);
|
|
1015
|
-
await
|
|
1015
|
+
await fs$1.rm(lockPath, { force: true }).catch(() => void 0);
|
|
1016
1016
|
throw writeErr;
|
|
1017
1017
|
}
|
|
1018
1018
|
HELD_LOCKS$1.set(normalizedFile, {
|
|
@@ -1028,7 +1028,7 @@ async function acquireFileLock(filePath, options) {
|
|
|
1028
1028
|
} catch (err) {
|
|
1029
1029
|
if (err.code !== "EEXIST") throw err;
|
|
1030
1030
|
if (await isStaleLock(lockPath, options.stale)) {
|
|
1031
|
-
await
|
|
1031
|
+
await fs$1.rm(lockPath, { force: true }).catch(() => void 0);
|
|
1032
1032
|
if (staleReclaims < attempts) {
|
|
1033
1033
|
staleReclaims += 1;
|
|
1034
1034
|
continue;
|
|
@@ -1871,7 +1871,7 @@ function formatWindowsAclSummary(summary) {
|
|
|
1871
1871
|
//#region src/security/audit-fs.ts
|
|
1872
1872
|
async function safeStat(targetPath) {
|
|
1873
1873
|
try {
|
|
1874
|
-
const lst = await
|
|
1874
|
+
const lst = await fs$1.lstat(targetPath);
|
|
1875
1875
|
return {
|
|
1876
1876
|
ok: true,
|
|
1877
1877
|
isSymlink: lst.isSymbolicLink(),
|
|
@@ -1910,7 +1910,7 @@ async function inspectPathPermissions(targetPath, opts) {
|
|
|
1910
1910
|
let effectiveMode = st.mode;
|
|
1911
1911
|
let effectiveIsDir = st.isDir;
|
|
1912
1912
|
if (st.isSymlink) try {
|
|
1913
|
-
const target = await
|
|
1913
|
+
const target = await fs$1.stat(targetPath);
|
|
1914
1914
|
effectiveMode = typeof target.mode === "number" ? target.mode : st.mode;
|
|
1915
1915
|
effectiveIsDir = target.isDirectory();
|
|
1916
1916
|
} catch {}
|
|
@@ -2192,7 +2192,7 @@ async function assertSecurePath(params) {
|
|
|
2192
2192
|
if (stat.isSymlink) {
|
|
2193
2193
|
if (!params.allowSymlinkPath) throw new Error(`${params.label} must not be a symlink: ${effectivePath}`);
|
|
2194
2194
|
try {
|
|
2195
|
-
effectivePath = await
|
|
2195
|
+
effectivePath = await fs$1.realpath(effectivePath);
|
|
2196
2196
|
} catch {
|
|
2197
2197
|
throw new Error(`${params.label} symlink target is not readable: ${params.targetPath}`);
|
|
2198
2198
|
}
|
|
@@ -2240,7 +2240,7 @@ async function readFileProviderPayload(params) {
|
|
|
2240
2240
|
}, timeoutMs);
|
|
2241
2241
|
});
|
|
2242
2242
|
try {
|
|
2243
|
-
const payload = await Promise.race([
|
|
2243
|
+
const payload = await Promise.race([fs$1.readFile(secureFilePath, { signal: abortController.signal }), timeoutPromise]);
|
|
2244
2244
|
if (payload.byteLength > maxBytes) throw new Error(`File provider "${params.providerName}" exceeded maxBytes (${maxBytes}).`);
|
|
2245
2245
|
const text = payload.toString("utf8");
|
|
2246
2246
|
if (params.providerConfig.mode === "singleValue") return text.replace(/\r?\n$/, "");
|
|
@@ -11280,7 +11280,7 @@ async function releaseHeldLock(normalizedSessionFile, held, opts = {}) {
|
|
|
11280
11280
|
await held.handle.close();
|
|
11281
11281
|
} catch {}
|
|
11282
11282
|
try {
|
|
11283
|
-
await
|
|
11283
|
+
await fs$1.rm(held.lockPath, { force: true });
|
|
11284
11284
|
} catch {}
|
|
11285
11285
|
})();
|
|
11286
11286
|
try {
|
|
@@ -11359,7 +11359,7 @@ function registerCleanupHandlers() {
|
|
|
11359
11359
|
}
|
|
11360
11360
|
async function readLockPayload(lockPath) {
|
|
11361
11361
|
try {
|
|
11362
|
-
const raw = await
|
|
11362
|
+
const raw = await fs$1.readFile(lockPath, "utf8");
|
|
11363
11363
|
const parsed = JSON.parse(raw);
|
|
11364
11364
|
const payload = {};
|
|
11365
11365
|
if (isValidLockNumber(parsed.pid) && parsed.pid > 0) payload.pid = parsed.pid;
|
|
@@ -11403,7 +11403,7 @@ async function shouldReclaimContendedLockFile(lockPath, details, staleMs, nowMs)
|
|
|
11403
11403
|
if (!details.stale) return false;
|
|
11404
11404
|
if (!lockInspectionNeedsMtimeStaleFallback(details)) return true;
|
|
11405
11405
|
try {
|
|
11406
|
-
const stat = await
|
|
11406
|
+
const stat = await fs$1.stat(lockPath);
|
|
11407
11407
|
return Math.max(0, nowMs - stat.mtimeMs) > staleMs;
|
|
11408
11408
|
} catch (error) {
|
|
11409
11409
|
return error?.code !== "ENOENT";
|
|
@@ -11421,10 +11421,10 @@ async function acquireSessionWriteLockWithProcessIdentity(params, processIdentit
|
|
|
11421
11421
|
const maxHoldMs = resolvePositiveMs(params.maxHoldMs, DEFAULT_MAX_HOLD_MS);
|
|
11422
11422
|
const sessionFile = path.resolve(params.sessionFile);
|
|
11423
11423
|
const sessionDir = path.dirname(sessionFile);
|
|
11424
|
-
await
|
|
11424
|
+
await fs$1.mkdir(sessionDir, { recursive: true });
|
|
11425
11425
|
let normalizedDir = sessionDir;
|
|
11426
11426
|
try {
|
|
11427
|
-
normalizedDir = await
|
|
11427
|
+
normalizedDir = await fs$1.realpath(sessionDir);
|
|
11428
11428
|
} catch {}
|
|
11429
11429
|
const normalizedSessionFile = path.join(normalizedDir, path.basename(sessionFile));
|
|
11430
11430
|
const lockPath = `${normalizedSessionFile}.lock`;
|
|
@@ -11442,7 +11442,7 @@ async function acquireSessionWriteLockWithProcessIdentity(params, processIdentit
|
|
|
11442
11442
|
attempt += 1;
|
|
11443
11443
|
let handle = null;
|
|
11444
11444
|
try {
|
|
11445
|
-
handle = await
|
|
11445
|
+
handle = await fs$1.open(lockPath, "wx");
|
|
11446
11446
|
const createdAt = (/* @__PURE__ */ new Date()).toISOString();
|
|
11447
11447
|
const starttime = processIdentity.getProcessStartTime(process.pid);
|
|
11448
11448
|
const lockPayload = {
|
|
@@ -11468,7 +11468,7 @@ async function acquireSessionWriteLockWithProcessIdentity(params, processIdentit
|
|
|
11468
11468
|
await handle.close();
|
|
11469
11469
|
} catch {}
|
|
11470
11470
|
try {
|
|
11471
|
-
await
|
|
11471
|
+
await fs$1.rm(lockPath, { force: true });
|
|
11472
11472
|
} catch {}
|
|
11473
11473
|
}
|
|
11474
11474
|
if (err.code !== "EEXIST") throw err;
|
|
@@ -11483,7 +11483,7 @@ async function acquireSessionWriteLockWithProcessIdentity(params, processIdentit
|
|
|
11483
11483
|
stale: true,
|
|
11484
11484
|
staleReasons: inspected.staleReasons.includes("orphan-self-pid") ? inspected.staleReasons : [...inspected.staleReasons, "orphan-self-pid"]
|
|
11485
11485
|
} : inspected, staleMs, nowMs)) {
|
|
11486
|
-
await
|
|
11486
|
+
await fs$1.rm(lockPath, { force: true });
|
|
11487
11487
|
continue;
|
|
11488
11488
|
}
|
|
11489
11489
|
const delay = Math.min(1e3, 50 * attempt);
|
|
@@ -16157,7 +16157,7 @@ function createPluginRegistry(registryParams) {
|
|
|
16157
16157
|
configurable: true,
|
|
16158
16158
|
value: {
|
|
16159
16159
|
...registryParams.runtime.signals,
|
|
16160
|
-
nudge: async (input) => (await import("./nudge-
|
|
16160
|
+
nudge: async (input) => (await import("./nudge-BR_K1LnT.js").then((n) => n.t)).requestAuthorizedNudge({
|
|
16161
16161
|
kind: "plugin",
|
|
16162
16162
|
pluginId: record.id
|
|
16163
16163
|
}, input)
|
package/dist/config.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { Ba as normalizeSecretInputString, E as MODEL_APIS, Fa as assertSecretInputResolved, Gr as setConfigOverride, Ha as resolveSecretInputRef, Hr as applyConfigOverrides, Ia as coerceSecretRef, Kr as unsetConfigOverride, La as hasConfiguredSecretInput, Pa as DEFAULT_SECRET_PROVIDER_ALIAS, Ra as isSecretRef, Ur as getConfigOverrides, Va as parseEnvTemplateSecretRef, Wr as resetConfigOverrides, _ as validateConfigObjectRawWithPlugins, a as createConfigIO, c as loadConfig, d as readConfigFileSnapshotForWrite, f as resolveConfigSnapshotHash, g as validateConfigObjectRaw, h as validateConfigObject, i as clearRuntimeConfigSnapshot, l as parseConfigJson5, m as writeConfigFile, n as advanceRuntimeConfigSnapshot, nr as parseToolsBySenderTypedKey, o as getRuntimeConfigSnapshot, p as setRuntimeConfigSnapshot, r as clearConfigCache, s as getRuntimeConfigSourceSnapshot, t as migrateLegacyConfig, tr as TOOLS_BY_SENDER_KEY_TYPES, u as readConfigFileSnapshot, v as validateConfigObjectWithPlugins, za as normalizeResolvedSecretInputString } from "./config-
|
|
1
|
+
import { Ba as normalizeSecretInputString, E as MODEL_APIS, Fa as assertSecretInputResolved, Gr as setConfigOverride, Ha as resolveSecretInputRef, Hr as applyConfigOverrides, Ia as coerceSecretRef, Kr as unsetConfigOverride, La as hasConfiguredSecretInput, Pa as DEFAULT_SECRET_PROVIDER_ALIAS, Ra as isSecretRef, Ur as getConfigOverrides, Va as parseEnvTemplateSecretRef, Wr as resetConfigOverrides, _ as validateConfigObjectRawWithPlugins, a as createConfigIO, c as loadConfig, d as readConfigFileSnapshotForWrite, f as resolveConfigSnapshotHash, g as validateConfigObjectRaw, h as validateConfigObject, i as clearRuntimeConfigSnapshot, l as parseConfigJson5, m as writeConfigFile, n as advanceRuntimeConfigSnapshot, nr as parseToolsBySenderTypedKey, o as getRuntimeConfigSnapshot, p as setRuntimeConfigSnapshot, r as clearConfigCache, s as getRuntimeConfigSourceSnapshot, t as migrateLegacyConfig, tr as TOOLS_BY_SENDER_KEY_TYPES, u as readConfigFileSnapshot, v as validateConfigObjectWithPlugins, za as normalizeResolvedSecretInputString } from "./config-CPcuaNsB.js";
|
|
2
2
|
import { _ as resolveStateDir, a as resolveCanonicalConfigPath, c as resolveDefaultConfigCandidates, d as resolveIsNixMode, f as resolveLegacyStateDir, g as resolveOAuthPath, h as resolveOAuthDir, i as isNixMode, l as resolveGatewayLockDir, m as resolveNewStateDir, n as DEFAULT_GATEWAY_PORT, o as resolveConfigPath, p as resolveLegacyStateDirs, r as STATE_DIR, s as resolveConfigPathCandidate, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-C7aURmuZ.js";
|
|
3
|
-
import "./subsystem-
|
|
4
|
-
import "./agent-scope-
|
|
3
|
+
import "./subsystem-BTMrlJ-R.js";
|
|
4
|
+
import "./agent-scope-BJFJ0deZ.js";
|
|
5
5
|
import "./github-copilot-token-Dk0djIhM.js";
|
|
6
6
|
|
|
7
7
|
export { CONFIG_PATH, DEFAULT_GATEWAY_PORT, DEFAULT_SECRET_PROVIDER_ALIAS, MODEL_APIS, STATE_DIR, TOOLS_BY_SENDER_KEY_TYPES, advanceRuntimeConfigSnapshot, applyConfigOverrides, assertSecretInputResolved, clearConfigCache, clearRuntimeConfigSnapshot, coerceSecretRef, createConfigIO, getConfigOverrides, getRuntimeConfigSnapshot, getRuntimeConfigSourceSnapshot, hasConfiguredSecretInput, isNixMode, isSecretRef, loadConfig, migrateLegacyConfig, normalizeResolvedSecretInputString, normalizeSecretInputString, parseConfigJson5, parseEnvTemplateSecretRef, parseToolsBySenderTypedKey, readConfigFileSnapshot, readConfigFileSnapshotForWrite, resetConfigOverrides, resolveCanonicalConfigPath, resolveConfigPath, resolveConfigPathCandidate, resolveConfigSnapshotHash, resolveDefaultConfigCandidates, resolveGatewayLockDir, resolveGatewayPort, resolveIsNixMode, resolveLegacyStateDir, resolveLegacyStateDirs, resolveNewStateDir, resolveOAuthDir, resolveOAuthPath, resolveSecretInputRef, resolveStateDir, setConfigOverride, setRuntimeConfigSnapshot, unsetConfigOverride, validateConfigObject, validateConfigObjectRaw, validateConfigObjectRawWithPlugins, validateConfigObjectWithPlugins, writeConfigFile };
|