@lawpath-tech/openclaw 2026.2.21-19 → 2026.2.21-20

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.
Files changed (119) hide show
  1. package/dist/{agents-C9ij96eI.js → agents-C83RLKX2.js} +4 -4
  2. package/dist/{agents.config-PFAfbBID.js → agents.config-BVjazvnK.js} +1 -1
  3. package/dist/{agents.config-CBvMKGLh.js → agents.config-dnXbFv5H.js} +1 -1
  4. package/dist/{audio-preflight-omzaYFGD.js → audio-preflight-CLqoZYgI.js} +4 -4
  5. package/dist/{audio-preflight-CODznzqu.js → audio-preflight-Da7vejCH.js} +4 -4
  6. package/dist/{auth-choice-DH2T1E9c.js → auth-choice-BJNaxS-L.js} +1 -1
  7. package/dist/{auth-choice-CLiY8PdF.js → auth-choice-Hb6530su.js} +1 -1
  8. package/dist/{banner-CqQBBjKH.js → banner-dFAx4eE_.js} +1 -1
  9. package/dist/build-info.json +3 -3
  10. package/dist/bundled/boot-md/handler.js +6 -6
  11. package/dist/bundled/session-memory/handler.js +6 -6
  12. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  13. package/dist/{channel-options-e7Z9Smf2.js → channel-options--M8F-DHl.js} +1 -1
  14. package/dist/{channel-options-CLS27y1A.js → channel-options-D0Qjq83D.js} +1 -1
  15. package/dist/{channel-web-DHMbpU2p.js → channel-web-D8hSmcPF.js} +1 -1
  16. package/dist/{channels-cli-BDHLWbaU.js → channels-cli-6uwOEBM-.js} +4 -4
  17. package/dist/{channels-cli-CDwQerVi.js → channels-cli-BtZHPcBX.js} +4 -4
  18. package/dist/{chrome-BAv9fEiv.js → chrome-Bqbv_ZSj.js} +7 -7
  19. package/dist/{chrome-lRUqqgSD.js → chrome-CZuniMYN.js} +7 -7
  20. package/dist/{cli-BGJFLB0I.js → cli-CIImVBCM.js} +1 -1
  21. package/dist/{cli-C1nypCKP.js → cli-CijjdR37.js} +1 -1
  22. package/dist/{command-registry-pGuORBuB.js → command-registry-BtDC5Ll-.js} +9 -9
  23. package/dist/{completion-cli-Bf-Ojq_a.js → completion-cli-Bw5nZmTm.js} +2 -2
  24. package/dist/{completion-cli-C79-bpAx.js → completion-cli-CI6LWHg3.js} +1 -1
  25. package/dist/{config-cli-DLdH6zIF.js → config-cli-CgjgjWri.js} +1 -1
  26. package/dist/{config-cli-BcNHb4_E.js → config-cli-Dc0TQ1yE.js} +1 -1
  27. package/dist/{configure-BSt9S0yk.js → configure-CGqsSqXB.js} +3 -3
  28. package/dist/{configure-h1d7nrgR.js → configure-GUYUjx8A.js} +3 -3
  29. package/dist/{deliver-B2d2N8OJ.js → deliver-0ThKlzQo.js} +1 -1
  30. package/dist/{deliver-CLJRPnfx.js → deliver-CKH_FhS0.js} +1 -1
  31. package/dist/{doctor-completion-BB1f594d.js → doctor-completion-DgPc1rDZ.js} +1 -1
  32. package/dist/{doctor-completion-deY10x7w.js → doctor-completion-DipoVPSi.js} +1 -1
  33. package/dist/entry.js +1 -1
  34. package/dist/extensionAPI.js +6 -6
  35. package/dist/{gateway-cli-IziQis2t.js → gateway-cli-Ds3oN72Y.js} +8 -8
  36. package/dist/{gateway-cli-B-XwzYp2.js → gateway-cli-DuMINk2B.js} +8 -8
  37. package/dist/{health-DMrTgW8V.js → health-DQjqH1zU.js} +1 -1
  38. package/dist/{health-UmuJyu1Q.js → health-Dg0bAIKS.js} +1 -1
  39. package/dist/{hooks-cli-BparoMpt.js → hooks-cli-CEtCwdza.js} +2 -2
  40. package/dist/{hooks-cli-B6WCYLyG.js → hooks-cli-Cac2Ru8r.js} +2 -2
  41. package/dist/{image--DDZnw-F.js → image-88q3KE-C.js} +1 -1
  42. package/dist/{image-Ci28h-op.js → image-CxPjVob-.js} +1 -1
  43. package/dist/index.js +6 -6
  44. package/dist/llm-slug-generator.js +6 -6
  45. package/dist/{models-nhERae29.js → models-DnhANpnd.js} +2 -2
  46. package/dist/{models-cli-bfKNgoHD.js → models-cli-03noBf8W.js} +3 -3
  47. package/dist/{models-cli-BnbeEOCU.js → models-cli-CaP_rt4y.js} +2 -2
  48. package/dist/{onboard-D_VxXTXD.js → onboard-BMc-yUv5.js} +2 -2
  49. package/dist/{onboard-C3pJ0NU-.js → onboard-BZg2c27h.js} +2 -2
  50. package/dist/{onboard-channels-CyeyvIfw.js → onboard-channels-Lt2gG1e2.js} +1 -1
  51. package/dist/{onboard-channels-YvwszRaQ.js → onboard-channels-O6KvizE3.js} +1 -1
  52. package/dist/{onboarding-0zwx3Yv7.js → onboarding-CTgBlanm.js} +3 -3
  53. package/dist/{onboarding-D0_Q5m2W.js → onboarding-G28sv5Ms.js} +3 -3
  54. package/dist/{onboarding.finalize-CYb0_Q0z.js → onboarding.finalize-Cpt9Ymcn.js} +5 -5
  55. package/dist/{onboarding.finalize-CVeI23_g.js → onboarding.finalize-D2sylHDB.js} +6 -6
  56. package/dist/{pi-embedded-D7qD6fo-.js → pi-embedded-Dz24QZz9.js} +96 -17
  57. package/dist/{pi-embedded-CwQsXrVT.js → pi-embedded-ZvazjIyF.js} +96 -17
  58. package/dist/{pi-embedded-helpers-Cd0S0WfR.js → pi-embedded-helpers-B0Kht0I2.js} +4 -4
  59. package/dist/{pi-embedded-helpers-Ll4Lztu1.js → pi-embedded-helpers-CSE0v99A.js} +4 -4
  60. package/dist/{plugin-registry-83ThmVHf.js → plugin-registry-1pF4_jNl.js} +1 -1
  61. package/dist/{plugin-registry-D57lc9ob.js → plugin-registry-CHOacv01.js} +1 -1
  62. package/dist/plugin-sdk/{channel-web-XYtgc8aq.js → channel-web-BHNS_E7F.js} +1 -1
  63. package/dist/plugin-sdk/index.js +2 -2
  64. package/dist/plugin-sdk/plugins/runtime/types.d.ts +2 -0
  65. package/dist/plugin-sdk/{reply-BSOpvBX4.js → reply-DEepmBkT.js} +82 -3
  66. package/dist/plugin-sdk/tts/tts-core.d.ts +15 -0
  67. package/dist/plugin-sdk/tts/tts.d.ts +16 -0
  68. package/dist/plugin-sdk/{web-DiLYLsml.js → web-DBo-6RyH.js} +2 -2
  69. package/dist/{plugins-cli-BymsOcmR.js → plugins-cli-CflNTqmB.js} +2 -2
  70. package/dist/{plugins-cli-DOWA2F0z.js → plugins-cli-DW0TLzrq.js} +2 -2
  71. package/dist/{program-T05XIetU.js → program-DUkjf6lq.js} +7 -7
  72. package/dist/{program-context-CDmctW1L.js → program-context-C0-LzXoV.js} +17 -17
  73. package/dist/{prompt-select-styled-cR4-U64b.js → prompt-select-styled-CQUE1vow.js} +4 -4
  74. package/dist/{prompt-select-styled-BbzQhWF7.js → prompt-select-styled-CWNxdPrL.js} +4 -4
  75. package/dist/{provider-auth-helpers-BbnDoytN.js → provider-auth-helpers-D39L7fZC.js} +1 -1
  76. package/dist/{provider-auth-helpers-C4RNIRyy.js → provider-auth-helpers-bYUBBkmL.js} +1 -1
  77. package/dist/{push-apns-Dli4pG4y.js → push-apns-DGIqfAg5.js} +1 -1
  78. package/dist/{push-apns-DUeNpqyF.js → push-apns-Qfohz-Hs.js} +1 -1
  79. package/dist/{pw-ai-KrN0mqVH.js → pw-ai-D-_aGzdQ.js} +1 -1
  80. package/dist/{pw-ai-C-kqYO4L.js → pw-ai-S3cpSYOy.js} +1 -1
  81. package/dist/{register.agent-aY_6enDc.js → register.agent-BEM0_4uG.js} +5 -5
  82. package/dist/{register.agent-DNAtU5WP.js → register.agent-WQgVmACk.js} +6 -6
  83. package/dist/{register.configure-CwlwOMZ3.js → register.configure-CCpFmFPt.js} +6 -6
  84. package/dist/{register.configure-C_n9kIWJ.js → register.configure-CdW3aECy.js} +6 -6
  85. package/dist/{register.maintenance-DC40nnCm.js → register.maintenance-B8RZLSOe.js} +8 -8
  86. package/dist/{register.maintenance-Dddndcoo.js → register.maintenance-CM3QEdFz.js} +7 -7
  87. package/dist/{register.message-DiR6desB.js → register.message-BRLYHuVS.js} +2 -2
  88. package/dist/{register.message-CpEf0b15.js → register.message-XYm9NyDT.js} +2 -2
  89. package/dist/{register.onboard-bOeA39xj.js → register.onboard-BzAJbRpP.js} +4 -4
  90. package/dist/{register.onboard-VzVmqpEA.js → register.onboard-EwGHFUsd.js} +4 -4
  91. package/dist/{register.setup-CNLQzxl8.js → register.setup-33shhZje.js} +4 -4
  92. package/dist/{register.setup-D6iO5Xqa.js → register.setup-DpdZyiMv.js} +4 -4
  93. package/dist/{register.status-health-sessions-CoiaeduR.js → register.status-health-sessions-C8-iqepo.js} +3 -3
  94. package/dist/{register.status-health-sessions-BtJeTZnN.js → register.status-health-sessions-CK4f2nj_.js} +3 -3
  95. package/dist/{register.subclis-CFTYYdAQ.js → register.subclis-Mn68G5tp.js} +9 -9
  96. package/dist/{reply-Bv-RvRzs.js → reply-DuVUTFfT.js} +82 -3
  97. package/dist/{run-main-EzFOCEdp.js → run-main-CNB3qjRM.js} +14 -14
  98. package/dist/{runner-ChBxge-W.js → runner-D1eXJZ8T.js} +1 -1
  99. package/dist/{runner-Dq-qfrq7.js → runner-a43IsYad.js} +1 -1
  100. package/dist/{server-node-events-B9TqPvCI.js → server-node-events-B3o3P600.js} +2 -2
  101. package/dist/{server-node-events-syk21TN6.js → server-node-events-BPFwUGbS.js} +2 -2
  102. package/dist/{session-dirs-BAcQuXpY.js → session-dirs-Cw2efkey.js} +1 -1
  103. package/dist/{session-dirs-t0YpmrIL.js → session-dirs-DsU4kvIK.js} +1 -1
  104. package/dist/{status-keCWmejk.js → status-BSJIuIlN.js} +1 -1
  105. package/dist/{status-05251w21.js → status-BhHpKHQP.js} +2 -2
  106. package/dist/{status-BqDiXxwL.js → status-C2PvVLaW.js} +1 -1
  107. package/dist/{status-B8UVm7P3.js → status-CLKmcFCC.js} +2 -2
  108. package/dist/{subagent-registry-Lm4ps45z.js → subagent-registry-Da0a_Vka.js} +82 -3
  109. package/dist/{update-cli-BTF6TXGD.js → update-cli-BW3q5tFm.js} +7 -7
  110. package/dist/{update-cli-aW6jVJIJ.js → update-cli-D4EUMrX6.js} +8 -8
  111. package/dist/{web-BYZfljIx.js → web-BTbIFuWM.js} +2 -2
  112. package/dist/{web-BjxYv-hA.js → web-C7TQSVU0.js} +1 -1
  113. package/dist/{web-DPHo2cWX.js → web-CVSol55V.js} +6 -6
  114. package/dist/{web-Cs0IP-ZO.js → web-Y49Dumye.js} +6 -6
  115. package/extensions/voice-call/src/providers/twilio.ts +31 -13
  116. package/extensions/voice-call/src/response-generator.ts +3 -3
  117. package/extensions/voice-call/src/telephony-audio.ts +54 -0
  118. package/extensions/voice-call/src/telephony-tts.ts +40 -2
  119. package/package.json +1 -1
