@gguf/claw 2026.2.9 → 2026.2.13
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/CHANGELOG.md +159 -0
- package/LICENSE +1 -1
- package/dist/{accounts-MyAvfCVH.js → accounts-54zZMYCo.js} +5 -2
- package/dist/{accounts-DbzMEfKN.js → accounts-Bvh0DFxS.js} +5 -2
- package/dist/{acp-cli-MZ3h1E1n.js → acp-cli-BslcOPdx.js} +146 -25
- package/dist/{acp-cli-DKJRTfwB.js → acp-cli-D6rk5cOh.js} +145 -24
- package/dist/{agent-whSJT2Lk.js → agent-C0yL70cy.js} +26 -20
- package/dist/{agent-c1QNeDmV.js → agent-DjZxytiC.js} +26 -20
- package/dist/{agent-scope-D3me2AZa.js → agent-scope-Bkr9fZtl.js} +31 -14
- package/dist/{agent-scope-Dp8sREli.js → agent-scope-DASgjz2_.js} +199 -14
- package/dist/{agent-scope-DnyDZ5RH.js → agent-scope-GYIs5dyU.js} +30 -13
- package/dist/{agent-scope-Dpav7C-i.js → agent-scope-okUOVjE5.js} +32 -11
- package/dist/audio-preflight-B0kLz-Ma.js +60 -0
- package/dist/audio-preflight-BCs_J33s.js +60 -0
- package/dist/audio-preflight-CTl2RCyF.js +71 -0
- package/dist/audio-preflight-MhF6YlAY.js +74 -0
- package/dist/{audit-BFYy1qSw.js → audit-BYfhZ7LA.js} +454 -31
- package/dist/{audit-Dn2cBl2x.js → audit-CfPZ_5Id.js} +452 -29
- package/dist/auth-9nTeB2Je.js +602 -0
- package/dist/auth-CLhyWwAU.js +593 -0
- package/dist/{auth-health-Cx5exPMV.js → auth-health-CWiLyzSr.js} +1 -1
- package/dist/{auth-health-DjT4fUpw.js → auth-health-qD4RND47.js} +1 -1
- package/dist/{auth-profiles-FJ3VY25a.js → auth-profiles-Cp9MtUdM.js} +353 -33
- package/dist/build-info.json +2 -2
- package/dist/bundled/boot-md/handler.js +33 -25
- package/dist/bundled/session-memory/handler.js +33 -22
- package/dist/{call-CD2IZCHT.js → call-CjEdFGAf.js} +7 -7
- package/dist/{call-CM25qgxz.js → call-DAfkvtVq.js} +6 -6
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/canvas-host/a2ui/a2ui.bundle.js +7 -1
- package/dist/{channel-options-CremuJyh.js → channel-options-B8dPzlyO.js} +4 -4
- package/dist/{channel-options-D-JnJ4Ft.js → channel-options-Bq5IC5Tv.js} +12 -7
- package/dist/{channel-selection-DAHCVAX4.js → channel-selection-BaW1xXEa.js} +2 -2
- package/dist/{channel-selection-DPV9hvY8.js → channel-selection-dR0jCgTn.js} +2 -2
- package/dist/{channels-cli-6deHFr9t.js → channels-cli-hPo28hWS.js} +61 -56
- package/dist/{channels-cli-D3tKmhlt.js → channels-cli-zi3rO0jq.js} +62 -57
- package/dist/{channels-status-issues-BN1ICfdy.js → channels-status-issues-kb-M2Fi0.js} +1 -1
- package/dist/{channels-status-issues-DFhI_u0p.js → channels-status-issues-ketdwZun.js} +1 -1
- package/dist/{chrome-B2UjqY-9.js → chrome--Fe8F5Kf.js} +24 -12
- package/dist/{chrome-COabMr6f.js → chrome-BWeMtFGf.js} +24 -12
- package/dist/{chrome-CQd_MVOA.js → chrome-Bx24uq7B.js} +27 -15
- package/dist/{chrome-CxRJz4ZD.js → chrome-n_3rtK2c.js} +22 -11
- package/dist/{clack-prompter-BkNZ4Xdw.js → clack-prompter-B-tJmODa.js} +5 -5
- package/dist/{clack-prompter-DuBVnTKy.js → clack-prompter-DpuKn_Uy.js} +5 -5
- package/dist/cli/daemon-cli.js +8 -1
- package/dist/cli-9lwO6Ttx.js +94 -0
- package/dist/cli-CNNdyxPO.js +91 -0
- package/dist/{client-DMloFP_O.js → client-BhZjzrH2.js} +73 -9
- package/dist/{client-C0gQ7hrj.js → client-DyAxKXKY.js} +73 -9
- package/dist/{command-format-ayFsmwwz.js → command-format-Bxe0mWee.js} +1 -1
- package/dist/{command-options-BQdH6qnK.js → command-options-BDV7Xgs-.js} +9 -4
- package/dist/{commands-BWHYcc83.js → commands-gOiRcfoU.js} +4 -4
- package/dist/{tui-formatters-BDP_71Xt.js → commands-registry-6NUFrejL.js} +6 -114
- package/dist/{tui-formatters-CIx4sCQO.js → commands-registry-DGgkLQ7A.js} +6 -114
- package/dist/{completion-cli-DEJia0V1.js → completion-cli-B1kHKJZX.js} +30 -30
- package/dist/{completion-cli-D_0fx2O6.js → completion-cli-Drks7xRK.js} +3 -3
- package/dist/{config-CQt4vGxI.js → config-7NCznPmF.js} +336 -97
- package/dist/{config-fCnPoWjU.js → config-B8v0zg48.js} +295 -99
- package/dist/{config-Bj2eDa02.js → config-CeWMHOiQ.js} +295 -99
- package/dist/{config-ethqi73X.js → config-D8pgDSNo.js} +358 -99
- package/dist/{config-guard-BJuqQvng.js → config-guard-RbHxYc9j.js} +212 -63
- package/dist/{configure-skrLiSwW.js → configure-DLp2Xz7L.js} +59 -40
- package/dist/{configure-C-pYuYg_.js → configure-Su1S0gi-.js} +58 -39
- package/dist/control-auth-BlWU-jBl.js +54 -0
- package/dist/control-auth-C8rIqEdA.js +54 -0
- package/dist/{control-service-BDgF-FZ0.js → control-service-BNDthc1N.js} +11 -5
- package/dist/{control-service-Djd_WI3_.js → control-service-COF59GQe.js} +10 -4
- package/dist/control-ui/assets/{index-CnB9IO4a.js → index-BECn2L1T.js} +369 -368
- package/dist/control-ui/assets/index-BECn2L1T.js.map +1 -0
- package/dist/control-ui/assets/index-DRPcd1Z4.css +1 -0
- package/dist/control-ui/index.html +2 -2
- package/dist/{cron-cli-CB6CufAb.js → cron-cli-CSy4-JGS.js} +20 -20
- package/dist/{cron-cli-Db6fardJ.js → cron-cli-Db3uCDIT.js} +21 -21
- package/dist/{daemon-cli-Xe22v7lZ.js → daemon-cli-BLbzcTuD.js} +61 -22
- package/dist/{daemon-cli-BlHK0ly2.js → daemon-cli-DR0D35MO.js} +60 -21
- package/dist/{daemon-runtime-CMqH8BUE.js → daemon-runtime-ZWXvLDxx.js} +3 -3
- package/dist/{daemon-runtime-DwQFvDXZ.js → daemon-runtime-pVcZ2KDE.js} +3 -3
- package/dist/{deliver-CD7-BhYD.js → deliver-BHNoC9Yk.js} +396 -290
- package/dist/{deliver-BdGjIcTC.js → deliver-C_5eGQrX.js} +392 -286
- package/dist/{deliver-nTKaXF--.js → deliver-DPHZlWgr.js} +392 -287
- package/dist/{deliver-CDMGxRoW.js → deliver-geVWJ52I.js} +394 -288
- package/dist/{deps-BDQ_K8zf.js → deps-CP0dcOgD.js} +2 -2
- package/dist/{deps-D60FbgTP.js → deps-DW5r2IEk.js} +2 -2
- package/dist/{devices-cli-N559801X.js → devices-cli-BViqX5pl.js} +15 -15
- package/dist/{devices-cli-IxmPLIk8.js → devices-cli-DpYaY-iM.js} +14 -14
- package/dist/{directory-cli-Caq-OYk8.js → directory-cli-BWD1DdKf.js} +16 -16
- package/dist/{directory-cli-ClrdmQL-.js → directory-cli-BcvZfkfo.js} +17 -17
- package/dist/{dispatcher-BfXtm4Dl.js → dispatcher-4Qn951N3.js} +5 -3
- package/dist/{dns-cli-DgVO0Pkw.js → dns-cli-_Ych2tu9.js} +12 -12
- package/dist/{dns-cli-BTNZkWHs.js → dns-cli-gQCxUXgU.js} +13 -13
- package/dist/{docs-cli-9Xan7C6D.js → docs-cli-Bseiau7J.js} +7 -7
- package/dist/{docs-cli-DZULc91f.js → docs-cli-DzBTlWQE.js} +8 -8
- package/dist/{doctor-D39rZvNH.js → doctor-BNkYYahD.js} +37 -36
- package/dist/{doctor-Dq1YeYdH.js → doctor-DzIgdPx1.js} +37 -36
- package/dist/entry.js +77 -21
- package/dist/{env-B5YXooWp.js → env-BUuSkE19.js} +1 -1
- package/dist/{exec-DFOtZbI0.js → exec-BPQSKwGa.js} +5 -3
- package/dist/{exec-B8JKbXKW.js → exec-DqZFMawz.js} +5 -3
- package/dist/{exec-Bas1hoSJ.js → exec-EKUaAU91.js} +57 -18
- package/dist/{exec-CiH_vkWn.js → exec-_PSUrMP8.js} +528 -19
- package/dist/{exec-approvals-DGPTjO0N.js → exec-approvals-Bqk-tIxY.js} +134 -51
- package/dist/{exec-approvals-C9InMoAB.js → exec-approvals-C67V-ljH.js} +134 -51
- package/dist/{exec-approvals-cli-EASbqFd-.js → exec-approvals-cli-D6vfSqQu.js} +22 -22
- package/dist/{exec-approvals-cli-DPHItoxG.js → exec-approvals-cli-DAdoki_R.js} +21 -21
- package/dist/extensionAPI.js +8518 -9140
- package/dist/fetch-Bz1WxfzV.js +285 -0
- package/dist/fetch-D2O8s8I1.js +285 -0
- package/dist/fetch-Dm-nCwa_.js +285 -0
- package/dist/fetch-wuOZDzdT.js +285 -0
- package/dist/{gateway-cli-BFqUIif8.js → gateway-cli-C-k7JPlr.js} +1868 -1072
- package/dist/{gateway-cli-v4kSPsLE.js → gateway-cli-DIIJ9Z0Y.js} +1870 -1074
- package/dist/{gateway-rpc-D6LrkcSA.js → gateway-rpc-D6jLh81b.js} +3 -3
- package/dist/{gateway-rpc-dHFK02Kk.js → gateway-rpc-aqysUyf5.js} +3 -3
- package/dist/{github-copilot-auth-CQIWc0hC.js → github-copilot-auth-BUqfX7hG.js} +316 -52
- package/dist/{github-copilot-auth-D2jfnapd.js → github-copilot-auth-By-nyRb6.js} +316 -52
- package/dist/{github-copilot-token-SLWintYd.js → github-copilot-token-C9W4SY9o.js} +7 -4
- package/dist/{github-copilot-token-BW-SEg7E.js → github-copilot-token-CiF5Iyi2.js} +6 -3
- package/dist/{github-copilot-token-C9IJh2Pn.js → github-copilot-token-DatTe1w-.js} +6 -3
- package/dist/{github-copilot-token-wCk9Fg_E.js → github-copilot-token-c9Igt3ZH.js} +6 -3
- package/dist/{gmail-setup-utils-CVNgLkXL.js → gmail-setup-utils-HvKMdooP.js} +4 -4
- package/dist/{gmail-setup-utils-CAM1vbUS.js → gmail-setup-utils-c-iF00aL.js} +3 -3
- package/dist/{health-format-C77hrjEQ.js → health-format-BORnJOeS.js} +106 -44
- package/dist/{health-format-DDYtlkB9.js → health-format-Nd0jcoqM.js} +105 -43
- package/dist/{help-format-CUnac_bT.js → help-format-Cd5PLwXe.js} +1 -1
- package/dist/{help-format-aiW76js8.js → help-format-DYBEvMOX.js} +1 -1
- package/dist/{hooks-cli-DsflBRxX.js → hooks-cli-3KdsbdRi.js} +53 -47
- package/dist/{hooks-cli-C7kctMuZ.js → hooks-cli-BThja6wK.js} +53 -47
- package/dist/{hooks-status-DRAVHSPg.js → hooks-status-BbIz0zmm.js} +6 -5
- package/dist/{hooks-status-lHWrY64E.js → hooks-status-DPJORMB6.js} +6 -5
- package/dist/{image--gbzucyh.js → image-BaJKrmCs.js} +12 -8
- package/dist/{image-ORs4LLwg.js → image-D-5pUELC.js} +13 -9
- package/dist/{image-DMnjYGdA.js → image-TvL5YI_W.js} +13 -9
- package/dist/{image-BVNytEIn.js → image-bodq5cUH.js} +13 -9
- package/dist/index.js +261 -109
- package/dist/{installs-CXGV291R.js → installs-BrOMqREO.js} +7 -6
- package/dist/{installs-89zeUsVn.js → installs-z69au9Te.js} +7 -6
- package/dist/{links-Dg90NTyF.js → links-AVB88xxH.js} +1 -1
- package/dist/{links-7M-j83As.js → links-DpxpaKe1.js} +1 -1
- package/dist/llm-slug-generator.js +18 -19
- package/dist/{loader-BnzQyT31.js → loader-CS-5lMQa.js} +3694 -4531
- package/dist/{logging-DuK6YXuK.js → logging-B3KnAryz.js} +2 -2
- package/dist/{logging-CNq0UUgf.js → logging-DEPo2hji.js} +1 -1
- package/dist/{login-qr-CJ__cE3-.js → login-qr--28WL1TN.js} +11 -5
- package/dist/{login-qr-BVeOFfNW.js → login-qr-4o2aC2UE.js} +9 -4
- package/dist/{login-qr-BJChByHH.js → login-qr-BUdeu1Sl.js} +8 -2
- package/dist/{login-qr-KUOtNJaQ.js → login-qr-BsYM2E1y.js} +12 -6
- package/dist/{logs-cli-Cm7AiarR.js → logs-cli-DDMD5w5_.js} +38 -22
- package/dist/{logs-cli-BWmtAsjp.js → logs-cli-DvPoVKCN.js} +38 -22
- package/dist/{manager-C-jXr9ks.js → manager-CXo1uqmO.js} +102 -86
- package/dist/{manager-CMFBuvVd.js → manager-ChW0jk7T.js} +101 -85
- package/dist/{manager-D2Ndphg3.js → manager-DUOe7ud6.js} +100 -85
- package/dist/{manager-BsdlwsL5.js → manager-PoxUqdN_.js} +98 -82
- package/dist/{manifest-registry-D5SiA3xq.js → manifest-registry-CVsqjgX0.js} +40 -2
- package/dist/{manifest-registry-DyMRD3rY.js → manifest-registry-jeAPx6AW.js} +40 -2
- package/dist/{message-channel-CHRYQtAM.js → message-channel-CTtrEkmW.js} +1 -1
- package/dist/{message-channel-BlgPSDAh.js → message-channel-DWcu72r7.js} +1 -1
- package/dist/{model-auth-BqjMkNFs.js → model-auth-BvODRbV0.js} +362 -35
- package/dist/{model-selection-DbsbOAoh.js → model-selection-B53OvWCf.js} +353 -33
- package/dist/{model-selection-DlV6wnTr.js → model-selection-vC82fEiP.js} +331 -30
- package/dist/{models-cli-DIFBrK4W.js → models-cli-DqsKsOgd.js} +66 -55
- package/dist/{models-cli-0XhQQbMW.js → models-cli-NV0bnh8l.js} +66 -55
- package/dist/{node-cli-BMUfVCSq.js → node-cli-C7YleuBk.js} +54 -44
- package/dist/{node-cli-DY4lzhDA.js → node-cli-CxwoHnZ6.js} +54 -44
- package/dist/{node-service-DQ-tiSie.js → node-service-C7f_uvx9.js} +2 -2
- package/dist/{node-service-u8g85nD3.js → node-service-De_WkxJe.js} +2 -2
- package/dist/{nodes-cli-BX6oWnLC.js → nodes-cli-BxrMVI9V.js} +25 -23
- package/dist/{nodes-cli-CVHzcQo2.js → nodes-cli-Clb0ocwB.js} +24 -22
- package/dist/{nodes-screen-DGlNPbk4.js → nodes-screen-CVL9363A.js} +48 -6
- package/dist/{nodes-screen-lykd2cny.js → nodes-screen-DsHJIN2I.js} +47 -5
- package/dist/{note-Ci08TSbV.js → note-Duiadw1g.js} +1 -1
- package/dist/{note-DVO1KLaW.js → note-uC6iDp4y.js} +2 -2
- package/dist/{onboard-channels-DTkFFbzS.js → onboard-channels-C5Iaafwb.js} +10 -10
- package/dist/{onboard-channels-CtDnwaF5.js → onboard-channels-C5uL3i8d.js} +11 -11
- package/dist/{onboard-skills-BnAcpzfX.js → onboard-skills-BFxdI1Y1.js} +1143 -112
- package/dist/{onboard-skills-DuoDzEmI.js → onboard-skills-DUG8Y0se.js} +1142 -111
- package/dist/{onboarding-DvhiiHh0.js → onboarding-ClzElK4D.js} +56 -48
- package/dist/{openclaw-root-93W6UrUK.js → openclaw-root-BKsZvO6K.js} +6 -2
- package/dist/{openclaw-root-9ILYSmJ9.js → openclaw-root-CEnmuBUN.js} +6 -2
- package/dist/{pairing-cli-BKJHBxwT.js → pairing-cli-BWWFZF7Q.js} +16 -16
- package/dist/{pairing-cli-DJHjPBwu.js → pairing-cli-BrFLxnug.js} +16 -16
- package/dist/{pairing-labels-xImhiJax.js → pairing-labels-C8KULWNH.js} +1 -1
- package/dist/{pairing-labels-CHxlh3tT.js → pairing-labels-Dt2vXyI7.js} +1 -1
- package/dist/{pairing-store-CO6umWFP.js → pairing-store-Dz-ArTQS.js} +3 -3
- package/dist/{pairing-store-BpPUNzmB.js → pairing-store-gQdv7Ruh.js} +2 -2
- package/dist/{path-env-Nq83EHH9.js → path-env-BRKerjt1.js} +2 -2
- package/dist/{path-env-CXWUFfFv.js → path-env-OJAyUeWW.js} +1 -1
- package/dist/paths-BZK4Ct0I.js +81 -0
- package/dist/paths-DWYi0R_2.js +78 -0
- package/dist/{paths-Bkhd_qY8.js → paths-DdKf4lHp.js} +35 -5
- package/dist/paths-SFzVNGbc.js +78 -0
- package/dist/pi-auth-json-D7hGObyW.js +12 -0
- package/dist/pi-auth-json-DgvHjfJy.js +8 -0
- package/dist/pi-auth-json-la6lnAzY.js +79 -0
- package/dist/pi-auth-json-p3vsMR7W.js +79 -0
- package/dist/{pi-embedded-C1qKCgDT.js → pi-embedded-De6SeAPs.js} +9518 -9968
- package/dist/{pi-embedded-helpers-DtPn5RC8.js → pi-embedded-helpers-BrUBxrE2.js} +70 -10
- package/dist/{pi-embedded-helpers-DhEkdWB1.js → pi-embedded-helpers-D0mqOwwq.js} +821 -128
- package/dist/{pi-embedded-helpers-7AjuNiiJ.js → pi-embedded-helpers-DpJb0kUk.js} +69 -9
- package/dist/{pi-embedded-helpers-BTkXgwJ7.js → pi-embedded-helpers-ZI1UCSRM.js} +927 -136
- package/dist/{pi-tools.policy-gG96mWwA.js → pi-tools.policy-z5Wd_2WN.js} +4 -4
- package/dist/{plugin-auto-enable-D5ye7QnB.js → plugin-auto-enable-B8mX3rX3.js} +14 -5
- package/dist/{plugin-auto-enable-BROgMZcf.js → plugin-auto-enable-OO0eDINB.js} +14 -5
- package/dist/plugin-sdk/agents/apply-patch-update.d.ts +3 -1
- package/dist/plugin-sdk/agents/apply-patch.d.ts +11 -3
- package/dist/plugin-sdk/agents/auth-profiles/profiles.d.ts +5 -0
- package/dist/plugin-sdk/agents/auth-profiles.d.ts +1 -1
- package/dist/plugin-sdk/agents/bash-process-registry.d.ts +1 -0
- package/dist/plugin-sdk/agents/bash-tools.exec.d.ts +26 -0
- package/dist/plugin-sdk/agents/current-time.d.ts +17 -0
- package/dist/plugin-sdk/agents/huggingface-models.d.ts +17 -0
- package/dist/plugin-sdk/agents/models-config.providers.d.ts +10 -0
- package/dist/plugin-sdk/agents/openclaw-tools.d.ts +2 -0
- package/dist/plugin-sdk/agents/pi-auth-json.d.ts +14 -0
- package/dist/plugin-sdk/agents/pi-embedded-helpers/errors.d.ts +5 -1
- package/dist/plugin-sdk/agents/pi-embedded-helpers.d.ts +1 -1
- package/dist/plugin-sdk/agents/pi-embedded-runner/google.d.ts +1 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/run/images.d.ts +9 -4
- package/dist/plugin-sdk/agents/pi-embedded-runner/run/params.d.ts +2 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/run/payloads.d.ts +1 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/run/types.d.ts +2 -0
- package/dist/plugin-sdk/agents/pi-embedded-runner/types.d.ts +15 -0
- package/dist/plugin-sdk/agents/pi-embedded-subscribe.handlers.tools.d.ts +1 -1
- package/dist/plugin-sdk/agents/pi-embedded-subscribe.handlers.types.d.ts +2 -0
- package/dist/plugin-sdk/agents/pi-embedded-subscribe.types.d.ts +2 -0
- package/dist/plugin-sdk/agents/pi-tools.read.d.ts +8 -3
- package/dist/plugin-sdk/agents/sandbox/constants.d.ts +1 -1
- package/dist/plugin-sdk/agents/sandbox/docker.d.ts +14 -3
- package/dist/plugin-sdk/agents/sandbox/fs-bridge.d.ts +56 -0
- package/dist/plugin-sdk/agents/sandbox/types.d.ts +2 -0
- package/dist/plugin-sdk/agents/session-tool-result-guard-wrapper.d.ts +2 -0
- package/dist/plugin-sdk/agents/session-tool-result-guard.d.ts +4 -0
- package/dist/plugin-sdk/agents/subagent-registry.d.ts +3 -1
- package/dist/plugin-sdk/agents/tools/agent-step.d.ts +3 -0
- package/dist/plugin-sdk/agents/tools/browser-tool.schema.d.ts +2 -2
- package/dist/plugin-sdk/agents/tools/common.d.ts +4 -0
- package/dist/plugin-sdk/agents/tools/image-tool.d.ts +9 -1
- package/dist/plugin-sdk/agents/tools/web-search.d.ts +10 -1
- package/dist/plugin-sdk/agents/usage.d.ts +1 -0
- package/dist/plugin-sdk/auto-reply/reply/commands-status.d.ts +1 -0
- package/dist/plugin-sdk/auto-reply/reply/get-reply-directives.d.ts +1 -0
- package/dist/plugin-sdk/auto-reply/reply/memory-flush.d.ts +2 -2
- package/dist/plugin-sdk/auto-reply/reply/mentions.d.ts +1 -0
- package/dist/plugin-sdk/auto-reply/reply/model-selection.d.ts +3 -0
- package/dist/plugin-sdk/auto-reply/reply/reply-reference.d.ts +1 -1
- package/dist/plugin-sdk/auto-reply/reply/session-run-accounting.d.ts +11 -0
- package/dist/plugin-sdk/auto-reply/reply/session-usage.d.ts +8 -0
- package/dist/plugin-sdk/auto-reply/status.d.ts +2 -0
- package/dist/plugin-sdk/auto-reply/templating.d.ts +3 -0
- package/dist/plugin-sdk/auto-reply/thinking.d.ts +1 -1
- package/dist/plugin-sdk/auto-reply/types.d.ts +2 -0
- package/dist/plugin-sdk/browser/cdp.helpers.d.ts +2 -1
- package/dist/plugin-sdk/browser/client-actions-core.d.ts +1 -0
- package/dist/plugin-sdk/browser/control-auth.d.ts +13 -0
- package/dist/plugin-sdk/browser/pw-ai.d.ts +1 -1
- package/dist/plugin-sdk/browser/pw-session.d.ts +25 -0
- package/dist/plugin-sdk/browser/pw-tools-core.interactions.d.ts +2 -0
- package/dist/plugin-sdk/browser/routes/dispatcher.d.ts +1 -0
- package/dist/plugin-sdk/browser/routes/types.d.ts +5 -0
- package/dist/plugin-sdk/channels/plugins/onboarding/signal.d.ts +1 -0
- package/dist/plugin-sdk/channels/registry.d.ts +2 -2
- package/dist/plugin-sdk/cli/nodes-camera.d.ts +8 -2
- package/dist/plugin-sdk/cli/prompt.d.ts +1 -0
- package/dist/plugin-sdk/commands/agent/types.d.ts +2 -0
- package/dist/plugin-sdk/commands/onboard-helpers.d.ts +1 -0
- package/dist/plugin-sdk/commands/onboard-types.d.ts +9 -1
- package/dist/plugin-sdk/commands/signal-install.d.ts +20 -0
- package/dist/plugin-sdk/config/config.d.ts +1 -1
- package/dist/plugin-sdk/config/group-policy.d.ts +3 -0
- package/dist/plugin-sdk/config/merge-patch.d.ts +1 -0
- package/dist/plugin-sdk/config/sessions/paths.d.ts +14 -4
- package/dist/plugin-sdk/config/sessions/store.d.ts +8 -0
- package/dist/plugin-sdk/config/sessions/types.d.ts +8 -0
- package/dist/plugin-sdk/config/types.agents.d.ts +2 -0
- package/dist/plugin-sdk/config/types.channels.d.ts +2 -0
- package/dist/plugin-sdk/config/types.d.ts +1 -0
- package/dist/plugin-sdk/config/types.discord.d.ts +5 -0
- package/dist/plugin-sdk/config/types.gateway.d.ts +35 -0
- package/dist/plugin-sdk/config/types.hooks.d.ts +23 -1
- package/dist/plugin-sdk/config/types.irc.d.ts +96 -0
- package/dist/plugin-sdk/config/types.memory.d.ts +2 -0
- package/dist/plugin-sdk/config/types.openclaw.d.ts +6 -0
- package/dist/plugin-sdk/config/types.queue.d.ts +1 -0
- package/dist/plugin-sdk/config/types.slack.d.ts +2 -0
- package/dist/plugin-sdk/config/types.telegram.d.ts +2 -0
- package/dist/plugin-sdk/config/validation.d.ts +20 -0
- package/dist/plugin-sdk/config/zod-schema.agents.d.ts +1 -0
- package/dist/plugin-sdk/config/zod-schema.core.d.ts +2 -0
- package/dist/plugin-sdk/config/zod-schema.d.ts +193 -2
- package/dist/plugin-sdk/config/zod-schema.hooks.d.ts +3 -2
- package/dist/plugin-sdk/config/zod-schema.providers-core.d.ts +378 -0
- package/dist/plugin-sdk/config/zod-schema.providers.d.ts +176 -0
- package/dist/plugin-sdk/config/zod-schema.sensitive.d.ts +2 -0
- package/dist/plugin-sdk/config/zod-schema.session.d.ts +1 -0
- package/dist/plugin-sdk/cron/service/jobs.d.ts +8 -0
- package/dist/plugin-sdk/cron/service/state.d.ts +1 -0
- package/dist/plugin-sdk/cron/types.d.ts +2 -0
- package/dist/plugin-sdk/discord/monitor/allow-list.d.ts +15 -0
- package/dist/plugin-sdk/discord/send.types.d.ts +5 -0
- package/dist/plugin-sdk/gateway/auth-rate-limit.d.ts +59 -0
- package/dist/plugin-sdk/gateway/auth.d.ts +47 -0
- package/dist/plugin-sdk/gateway/net.d.ts +5 -0
- package/dist/plugin-sdk/gateway/protocol/index.d.ts +7 -7
- package/dist/plugin-sdk/gateway/protocol/schema/agent.d.ts +7 -1
- package/dist/plugin-sdk/gateway/protocol/schema/channels.d.ts +21 -0
- package/dist/plugin-sdk/gateway/protocol/schema/types.d.ts +3 -1
- package/dist/plugin-sdk/gateway/session-utils.fs.d.ts +3 -1
- package/dist/plugin-sdk/gateway/session-utils.types.d.ts +1 -0
- package/dist/plugin-sdk/imessage/send.d.ts +12 -0
- package/dist/plugin-sdk/index.js +2147 -900
- package/dist/plugin-sdk/infra/binaries.d.ts +3 -0
- package/dist/plugin-sdk/infra/brew.d.ts +8 -0
- package/dist/plugin-sdk/infra/heartbeat-active-hours.d.ts +5 -0
- package/dist/plugin-sdk/infra/heartbeat-runner.d.ts +1 -0
- package/dist/plugin-sdk/infra/heartbeat-wake.d.ts +8 -1
- package/dist/plugin-sdk/infra/net/fetch-guard.d.ts +1 -0
- package/dist/plugin-sdk/infra/net/ssrf.d.ts +1 -0
- package/dist/plugin-sdk/infra/outbound/message.d.ts +2 -0
- package/dist/plugin-sdk/infra/outbound/outbound-send-service.d.ts +2 -0
- package/dist/plugin-sdk/infra/session-cost-usage.d.ts +3 -0
- package/dist/plugin-sdk/infra/tailscale.d.ts +34 -0
- package/dist/plugin-sdk/infra/tmp-openclaw-dir.d.ts +10 -0
- package/dist/plugin-sdk/logging/console.d.ts +4 -0
- package/dist/plugin-sdk/logging/logger.d.ts +1 -1
- package/dist/plugin-sdk/logging/state.d.ts +1 -0
- package/dist/plugin-sdk/logging.d.ts +2 -2
- package/dist/plugin-sdk/markdown/ir.d.ts +1 -1
- package/dist/plugin-sdk/markdown/whatsapp.d.ts +14 -0
- package/dist/plugin-sdk/media/input-files.d.ts +5 -0
- package/dist/plugin-sdk/media/store.d.ts +10 -0
- package/dist/plugin-sdk/media-understanding/audio-preflight.d.ts +16 -0
- package/dist/plugin-sdk/media-understanding/types.d.ts +1 -0
- package/dist/plugin-sdk/memory/backend-config.d.ts +2 -1
- package/dist/plugin-sdk/memory/embedding-chunk-limits.d.ts +3 -0
- package/dist/plugin-sdk/memory/embedding-input-limits.d.ts +2 -0
- package/dist/plugin-sdk/memory/embedding-model-limits.d.ts +2 -0
- package/dist/plugin-sdk/memory/embeddings.d.ts +1 -0
- package/dist/plugin-sdk/memory/internal.d.ts +11 -0
- package/dist/plugin-sdk/memory/manager.d.ts +0 -6
- package/dist/plugin-sdk/memory/qmd-manager.d.ts +2 -0
- package/dist/plugin-sdk/memory/qmd-query-parser.d.ts +8 -0
- package/dist/plugin-sdk/memory/session-files.d.ts +2 -0
- package/dist/plugin-sdk/process/command-queue.d.ts +16 -0
- package/dist/plugin-sdk/providers/github-copilot-token.d.ts +3 -0
- package/dist/plugin-sdk/routing/resolve-route.d.ts +3 -1
- package/dist/plugin-sdk/security/external-content.d.ts +1 -1
- package/dist/plugin-sdk/security/secret-equal.d.ts +1 -0
- package/dist/plugin-sdk/sessions/input-provenance.d.ts +16 -0
- package/dist/plugin-sdk/signal/monitor/event-handler.types.d.ts +8 -0
- package/dist/plugin-sdk/signal/monitor/mentions.d.ts +2 -0
- package/dist/plugin-sdk/slack/monitor/commands.d.ts +5 -0
- package/dist/plugin-sdk/slack/monitor/media.d.ts +21 -0
- package/dist/plugin-sdk/slack/types.d.ts +1 -0
- package/dist/plugin-sdk/telegram/bot-message-context.d.ts +2 -1
- package/dist/plugin-sdk/telegram/fetch.d.ts +1 -0
- package/dist/plugin-sdk/telegram/monitor.d.ts +1 -0
- package/dist/plugin-sdk/telegram/send.d.ts +3 -0
- package/dist/plugin-sdk/tts/tts.d.ts +2 -2
- package/dist/plugin-sdk/utils/fetch-timeout.d.ts +2 -0
- package/dist/plugin-sdk/web/media.d.ts +12 -2
- package/dist/{plugins-CQw3z3Nw.js → plugins-CTjLu-z-.js} +4 -4
- package/dist/{plugins-B7F0Ly9G.js → plugins-CxrdL_IZ.js} +3 -3
- package/dist/{plugins-cli-CJ74eHvr.js → plugins-cli-CbX97Kvt.js} +259 -49
- package/dist/{plugins-cli-ubDwUAzK.js → plugins-cli-Dn9OeO53.js} +257 -47
- package/dist/{ports-kYsTYQdA.js → ports-C8YYHVlc.js} +2 -2
- package/dist/{program-1bQ15ivo.js → program-D-mNC0It.js} +86 -83
- package/dist/{progress-Da1ehW-x.js → progress-COHv-uNT.js} +1 -1
- package/dist/{progress-COzt9PNY.js → progress-DZb6yPcJ.js} +1 -1
- package/dist/{prompt-style-Dc0C5HC9.js → prompt-style-Cf1r1L6k.js} +1 -1
- package/dist/{prompt-style-DjZDxcFg.js → prompt-style-lSlXMhsd.js} +1 -1
- package/dist/{pw-ai-CQ4-gUNR.js → pw-ai-6GzTgK5g.js} +205 -32
- package/dist/{pw-ai-1NN0FrJb.js → pw-ai-C8YhJRaI.js} +207 -32
- package/dist/{pw-ai-qEMUq5Mt.js → pw-ai-CKGenizV.js} +203 -29
- package/dist/{pw-ai-IOqEXO1O.js → pw-ai-D7devT89.js} +206 -32
- package/dist/{qmd-manager-CEwp3el1.js → qmd-manager-CQzWovq-.js} +71 -90
- package/dist/{qmd-manager-D6N3qvQ5.js → qmd-manager-Cs8RJVQp.js} +73 -90
- package/dist/{qmd-manager-C48QzrRe.js → qmd-manager-DdgrQ2kc.js} +71 -88
- package/dist/{qmd-manager-DaUqCKB_.js → qmd-manager-dyIoOvKl.js} +73 -90
- package/dist/{register.subclis-Cm-VJ5nP.js → register.subclis-ifHtmF3e.js} +29 -29
- package/dist/{reply-CBs4e9Rm.js → reply-VIHqsQ-k.js} +7906 -8743
- package/dist/{routes-9ygR0GOk.js → routes-CaCvio4Q.js} +36 -15
- package/dist/{routes-BrWrBk2R.js → routes-Cpfxk96k.js} +36 -14
- package/dist/{rpc-Cjuz2Gv1.js → rpc-BhB01Bhj.js} +3 -3
- package/dist/{rpc-DhkLVY5H.js → rpc-C5WsS_Ne.js} +3 -3
- package/dist/{run-main-BlZ5l-X9.js → run-main-DVy6KJTe.js} +88 -85
- package/dist/runner-B7CKBC80.js +1800 -0
- package/dist/runner-BEy5ZGFv.js +1901 -0
- package/dist/runner-Bv0BmJPF.js +1800 -0
- package/dist/runner-ChqVEgPx.js +1901 -0
- package/dist/{sandbox-qt49csTr.js → sandbox-BAChxjC5.js} +627 -157
- package/dist/{sandbox-CPZiaKcS.js → sandbox-DNHDwHw8.js} +628 -158
- package/dist/{sandbox-cli-C6_iNuqO.js → sandbox-cli-9oq67QEg.js} +22 -22
- package/dist/{sandbox-cli-C_wK-KAE.js → sandbox-cli-BiNq9yUe.js} +22 -22
- package/dist/{security-cli-CTTD1vms.js → security-cli-CRg03hvq.js} +28 -28
- package/dist/{security-cli-DRpGF2Yc.js → security-cli-LmBBHnmh.js} +28 -28
- package/dist/{server-context-lyNcqJYD.js → server-context-FwqBRH3K.js} +10 -10
- package/dist/{server-context-39mkstUs.js → server-context-RY7lRaxl.js} +9 -9
- package/dist/{server-node-events-V_G9BRRw.js → server-node-events-BbHOZX3O.js} +48 -43
- package/dist/{server-node-events-o9G18PaE.js → server-node-events-CngNLVL-.js} +50 -45
- package/dist/{service-DOlJdIqe.js → service-BnqdBTAK.js} +8 -4
- package/dist/{service-DDPRbf8a.js → service-DZN7KRok.js} +8 -4
- package/dist/{service-audit-VDRrWefh.js → service-audit-0Eil3ISN.js} +4 -4
- package/dist/{service-audit-CVy00Ze_.js → service-audit-B8KIOe8A.js} +4 -4
- package/dist/{session-cost-usage-CcCEQNuc.js → session-cost-usage-B-tyjp76.js} +14 -14
- package/dist/{session-cost-usage-PvyVZz-g.js → session-cost-usage-BYUb7fov.js} +14 -14
- package/dist/{shared-BnpC3wMU.js → shared-BCdNboU1.js} +3 -3
- package/dist/{shared-CagUDdmp.js → shared-CsAwU6-q.js} +3 -3
- package/dist/{shared-BDk_zC9p.js → shared-Csn6DLBA.js} +5 -5
- package/dist/{shared-C92wo-6f.js → shared-DEanAgja.js} +4 -4
- package/dist/{skill-scanner-C_fQzVDu.js → skill-scanner-BrGkh5K7.js} +1 -1
- package/dist/{skill-scanner-DrVEHfC6.js → skill-scanner-CucvxYhu.js} +1 -1
- package/dist/{skills-Ccsv3IQq.js → skills-CE7by2IF.js} +151 -8
- package/dist/{skills-_eKGrw9z.js → skills-Dz15dAM4.js} +152 -9
- package/dist/{skills-cli-DqvLjooh.js → skills-cli-B5b75pDK.js} +13 -13
- package/dist/{skills-cli-DUncybht.js → skills-cli-CbCDrYwp.js} +13 -13
- package/dist/{skills-status-Cp2ZFhIx.js → skills-status-B99Us6yS.js} +2 -2
- package/dist/{skills-status-Ck0CCFZG.js → skills-status-ChM7JE47.js} +3 -3
- package/dist/{sqlite-DODNHWJb.js → sqlite-2UsPaJz5.js} +97 -2
- package/dist/{sqlite-cSdsHVEw.js → sqlite-CASnHrgX.js} +97 -1
- package/dist/{sqlite-Bwo2rASR.js → sqlite-CVWiMkGu.js} +97 -1
- package/dist/{sqlite-CpqIbY4-.js → sqlite-CcIWkGaM.js} +97 -1
- package/dist/{status-Bmx9_1C7.js → status-CKuX1-zb.js} +3 -3
- package/dist/{status-CBGgwlTW.js → status-Cm4q6o-I.js} +57 -49
- package/dist/{status-DkJgtvSz.js → status-DD2iqGc9.js} +4 -4
- package/dist/{subsystem-DPnkvS73.js → subsystem-DHfJG4gk.js} +73 -20
- package/dist/{system-cli-9fQ1uLiz.js → system-cli-BVJDR474.js} +87 -15
- package/dist/{system-cli-Gq8OWHFg.js → system-cli-C3Y_9VpI.js} +88 -16
- package/dist/{systemd-Pa7LURHB.js → systemd-DxddcFsa.js} +3 -3
- package/dist/{systemd-hints-zi4ohCOY.js → systemd-hints-BVLopJ9O.js} +1 -1
- package/dist/{systemd-linger-CDo2UbHM.js → systemd-linger-BThjV1Sr.js} +2 -2
- package/dist/{systemd-linger-6_naJcJp.js → systemd-linger-D3Va1Cv7.js} +2 -2
- package/dist/{systemd-BEWwfwn0.js → systemd-s3S2HVog.js} +3 -3
- package/dist/{table-Bb9gAVIp.js → table-BIk8Aan_.js} +2 -2
- package/dist/{table-cCoGqLsk.js → table-Bvka_vkc.js} +1 -1
- package/dist/{tool-display-DUVhO36P.js → tool-display-DbdMQFZx.js} +2 -2
- package/dist/{tool-display-DNOVCI6J.js → tool-display-kpW5Hg2z.js} +2 -2
- package/dist/{tui-DDVqLwqT.js → tui-B40Z2jMa.js} +120 -14
- package/dist/{tui-cli-CurbazQf.js → tui-cli-Bwa6K7xR.js} +28 -28
- package/dist/{tui-cli-BeN2K38I.js → tui-cli-DD6g7uZb.js} +27 -27
- package/dist/{tui-B9zLJxf6.js → tui-lFMZUnx6.js} +121 -13
- package/dist/{update-Ct9sqJC_.js → update-Bos8PPCG.js} +3 -3
- package/dist/{update--i077azM.js → update-Cg8MtrEr.js} +3 -3
- package/dist/{update-cli-CT5W0kpw.js → update-cli-CC-wTeje.js} +92 -73
- package/dist/{update-cli-C87lNK1S.js → update-cli-CULnXFL_.js} +91 -72
- package/dist/{update-runner-BIttRDyV.js → update-runner-BaLsla0c.js} +11 -11
- package/dist/{update-runner-xbeVkAD9.js → update-runner-Dbsdl5AU.js} +10 -10
- package/dist/{utils-Dk86IbEs.js → utils-BLJAc3ZV.js} +1 -1
- package/dist/{utils-BTaR--Ln.js → utils-BtIMES3N.js} +1 -1
- package/dist/{webhooks-cli-Db3zyJaw.js → webhooks-cli-ClHLUu_j.js} +21 -13
- package/dist/{webhooks-cli-DUUa8gVY.js → webhooks-cli-DVXr2uyN.js} +21 -13
- package/dist/{widearea-dns-BgYasW6m.js → widearea-dns-C4RnIR9O.js} +3 -3
- package/dist/{widearea-dns-CMIG6-74.js → widearea-dns-Ypwgjpsr.js} +3 -3
- package/dist/{ws-C0k_dhCP.js → ws-BcJt4pcg.js} +24 -2
- package/dist/{ws-DtDKpbLR.js → ws-MC-rTJLe.js} +24 -2
- package/dist/{ws-log-cMNgAyLy.js → ws-log-WrJ4QYu7.js} +1 -1
- package/dist/{ws-log-C6vm_XMA.js → ws-log-lip4ETlm.js} +2 -2
- package/dist/{wsl-rfIr_Sde.js → wsl-BvTIzy-8.js} +5 -3
- package/docs/assets/install-script.svg +1 -0
- package/docs/automation/hooks.md +1 -38
- package/docs/automation/webhook.md +52 -2
- package/docs/channels/discord.md +389 -381
- package/docs/channels/grammy.md +1 -1
- package/docs/channels/imessage.md +229 -218
- package/docs/channels/index.md +1 -0
- package/docs/channels/irc.md +234 -0
- package/docs/channels/msteams.md +2 -0
- package/docs/channels/pairing.md +1 -1
- package/docs/channels/slack.md +295 -415
- package/docs/channels/telegram.md +397 -460
- package/docs/channels/whatsapp.md +338 -310
- package/docs/ci.md +0 -12
- package/docs/cli/hooks.md +1 -14
- package/docs/cli/index.md +6 -1
- package/docs/cli/logs.md +4 -0
- package/docs/cli/onboard.md +33 -0
- package/docs/cli/plugins.md +20 -1
- package/docs/cli/security.md +2 -0
- package/docs/concepts/architecture.md +0 -16
- package/docs/concepts/memory.md +7 -4
- package/docs/concepts/model-providers.md +27 -0
- package/docs/concepts/session-tool.md +1 -0
- package/docs/concepts/system-prompt.md +13 -0
- package/docs/docs.json +18 -12
- package/docs/experiments/plans/browser-evaluate-cdp-refactor.md +229 -0
- package/docs/gateway/configuration-examples.md +9 -2
- package/docs/gateway/configuration-reference.md +2345 -0
- package/docs/gateway/configuration.md +338 -3297
- package/docs/gateway/index.md +162 -238
- package/docs/gateway/openai-http-api.md +1 -0
- package/docs/gateway/openresponses-http-api.md +16 -0
- package/docs/gateway/remote-gateway-readme.md +0 -16
- package/docs/gateway/security/index.md +4 -16
- package/docs/gateway/tools-invoke-http-api.md +26 -1
- package/docs/help/faq.md +9 -0
- package/docs/help/testing.md +11 -0
- package/docs/install/docker.md +18 -0
- package/docs/install/hetzner.md +21 -0
- package/docs/install/installer.md +20 -0
- package/docs/nodes/audio.md +19 -0
- package/docs/platforms/mac/release.md +7 -7
- package/docs/providers/glm.md +3 -3
- package/docs/providers/huggingface.md +209 -0
- package/docs/providers/index.md +3 -0
- package/docs/providers/litellm.md +153 -0
- package/docs/providers/together.md +2 -2
- package/docs/providers/vllm.md +92 -0
- package/docs/providers/zai.md +2 -2
- package/docs/reference/credits.md +4 -28
- package/docs/reference/test.md +2 -1
- package/docs/reference/token-use.md +1 -1
- package/docs/reference/transcript-hygiene.md +18 -0
- package/docs/start/getting-started.md +5 -0
- package/docs/start/onboarding-overview.md +51 -0
- package/docs/start/onboarding.md +1 -0
- package/docs/start/openclaw.md +0 -16
- package/docs/start/wizard-cli-automation.md +17 -0
- package/docs/start/wizard-cli-reference.md +12 -0
- package/docs/start/wizard.md +3 -1
- package/docs/tools/browser.md +6 -0
- package/docs/zh-CN/automation/hooks.md +1 -38
- package/docs/zh-CN/cli/hooks.md +1 -14
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/bluebubbles/src/monitor.test.ts +40 -28
- package/extensions/bluebubbles/src/monitor.ts +0 -4
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +10 -10
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +2 -5
- package/extensions/feishu/src/bot.checkBotMentioned.test.ts +64 -0
- package/extensions/feishu/src/bot.test.ts +265 -0
- package/extensions/feishu/src/bot.ts +73 -18
- package/extensions/feishu/src/channel.test.ts +48 -0
- package/extensions/feishu/src/channel.ts +1 -3
- package/extensions/feishu/src/config-schema.ts +6 -0
- package/extensions/feishu/src/docx.ts +14 -4
- package/extensions/feishu/src/media.test.ts +151 -0
- package/extensions/feishu/src/media.ts +27 -13
- package/extensions/feishu/src/reply-dispatcher.test.ts +116 -0
- package/extensions/feishu/src/reply-dispatcher.ts +124 -67
- package/extensions/feishu/src/streaming-card.ts +223 -0
- package/extensions/feishu/src/targets.test.ts +16 -0
- package/extensions/feishu/src/targets.ts +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/oauth.test.ts +4 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/googlechat/src/channel.ts +3 -20
- package/extensions/googlechat/src/resolve-target.test.ts +138 -0
- package/extensions/imessage/package.json +1 -1
- package/extensions/irc/index.ts +17 -0
- package/extensions/irc/openclaw.plugin.json +9 -0
- package/extensions/irc/package.json +14 -0
- package/extensions/irc/src/accounts.ts +268 -0
- package/extensions/irc/src/channel.ts +367 -0
- package/extensions/irc/src/client.test.ts +43 -0
- package/extensions/irc/src/client.ts +439 -0
- package/extensions/irc/src/config-schema.test.ts +27 -0
- package/extensions/irc/src/config-schema.ts +97 -0
- package/extensions/irc/src/control-chars.ts +22 -0
- package/extensions/irc/src/inbound.ts +334 -0
- package/extensions/irc/src/monitor.test.ts +43 -0
- package/extensions/irc/src/monitor.ts +158 -0
- package/extensions/irc/src/normalize.test.ts +46 -0
- package/extensions/irc/src/normalize.ts +117 -0
- package/extensions/irc/src/onboarding.test.ts +118 -0
- package/extensions/irc/src/onboarding.ts +479 -0
- package/extensions/irc/src/policy.test.ts +132 -0
- package/extensions/irc/src/policy.ts +157 -0
- package/extensions/irc/src/probe.ts +64 -0
- package/extensions/irc/src/protocol.test.ts +44 -0
- package/extensions/irc/src/protocol.ts +169 -0
- package/extensions/irc/src/runtime.ts +14 -0
- package/extensions/irc/src/send.ts +99 -0
- package/extensions/irc/src/types.ts +94 -0
- 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 +6 -0
- package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
- package/extensions/matrix/node_modules/.bin/markdown-it.CMD +2 -2
- package/extensions/matrix/node_modules/.bin/markdown-it.ps1 +2 -2
- package/extensions/matrix/package.json +2 -2
- package/extensions/matrix/src/matrix/monitor/media.ts +4 -2
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/index.ts +6 -2
- package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
- package/extensions/memory-lancedb/node_modules/.bin/openai.CMD +2 -2
- package/extensions/memory-lancedb/node_modules/.bin/openai.ps1 +2 -2
- package/extensions/memory-lancedb/package.json +2 -2
- package/extensions/minimax-portal-auth/index.ts +7 -5
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +6 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/msteams/src/media-helpers.test.ts +9 -0
- package/extensions/msteams/src/media-helpers.ts +15 -1
- package/extensions/msteams/src/mentions.test.ts +235 -0
- package/extensions/msteams/src/mentions.ts +114 -0
- package/extensions/msteams/src/messenger.test.ts +81 -1
- package/extensions/msteams/src/messenger.ts +11 -2
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +6 -0
- package/extensions/nostr/package.json +2 -2
- package/extensions/open-prose/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/telegram/src/channel.ts +1 -0
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +6 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/twitch/src/onboarding.test.ts +5 -0
- package/extensions/twitch/src/outbound.test.ts +17 -6
- package/extensions/twitch/src/outbound.ts +12 -10
- package/extensions/voice-call/CHANGELOG.md +6 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/voice-call/src/media-stream.ts +7 -1
- package/extensions/voice-call/src/providers/twilio.test.ts +5 -3
- package/extensions/voice-call/src/providers/twilio.ts +12 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/whatsapp/src/channel.ts +6 -16
- package/extensions/whatsapp/src/resolve-target.test.ts +154 -0
- package/extensions/zalo/CHANGELOG.md +6 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +6 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +26 -22
- package/dist/auth-BcNHFK-i.js +0 -184
- package/dist/auth-DkjJ3pm-.js +0 -184
- package/dist/boolean-M-esQJt6.js +0 -30
- package/dist/bundled/soul-evil/HOOK.md +0 -71
- package/dist/bundled/soul-evil/handler.js +0 -194
- package/dist/cli-B631__JU.js +0 -89
- package/dist/cli-DVhCVZZ6.js +0 -86
- package/dist/config-CI7EpvlP.js +0 -15
- package/dist/constants-DuoCkWRh.js +0 -65
- package/dist/control-ui/assets/index-CnB9IO4a.js.map +0 -1
- package/dist/control-ui/assets/index-DWhx-9JL.css +0 -1
- package/dist/date-time-c6HTX6IW.js +0 -187
- package/dist/frontmatter-xwTm0734.js +0 -105
- package/dist/parse-DqAvJRIf.js +0 -23
- package/dist/parse-duration-De_tAQSe.js +0 -24
- package/dist/parse-timeout-DV8NQQWk.js +0 -16
- package/dist/paths-IivnSNkP.js +0 -51
- package/dist/paths-MnZaxqPw.js +0 -48
- package/dist/paths-uoGO2aiO.js +0 -48
- package/dist/pi-model-discovery-DzFOAbQt.js +0 -20
- package/dist/plugin-sdk/tui/tui-formatters.d.ts +0 -31
- package/dist/session-key-nXYQSv-a.js +0 -167
- package/dist/tailscale-DU6DgqVy.js +0 -225
- package/dist/tailscale-DzJUWmKf.js +0 -252
- package/dist/utils-dp_OM900.js +0 -476
- package/docs/hooks/soul-evil.md +0 -69
- package/docs/zh-CN/hooks/soul-evil.md +0 -72
- package/skills/local-places/SERVER_README.md +0 -101
- package/skills/local-places/SKILL.md +0 -102
- package/skills/local-places/pyproject.toml +0 -21
- package/skills/local-places/src/local_places/__init__.py +0 -2
- package/skills/local-places/src/local_places/google_places.py +0 -314
- package/skills/local-places/src/local_places/main.py +0 -65
- package/skills/local-places/src/local_places/schemas.py +0 -107
- /package/dist/{archive-CXhvR9nU.js → archive-aSMUcOc6.js} +0 -0
- /package/dist/{archive-D0z3LZDK.js → archive-beaSfAzA.js} +0 -0
- /package/dist/{brew-BIrWdDps.js → brew-DlQQMJ3n.js} +0 -0
- /package/dist/{brew-B7YK4ZoL.js → brew-ROHf0-Xp.js} +0 -0
- /package/dist/{cli-utils-PlLcDZlM.js → cli-utils-CRhVAaLV.js} +0 -0
- /package/dist/{cli-utils-R-ECs5cY.js → cli-utils-CodyYLHe.js} +0 -0
- /package/dist/{command-format-BUxhT1xL.js → command-format-qUVxzqYm.js} +0 -0
- /package/dist/{constants-CNTiY-ZN.js → constants-BvQ6S8j5.js} +0 -0
- /package/dist/{errors-D3tYRJWG.js → errors-B91HIDPD.js} +0 -0
- /package/dist/{errors-B0eT3jVv.js → errors-Bv81hF2P.js} +0 -0
- /package/dist/{errors-x4NYs-1P.js → errors-Cojm0Kl7.js} +0 -0
- /package/dist/{format-CaxeRcue.js → format-CL8VOhxX.js} +0 -0
- /package/dist/{format-DLOJPZmo.js → format-DcfK-dwd.js} +0 -0
- /package/dist/{format-duration-CEmFWLyX.js → format-duration--hQihAvf.js} +0 -0
- /package/dist/{format-duration-DCXJx2ba.js → format-duration-84n6_DgO.js} +0 -0
- /package/dist/{format-relative-79_Y1n2Y.js → format-relative-Cywx6ldk.js} +0 -0
- /package/dist/{format-relative-Db7eqEu8.js → format-relative-cegC_FF5.js} +0 -0
- /package/dist/{helpers-CQI-5xS9.js → helpers-8O7IVGO-.js} +0 -0
- /package/dist/{helpers-DdwqKAAS.js → helpers-ByYj2Aq5.js} +0 -0
- /package/dist/{helpers-CRzoyyXS.js → helpers-CUVSCDJV.js} +0 -0
- /package/dist/{helpers-C89IG08W.js → helpers-HyeZXsnu.js} +0 -0
- /package/dist/{is-main-qJ675wPV.js → is-main-B9A8S9YC.js} +0 -0
- /package/dist/{is-main-WWuz28Ip.js → is-main-BWoXGz7p.js} +0 -0
- /package/dist/{logging-BzvBIA3Y.js → logging-D-Jq2wIo.js} +0 -0
- /package/dist/{logging-CfEk_PnX.js → logging-fywhKCmE.js} +0 -0
- /package/dist/{parse-Cjiudy6x.js → parse-Bw0oH-rT.js} +0 -0
- /package/dist/{parse-log-line-CUrpqe1w.js → parse-log-line-BuRiE-Ij.js} +0 -0
- /package/dist/{parse-log-line-D2UGw0wR.js → parse-log-line-CfVgwy6x.js} +0 -0
- /package/dist/{parse-timeout-DFSPLxpY.js → parse-timeout-D1XX_zN_.js} +0 -0
- /package/dist/{pi-model-discovery-CV2V1HHz.js → pi-model-discovery-DqgqUyAv.js} +0 -0
- /package/dist/{pi-model-discovery-DzEIEgHL.js → pi-model-discovery-EwKVHlZB.js} +0 -0
- /package/dist/{prompts--d-6l5Ln.js → prompts-Bg96reub.js} +0 -0
- /package/dist/{prompts-CXLLIBwP.js → prompts-Dszjy1n_.js} +0 -0
- /package/dist/{redact-BRmQPYDR.js → redact-BIMJ3ntQ.js} +0 -0
- /package/dist/{redact-BHmk44DI.js → redact-BRsnXqwD.js} +0 -0
- /package/dist/{redact-DAKeu7PA.js → redact-UvkXqguc.js} +0 -0
- /package/dist/{status-Cv36yYdi.js → status-C_dMhoE0.js} +0 -0
- /package/dist/{status-Drziap9H.js → status-DCkF_L3U.js} +0 -0
- /package/dist/{systemd-hints-CH4pbCFD.js → systemd-hints-CXNtLw9Q.js} +0 -0
- /package/dist/{tailnet-CL5GtL7t.js → tailnet-DATIFSsY.js} +0 -0
- /package/dist/{tailnet-DGRSvYuQ.js → tailnet-uoFvUSsw.js} +0 -0
- /package/dist/{transcript-events-BlIONGVn.js → transcript-events-BHS7QoRl.js} +0 -0
- /package/dist/{transcript-events-C1hdue6u.js → transcript-events-Bp7fGnwv.js} +0 -0
- /package/dist/{transcript-events-CZ8CG4ht.js → transcript-events-Ch7wLX-j.js} +0 -0
- /package/dist/{usage-format-6Uar63S0.js → usage-format-Bhl_WCWP.js} +0 -0
- /package/dist/{usage-format-hd37en6b.js → usage-format-CpORtVCG.js} +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/claw +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/claw.CMD +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/claw.ps1 +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/moltbot +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/moltbot.CMD +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/moltbot.ps1 +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/pigbot +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/pigbot.CMD +0 -0
- /package/extensions/{feishu → irc}/node_modules/.bin/pigbot.ps1 +0 -0
|
@@ -1,34 +1,26 @@
|
|
|
1
|
-
import { D as info, I as colorize, L as isRich, R as theme, c as defaultRuntime, t as createSubsystemLogger } from "./subsystem-
|
|
2
|
-
import { A as resolveHeartbeatDeliveryTarget,
|
|
1
|
+
import { D as info, I as colorize, L as isRich, R as theme, c as defaultRuntime, t as createSubsystemLogger } from "./subsystem-DHfJG4gk.js";
|
|
2
|
+
import { A as resolveHeartbeatDeliveryTarget, Cr as resolveHeartbeatPrompt$1, Kn as resolveEffectiveMessagesConfig, Mr as peekSystemEvents, Sr as isHeartbeatContentEffectivelyEmpty, _n as resolveIndicatorType, br as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, ct as setHeartbeatWakeHandler, gr as CommandLane, j as resolveHeartbeatSenderContext, mn as emitHeartbeatEvent, pn as resolveHeartbeatVisibility, pr as getQueueSize, qn as resolveUserTimezone, st as requestHeartbeatNow, t as getReplyFromConfig, vn as appendCronStyleCurrentTimeLine, wr as stripHeartbeatToken, xr as DEFAULT_HEARTBEAT_EVERY } from "./reply-VIHqsQ-k.js";
|
|
3
3
|
import { d as resolveAgentIdFromSessionKey, h as toAgentStoreSessionKey, l as normalizeAgentId } from "./session-key-BWxPj0z_.js";
|
|
4
|
-
import { t as runCommandWithTimeout } from "./exec-
|
|
5
|
-
import { n as resolveOpenClawPackageRootSync, t as resolveOpenClawPackageRoot } from "./openclaw-root-
|
|
6
|
-
import { c as resolveDefaultAgentId, m as DEFAULT_HEARTBEAT_FILENAME, n as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
7
|
-
import { t as isTruthyEnvValue } from "./env-
|
|
8
|
-
import { g as parseDurationMs, i as loadConfig } from "./config-
|
|
9
|
-
import { f as resolvePreferredAccountId, n as listChannelPlugins, t as getChannelPlugin, u as buildChannelAccountBindings } from "./plugins-
|
|
10
|
-
import {
|
|
11
|
-
import { n as formatErrorMessage } from "./errors-
|
|
12
|
-
import {
|
|
13
|
-
import {
|
|
14
|
-
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-
|
|
15
|
-
import { n as withProgress } from "./progress-
|
|
16
|
-
import { t as resolveChannelDefaultAccountId } from "./helpers-
|
|
4
|
+
import { t as runCommandWithTimeout } from "./exec-BPQSKwGa.js";
|
|
5
|
+
import { n as resolveOpenClawPackageRootSync, t as resolveOpenClawPackageRoot } from "./openclaw-root-CEnmuBUN.js";
|
|
6
|
+
import { c as resolveDefaultAgentId, m as DEFAULT_HEARTBEAT_FILENAME, n as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-GYIs5dyU.js";
|
|
7
|
+
import { t as isTruthyEnvValue } from "./env-BUuSkE19.js";
|
|
8
|
+
import { g as parseDurationMs, i as loadConfig } from "./config-CeWMHOiQ.js";
|
|
9
|
+
import { f as resolvePreferredAccountId, n as listChannelPlugins, t as getChannelPlugin, u as buildChannelAccountBindings } from "./plugins-CTjLu-z-.js";
|
|
10
|
+
import { I as canonicalizeMainSessionAlias, L as resolveAgentMainSessionKey, d as loadSessionStore, g as updateSessionStore, m as saveSessionStore } from "./sandbox-BAChxjC5.js";
|
|
11
|
+
import { n as formatErrorMessage } from "./errors-Bv81hF2P.js";
|
|
12
|
+
import { c as resolveStorePath } from "./paths-DdKf4lHp.js";
|
|
13
|
+
import { q as HEARTBEAT_TOKEN, t as deliverOutboundPayloads } from "./deliver-geVWJ52I.js";
|
|
14
|
+
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-DAfkvtVq.js";
|
|
15
|
+
import { n as withProgress } from "./progress-DZb6yPcJ.js";
|
|
16
|
+
import { t as resolveChannelDefaultAccountId } from "./helpers-HyeZXsnu.js";
|
|
17
17
|
import { fileURLToPath } from "node:url";
|
|
18
18
|
import fs from "node:fs";
|
|
19
19
|
import path from "node:path";
|
|
20
20
|
import fs$1 from "node:fs/promises";
|
|
21
21
|
|
|
22
|
-
//#region src/infra/heartbeat-
|
|
23
|
-
const log = createSubsystemLogger("gateway/heartbeat");
|
|
24
|
-
let heartbeatsEnabled = true;
|
|
25
|
-
function setHeartbeatsEnabled(enabled) {
|
|
26
|
-
heartbeatsEnabled = enabled;
|
|
27
|
-
}
|
|
28
|
-
const DEFAULT_HEARTBEAT_TARGET = "last";
|
|
22
|
+
//#region src/infra/heartbeat-active-hours.ts
|
|
29
23
|
const ACTIVE_HOURS_TIME_PATTERN = /^([01]\d|2[0-3]|24):([0-5]\d)$/;
|
|
30
|
-
const EXEC_EVENT_PROMPT = "An async command you ran earlier has completed. The result is shown in the system messages above. Please relay the command output to the user in a helpful way. If the command succeeded, share the relevant output. If it failed, explain what went wrong.";
|
|
31
|
-
const CRON_EVENT_PROMPT = "A scheduled reminder has been triggered. The reminder message is shown in the system messages above. Please relay this reminder to the user in a helpful and friendly way.";
|
|
32
24
|
function resolveActiveHoursTimezone(cfg, raw) {
|
|
33
25
|
const trimmed = raw?.trim();
|
|
34
26
|
if (!trimmed || trimmed === "user") return resolveUserTimezone(cfg.agents?.defaults?.userTimezone);
|
|
@@ -83,6 +75,43 @@ function isWithinActiveHours(cfg, heartbeat, nowMs) {
|
|
|
83
75
|
if (endMin > startMin) return currentMin >= startMin && currentMin < endMin;
|
|
84
76
|
return currentMin >= startMin || currentMin < endMin;
|
|
85
77
|
}
|
|
78
|
+
|
|
79
|
+
//#endregion
|
|
80
|
+
//#region src/infra/heartbeat-runner.ts
|
|
81
|
+
const log = createSubsystemLogger("gateway/heartbeat");
|
|
82
|
+
let heartbeatsEnabled = true;
|
|
83
|
+
function setHeartbeatsEnabled(enabled) {
|
|
84
|
+
heartbeatsEnabled = enabled;
|
|
85
|
+
}
|
|
86
|
+
const DEFAULT_HEARTBEAT_TARGET = "last";
|
|
87
|
+
const EXEC_EVENT_PROMPT = "An async command you ran earlier has completed. The result is shown in the system messages above. Please relay the command output to the user in a helpful way. If the command succeeded, share the relevant output. If it failed, explain what went wrong.";
|
|
88
|
+
function buildCronEventPrompt(pendingEvents) {
|
|
89
|
+
const eventText = pendingEvents.join("\n").trim();
|
|
90
|
+
if (!eventText) return "A scheduled cron event was triggered, but no event content was found. Reply HEARTBEAT_OK.";
|
|
91
|
+
return "A scheduled reminder has been triggered. The reminder content is:\n\n" + eventText + "\n\nPlease relay this reminder to the user in a helpful and friendly way.";
|
|
92
|
+
}
|
|
93
|
+
const HEARTBEAT_OK_PREFIX = HEARTBEAT_TOKEN.toLowerCase();
|
|
94
|
+
function isHeartbeatAckEvent(evt) {
|
|
95
|
+
const trimmed = evt.trim();
|
|
96
|
+
if (!trimmed) return false;
|
|
97
|
+
const lower = trimmed.toLowerCase();
|
|
98
|
+
if (!lower.startsWith(HEARTBEAT_OK_PREFIX)) return false;
|
|
99
|
+
const suffix = lower.slice(HEARTBEAT_OK_PREFIX.length);
|
|
100
|
+
if (suffix.length === 0) return true;
|
|
101
|
+
return !/[a-z0-9_]/.test(suffix[0]);
|
|
102
|
+
}
|
|
103
|
+
function isHeartbeatNoiseEvent(evt) {
|
|
104
|
+
const lower = evt.trim().toLowerCase();
|
|
105
|
+
if (!lower) return false;
|
|
106
|
+
return isHeartbeatAckEvent(lower) || lower.includes("heartbeat poll") || lower.includes("heartbeat wake");
|
|
107
|
+
}
|
|
108
|
+
function isExecCompletionEvent(evt) {
|
|
109
|
+
return evt.toLowerCase().includes("exec finished");
|
|
110
|
+
}
|
|
111
|
+
function isCronSystemEvent(evt) {
|
|
112
|
+
if (!evt.trim()) return false;
|
|
113
|
+
return !isHeartbeatNoiseEvent(evt) && !isExecCompletionEvent(evt);
|
|
114
|
+
}
|
|
86
115
|
function hasExplicitHeartbeatAgents(cfg) {
|
|
87
116
|
return (cfg.agents?.list ?? []).some((entry) => Boolean(entry?.heartbeat));
|
|
88
117
|
}
|
|
@@ -350,10 +379,11 @@ async function runHeartbeatOnce(opts) {
|
|
|
350
379
|
const isExecEvent = opts.reason === "exec-event";
|
|
351
380
|
const isCronEvent = Boolean(opts.reason?.startsWith("cron:"));
|
|
352
381
|
const pendingEvents = isExecEvent || isCronEvent ? peekSystemEvents(sessionKey) : [];
|
|
353
|
-
const
|
|
354
|
-
const
|
|
382
|
+
const cronEvents = pendingEvents.filter((evt) => isCronSystemEvent(evt));
|
|
383
|
+
const hasExecCompletion = pendingEvents.some(isExecCompletionEvent);
|
|
384
|
+
const hasCronEvents = isCronEvent && cronEvents.length > 0;
|
|
355
385
|
const ctx = {
|
|
356
|
-
Body: hasExecCompletion ? EXEC_EVENT_PROMPT : hasCronEvents ?
|
|
386
|
+
Body: appendCronStyleCurrentTimeLine(hasExecCompletion ? EXEC_EVENT_PROMPT : hasCronEvents ? buildCronEventPrompt(cronEvents) : resolveHeartbeatPrompt(cfg, heartbeat), cfg, startedAt),
|
|
357
387
|
From: sender,
|
|
358
388
|
To: sender,
|
|
359
389
|
Provider: hasExecCompletion ? "exec-event" : hasCronEvents ? "cron-event" : "heartbeat",
|
|
@@ -395,7 +425,11 @@ async function runHeartbeatOnce(opts) {
|
|
|
395
425
|
return true;
|
|
396
426
|
};
|
|
397
427
|
try {
|
|
398
|
-
const
|
|
428
|
+
const heartbeatModelOverride = heartbeat?.model?.trim() || void 0;
|
|
429
|
+
const replyResult = await getReplyFromConfig(ctx, heartbeatModelOverride ? {
|
|
430
|
+
isHeartbeat: true,
|
|
431
|
+
heartbeatModelOverride
|
|
432
|
+
} : { isHeartbeat: true }, cfg);
|
|
399
433
|
const replyPayload = resolveHeartbeatReplyPayload(replyResult);
|
|
400
434
|
const reasoningPayloads = heartbeat?.includeReasoning === true ? resolveHeartbeatReasoningPayloads(replyResult).filter((payload) => payload !== replyPayload) : [];
|
|
401
435
|
if (!replyPayload || !replyPayload.text && !replyPayload.mediaUrl && !replyPayload.mediaUrls?.length) {
|
|
@@ -604,6 +638,10 @@ function startHeartbeatRunner(opts) {
|
|
|
604
638
|
if (prevState && prevState.intervalMs === intervalMs && prevState.nextDueMs > now) return prevState.nextDueMs;
|
|
605
639
|
return now + intervalMs;
|
|
606
640
|
};
|
|
641
|
+
const advanceAgentSchedule = (agent, now) => {
|
|
642
|
+
agent.lastRunMs = now;
|
|
643
|
+
agent.nextDueMs = now + agent.intervalMs;
|
|
644
|
+
};
|
|
607
645
|
const scheduleNext = () => {
|
|
608
646
|
if (state.stopped) return;
|
|
609
647
|
if (state.timer) {
|
|
@@ -617,6 +655,7 @@ function startHeartbeatRunner(opts) {
|
|
|
617
655
|
if (!Number.isFinite(nextDue)) return;
|
|
618
656
|
const delay = Math.max(0, nextDue - now);
|
|
619
657
|
state.timer = setTimeout(() => {
|
|
658
|
+
state.timer = null;
|
|
620
659
|
requestHeartbeatNow({
|
|
621
660
|
reason: "interval",
|
|
622
661
|
coalesceMs: 0
|
|
@@ -657,6 +696,10 @@ function startHeartbeatRunner(opts) {
|
|
|
657
696
|
scheduleNext();
|
|
658
697
|
};
|
|
659
698
|
const run = async (params) => {
|
|
699
|
+
if (state.stopped) return {
|
|
700
|
+
status: "skipped",
|
|
701
|
+
reason: "disabled"
|
|
702
|
+
};
|
|
660
703
|
if (!heartbeatsEnabled) return {
|
|
661
704
|
status: "skipped",
|
|
662
705
|
reason: "disabled"
|
|
@@ -672,18 +715,27 @@ function startHeartbeatRunner(opts) {
|
|
|
672
715
|
let ran = false;
|
|
673
716
|
for (const agent of state.agents.values()) {
|
|
674
717
|
if (isInterval && now < agent.nextDueMs) continue;
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
685
|
-
|
|
718
|
+
let res;
|
|
719
|
+
try {
|
|
720
|
+
res = await runOnce({
|
|
721
|
+
cfg: state.cfg,
|
|
722
|
+
agentId: agent.agentId,
|
|
723
|
+
heartbeat: agent.heartbeat,
|
|
724
|
+
reason,
|
|
725
|
+
deps: { runtime: state.runtime }
|
|
726
|
+
});
|
|
727
|
+
} catch (err) {
|
|
728
|
+
const errMsg = formatErrorMessage(err);
|
|
729
|
+
log.error(`heartbeat runner: runOnce threw unexpectedly: ${errMsg}`, { error: errMsg });
|
|
730
|
+
advanceAgentSchedule(agent, now);
|
|
731
|
+
continue;
|
|
686
732
|
}
|
|
733
|
+
if (res.status === "skipped" && res.reason === "requests-in-flight") {
|
|
734
|
+
advanceAgentSchedule(agent, now);
|
|
735
|
+
scheduleNext();
|
|
736
|
+
return res;
|
|
737
|
+
}
|
|
738
|
+
if (res.status !== "skipped" || res.reason !== "disabled") advanceAgentSchedule(agent, now);
|
|
687
739
|
if (res.status === "ran") ran = true;
|
|
688
740
|
}
|
|
689
741
|
scheduleNext();
|
|
@@ -696,11 +748,13 @@ function startHeartbeatRunner(opts) {
|
|
|
696
748
|
reason: isInterval ? "not-due" : "disabled"
|
|
697
749
|
};
|
|
698
750
|
};
|
|
699
|
-
|
|
751
|
+
const wakeHandler = async (params) => run({ reason: params.reason });
|
|
752
|
+
const disposeWakeHandler = setHeartbeatWakeHandler(wakeHandler);
|
|
700
753
|
updateConfig(state.cfg);
|
|
701
754
|
const cleanup = () => {
|
|
755
|
+
if (state.stopped) return;
|
|
702
756
|
state.stopped = true;
|
|
703
|
-
|
|
757
|
+
disposeWakeHandler();
|
|
704
758
|
if (state.timer) clearTimeout(state.timer);
|
|
705
759
|
state.timer = null;
|
|
706
760
|
};
|
|
@@ -1204,7 +1258,10 @@ function resolveControlUiDistIndexPathForRoot(root) {
|
|
|
1204
1258
|
return path.join(root, ...CONTROL_UI_DIST_PATH_SEGMENTS);
|
|
1205
1259
|
}
|
|
1206
1260
|
async function resolveControlUiDistIndexHealth(opts = {}) {
|
|
1207
|
-
const indexPath = opts.root ? resolveControlUiDistIndexPathForRoot(opts.root) : await resolveControlUiDistIndexPath(
|
|
1261
|
+
const indexPath = opts.root ? resolveControlUiDistIndexPathForRoot(opts.root) : await resolveControlUiDistIndexPath({
|
|
1262
|
+
argv1: opts.argv1 ?? process.argv[1],
|
|
1263
|
+
moduleUrl: opts.moduleUrl
|
|
1264
|
+
});
|
|
1208
1265
|
return {
|
|
1209
1266
|
indexPath,
|
|
1210
1267
|
exists: Boolean(indexPath && fs.existsSync(indexPath))
|
|
@@ -1228,12 +1285,17 @@ function resolveControlUiRepoRoot(argv1 = process.argv[1]) {
|
|
|
1228
1285
|
}
|
|
1229
1286
|
return null;
|
|
1230
1287
|
}
|
|
1231
|
-
async function resolveControlUiDistIndexPath(
|
|
1288
|
+
async function resolveControlUiDistIndexPath(argv1OrOpts) {
|
|
1289
|
+
const argv1 = typeof argv1OrOpts === "string" ? argv1OrOpts : argv1OrOpts?.argv1 ?? process.argv[1];
|
|
1290
|
+
const moduleUrl = typeof argv1OrOpts === "object" ? argv1OrOpts?.moduleUrl : void 0;
|
|
1232
1291
|
if (!argv1) return null;
|
|
1233
1292
|
const normalized = path.resolve(argv1);
|
|
1234
1293
|
const distDir = path.dirname(normalized);
|
|
1235
1294
|
if (path.basename(distDir) === "dist") return path.join(distDir, "control-ui", "index.html");
|
|
1236
|
-
const packageRoot = await resolveOpenClawPackageRoot({
|
|
1295
|
+
const packageRoot = await resolveOpenClawPackageRoot({
|
|
1296
|
+
argv1: normalized,
|
|
1297
|
+
moduleUrl
|
|
1298
|
+
});
|
|
1237
1299
|
if (packageRoot) return path.join(packageRoot, "dist", "control-ui", "index.html");
|
|
1238
1300
|
let dir = path.dirname(normalized);
|
|
1239
1301
|
for (let i = 0; i < 8; i++) {
|
|
@@ -1,33 +1,25 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { A as theme, O as colorize, k as isRich, n as isTruthyEnvValue, o as createSubsystemLogger, p as defaultRuntime, y as info } from "./entry.js";
|
|
2
2
|
import { d as resolveAgentIdFromSessionKey, h as toAgentStoreSessionKey, l as normalizeAgentId } from "./session-key-DVvxnFKg.js";
|
|
3
|
-
import { t as runCommandWithTimeout } from "./exec-
|
|
4
|
-
import { n as resolveOpenClawPackageRootSync, t as resolveOpenClawPackageRoot } from "./openclaw-root-
|
|
5
|
-
import { c as resolveDefaultAgentId, m as DEFAULT_HEARTBEAT_FILENAME, n as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
6
|
-
import { g as parseDurationMs, i as loadConfig } from "./config-
|
|
7
|
-
import { n as formatErrorMessage } from "./errors-
|
|
8
|
-
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-
|
|
9
|
-
import { f as resolvePreferredAccountId, n as listChannelPlugins, t as getChannelPlugin, u as buildChannelAccountBindings } from "./plugins-
|
|
10
|
-
import {
|
|
11
|
-
import { n as withProgress } from "./progress-
|
|
12
|
-
import { t as resolveChannelDefaultAccountId } from "./helpers-
|
|
13
|
-
import {
|
|
14
|
-
import {
|
|
15
|
-
import {
|
|
3
|
+
import { t as runCommandWithTimeout } from "./exec-DqZFMawz.js";
|
|
4
|
+
import { n as resolveOpenClawPackageRootSync, t as resolveOpenClawPackageRoot } from "./openclaw-root-BKsZvO6K.js";
|
|
5
|
+
import { c as resolveDefaultAgentId, m as DEFAULT_HEARTBEAT_FILENAME, n as resolveAgentConfig, s as resolveAgentWorkspaceDir } from "./agent-scope-Bkr9fZtl.js";
|
|
6
|
+
import { g as parseDurationMs, i as loadConfig } from "./config-B8v0zg48.js";
|
|
7
|
+
import { n as formatErrorMessage } from "./errors-Cojm0Kl7.js";
|
|
8
|
+
import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-CjEdFGAf.js";
|
|
9
|
+
import { f as resolvePreferredAccountId, n as listChannelPlugins, t as getChannelPlugin, u as buildChannelAccountBindings } from "./plugins-CxrdL_IZ.js";
|
|
10
|
+
import { Ar as stripHeartbeatToken, Br as resolveEffectiveMessagesConfig, Dr as DEFAULT_HEARTBEAT_EVERY, Er as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, F as resolveIndicatorType, I as appendCronStyleCurrentTimeLine, M as emitHeartbeatEvent, Nr as resolveUserTimezone, Or as isHeartbeatContentEffectivelyEmpty, Sr as CommandLane, W as getReplyFromConfig, _n as resolveHeartbeatDeliveryTarget, er as peekSystemEvents, j as resolveHeartbeatVisibility, kr as resolveHeartbeatPrompt$1, nr as setHeartbeatWakeHandler, tr as requestHeartbeatNow, vn as resolveHeartbeatSenderContext, yr as getQueueSize } from "./loader-CS-5lMQa.js";
|
|
11
|
+
import { n as withProgress } from "./progress-COHv-uNT.js";
|
|
12
|
+
import { t as resolveChannelDefaultAccountId } from "./helpers-ByYj2Aq5.js";
|
|
13
|
+
import { k as HEARTBEAT_TOKEN, t as deliverOutboundPayloads } from "./deliver-BHNoC9Yk.js";
|
|
14
|
+
import { c as resolveStorePath } from "./paths-BZK4Ct0I.js";
|
|
15
|
+
import { F as canonicalizeMainSessionAlias, I as resolveAgentMainSessionKey, d as loadSessionStore, g as updateSessionStore, m as saveSessionStore } from "./sandbox-DNHDwHw8.js";
|
|
16
16
|
import path from "node:path";
|
|
17
17
|
import fs from "node:fs";
|
|
18
18
|
import fs$1 from "node:fs/promises";
|
|
19
19
|
import { fileURLToPath } from "node:url";
|
|
20
20
|
|
|
21
|
-
//#region src/infra/heartbeat-
|
|
22
|
-
const log = createSubsystemLogger("gateway/heartbeat");
|
|
23
|
-
let heartbeatsEnabled = true;
|
|
24
|
-
function setHeartbeatsEnabled(enabled) {
|
|
25
|
-
heartbeatsEnabled = enabled;
|
|
26
|
-
}
|
|
27
|
-
const DEFAULT_HEARTBEAT_TARGET = "last";
|
|
21
|
+
//#region src/infra/heartbeat-active-hours.ts
|
|
28
22
|
const ACTIVE_HOURS_TIME_PATTERN = /^([01]\d|2[0-3]|24):([0-5]\d)$/;
|
|
29
|
-
const EXEC_EVENT_PROMPT = "An async command you ran earlier has completed. The result is shown in the system messages above. Please relay the command output to the user in a helpful way. If the command succeeded, share the relevant output. If it failed, explain what went wrong.";
|
|
30
|
-
const CRON_EVENT_PROMPT = "A scheduled reminder has been triggered. The reminder message is shown in the system messages above. Please relay this reminder to the user in a helpful and friendly way.";
|
|
31
23
|
function resolveActiveHoursTimezone(cfg, raw) {
|
|
32
24
|
const trimmed = raw?.trim();
|
|
33
25
|
if (!trimmed || trimmed === "user") return resolveUserTimezone(cfg.agents?.defaults?.userTimezone);
|
|
@@ -82,6 +74,43 @@ function isWithinActiveHours(cfg, heartbeat, nowMs) {
|
|
|
82
74
|
if (endMin > startMin) return currentMin >= startMin && currentMin < endMin;
|
|
83
75
|
return currentMin >= startMin || currentMin < endMin;
|
|
84
76
|
}
|
|
77
|
+
|
|
78
|
+
//#endregion
|
|
79
|
+
//#region src/infra/heartbeat-runner.ts
|
|
80
|
+
const log = createSubsystemLogger("gateway/heartbeat");
|
|
81
|
+
let heartbeatsEnabled = true;
|
|
82
|
+
function setHeartbeatsEnabled(enabled) {
|
|
83
|
+
heartbeatsEnabled = enabled;
|
|
84
|
+
}
|
|
85
|
+
const DEFAULT_HEARTBEAT_TARGET = "last";
|
|
86
|
+
const EXEC_EVENT_PROMPT = "An async command you ran earlier has completed. The result is shown in the system messages above. Please relay the command output to the user in a helpful way. If the command succeeded, share the relevant output. If it failed, explain what went wrong.";
|
|
87
|
+
function buildCronEventPrompt(pendingEvents) {
|
|
88
|
+
const eventText = pendingEvents.join("\n").trim();
|
|
89
|
+
if (!eventText) return "A scheduled cron event was triggered, but no event content was found. Reply HEARTBEAT_OK.";
|
|
90
|
+
return "A scheduled reminder has been triggered. The reminder content is:\n\n" + eventText + "\n\nPlease relay this reminder to the user in a helpful and friendly way.";
|
|
91
|
+
}
|
|
92
|
+
const HEARTBEAT_OK_PREFIX = HEARTBEAT_TOKEN.toLowerCase();
|
|
93
|
+
function isHeartbeatAckEvent(evt) {
|
|
94
|
+
const trimmed = evt.trim();
|
|
95
|
+
if (!trimmed) return false;
|
|
96
|
+
const lower = trimmed.toLowerCase();
|
|
97
|
+
if (!lower.startsWith(HEARTBEAT_OK_PREFIX)) return false;
|
|
98
|
+
const suffix = lower.slice(HEARTBEAT_OK_PREFIX.length);
|
|
99
|
+
if (suffix.length === 0) return true;
|
|
100
|
+
return !/[a-z0-9_]/.test(suffix[0]);
|
|
101
|
+
}
|
|
102
|
+
function isHeartbeatNoiseEvent(evt) {
|
|
103
|
+
const lower = evt.trim().toLowerCase();
|
|
104
|
+
if (!lower) return false;
|
|
105
|
+
return isHeartbeatAckEvent(lower) || lower.includes("heartbeat poll") || lower.includes("heartbeat wake");
|
|
106
|
+
}
|
|
107
|
+
function isExecCompletionEvent(evt) {
|
|
108
|
+
return evt.toLowerCase().includes("exec finished");
|
|
109
|
+
}
|
|
110
|
+
function isCronSystemEvent(evt) {
|
|
111
|
+
if (!evt.trim()) return false;
|
|
112
|
+
return !isHeartbeatNoiseEvent(evt) && !isExecCompletionEvent(evt);
|
|
113
|
+
}
|
|
85
114
|
function hasExplicitHeartbeatAgents(cfg) {
|
|
86
115
|
return (cfg.agents?.list ?? []).some((entry) => Boolean(entry?.heartbeat));
|
|
87
116
|
}
|
|
@@ -349,10 +378,11 @@ async function runHeartbeatOnce(opts) {
|
|
|
349
378
|
const isExecEvent = opts.reason === "exec-event";
|
|
350
379
|
const isCronEvent = Boolean(opts.reason?.startsWith("cron:"));
|
|
351
380
|
const pendingEvents = isExecEvent || isCronEvent ? peekSystemEvents(sessionKey) : [];
|
|
352
|
-
const
|
|
353
|
-
const
|
|
381
|
+
const cronEvents = pendingEvents.filter((evt) => isCronSystemEvent(evt));
|
|
382
|
+
const hasExecCompletion = pendingEvents.some(isExecCompletionEvent);
|
|
383
|
+
const hasCronEvents = isCronEvent && cronEvents.length > 0;
|
|
354
384
|
const ctx = {
|
|
355
|
-
Body: hasExecCompletion ? EXEC_EVENT_PROMPT : hasCronEvents ?
|
|
385
|
+
Body: appendCronStyleCurrentTimeLine(hasExecCompletion ? EXEC_EVENT_PROMPT : hasCronEvents ? buildCronEventPrompt(cronEvents) : resolveHeartbeatPrompt(cfg, heartbeat), cfg, startedAt),
|
|
356
386
|
From: sender,
|
|
357
387
|
To: sender,
|
|
358
388
|
Provider: hasExecCompletion ? "exec-event" : hasCronEvents ? "cron-event" : "heartbeat",
|
|
@@ -394,7 +424,11 @@ async function runHeartbeatOnce(opts) {
|
|
|
394
424
|
return true;
|
|
395
425
|
};
|
|
396
426
|
try {
|
|
397
|
-
const
|
|
427
|
+
const heartbeatModelOverride = heartbeat?.model?.trim() || void 0;
|
|
428
|
+
const replyResult = await getReplyFromConfig(ctx, heartbeatModelOverride ? {
|
|
429
|
+
isHeartbeat: true,
|
|
430
|
+
heartbeatModelOverride
|
|
431
|
+
} : { isHeartbeat: true }, cfg);
|
|
398
432
|
const replyPayload = resolveHeartbeatReplyPayload(replyResult);
|
|
399
433
|
const reasoningPayloads = heartbeat?.includeReasoning === true ? resolveHeartbeatReasoningPayloads(replyResult).filter((payload) => payload !== replyPayload) : [];
|
|
400
434
|
if (!replyPayload || !replyPayload.text && !replyPayload.mediaUrl && !replyPayload.mediaUrls?.length) {
|
|
@@ -603,6 +637,10 @@ function startHeartbeatRunner(opts) {
|
|
|
603
637
|
if (prevState && prevState.intervalMs === intervalMs && prevState.nextDueMs > now) return prevState.nextDueMs;
|
|
604
638
|
return now + intervalMs;
|
|
605
639
|
};
|
|
640
|
+
const advanceAgentSchedule = (agent, now) => {
|
|
641
|
+
agent.lastRunMs = now;
|
|
642
|
+
agent.nextDueMs = now + agent.intervalMs;
|
|
643
|
+
};
|
|
606
644
|
const scheduleNext = () => {
|
|
607
645
|
if (state.stopped) return;
|
|
608
646
|
if (state.timer) {
|
|
@@ -616,6 +654,7 @@ function startHeartbeatRunner(opts) {
|
|
|
616
654
|
if (!Number.isFinite(nextDue)) return;
|
|
617
655
|
const delay = Math.max(0, nextDue - now);
|
|
618
656
|
state.timer = setTimeout(() => {
|
|
657
|
+
state.timer = null;
|
|
619
658
|
requestHeartbeatNow({
|
|
620
659
|
reason: "interval",
|
|
621
660
|
coalesceMs: 0
|
|
@@ -656,6 +695,10 @@ function startHeartbeatRunner(opts) {
|
|
|
656
695
|
scheduleNext();
|
|
657
696
|
};
|
|
658
697
|
const run = async (params) => {
|
|
698
|
+
if (state.stopped) return {
|
|
699
|
+
status: "skipped",
|
|
700
|
+
reason: "disabled"
|
|
701
|
+
};
|
|
659
702
|
if (!heartbeatsEnabled) return {
|
|
660
703
|
status: "skipped",
|
|
661
704
|
reason: "disabled"
|
|
@@ -671,18 +714,27 @@ function startHeartbeatRunner(opts) {
|
|
|
671
714
|
let ran = false;
|
|
672
715
|
for (const agent of state.agents.values()) {
|
|
673
716
|
if (isInterval && now < agent.nextDueMs) continue;
|
|
674
|
-
|
|
675
|
-
|
|
676
|
-
|
|
677
|
-
|
|
678
|
-
|
|
679
|
-
|
|
680
|
-
|
|
681
|
-
|
|
682
|
-
|
|
683
|
-
|
|
684
|
-
|
|
717
|
+
let res;
|
|
718
|
+
try {
|
|
719
|
+
res = await runOnce({
|
|
720
|
+
cfg: state.cfg,
|
|
721
|
+
agentId: agent.agentId,
|
|
722
|
+
heartbeat: agent.heartbeat,
|
|
723
|
+
reason,
|
|
724
|
+
deps: { runtime: state.runtime }
|
|
725
|
+
});
|
|
726
|
+
} catch (err) {
|
|
727
|
+
const errMsg = formatErrorMessage(err);
|
|
728
|
+
log.error(`heartbeat runner: runOnce threw unexpectedly: ${errMsg}`, { error: errMsg });
|
|
729
|
+
advanceAgentSchedule(agent, now);
|
|
730
|
+
continue;
|
|
685
731
|
}
|
|
732
|
+
if (res.status === "skipped" && res.reason === "requests-in-flight") {
|
|
733
|
+
advanceAgentSchedule(agent, now);
|
|
734
|
+
scheduleNext();
|
|
735
|
+
return res;
|
|
736
|
+
}
|
|
737
|
+
if (res.status !== "skipped" || res.reason !== "disabled") advanceAgentSchedule(agent, now);
|
|
686
738
|
if (res.status === "ran") ran = true;
|
|
687
739
|
}
|
|
688
740
|
scheduleNext();
|
|
@@ -695,11 +747,13 @@ function startHeartbeatRunner(opts) {
|
|
|
695
747
|
reason: isInterval ? "not-due" : "disabled"
|
|
696
748
|
};
|
|
697
749
|
};
|
|
698
|
-
|
|
750
|
+
const wakeHandler = async (params) => run({ reason: params.reason });
|
|
751
|
+
const disposeWakeHandler = setHeartbeatWakeHandler(wakeHandler);
|
|
699
752
|
updateConfig(state.cfg);
|
|
700
753
|
const cleanup = () => {
|
|
754
|
+
if (state.stopped) return;
|
|
701
755
|
state.stopped = true;
|
|
702
|
-
|
|
756
|
+
disposeWakeHandler();
|
|
703
757
|
if (state.timer) clearTimeout(state.timer);
|
|
704
758
|
state.timer = null;
|
|
705
759
|
};
|
|
@@ -1203,7 +1257,10 @@ function resolveControlUiDistIndexPathForRoot(root) {
|
|
|
1203
1257
|
return path.join(root, ...CONTROL_UI_DIST_PATH_SEGMENTS);
|
|
1204
1258
|
}
|
|
1205
1259
|
async function resolveControlUiDistIndexHealth(opts = {}) {
|
|
1206
|
-
const indexPath = opts.root ? resolveControlUiDistIndexPathForRoot(opts.root) : await resolveControlUiDistIndexPath(
|
|
1260
|
+
const indexPath = opts.root ? resolveControlUiDistIndexPathForRoot(opts.root) : await resolveControlUiDistIndexPath({
|
|
1261
|
+
argv1: opts.argv1 ?? process.argv[1],
|
|
1262
|
+
moduleUrl: opts.moduleUrl
|
|
1263
|
+
});
|
|
1207
1264
|
return {
|
|
1208
1265
|
indexPath,
|
|
1209
1266
|
exists: Boolean(indexPath && fs.existsSync(indexPath))
|
|
@@ -1227,12 +1284,17 @@ function resolveControlUiRepoRoot(argv1 = process.argv[1]) {
|
|
|
1227
1284
|
}
|
|
1228
1285
|
return null;
|
|
1229
1286
|
}
|
|
1230
|
-
async function resolveControlUiDistIndexPath(
|
|
1287
|
+
async function resolveControlUiDistIndexPath(argv1OrOpts) {
|
|
1288
|
+
const argv1 = typeof argv1OrOpts === "string" ? argv1OrOpts : argv1OrOpts?.argv1 ?? process.argv[1];
|
|
1289
|
+
const moduleUrl = typeof argv1OrOpts === "object" ? argv1OrOpts?.moduleUrl : void 0;
|
|
1231
1290
|
if (!argv1) return null;
|
|
1232
1291
|
const normalized = path.resolve(argv1);
|
|
1233
1292
|
const distDir = path.dirname(normalized);
|
|
1234
1293
|
if (path.basename(distDir) === "dist") return path.join(distDir, "control-ui", "index.html");
|
|
1235
|
-
const packageRoot = await resolveOpenClawPackageRoot({
|
|
1294
|
+
const packageRoot = await resolveOpenClawPackageRoot({
|
|
1295
|
+
argv1: normalized,
|
|
1296
|
+
moduleUrl
|
|
1297
|
+
});
|
|
1236
1298
|
if (packageRoot) return path.join(packageRoot, "dist", "control-ui", "index.html");
|
|
1237
1299
|
let dir = path.dirname(normalized);
|
|
1238
1300
|
for (let i = 0; i < 8; i++) {
|
|
@@ -1,49 +1,54 @@
|
|
|
1
|
-
import {
|
|
2
|
-
import "./auth-profiles-
|
|
3
|
-
import { t as formatCliCommand } from "./command-format-
|
|
4
|
-
import { S as shortenHomePath, t as CONFIG_DIR, y as resolveUserPath } from "./utils-
|
|
5
|
-
import { t as runCommandWithTimeout } from "./exec-
|
|
6
|
-
import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-
|
|
7
|
-
import "./github-copilot-token-
|
|
8
|
-
import "./pi-model-discovery-
|
|
9
|
-
import { c as writeConfigFile, i as loadConfig } from "./config-
|
|
10
|
-
import { a as MANIFEST_KEY } from "./manifest-registry-
|
|
11
|
-
import "./server-context-
|
|
12
|
-
import "./chrome
|
|
13
|
-
import "./
|
|
14
|
-
import "./
|
|
15
|
-
import "./
|
|
16
|
-
import "./
|
|
17
|
-
import
|
|
18
|
-
import "./
|
|
19
|
-
import "./
|
|
20
|
-
import "./
|
|
21
|
-
import "./
|
|
22
|
-
import "./
|
|
23
|
-
import "./
|
|
24
|
-
import
|
|
25
|
-
import "./
|
|
26
|
-
import "./
|
|
27
|
-
import "./
|
|
28
|
-
import "./
|
|
29
|
-
import "./
|
|
30
|
-
import "./
|
|
31
|
-
import "./
|
|
32
|
-
import "./
|
|
33
|
-
import "./
|
|
34
|
-
import "./
|
|
35
|
-
import "./
|
|
36
|
-
import "./
|
|
37
|
-
import "./
|
|
38
|
-
import "./
|
|
39
|
-
import "./
|
|
40
|
-
import "./
|
|
41
|
-
import "./
|
|
42
|
-
import "./
|
|
43
|
-
import "./
|
|
44
|
-
import
|
|
45
|
-
import
|
|
46
|
-
import
|
|
1
|
+
import { A as theme, p as defaultRuntime } from "./entry.js";
|
|
2
|
+
import "./auth-profiles-Cp9MtUdM.js";
|
|
3
|
+
import { t as formatCliCommand } from "./command-format-Bxe0mWee.js";
|
|
4
|
+
import { S as shortenHomePath, t as CONFIG_DIR, y as resolveUserPath } from "./utils-BLJAc3ZV.js";
|
|
5
|
+
import { t as runCommandWithTimeout } from "./exec-DqZFMawz.js";
|
|
6
|
+
import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-Bkr9fZtl.js";
|
|
7
|
+
import "./github-copilot-token-C9W4SY9o.js";
|
|
8
|
+
import "./pi-model-discovery-EhM2JAQo.js";
|
|
9
|
+
import { c as writeConfigFile, i as loadConfig } from "./config-B8v0zg48.js";
|
|
10
|
+
import { a as MANIFEST_KEY } from "./manifest-registry-CVsqjgX0.js";
|
|
11
|
+
import "./server-context-FwqBRH3K.js";
|
|
12
|
+
import "./chrome--Fe8F5Kf.js";
|
|
13
|
+
import "./auth-CLhyWwAU.js";
|
|
14
|
+
import "./control-auth-BlWU-jBl.js";
|
|
15
|
+
import "./control-service-COF59GQe.js";
|
|
16
|
+
import "./client-BhZjzrH2.js";
|
|
17
|
+
import "./call-CjEdFGAf.js";
|
|
18
|
+
import "./message-channel-DWcu72r7.js";
|
|
19
|
+
import { t as formatDocsLink } from "./links-DpxpaKe1.js";
|
|
20
|
+
import "./plugins-CxrdL_IZ.js";
|
|
21
|
+
import "./logging-D-Jq2wIo.js";
|
|
22
|
+
import "./accounts-Bvh0DFxS.js";
|
|
23
|
+
import "./loader-CS-5lMQa.js";
|
|
24
|
+
import "./progress-COHv-uNT.js";
|
|
25
|
+
import "./prompt-style-Cf1r1L6k.js";
|
|
26
|
+
import { a as resolvePackedRootDir, i as resolveArchiveKind, n as fileExists, r as readJsonFile, t as extractArchive } from "./archive-aSMUcOc6.js";
|
|
27
|
+
import "./deliver-BHNoC9Yk.js";
|
|
28
|
+
import "./manager-ChW0jk7T.js";
|
|
29
|
+
import "./paths-BZK4Ct0I.js";
|
|
30
|
+
import "./sqlite-2UsPaJz5.js";
|
|
31
|
+
import "./redact-UvkXqguc.js";
|
|
32
|
+
import "./routes-CaCvio4Q.js";
|
|
33
|
+
import "./pi-embedded-helpers-DpJb0kUk.js";
|
|
34
|
+
import "./fetch-wuOZDzdT.js";
|
|
35
|
+
import "./sandbox-DNHDwHw8.js";
|
|
36
|
+
import "./commands-registry-6NUFrejL.js";
|
|
37
|
+
import "./wsl-BvTIzy-8.js";
|
|
38
|
+
import "./skills-CE7by2IF.js";
|
|
39
|
+
import "./image-D-5pUELC.js";
|
|
40
|
+
import "./nodes-screen-CVL9363A.js";
|
|
41
|
+
import "./tool-display-DbdMQFZx.js";
|
|
42
|
+
import "./channel-selection-BaW1xXEa.js";
|
|
43
|
+
import "./session-cost-usage-B-tyjp76.js";
|
|
44
|
+
import "./runner-BEy5ZGFv.js";
|
|
45
|
+
import "./commands-gOiRcfoU.js";
|
|
46
|
+
import "./pairing-store-Dz-ArTQS.js";
|
|
47
|
+
import "./login-qr-BsYM2E1y.js";
|
|
48
|
+
import "./pairing-labels-Dt2vXyI7.js";
|
|
49
|
+
import { t as renderTable } from "./table-Bvka_vkc.js";
|
|
50
|
+
import { a as parseFrontmatter, n as loadWorkspaceHookEntries, t as buildWorkspaceHookStatus } from "./hooks-status-BbIz0zmm.js";
|
|
51
|
+
import { t as buildPluginStatusReport } from "./status-CKuX1-zb.js";
|
|
47
52
|
import path from "node:path";
|
|
48
53
|
import os from "node:os";
|
|
49
54
|
import fs from "node:fs";
|
|
@@ -203,7 +208,8 @@ async function installHookPackageFromDir(params) {
|
|
|
203
208
|
"npm",
|
|
204
209
|
"install",
|
|
205
210
|
"--omit=dev",
|
|
206
|
-
"--silent"
|
|
211
|
+
"--silent",
|
|
212
|
+
"--ignore-scripts"
|
|
207
213
|
], {
|
|
208
214
|
timeoutMs: Math.max(timeoutMs, 3e5),
|
|
209
215
|
cwd: targetDir
|