@@ -5,19 +5,19 @@ import { t as formatCliCommand } from "./command-format-D3syQOZg.js";
5
5
  import { m as DEFAULT_ACCOUNT_ID, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-DjZ7Z1hW.js";
6
6
  import { _ as DEFAULT_IDENTITY_FILENAME, c as resolveAgentWorkspaceDir, i as resolveAgentDir, l as resolveDefaultAgentId, t as listAgentEntries } from "./agent-scope-BVNQDedk.js";
7
7
  import { l as writeConfigFile } from "./config-P-vz8Nlc.js";
8
- import { N as parseIdentityMarkdown, j as identityHasValues } from "./subagent-registry-Lm4ps45z.js";
8
+ import { N as parseIdentityMarkdown, j as identityHasValues } from "./subagent-registry-Da0a_Vka.js";
9
9
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DStDwRz0.js";
10
10
  import { s as resolveSessionTranscriptsDirForAgent } from "./paths-DNdWAq7b.js";
11
11
  import { a as ensureWorkspaceAndSessions, l as moveToTrash } from "./onboard-helpers-LjsmkHmj.js";
12
12
  import { t as WizardCancelledError } from "./prompts-m1IJwIAx.js";
13
13
  import { t as createClackPrompter } from "./clack-prompter-B1aVoXd5.js";
14
14
  import { t as resolveChannelDefaultAccountId } from "./helpers-cLP5YLeQ.js";
15
- import { r as setupChannels } from "./onboard-channels-CyeyvIfw.js";
15
+ import { r as setupChannels } from "./onboard-channels-Lt2gG1e2.js";
16
16
  import { t as requireValidConfigSnapshot } from "./config-validation-gGmi3rHm.js";
17
- import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-CBvMKGLh.js";
17
+ import { a as pruneAgentConfig, i as loadAgentIdentity, n as buildAgentSummaries, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-dnXbFv5H.js";
18
18
  import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
19
19
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-DF6R_pgV.js";
20
- import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-CLiY8PdF.js";
20
+ import { i as applyAuthChoice, r as warnIfModelConfigLooksOff } from "./auth-choice-Hb6530su.js";
21
21
  import path from "node:path";
22
22
  import fs from "node:fs/promises";
23
23
 
@@ -1,4 +1,4 @@
1
- import { Xt as identityHasValues, Zt as loadAgentIdentityFromWorkspace } from "./reply-Bv-RvRzs.js";
1
+ import { Xt as identityHasValues, Zt as loadAgentIdentityFromWorkspace } from "./reply-DuVUTFfT.js";
2
2
  import { s as normalizeAgentId } from "./session-key-DCt45XZa.js";
3
3
  import { c as resolveAgentWorkspaceDir, i as resolveAgentDir, l as resolveDefaultAgentId, t as listAgentEntries } from "./agent-scope-D9N91YsQ.js";
4
4
 
@@ -1,6 +1,6 @@
1
1
  import { s as normalizeAgentId } from "./session-key-DjZ7Z1hW.js";
2
2
  import { c as resolveAgentWorkspaceDir, i as resolveAgentDir, l as resolveDefaultAgentId, t as listAgentEntries } from "./agent-scope-BVNQDedk.js";
3
- import { M as loadAgentIdentityFromWorkspace, j as identityHasValues } from "./subagent-registry-Lm4ps45z.js";
3
+ import { M as loadAgentIdentityFromWorkspace, j as identityHasValues } from "./subagent-registry-Da0a_Vka.js";
4
4
 
5
5
  //#region src/commands/agents.config.ts
6
6
  function findAgentEntryIndex(list, agentId) {
@@ -14,10 +14,10 @@ import "./model-auth-vtNH8C4P.js";
14
14
  import "./github-copilot-token-Dgb9dAHW.js";
15
15
  import "./pi-model-discovery-DaNAekda.js";
16
16
  import "./message-channel-CHYSjmbr.js";
17
- import "./pi-embedded-helpers-Ll4Lztu1.js";
17
+ import "./pi-embedded-helpers-CSE0v99A.js";
18
18
  import "./config-Du_-inxH.js";
19
19
  import "./manifest-registry-Dhk4A5vb.js";
20
- import "./chrome-BAv9fEiv.js";
20
+ import "./chrome-Bqbv_ZSj.js";
21
21
  import "./frontmatter-CdkBcBAo.js";
22
22
  import "./skills-DSZuhFx9.js";
23
23
  import "./redact-jSxx6Ep2.js";
@@ -28,10 +28,10 @@ import "./thinking-Dg8vKjw_.js";
28
28
  import "./accounts-DFrH9IVU.js";
29
29
  import "./paths-BEAbheM8.js";
30
30
  import "./tool-images-C1rdDr34.js";
31
- import "./image-Ci28h-op.js";
31
+ import "./image-CxPjVob-.js";
32
32
  import "./gemini-auth-A2JaRMHH.js";
33
33
  import "./local-roots-JqlMsAYY.js";
34
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-ChBxge-W.js";
34
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-D1eXJZ8T.js";
35
35
 
36
36
  //#region src/media-understanding/audio-preflight.ts
37
37
  /**
@@ -12,10 +12,10 @@ import "./accounts-sr0G5UOe.js";
12
12
  import "./image-ops-BfqdVNxh.js";
13
13
  import "./pi-model-discovery-j5tVLINv.js";
14
14
  import "./message-channel-DNOtJsL1.js";
15
- import "./pi-embedded-helpers-Cd0S0WfR.js";
15
+ import "./pi-embedded-helpers-B0Kht0I2.js";
16
16
  import "./config-KL7847B1.js";
17
17
  import "./manifest-registry-sze5OW-s.js";
18
- import "./chrome-lRUqqgSD.js";
18
+ import "./chrome-CZuniMYN.js";
19
19
  import "./skills-DGNBryo1.js";
20
20
  import "./redact-1NGYV_8p.js";
21
21
  import "./errors-CPfngF0S.js";
@@ -25,10 +25,10 @@ import "./thinking-BClv_xAO.js";
25
25
  import "./accounts-DAZL5b5o.js";
26
26
  import "./paths-5iQF9bSz.js";
27
27
  import "./tool-images-TQiVqsOc.js";
28
- import "./image--DDZnw-F.js";
28
+ import "./image-88q3KE-C.js";
29
29
  import "./gemini-auth-BF6ZCNOV.js";
30
30
  import "./local-roots-C4BHj9W8.js";
31
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-Dq-qfrq7.js";
31
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-a43IsYad.js";
32
32
 
33
33
  //#region src/media-understanding/audio-preflight.ts
34
34
  /**
@@ -6,7 +6,7 @@ import { n as loadModelCatalog } from "./model-catalog-DSR0wfsf.js";
6
6
  import { f as openUrl } from "./onboard-helpers-C2E7cVf6.js";
7
7
  import { t as enablePluginInConfig } from "./enable-HSYin9n7.js";
8
8
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, C as applyQianfanProviderConfig, D as applyTogetherProviderConfig, E as applyTogetherConfig, F as applyZaiProviderConfig, G as OPENROUTER_DEFAULT_MODEL_REF, H as applyAgentDefaultModelPrimary, I as applyLitellmConfig, J as XIAOMI_DEFAULT_MODEL_REF, K as TOGETHER_DEFAULT_MODEL_REF, L as applyLitellmProviderConfig, M as applyXiaomiConfig, N as applyXiaomiProviderConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, T as applySyntheticProviderConfig, U as HUGGINGFACE_DEFAULT_MODEL_REF, V as applyVercelAiGatewayProviderConfig, W as LITELLM_DEFAULT_MODEL_REF, X as setAnthropicApiKey, Y as ZAI_DEFAULT_MODEL_REF, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, _t as QIANFAN_DEFAULT_MODEL_REF, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, c as applyMinimaxApiProviderConfigCn, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, ft as setXiaomiApiKey, g as applyMoonshotConfig, gt as MOONSHOT_DEFAULT_MODEL_REF, h as applyKimiCodeProviderConfig, ht as KIMI_CODING_MODEL_REF, i as applyOpencodeZenProviderConfig, it as setOpencodeZenApiKey, j as applyXaiProviderConfig, k as applyVeniceProviderConfig, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, mt as writeOAuthCredentials, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, p as applyHuggingfaceProviderConfig, pt as setZaiApiKey, q as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, s as applyMinimaxApiProviderConfig, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, u as applyMinimaxProviderConfig, ut as setVercelAiGatewayApiKey, v as applyMoonshotProviderConfig, vt as XAI_DEFAULT_MODEL_REF, w as applySyntheticConfig, x as applyOpenrouterProviderConfig, y as applyMoonshotProviderConfigCn, z as applyCloudflareAiGatewayProviderConfig } from "./auth-token-Cl6S04CQ.js";
9
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-BbnDoytN.js";
9
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-D39L7fZC.js";
10
10
  import { a as detectZaiEndpoint, c as ensureModelAllowlistEntry, i as upsertSharedEnvVar, n as applyOpenAIConfig, o as GOOGLE_GEMINI_DEFAULT_MODEL, r as applyOpenAIProviderConfig, s as applyGoogleGeminiModelDefault, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-Bzne8LvZ.js";
11
11
  import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker---eJj9Ex.js";
12
12
  import { randomBytes } from "node:crypto";
@@ -6,7 +6,7 @@ import { n as loadModelCatalog } from "./model-catalog-Bh7el8wJ.js";
6
6
  import { f as openUrl } from "./onboard-helpers-LjsmkHmj.js";
7
7
  import { t as enablePluginInConfig } from "./enable-CknE1f0w.js";
8
8
  import { $ as setHuggingfaceApiKey, A as applyXaiConfig, B as applyVercelAiGatewayConfig, C as applyQianfanProviderConfig, D as applyTogetherProviderConfig, E as applyTogetherConfig, F as applyZaiProviderConfig, G as OPENROUTER_DEFAULT_MODEL_REF, H as applyAgentDefaultModelPrimary, I as applyLitellmConfig, J as XIAOMI_DEFAULT_MODEL_REF, K as TOGETHER_DEFAULT_MODEL_REF, L as applyLitellmProviderConfig, M as applyXiaomiConfig, N as applyXiaomiProviderConfig, O as applyVeniceConfig, P as applyZaiConfig, Q as setGeminiApiKey, R as applyCloudflareAiGatewayConfig, S as applyQianfanConfig, T as applySyntheticProviderConfig, U as HUGGINGFACE_DEFAULT_MODEL_REF, V as applyVercelAiGatewayProviderConfig, W as LITELLM_DEFAULT_MODEL_REF, X as setAnthropicApiKey, Y as ZAI_DEFAULT_MODEL_REF, Z as setCloudflareAiGatewayConfig, _ as applyMoonshotConfigCn, _t as QIANFAN_DEFAULT_MODEL_REF, a as applyMinimaxApiConfig, at as setOpenrouterApiKey, b as applyOpenrouterConfig, c as applyMinimaxApiProviderConfigCn, ct as setTogetherApiKey, d as applyAuthProfileConfig, dt as setXaiApiKey, et as setKimiCodingApiKey, ft as setXiaomiApiKey, g as applyMoonshotConfig, gt as MOONSHOT_DEFAULT_MODEL_REF, h as applyKimiCodeProviderConfig, ht as KIMI_CODING_MODEL_REF, i as applyOpencodeZenProviderConfig, it as setOpencodeZenApiKey, j as applyXaiProviderConfig, k as applyVeniceProviderConfig, l as applyMinimaxConfig, lt as setVeniceApiKey, m as applyKimiCodeConfig, mt as writeOAuthCredentials, n as validateAnthropicSetupToken, nt as setMinimaxApiKey, o as applyMinimaxApiConfigCn, ot as setQianfanApiKey, p as applyHuggingfaceProviderConfig, pt as setZaiApiKey, q as VERCEL_AI_GATEWAY_DEFAULT_MODEL_REF, r as applyOpencodeZenConfig, rt as setMoonshotApiKey, s as applyMinimaxApiProviderConfig, st as setSyntheticApiKey, t as buildTokenProfileId, tt as setLitellmApiKey, u as applyMinimaxProviderConfig, ut as setVercelAiGatewayApiKey, v as applyMoonshotProviderConfig, vt as XAI_DEFAULT_MODEL_REF, w as applySyntheticConfig, x as applyOpenrouterProviderConfig, y as applyMoonshotProviderConfigCn, z as applyCloudflareAiGatewayProviderConfig } from "./auth-token-BMzKbvDa.js";
9
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-C4RNIRyy.js";
9
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-bYUBBkmL.js";
10
10
  import { a as detectZaiEndpoint, c as ensureModelAllowlistEntry, i as upsertSharedEnvVar, n as applyOpenAIConfig, o as GOOGLE_GEMINI_DEFAULT_MODEL, r as applyOpenAIProviderConfig, s as applyGoogleGeminiModelDefault, t as OPENAI_DEFAULT_MODEL } from "./openai-model-default-B0nMOquO.js";
11
11
  import { c as OPENAI_CODEX_DEFAULT_MODEL, l as applyOpenAICodexModelDefault, r as applyPrimaryModel, s as promptAndConfigureVllm } from "./model-picker-IcZxgj7Z.js";
12
12
  import { randomBytes } from "node:crypto";
@@ -1,5 +1,5 @@
1
1
  import { Dt as theme, Et as isRich, h as visibleWidth, ln as hasRootVersionAlias } from "./entry.js";
2
- import { sn as resolveCommitHash } from "./subagent-registry-Lm4ps45z.js";
2
+ import { sn as resolveCommitHash } from "./subagent-registry-Da0a_Vka.js";
3
3
 
4
4
  //#region src/cli/tagline.ts
5
5
  const DEFAULT_TAGLINE = "All your chats, one OpenClaw.";
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2026.2.21-19",
3
- "commit": "612406ec25d5c42a64b54ff512d54b2e7faee200",
4
- "builtAt": "2026-03-29T12:04:17.491Z"
2
+ "version": "2026.2.21-20",
3
+ "commit": "6891cf56f29076b456d8e6824437e68c58169d9c",
4
+ "builtAt": "2026-03-29T13:17:19.836Z"
5
5
  }
@@ -5,7 +5,7 @@ import { s as resolveAgentWorkspaceDir, t as listAgentIds } from "../../agent-sc
5
5
  import { r as defaultRuntime, t as createSubsystemLogger } from "../../subsystem-BF9jT_Nw.js";
6
6
  import "../../workspace-DYx5Dxtw.js";
7
7
  import { n as SILENT_REPLY_TOKEN } from "../../tokens-B-c56SkM.js";
8
- import { a as createDefaultDeps, i as agentCommand } from "../../pi-embedded-D7qD6fo-.js";
8
+ import { a as createDefaultDeps, i as agentCommand } from "../../pi-embedded-Dz24QZz9.js";
9
9
  import "../../plugins-DIrNa311.js";
10
10
  import "../../accounts-C8m4ADkw.js";
11
11
  import "../../boolean-B8-BqKGQ.js";
@@ -13,7 +13,7 @@ import "../../command-format-BOHIfoCX.js";
13
13
  import "../../bindings-BKEEBdsb.js";
14
14
  import "../../send-Byt_wJDK.js";
15
15
  import "../../send-BEFzSOoD.js";
16
- import "../../deliver-CLJRPnfx.js";
16
+ import "../../deliver-CKH_FhS0.js";
17
17
  import "../../diagnostic-DriDPU6M.js";
18
18
  import "../../diagnostic-session-state-Bxo4UHOL.js";
19
19
  import "../../accounts-CQT5u65w.js";
@@ -23,10 +23,10 @@ import "../../model-auth-vtNH8C4P.js";
23
23
  import "../../github-copilot-token-Dgb9dAHW.js";
24
24
  import "../../pi-model-discovery-DaNAekda.js";
25
25
  import "../../message-channel-CHYSjmbr.js";
26
- import { H as loadSessionStore, K as updateSessionStore, xt as resolveMainSessionKey, yt as resolveAgentMainSessionKey } from "../../pi-embedded-helpers-Ll4Lztu1.js";
26
+ import { H as loadSessionStore, K as updateSessionStore, xt as resolveMainSessionKey, yt as resolveAgentMainSessionKey } from "../../pi-embedded-helpers-CSE0v99A.js";
27
27
  import "../../config-Du_-inxH.js";
28
28
  import "../../manifest-registry-Dhk4A5vb.js";
29
- import "../../chrome-BAv9fEiv.js";
29
+ import "../../chrome-Bqbv_ZSj.js";
30
30
  import "../../frontmatter-CdkBcBAo.js";
31
31
  import "../../skills-DSZuhFx9.js";
32
32
  import "../../redact-jSxx6Ep2.js";
@@ -37,7 +37,7 @@ import "../../thinking-Dg8vKjw_.js";
37
37
  import "../../accounts-DFrH9IVU.js";
38
38
  import { s as resolveStorePath } from "../../paths-BEAbheM8.js";
39
39
  import "../../tool-images-C1rdDr34.js";
40
- import "../../image-Ci28h-op.js";
40
+ import "../../image-CxPjVob-.js";
41
41
  import "../../reply-prefix-DZrS3Kf7.js";
42
42
  import "../../manager-D7SRrHxT.js";
43
43
  import "../../gemini-auth-A2JaRMHH.js";
@@ -51,7 +51,7 @@ import "../../ir-DJPm0a4k.js";
51
51
  import "../../render-CDCvpfhh.js";
52
52
  import "../../commands-registry-BzlB3qtZ.js";
53
53
  import "../../skill-commands-CqyVDpti.js";
54
- import "../../runner-ChBxge-W.js";
54
+ import "../../runner-D1eXJZ8T.js";
55
55
  import "../../fetch-DtI0mtzx.js";
56
56
  import "../../channel-activity-BgsTqLau.js";
57
57
  import "../../tables-C3clT_iA.js";
@@ -5,7 +5,7 @@ import { s as resolveAgentWorkspaceDir } from "../../agent-scope-DSUeV7-g.js";
5
5
  import { t as createSubsystemLogger } from "../../subsystem-BF9jT_Nw.js";
6
6
  import "../../workspace-DYx5Dxtw.js";
7
7
  import "../../tokens-B-c56SkM.js";
8
- import "../../pi-embedded-D7qD6fo-.js";
8
+ import "../../pi-embedded-Dz24QZz9.js";
9
9
  import "../../plugins-DIrNa311.js";
10
10
  import "../../accounts-C8m4ADkw.js";
11
11
  import "../../boolean-B8-BqKGQ.js";
@@ -13,7 +13,7 @@ import "../../command-format-BOHIfoCX.js";
13
13
  import "../../bindings-BKEEBdsb.js";
14
14
  import "../../send-Byt_wJDK.js";
15
15
  import "../../send-BEFzSOoD.js";
16
- import "../../deliver-CLJRPnfx.js";
16
+ import "../../deliver-CKH_FhS0.js";
17
17
  import "../../diagnostic-DriDPU6M.js";
18
18
  import "../../diagnostic-session-state-Bxo4UHOL.js";
19
19
  import "../../accounts-CQT5u65w.js";
@@ -23,10 +23,10 @@ import "../../model-auth-vtNH8C4P.js";
23
23
  import "../../github-copilot-token-Dgb9dAHW.js";
24
24
  import "../../pi-model-discovery-DaNAekda.js";
25
25
  import "../../message-channel-CHYSjmbr.js";
26
- import { ct as hasInterSessionUserProvenance } from "../../pi-embedded-helpers-Ll4Lztu1.js";
26
+ import { ct as hasInterSessionUserProvenance } from "../../pi-embedded-helpers-CSE0v99A.js";
27
27
  import "../../config-Du_-inxH.js";
28
28
  import "../../manifest-registry-Dhk4A5vb.js";
29
- import "../../chrome-BAv9fEiv.js";
29
+ import "../../chrome-Bqbv_ZSj.js";
30
30
  import "../../frontmatter-CdkBcBAo.js";
31
31
  import "../../skills-DSZuhFx9.js";
32
32
  import "../../redact-jSxx6Ep2.js";
@@ -37,7 +37,7 @@ import "../../thinking-Dg8vKjw_.js";
37
37
  import "../../accounts-DFrH9IVU.js";
38
38
  import "../../paths-BEAbheM8.js";
39
39
  import "../../tool-images-C1rdDr34.js";
40
- import "../../image-Ci28h-op.js";
40
+ import "../../image-CxPjVob-.js";
41
41
  import "../../reply-prefix-DZrS3Kf7.js";
42
42
  import "../../manager-D7SRrHxT.js";
43
43
  import "../../gemini-auth-A2JaRMHH.js";
@@ -51,7 +51,7 @@ import "../../ir-DJPm0a4k.js";
51
51
  import "../../render-CDCvpfhh.js";
52
52
  import "../../commands-registry-BzlB3qtZ.js";
53
53
  import "../../skill-commands-CqyVDpti.js";
54
- import "../../runner-ChBxge-W.js";
54
+ import "../../runner-D1eXJZ8T.js";
55
55
  import "../../fetch-DtI0mtzx.js";
56
56
  import "../../channel-activity-BgsTqLau.js";
57
57
  import "../../tables-C3clT_iA.js";
@@ -1 +1 @@
1
- f6bc31526acda9c1cc028a5378737ac05750ad4e309d125fabe39da9749d7f27
1
+ c50e4b47bc67246d4252fb4c762ba889cf1f71315d58a6416be4595f861a0efe
@@ -2,7 +2,7 @@ import { n as CHAT_CHANNEL_ORDER } from "./registry-Dygi7Azw.js";
2
2
  import { t as isTruthyEnvValue } from "./env-BId0WVVL.js";
3
3
  import { n as listChannelPlugins } from "./plugins-D8GB7NB1.js";
4
4
  import { r as listChannelPluginCatalogEntries } from "./catalog-C7TxlaHu.js";
5
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-D57lc9ob.js";
5
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-CHOacv01.js";
6
6
 
7
7
  //#region src/cli/channel-options.ts
8
8
  function dedupe(values) {
@@ -1,7 +1,7 @@
1
1
  import { C as CHAT_CHANNEL_ORDER, n as isTruthyEnvValue } from "./entry.js";
2
2
  import { n as listChannelPlugins } from "./plugins-DStDwRz0.js";
3
3
  import { r as listChannelPluginCatalogEntries } from "./catalog-Da8o-cxw.js";
4
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-83ThmVHf.js";
4
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-1pF4_jNl.js";
5
5
 
6
6
  //#region src/cli/channel-options.ts
7
7
  function dedupe(values) {
@@ -1,5 +1,5 @@
1
1
  import { C as sleep, F as shouldLogVerbose, M as logVerbose, T as toWhatsappJid, V as getChildLogger, f as isSelfChatMode, m as normalizeE164, p as jidToE164, r as clamp, v as resolveJidToE164 } from "./utils-BlC2Fskb.js";
2
- import { En as normalizeMentionText, Ot as computeBackoff, Sn as shouldComputeCommandAuthorized, Tn as buildMentionRegexes, _n as resolveInboundDebounceMs, an as resolveMentionGating, cn as recordPendingHistoryEntryIfEnabled, gn as createInboundDebouncer, hn as createDedupeCache, in as buildPairingReply, kt as sleepWithAbort, ln as shouldAckReactionForWhatsApp, on as DEFAULT_GROUP_HISTORY_LIMIT, sn as buildHistoryContextFromEntries, t as getReplyFromConfig, un as dispatchReplyWithBufferedBlockDispatcher, vn as formatInboundEnvelope, vr as enqueueSystemEvent, vt as normalizeGroupActivation, xn as hasControlCommand, yn as resolveEnvelopeFormatOptions, yt as parseActivationCommand } from "./reply-Bv-RvRzs.js";
2
+ import { En as normalizeMentionText, Ot as computeBackoff, Sn as shouldComputeCommandAuthorized, Tn as buildMentionRegexes, _n as resolveInboundDebounceMs, an as resolveMentionGating, cn as recordPendingHistoryEntryIfEnabled, gn as createInboundDebouncer, hn as createDedupeCache, in as buildPairingReply, kt as sleepWithAbort, ln as shouldAckReactionForWhatsApp, on as DEFAULT_GROUP_HISTORY_LIMIT, sn as buildHistoryContextFromEntries, t as getReplyFromConfig, un as dispatchReplyWithBufferedBlockDispatcher, vn as formatInboundEnvelope, vr as enqueueSystemEvent, vt as normalizeGroupActivation, xn as hasControlCommand, yn as resolveEnvelopeFormatOptions, yt as parseActivationCommand } from "./reply-DuVUTFfT.js";
3
3
  import { a as buildGroupHistoryKey, n as DEFAULT_MAIN_KEY, r as buildAgentMainSessionKey, s as normalizeAgentId } from "./session-key-DCt45XZa.js";
4
4
  import { f as defaultRuntime, t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
5
5
  import { t as formatCliCommand } from "./command-format-DEKzLnLg.js";
@@ -1,7 +1,7 @@
1
1
  import "./paths-B4BZAPZh.js";
2
2
  import { B as theme, O as danger, P as setVerbose, U as getResolvedLoggerSettings, d as isRecord } from "./utils-BlC2Fskb.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { _t as deleteTelegramUpdateOffset, bt as loadProviderUsageSummary, xt as formatUsageReportLines } from "./reply-Bv-RvRzs.js";
4
+ import { _t as deleteTelegramUpdateOffset, bt as loadProviderUsageSummary, xt as formatUsageReportLines } from "./reply-DuVUTFfT.js";
5
5
  import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DCt45XZa.js";
6
6
  import { r as DEFAULT_CHAT_CHANNEL } from "./registry-Dygi7Azw.js";
7
7
  import { f as defaultRuntime } from "./subsystem-8bY95KEB.js";
@@ -105,8 +105,8 @@ import "./stagger-B6VQyn1F.js";
105
105
  import { n as resolveMessageChannelSelection } from "./channel-selection-ZfFyXtQ1.js";
106
106
  import "./pi-tools.policy-DZSlTC8Z.js";
107
107
  import { r as listChannelPluginCatalogEntries } from "./catalog-C7TxlaHu.js";
108
- import "./plugin-registry-D57lc9ob.js";
109
- import { t as formatCliChannelOptions } from "./channel-options-e7Z9Smf2.js";
108
+ import "./plugin-registry-CHOacv01.js";
109
+ import { t as formatCliChannelOptions } from "./channel-options--M8F-DHl.js";
110
110
  import { t as hasExplicitOptions } from "./command-options-BtDai3oC.js";
111
111
  import "./note-DRZSQe0n.js";
112
112
  import { t as createClackPrompter } from "./clack-prompter-Cpl8cd_B.js";
@@ -116,7 +116,7 @@ import "./install-safe-path-tCLiMpmO.js";
116
116
  import "./npm-registry-spec-DVXqd4Pf.js";
117
117
  import "./skill-scanner-CMBwwxis.js";
118
118
  import "./installs-B9skpWIo.js";
119
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-YvwszRaQ.js";
119
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-O6KvizE3.js";
120
120
  import { t as requireValidConfigSnapshot } from "./config-validation-B0gvR_uq.js";
121
121
  import { t as buildChannelAccountSnapshot } from "./status-BrV-afZE.js";
122
122
  import { t as parseLogLine } from "./parse-log-line-BHCUQaF3.js";
@@ -15,7 +15,7 @@ import "./client-B5QR5Bi9.js";
15
15
  import { n as callGateway } from "./call-D6ajQjvV.js";
16
16
  import "./message-channel-CVHJDItx.js";
17
17
  import "./pairing-token-Byh6drgn.js";
18
- import { _ as deleteTelegramUpdateOffset, en as loadProviderUsageSummary, tn as formatUsageReportLines } from "./subagent-registry-Lm4ps45z.js";
18
+ import { _ as deleteTelegramUpdateOffset, en as loadProviderUsageSummary, tn as formatUsageReportLines } from "./subagent-registry-Da0a_Vka.js";
19
19
  import "./sessions-BJnLP6OJ.js";
20
20
  import "./tokens-ANnYrShl.js";
21
21
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, u as resolveTelegramAccount } from "./plugins-DStDwRz0.js";
@@ -110,13 +110,13 @@ import "./install-safe-path-BK8js28D.js";
110
110
  import "./npm-registry-spec-DkaZNHAW.js";
111
111
  import "./skill-scanner-Cb7mXGIR.js";
112
112
  import "./installs-DDy4Ij7L.js";
113
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-CyeyvIfw.js";
113
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-Lt2gG1e2.js";
114
114
  import { t as requireValidConfigSnapshot } from "./config-validation-gGmi3rHm.js";
115
115
  import { t as buildChannelAccountSnapshot } from "./status-BUedPCLb.js";
116
116
  import { t as parseLogLine } from "./parse-log-line-C6yJx969.js";
117
117
  import { t as collectChannelStatusIssues } from "./channels-status-issues-DsKlgViM.js";
118
- import "./plugin-registry-83ThmVHf.js";
119
- import { t as formatCliChannelOptions } from "./channel-options-CLS27y1A.js";
118
+ import "./plugin-registry-1pF4_jNl.js";
119
+ import { t as formatCliChannelOptions } from "./channel-options-D0Qjq83D.js";
120
120
  import fs from "node:fs/promises";
121
121
 
122
122
  //#region src/commands/channels/add-mutators.ts
@@ -10,7 +10,7 @@ import fs$1 from "node:fs";
10
10
  import { execFileSync, spawn } from "node:child_process";
11
11
  import net from "node:net";
12
12
  import { createServer } from "node:http";
13
- import WebSocket$1, { WebSocketServer } from "ws";
13
+ import WebSocket, { WebSocketServer } from "ws";
14
14
  import { Buffer as Buffer$1 } from "node:buffer";
15
15
 
16
16
  //#region src/browser/constants.ts
@@ -178,7 +178,7 @@ async function ensureChromeExtensionRelayServer(opts) {
178
178
  let nextExtensionId = 1;
179
179
  const sendToExtension = async (payload) => {
180
180
  const ws = extensionWs;
181
- if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
181
+ if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
182
182
  ws.send(JSON.stringify(payload));
183
183
  return await new Promise((resolve, reject) => {
184
184
  const timer = setTimeout(() => {
@@ -195,12 +195,12 @@ async function ensureChromeExtensionRelayServer(opts) {
195
195
  const broadcastToCdpClients = (evt) => {
196
196
  const msg = JSON.stringify(evt);
197
197
  for (const ws of cdpClients) {
198
- if (ws.readyState !== WebSocket$1.OPEN) continue;
198
+ if (ws.readyState !== WebSocket.OPEN) continue;
199
199
  ws.send(msg);
200
200
  }
201
201
  };
202
202
  const sendResponseToCdp = (ws, res) => {
203
- if (ws.readyState !== WebSocket$1.OPEN) return;
203
+ if (ws.readyState !== WebSocket.OPEN) return;
204
204
  ws.send(JSON.stringify(res));
205
205
  };
206
206
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -425,7 +425,7 @@ async function ensureChromeExtensionRelayServer(opts) {
425
425
  wssExtension.on("connection", (ws) => {
426
426
  extensionWs = ws;
427
427
  const ping = setInterval(() => {
428
- if (ws.readyState !== WebSocket$1.OPEN) return;
428
+ if (ws.readyState !== WebSocket.OPEN) return;
429
429
  ws.send(JSON.stringify({ method: "ping" }));
430
430
  }, 5e3);
431
431
  ws.on("message", (data) => {
@@ -743,7 +743,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
743
743
  }
744
744
  async function withCdpSocket(wsUrl, fn, opts) {
745
745
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
746
- const ws = new WebSocket$1(wsUrl, {
746
+ const ws = new WebSocket(wsUrl, {
747
747
  handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
748
748
  ...Object.keys(headers).length ? { headers } : {}
749
749
  });
@@ -1637,7 +1637,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1637
1637
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1638
1638
  return await new Promise((resolve) => {
1639
1639
  const headers = getHeadersWithAuth(wsUrl);
1640
- const ws = new WebSocket$1(wsUrl, {
1640
+ const ws = new WebSocket(wsUrl, {
1641
1641
  handshakeTimeout: timeoutMs,
1642
1642
  ...Object.keys(headers).length ? { headers } : {}
1643
1643
  });
@@ -10,7 +10,7 @@ import fs$1 from "node:fs/promises";
10
10
  import { execFileSync, spawn } from "node:child_process";
11
11
  import net from "node:net";
12
12
  import { createServer } from "node:http";
13
- import WebSocket, { WebSocketServer } from "ws";
13
+ import WebSocket$1, { WebSocketServer } from "ws";
14
14
  import { Buffer as Buffer$1 } from "node:buffer";
15
15
 
16
16
  //#region src/browser/constants.ts
@@ -178,7 +178,7 @@ async function ensureChromeExtensionRelayServer(opts) {
178
178
  let nextExtensionId = 1;
179
179
  const sendToExtension = async (payload) => {
180
180
  const ws = extensionWs;
181
- if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
181
+ if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
182
182
  ws.send(JSON.stringify(payload));
183
183
  return await new Promise((resolve, reject) => {
184
184
  const timer = setTimeout(() => {
@@ -195,12 +195,12 @@ async function ensureChromeExtensionRelayServer(opts) {
195
195
  const broadcastToCdpClients = (evt) => {
196
196
  const msg = JSON.stringify(evt);
197
197
  for (const ws of cdpClients) {
198
- if (ws.readyState !== WebSocket.OPEN) continue;
198
+ if (ws.readyState !== WebSocket$1.OPEN) continue;
199
199
  ws.send(msg);
200
200
  }
201
201
  };
202
202
  const sendResponseToCdp = (ws, res) => {
203
- if (ws.readyState !== WebSocket.OPEN) return;
203
+ if (ws.readyState !== WebSocket$1.OPEN) return;
204
204
  ws.send(JSON.stringify(res));
205
205
  };
206
206
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -425,7 +425,7 @@ async function ensureChromeExtensionRelayServer(opts) {
425
425
  wssExtension.on("connection", (ws) => {
426
426
  extensionWs = ws;
427
427
  const ping = setInterval(() => {
428
- if (ws.readyState !== WebSocket.OPEN) return;
428
+ if (ws.readyState !== WebSocket$1.OPEN) return;
429
429
  ws.send(JSON.stringify({ method: "ping" }));
430
430
  }, 5e3);
431
431
  ws.on("message", (data) => {
@@ -743,7 +743,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
743
743
  }
744
744
  async function withCdpSocket(wsUrl, fn, opts) {
745
745
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
746
- const ws = new WebSocket(wsUrl, {
746
+ const ws = new WebSocket$1(wsUrl, {
747
747
  handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
748
748
  ...Object.keys(headers).length ? { headers } : {}
749
749
  });
@@ -1637,7 +1637,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1637
1637
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1638
1638
  return await new Promise((resolve) => {
1639
1639
  const headers = getHeadersWithAuth(wsUrl);
1640
- const ws = new WebSocket(wsUrl, {
1640
+ const ws = new WebSocket$1(wsUrl, {
1641
1641
  handshakeTimeout: timeoutMs,
1642
1642
  ...Object.keys(headers).length ? { headers } : {}
1643
1643
  });
@@ -13,7 +13,7 @@ import "./client-B5QR5Bi9.js";
13
13
  import "./call-D6ajQjvV.js";
14
14
  import "./message-channel-CVHJDItx.js";
15
15
  import "./pairing-token-Byh6drgn.js";
16
- import { g as loadOpenClawPlugins } from "./subagent-registry-Lm4ps45z.js";
16
+ import { g as loadOpenClawPlugins } from "./subagent-registry-Da0a_Vka.js";
17
17
  import "./sessions-BJnLP6OJ.js";
18
18
  import "./tokens-ANnYrShl.js";
19
19
  import "./plugins-DStDwRz0.js";
@@ -1,7 +1,7 @@
1
1
  import "./paths-B4BZAPZh.js";
2
2
  import "./utils-BlC2Fskb.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { gt as loadOpenClawPlugins } from "./reply-Bv-RvRzs.js";
4
+ import { gt as loadOpenClawPlugins } from "./reply-DuVUTFfT.js";
5
5
  import "./registry-Dygi7Azw.js";
6
6
  import { t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
7
7
  import "./exec-BmMB8-Xs.js";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { an as getPrimaryCommand, cn as hasHelpOrVersion } from "./entry.js";
3
- import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-CFTYYdAQ.js";
3
+ import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-Mn68G5tp.js";
4
4
 
5
5
  //#region src/cli/program/command-registry.ts
6
6
  var command_registry_exports = /* @__PURE__ */ __exportAll({
@@ -22,7 +22,7 @@ const coreEntries = [
22
22
  hasSubcommands: false
23
23
  }],
24
24
  register: async ({ program }) => {
25
- (await import("./register.setup-D6iO5Xqa.js")).registerSetupCommand(program);
25
+ (await import("./register.setup-DpdZyiMv.js")).registerSetupCommand(program);
26
26
  }
27
27
  },
28
28
  {
@@ -32,7 +32,7 @@ const coreEntries = [
32
32
  hasSubcommands: false
33
33
  }],
34
34
  register: async ({ program }) => {
35
- (await import("./register.onboard-VzVmqpEA.js")).registerOnboardCommand(program);
35
+ (await import("./register.onboard-EwGHFUsd.js")).registerOnboardCommand(program);
36
36
  }
37
37
  },
38
38
  {
@@ -42,7 +42,7 @@ const coreEntries = [
42
42
  hasSubcommands: false
43
43
  }],
44
44
  register: async ({ program }) => {
45
- (await import("./register.configure-C_n9kIWJ.js")).registerConfigureCommand(program);
45
+ (await import("./register.configure-CdW3aECy.js")).registerConfigureCommand(program);
46
46
  }
47
47
  },
48
48
  {
@@ -52,7 +52,7 @@ const coreEntries = [
52
52
  hasSubcommands: true
53
53
  }],
54
54
  register: async ({ program }) => {
55
- (await import("./config-cli-DLdH6zIF.js")).registerConfigCli(program);
55
+ (await import("./config-cli-CgjgjWri.js")).registerConfigCli(program);
56
56
  }
57
57
  },
58
58
  {
@@ -79,7 +79,7 @@ const coreEntries = [
79
79
  }
80
80
  ],
81
81
  register: async ({ program }) => {
82
- (await import("./register.maintenance-DC40nnCm.js")).registerMaintenanceCommands(program);
82
+ (await import("./register.maintenance-B8RZLSOe.js")).registerMaintenanceCommands(program);
83
83
  }
84
84
  },
85
85
  {
@@ -89,7 +89,7 @@ const coreEntries = [
89
89
  hasSubcommands: true
90
90
  }],
91
91
  register: async ({ program, ctx }) => {
92
- (await import("./register.message-CpEf0b15.js")).registerMessageCommands(program, ctx);
92
+ (await import("./register.message-XYm9NyDT.js")).registerMessageCommands(program, ctx);
93
93
  }
94
94
  },
95
95
  {
@@ -113,7 +113,7 @@ const coreEntries = [
113
113
  hasSubcommands: true
114
114
  }],
115
115
  register: async ({ program, ctx }) => {
116
- (await import("./register.agent-DNAtU5WP.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
116
+ (await import("./register.agent-WQgVmACk.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
117
117
  }
118
118
  },
119
119
  {
@@ -135,7 +135,7 @@ const coreEntries = [
135
135
  }
136
136
  ],
137
137
  register: async ({ program }) => {
138
- (await import("./register.status-health-sessions-BtJeTZnN.js")).registerStatusHealthSessionsCommands(program);
138
+ (await import("./register.status-health-sessions-CK4f2nj_.js")).registerStatusHealthSessionsCommands(program);
139
139
  }
140
140
  },
141
141
  {
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Yt as resolveStateDir, l as routeLogsToStderr, nt as pathExists } from "./entry.js";
3
- import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-CFTYYdAQ.js";
4
- import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-pGuORBuB.js";
3
+ import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-Mn68G5tp.js";
4
+ import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-BtDC5Ll-.js";
5
5
  import { t as getProgramContext } from "./program-context-5q-A0wbP.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { g as resolveStateDir } from "./paths-B4BZAPZh.js";
3
3
  import { h as pathExists } from "./utils-BlC2Fskb.js";
4
4
  import { i as routeLogsToStderr } from "./subsystem-8bY95KEB.js";
5
- import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-CDmctW1L.js";
5
+ import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-C0-LzXoV.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs/promises";
@@ -201,7 +201,7 @@ async function runConfigUnset(opts) {
201
201
  }
202
202
  function registerConfigCli(program) {
203
203
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.openclaw.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
204
- const { configureCommandFromSectionsArg } = await import("./configure-BSt9S0yk.js").then((n) => n.t);
204
+ const { configureCommandFromSectionsArg } = await import("./configure-CGqsSqXB.js").then((n) => n.t);
205
205
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
206
206
  });
207
207
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -206,7 +206,7 @@ async function runConfigUnset(opts) {
206
206
  }
207
207
  function registerConfigCli(program) {
208
208
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.openclaw.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
209
- const { configureCommandFromSectionsArg } = await import("./configure-h1d7nrgR.js").then((n) => n.t);
209
+ const { configureCommandFromSectionsArg } = await import("./configure-GUYUjx8A.js").then((n) => n.t);
210
210
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
211
211
  });
212
212
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -11,14 +11,14 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
11
11
  import { t as note$1 } from "./note-DDecZomM.js";
12
12
  import { t as WizardCancelledError } from "./prompts-m1IJwIAx.js";
13
13
  import { t as createClackPrompter } from "./clack-prompter-B1aVoXd5.js";
14
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-CyeyvIfw.js";
14
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-Lt2gG1e2.js";
15
15
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-Rig_aj9Q.js";
16
16
  import { t as resolveGatewayService } from "./service-DcFI40_W.js";
17
- import { r as healthCommand } from "./health-UmuJyu1Q.js";
17
+ import { r as healthCommand } from "./health-Dg0bAIKS.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Yp3N6NZ_.js";
19
19
  import { n as logConfigUpdated } from "./logging-PVQxLC6I.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-DF6R_pgV.js";
21
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-CLiY8PdF.js";
21
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-Hb6530su.js";
22
22
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-IcZxgj7Z.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-B8oXYjfA.js";
24
24
  import { a as promptCustomApiConfig } from "./onboard-custom-B1ElZqro.js";