@multiplytech/openclaw 2026.2.15-pairing-code.3 → 2026.2.15-pairing-code.5

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 (122) hide show
  1. package/dist/{agent-DoKOzDAt.js → agent-CHHEtTV9.js} +2 -2
  2. package/dist/{agent-DTNvKM2P.js → agent-Zea8l0V4.js} +2 -2
  3. package/dist/{agents-DB8xHohl.js → agents-C3RVyjuy.js} +2 -2
  4. package/dist/{audio-preflight-CeC5WuRi.js → audio-preflight-kYQdd_bY.js} +4 -4
  5. package/dist/{auth-choice-CTK4oGkS.js → auth-choice-BL4n2N2D.js} +1 -1
  6. package/dist/{auth-choice-C3--CpEI.js → auth-choice-Uz72AGbr.js} +1 -1
  7. package/dist/{banner-DlnL7Slb.js → banner-SSVP1FWh.js} +1 -1
  8. package/dist/build-info.json +3 -3
  9. package/dist/bundled/boot-md/handler.js +2 -2
  10. package/dist/bundled/session-memory/handler.js +1 -1
  11. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  12. package/dist/{channel-options-DTszr7UZ.js → channel-options-BZj8yDQM.js} +1 -1
  13. package/dist/{channel-options-DjpVPRIl.js → channel-options-CW6tO8o9.js} +1 -1
  14. package/dist/{channel-web-D7bde6n5.js → channel-web-URuEiSie.js} +2 -2
  15. package/dist/{channels-cli-HhdoLxhz.js → channels-cli-BxhcVdVg.js} +4 -4
  16. package/dist/{channels-cli-u2oRC89U.js → channels-cli-DNfdNX1p.js} +4 -4
  17. package/dist/{chrome-BR14_3nU.js → chrome-B2PpxswT.js} +7 -7
  18. package/dist/{cli-DALx-L2z.js → cli-BXBLYStc.js} +1 -1
  19. package/dist/{cli-BmEEG6LF.js → cli-BbNg2Udd.js} +1 -1
  20. package/dist/{command-registry-Zu61QmVf.js → command-registry-BliDXGVX.js} +9 -9
  21. package/dist/{completion-cli-sZBZnfMK.js → completion-cli-BCKnCxmp.js} +1 -1
  22. package/dist/{completion-cli-C-q-FkeT.js → completion-cli-Cu-1Snpp.js} +2 -2
  23. package/dist/{config-cli-CGOyIowg.js → config-cli-CVnBnw5y.js} +1 -1
  24. package/dist/{config-cli-BWKb4EMZ.js → config-cli-D5ZKAfqw.js} +1 -1
  25. package/dist/{configure-Vvq-cip8.js → configure-Dg3rt98q.js} +3 -3
  26. package/dist/{configure-DOqQjooh.js → configure-DgvISeIJ.js} +3 -3
  27. package/dist/{deliver-DOrBYvPC.js → deliver-C7HjLIB7.js} +1 -1
  28. package/dist/{deps-CtD8VF2g.js → deps-6dSUgps7.js} +1 -1
  29. package/dist/{doctor-DtN-z3_C.js → doctor-BUO6pA-b.js} +4 -4
  30. package/dist/{doctor-C4_8AvIH.js → doctor-CFwtoIem.js} +4 -4
  31. package/dist/{doctor-completion-CHjJchGS.js → doctor-completion-Bnz5cgZw.js} +1 -1
  32. package/dist/{doctor-completion-I1dEiTU-.js → doctor-completion-DNqw5VHX.js} +1 -1
  33. package/dist/entry.js +1 -1
  34. package/dist/extensionAPI.js +6 -6
  35. package/dist/{gateway-cli-DLgphSfL.js → gateway-cli-BDf6AIk0.js} +9 -9
  36. package/dist/{gateway-cli-CjGNIUv4.js → gateway-cli-n2Z2-dmf.js} +9 -9
  37. package/dist/{health-B7GSkRWi.js → health-5OQ86AsB.js} +2 -2
  38. package/dist/{health-CZTNBGMI.js → health-BLNgO5Lg.js} +2 -2
  39. package/dist/{heartbeat-visibility-B9nOsKDd.js → heartbeat-visibility-kOc5LBl6.js} +1 -1
  40. package/dist/{heartbeat-visibility-Dgp5aP37.js → heartbeat-visibility-pSnRANG0.js} +1 -1
  41. package/dist/{hooks-cli-CB0R6yP9.js → hooks-cli-8vqegwLk.js} +2 -2
  42. package/dist/{hooks-cli-C8IQCUf9.js → hooks-cli-BQvnwV0N.js} +2 -2
  43. package/dist/{image-CIO7-OG5.js → image-CRFk69Io.js} +1 -1
  44. package/dist/index.js +9 -9
  45. package/dist/llm-slug-generator.js +1 -1
  46. package/dist/{login-NEYiBobK.js → login-BQj4vJAc.js} +1 -1
  47. package/dist/{login-CrD6iwIT.js → login-Bub9YVmf.js} +1 -1
  48. package/dist/{login-CfzZlhYy.js → login-CKe4hvQG.js} +1 -1
  49. package/dist/{login-CFjSEIg1.js → login-DfLZ1ase.js} +1 -1
  50. package/dist/{login-qr-D3hsc4br.js → login-qr-5lWL8Guw.js} +1 -1
  51. package/dist/{login-qr-LM0fkvty.js → login-qr-C9eD5pGf.js} +1 -1
  52. package/dist/{login-qr-CmkMkiw0.js → login-qr-Cq7e7xsV.js} +1 -1
  53. package/dist/{login-qr-B92LRmnh.js → login-qr-MG7FhnKs.js} +1 -1
  54. package/dist/{models-VeXFWmzm.js → models-D9P-iylf.js} +2 -2
  55. package/dist/{models-cli-fOdGdULJ.js → models-cli-BhTQK54t.js} +3 -3
  56. package/dist/{models-cli-QFp-Qadk.js → models-cli-DCKEfmuF.js} +2 -2
  57. package/dist/{onboard-DkkjXP5u.js → onboard-DGIC3v2L.js} +2 -2
  58. package/dist/{onboard-channels-Oo2BI8vk.js → onboard-channels-BxI6pALE.js} +1 -1
  59. package/dist/{onboard-channels-CTkeYXWn.js → onboard-channels-yzWQkeRm.js} +1 -1
  60. package/dist/{onboard-ApR__J6N.js → onboard-ovaqc36s.js} +2 -2
  61. package/dist/{onboarding-DE9maYL1.js → onboarding-C6_GQJ3F.js} +3 -3
  62. package/dist/{onboarding-BvGs6yhQ.js → onboarding-ClCcjvNg.js} +3 -3
  63. package/dist/{onboarding.finalize-DFyOM5B6.js → onboarding.finalize-BhPaoWku.js} +6 -6
  64. package/dist/{onboarding.finalize-CS-chLDk.js → onboarding.finalize-CXti-VnH.js} +5 -5
  65. package/dist/{outbound-send-deps-SJCtmIUG.js → outbound-send-deps-CrIPn6Gv.js} +1 -1
  66. package/dist/{pi-embedded-DyKQ3bSU.js → pi-embedded-B16QA3OJ.js} +4 -4
  67. package/dist/{pi-embedded-D_ek_HF_.js → pi-embedded-BhSNemDy.js} +18 -18
  68. package/dist/{pi-embedded-helpers-D3YxFr03.js → pi-embedded-helpers-Dow6Qreh.js} +4 -4
  69. package/dist/{plugin-registry-DBpayaga.js → plugin-registry-7l0uWKmB.js} +1 -1
  70. package/dist/{plugin-registry-Dcizpoio.js → plugin-registry-BMw_9a49.js} +1 -1
  71. package/dist/plugin-sdk/{channel-web-Za6SnC7J.js → channel-web-B715iUQW.js} +2 -2
  72. package/dist/plugin-sdk/index.js +4 -4
  73. package/dist/plugin-sdk/{login-DG-oB1Gg.js → login-BPMBJ2ja.js} +1 -1
  74. package/dist/plugin-sdk/{login-qr-DjYOgNGQ.js → login-qr-gTXEo28v.js} +1 -1
  75. package/dist/plugin-sdk/{reply-CnWG5ty5.js → reply-BCjRFrxS.js} +4 -4
  76. package/dist/plugin-sdk/{session-BO6X9uoj.js → session-CMKy7hKx.js} +8 -3
  77. package/dist/plugin-sdk/{web-DY7ps8Jl.js → web-Dez1c43V.js} +4 -4
  78. package/dist/{plugins-cli-ByM99YMv.js → plugins-cli-BsfnFYsL.js} +2 -2
  79. package/dist/{plugins-cli-Dc9-hwnS.js → plugins-cli-CNB8Yt37.js} +2 -2
  80. package/dist/{program-CxbZh7UH.js → program-CAd9g5sW.js} +7 -7
  81. package/dist/{program-context-BAwPjqcT.js → program-context-_ii-SbA0.js} +17 -17
  82. package/dist/{provider-auth-helpers-iolF14w8.js → provider-auth-helpers-CCnbp35r.js} +1 -1
  83. package/dist/{provider-auth-helpers-BHnRj7nc.js → provider-auth-helpers-D_lWKYII.js} +1 -1
  84. package/dist/{pw-ai-QsOEPS_1.js → pw-ai-Bbd79y0r.js} +1 -1
  85. package/dist/{register.agent-BBVjFp8Y.js → register.agent-BSdFQsCq.js} +7 -7
  86. package/dist/{register.agent-C4IrpTkN.js → register.agent-dQKDHNyK.js} +6 -6
  87. package/dist/{register.configure-aZaemwQh.js → register.configure-BN9zCFxE.js} +6 -6
  88. package/dist/{register.configure-CUZo4Aot.js → register.configure-Bk2X8wFI.js} +6 -6
  89. package/dist/{register.maintenance-k-FF9sjN.js → register.maintenance-COHaTp3w.js} +8 -8
  90. package/dist/{register.maintenance-BUk55ZfL.js → register.maintenance-d-1O5gtF.js} +7 -7
  91. package/dist/{register.message-rDz6Pyj3.js → register.message-CfNc9leD.js} +3 -3
  92. package/dist/{register.message-C85LDxMG.js → register.message-DUrPTA8L.js} +3 -3
  93. package/dist/{register.onboard-DoeqvAhF.js → register.onboard-DtyoTIKL.js} +4 -4
  94. package/dist/{register.onboard-qQ-XzgeJ.js → register.onboard-aCV1lrPF.js} +4 -4
  95. package/dist/{register.setup-BYePf2X9.js → register.setup-Bb73DdhE.js} +4 -4
  96. package/dist/{register.setup-UW5rhwoL.js → register.setup-BgyHWmCs.js} +4 -4
  97. package/dist/{register.status-health-sessions-C7tVEUfl.js → register.status-health-sessions-DLABBIKC.js} +3 -3
  98. package/dist/{register.status-health-sessions-D-e34zX_.js → register.status-health-sessions-OOi_L5uN.js} +3 -3
  99. package/dist/{register.subclis-tuSSdE3-.js → register.subclis-CDZvm5LU.js} +9 -9
  100. package/dist/{reply-jLqhHIBQ.js → reply-D9JN_rwA.js} +4 -4
  101. package/dist/{run-main-B3U7jH0W.js → run-main-BnvBDAQk.js} +14 -14
  102. package/dist/{runner-DED-FFOX.js → runner-oDUAvejt.js} +1 -1
  103. package/dist/{server-node-events-CKA4Mn5e.js → server-node-events-5_nsFo-O.js} +3 -3
  104. package/dist/{server-node-events-CF_WTOvc.js → server-node-events-BHXuG6Pd.js} +3 -3
  105. package/dist/{session-D0vLMCo1.js → session-CP0yShzI.js} +8 -3
  106. package/dist/{session-BrloLgwj.js → session-C__ZeV6y.js} +8 -3
  107. package/dist/{session-EJQdFRC5.js → session-sO1d78EF.js} +8 -3
  108. package/dist/{session-CJ3QUnhn.js → session-zCwG7NHS.js} +8 -3
  109. package/dist/{status-D0bufmRu.js → status-CQB4pZ8j.js} +2 -2
  110. package/dist/{status-DVBJLUIs.js → status-Cuj1dGBb.js} +2 -2
  111. package/dist/{status-DfjRvBXf.js → status-Dnim-lZW.js} +1 -1
  112. package/dist/{status-DrjhxuYR.js → status-TVzePU0v.js} +1 -1
  113. package/dist/{subagent-registry-Do5aAYdm.js → subagent-registry-2rHQ_z7c.js} +4 -4
  114. package/dist/{update-cli-Dz5XBQ_v.js → update-cli-C5qlFKHT.js} +8 -8
  115. package/dist/{update-cli-COHKHs55.js → update-cli-DKb91txa.js} +7 -7
  116. package/dist/{update-runner-rbu-IrlQ.js → update-runner-BOA-zXJF.js} +1 -1
  117. package/dist/{update-runner-DIgoatPE.js → update-runner-D6ZdwFLX.js} +1 -1
  118. package/dist/{web-RzuY5nXI.js → web-B-3vMKvG.js} +8 -8
  119. package/dist/{web-BTK9UUaM.js → web-BCAfeY97.js} +3 -3
  120. package/dist/{web-DIO2jYwG.js → web-CRrtqTfC.js} +3 -3
  121. package/dist/{web-B-mup9LH.js → web-CmgBQX8I.js} +4 -4
  122. package/package.json +2 -1
@@ -223,7 +223,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
223
223
  const { ensureAuthProfileStore } = await import("./auth-profiles-BJAgrkeJ.js").then((n) => n.t);
224
224
  const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-BAg1EsYm.js").then((n) => n.t);
225
225
  const { promptCustomApiConfig } = await import("./onboard-custom-UVH5Bu2c.js").then((n) => n.r);
226
- const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-C3--CpEI.js").then((n) => n.t);
226
+ const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-Uz72AGbr.js").then((n) => n.t);
227
227
  const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-z-KV0yCm.js").then((n) => n.i);
228
228
  const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
229
229
  const authChoiceFromPrompt = opts.authChoice === void 0;
@@ -276,7 +276,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
276
276
  if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
277
277
  else {
278
278
  const { listChannelPlugins } = await import("./plugins-bX81iDy5.js").then((n) => n.i);
279
- const { setupChannels } = await import("./onboard-channels-CTkeYXWn.js").then((n) => n.n);
279
+ const { setupChannels } = await import("./onboard-channels-yzWQkeRm.js").then((n) => n.n);
280
280
  const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
281
281
  nextConfig = await setupChannels(nextConfig, runtime, prompter, {
282
282
  allowSignalInstall: true,
@@ -302,7 +302,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
302
302
  mode
303
303
  });
304
304
  await writeConfigFile(nextConfig);
305
- const { finalizeOnboardingWizard } = await import("./onboarding.finalize-DFyOM5B6.js");
305
+ const { finalizeOnboardingWizard } = await import("./onboarding.finalize-BhPaoWku.js");
306
306
  const { launchedTui } = await finalizeOnboardingWizard({
307
307
  flow,
308
308
  opts,
@@ -13,7 +13,7 @@ import "./config-B4-Vvu6M.js";
13
13
  import "./client-gZv0X5tz.js";
14
14
  import "./call-CeM4F1rK.js";
15
15
  import "./message-channel-CZpVDeRr.js";
16
- import "./subagent-registry-Do5aAYdm.js";
16
+ import "./subagent-registry-2rHQ_z7c.js";
17
17
  import "./sessions-D-LiJehh.js";
18
18
  import "./deliver-a9TlmfSI.js";
19
19
  import "./plugins-bX81iDy5.js";
@@ -74,17 +74,17 @@ import { b as waitForGatewayReachable, f as openUrl, g as resolveControlUiLinks,
74
74
  import "./prompt-style-Ws1ofeXe.js";
75
75
  import "./pairing-labels-DKrwGHA2.js";
76
76
  import "./note-Ct8WrG6i.js";
77
- import "./register.subclis-tuSSdE3-.js";
78
- import "./command-registry-Zu61QmVf.js";
77
+ import "./register.subclis-CDZvm5LU.js";
78
+ import "./command-registry-BliDXGVX.js";
79
79
  import "./program-context-D2pNx-CZ.js";
80
- import { r as installCompletion } from "./completion-cli-C-q-FkeT.js";
80
+ import { r as installCompletion } from "./completion-cli-Cu-1Snpp.js";
81
81
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-EMOzgA87.js";
82
82
  import { r as isSystemdUserServiceAvailable } from "./systemd-CVU50TYA.js";
83
83
  import { t as resolveGatewayService } from "./service-w3KJVv_J.js";
84
- import { r as healthCommand } from "./health-CZTNBGMI.js";
84
+ import { r as healthCommand } from "./health-BLNgO5Lg.js";
85
85
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DTeWMjr_.js";
86
86
  import { t as formatHealthCheckFailure } from "./health-format-DywI-BlJ.js";
87
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-CHjJchGS.js";
87
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-Bnz5cgZw.js";
88
88
  import { t as runTui } from "./tui-D-iLwVbO.js";
89
89
  import os from "node:os";
90
90
  import path from "node:path";
@@ -1,7 +1,7 @@
1
1
  import "./paths-B4BZAPZh.js";
2
2
  import { b as resolveUserPath, g as pathExists } from "./utils-CFnnyoTP.js";
3
3
  import "./pi-embedded-helpers-DwIwt1C1.js";
4
- import "./reply-jLqhHIBQ.js";
4
+ import "./reply-D9JN_rwA.js";
5
5
  import { f as restoreTerminalState } from "./subsystem-azPHgTb4.js";
6
6
  import "./exec-V7mqHC8U.js";
7
7
  import { m as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-aaTVOkax.js";
@@ -76,16 +76,16 @@ import "./nodes-screen-C6Rc35Bb.js";
76
76
  import "./control-service-CVqGIdhP.js";
77
77
  import "./channel-selection-CuBUJwMM.js";
78
78
  import "./delivery-queue-BX5ZlJ58.js";
79
- import "./program-context-BAwPjqcT.js";
79
+ import "./program-context-_ii-SbA0.js";
80
80
  import "./note-DHzyZ-eO.js";
81
- import { r as installCompletion } from "./completion-cli-sZBZnfMK.js";
81
+ import { r as installCompletion } from "./completion-cli-BCKnCxmp.js";
82
82
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-B5iGPA1t.js";
83
83
  import { r as isSystemdUserServiceAvailable } from "./systemd-X4GdkNmX.js";
84
84
  import { t as resolveGatewayService } from "./service-DZTikQY3.js";
85
- import { r as healthCommand } from "./health-B7GSkRWi.js";
85
+ import { r as healthCommand } from "./health-5OQ86AsB.js";
86
86
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BvFVs4xo.js";
87
87
  import { t as formatHealthCheckFailure } from "./health-format-PRKB0nJ1.js";
88
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-I1dEiTU-.js";
88
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-DNqw5VHX.js";
89
89
  import { t as runTui } from "./tui-BmldZRMh.js";
90
90
  import os from "node:os";
91
91
  import path from "node:path";
@@ -2,7 +2,7 @@
2
2
  function createDefaultDeps() {
3
3
  return {
4
4
  sendMessageWhatsApp: async (...args) => {
5
- const { sendMessageWhatsApp } = await import("./web-DIO2jYwG.js");
5
+ const { sendMessageWhatsApp } = await import("./web-CRrtqTfC.js");
6
6
  return await sendMessageWhatsApp(...args);
7
7
  },
8
8
  sendMessageTelegram: async (...args) => {
@@ -42136,7 +42136,7 @@ function createWhatsAppLoginTool() {
42136
42136
  force: Type.Optional(Type.Boolean())
42137
42137
  }),
42138
42138
  execute: async (_toolCallId, args) => {
42139
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-LM0fkvty.js");
42139
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-C9eD5pGf.js");
42140
42140
  if ((args?.action ?? "start") === "wait") {
42141
42141
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
42142
42142
  return {
@@ -57133,15 +57133,15 @@ function loadWebOutbound() {
57133
57133
  return webOutboundPromise;
57134
57134
  }
57135
57135
  function loadWebLogin() {
57136
- webLoginPromise ??= import("./login-CFjSEIg1.js").then((n) => n.n);
57136
+ webLoginPromise ??= import("./login-DfLZ1ase.js").then((n) => n.n);
57137
57137
  return webLoginPromise;
57138
57138
  }
57139
57139
  function loadWebLoginQr() {
57140
- webLoginQrPromise ??= import("./login-qr-LM0fkvty.js");
57140
+ webLoginQrPromise ??= import("./login-qr-C9eD5pGf.js");
57141
57141
  return webLoginQrPromise;
57142
57142
  }
57143
57143
  function loadWebChannel() {
57144
- webChannelPromise ??= import("./web-BTK9UUaM.js");
57144
+ webChannelPromise ??= import("./web-BCAfeY97.js");
57145
57145
  return webChannelPromise;
57146
57146
  }
57147
57147
  function loadWhatsAppActions() {
@@ -5,17 +5,17 @@ import { $ as sliceUtf16Safe, A as matchPluginCommand, B as isPlainObject, C as
5
5
  import { B as markAuthProfileGood, C as resolveApiKeyForProvider, E as getShellPathFromLoginShell, F as isProfileInCooldown, H as resolveAuthStorePathForDisplay, I as markAuthProfileFailure, J as DEFAULT_CONTEXT_TOKENS, K as normalizeSecretInput, L as markAuthProfileUsed, M as parseBooleanValue$1, O as resolveShellEnvFallbackTimeoutMs, P as resolveAuthProfileOrder, R as resolveApiKeyForProfile, S as requireApiKey, T as resolveModelAuthMode, U as resolveOpenClawAgentDir, V as ensureAuthProfileStore, W as withFileLock$1, X as DEFAULT_PROVIDER, Y as DEFAULT_MODEL, a as modelKey, b as getApiKeyForModel, d as resolveModelRefFromString, f as resolveThinkingDefault, i as isCliProvider, j as isTruthyEnvValue, l as resolveConfiguredModelRef, n as buildConfiguredAllowlistKeys, o as normalizeModelRef, q as resolveAuthProfileDisplayLabel, r as buildModelAliasIndex, s as normalizeProviderId, t as buildAllowedModelSet, u as resolveDefaultModelForAgent, v as OLLAMA_NATIVE_BASE_URL, w as resolveEnvApiKey, x as getCustomProviderApiKey, y as createOllamaStreamFn, z as listProfilesForProvider } from "./model-selection-Cb6822pn.js";
6
6
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-DZwwYztr.js";
7
7
  import { n as resolveCliName, t as formatCliCommand } from "./command-format-qUVxzqYm.js";
8
- import { A as SILENT_REPLY_TOKEN, C as parseReplyDirectives, D as getGlobalHookRunner, E as parseInlineDirectives$1, O as initializeGlobalHookRunner, S as throwIfAborted, T as splitMediaFromOutput, _ as streamSignalEvents, a as applyReplyThreading, b as normalizeChannelTargetInput, c as shouldSuppressMessagingToolReplies, d as sendMessageSignal, f as sendReadReceiptSignal, g as signalRpcRequest, h as signalCheck, i as applyReplyTagsToPayload, j as isSilentReplyText, k as HEARTBEAT_TOKEN, l as createReplyToModeFilterForChannel, m as resolveSignalRpcContext, o as filterMessagingToolDuplicates, p as sendTypingSignal, r as normalizeReplyPayloadsForDelivery, s as isRenderablePayload, t as deliverOutboundPayloads, u as resolveReplyToMode, v as resolveOutboundAttachmentFromUrl, w as MEDIA_TOKEN_RE, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-DOrBYvPC.js";
8
+ import { A as SILENT_REPLY_TOKEN, C as parseReplyDirectives, D as getGlobalHookRunner, E as parseInlineDirectives$1, O as initializeGlobalHookRunner, S as throwIfAborted, T as splitMediaFromOutput, _ as streamSignalEvents, a as applyReplyThreading, b as normalizeChannelTargetInput, c as shouldSuppressMessagingToolReplies, d as sendMessageSignal, f as sendReadReceiptSignal, g as signalRpcRequest, h as signalCheck, i as applyReplyTagsToPayload, j as isSilentReplyText, k as HEARTBEAT_TOKEN, l as createReplyToModeFilterForChannel, m as resolveSignalRpcContext, o as filterMessagingToolDuplicates, p as sendTypingSignal, r as normalizeReplyPayloadsForDelivery, s as isRenderablePayload, t as deliverOutboundPayloads, u as resolveReplyToMode, v as resolveOutboundAttachmentFromUrl, w as MEDIA_TOKEN_RE, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-C7HjLIB7.js";
9
9
  import { A as normalizeMimeType$1, B as listTelegramAccountIds, C as detectMime, D as isAudioFileName, E as imageMimeFromFormat, F as listChannelPlugins, H as resolveTelegramToken, I as normalizeChannelId$1, J as normalizeChatType, K as resolveSlackAppToken, L as isWhatsAppGroupJid, M as maxBytesForKind, N as mediaKindFromMime, O as isGifMedia, P as getChannelPlugin, R as normalizeWhatsAppTarget, S as GATEWAY_CLIENT_NAMES, T as getFileExtension, U as listBindings, V as resolveTelegramAccount, W as resolveSlackAccount, X as resolveDiscordAccount, Y as listEnabledDiscordAccounts, Z as normalizeDiscordToken, _ as normalizeMessageChannel, a as resizeToJpeg, b as GATEWAY_CLIENT_IDS, f as INTERNAL_MESSAGE_CHANNEL, g as listDeliverableMessageChannels, h as isMarkdownCapableMessageChannel, j as MAX_IMAGE_BYTES, l as isBlockedHostname, m as isInternalMessageChannel, n as getImageMetadata, o as SsrFBlockedError, p as isDeliverableMessageChannel, q as resolveSlackBotToken, u as isPrivateIpAddress, v as resolveGatewayMessageChannel, w as extensionForMime, x as GATEWAY_CLIENT_MODES, y as resolveMessageChannel, z as listEnabledTelegramAccounts } from "./image-ops-B9jnR447.js";
10
10
  import { A as resolveAgentMaxConcurrent, B as readWebSelfId, C as setConfigOverride, D as setConfigValueAtPath, E as parseConfigPath, F as logWebSelfId, I as logoutWeb, M as resolveWhatsAppAccount, O as unsetConfigValueAtPath, P as getWebAuthAgeMs, S as resetConfigOverrides, T as getConfigValueAtPath, W as webAuthExists, _ as applyTestPluginDefaults, a as writeConfigFile, b as resolveMemorySlotDecision, c as TELEGRAM_COMMAND_NAME_PATTERN, d as parseDurationMs, f as validateJsonSchemaValue, i as resolveConfigSnapshotHash, j as VERSION, k as isSafeExecutableValue, l as normalizeTelegramCommandName, m as discoverOpenClawPlugins, n as loadConfig, o as validateConfigObjectWithPlugins, p as loadPluginManifestRegistry, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as normalizePluginsConfig, w as unsetConfigOverride, x as getConfigOverrides, y as resolveEnableState } from "./config-Ejc5JKGl.js";
11
- import { $t as buildPluginToolGroups, A as isBillingAssistantError, At as createBrowserRouteContext, B as isTransientHttpError, Bt as buildWorkspaceSkillSnapshot, C as BILLING_ERROR_USER_MESSAGE, Ct as listChannelDocks, D as formatRawAssistantErrorForUi, Dt as resolveChannelGroupToolsPolicy, E as formatBillingErrorMessage, Et as resolveChannelGroupRequireMention, F as isFailoverErrorMessage, Ft as saveMediaBuffer, G as resolveSandboxContext, Gt as assertSandboxPath, H as parseImageSizeError, Ht as resolveSkillsPromptForRun, I as isLikelyContextOverflowError, It as DEFAULT_UPLOAD_DIR, J as appendAssistantMessageToSessionTranscript, Jt as applySkillEnvOverridesFromSnapshot, K as resolveSandboxRuntimeStatus, Kt as resolveSandboxedMediaSource, L as isRateLimitAssistantError, Lt as resolvePathsWithinRoot, M as isCompactionFailureError, Mt as resolveBrowserConfig, N as isContextOverflowError, Nt as resolveProfile, O as getApiErrorPayloadFingerprint, Ot as resolveConversationLabel, P as isFailoverAssistantError, Pt as getMediaDir, Q as recordSessionMetaFromInbound, Qt as applyOwnerOnlyToolPolicy, R as isRawApiErrorPayload, Rt as getBridgeAuthForPort, S as isGoogleModelApi, St as getChannelDock, T as formatAssistantErrorText, Tt as resolveChannelGroupPolicy, U as sanitizeUserFacingText, Ut as resolvePluginSkillDirs, V as parseImageDimensionError, Vt as loadWorkspaceSkillEntries, W as ensureSandboxWorkspaceForSession, Wt as assertMediaNotDataUrl, X as loadSessionStore, Xt as resolveBrowserControlAuth, Yt as ensureBrowserControlAuth, Z as readSessionUpdatedAt, Zt as resolveSandboxConfigForAgent, _ as sanitizeSessionMessagesImages, _t as DEFAULT_RESET_TRIGGERS, a as formatXHighModelHint, an as resolveToolProfilePolicy, at as deliveryContextFromSession, b as downgradeOpenAIReasoningBlocks, bt as resolveMainSessionKey, c as normalizeReasoningLevel, cn as matchesAnyGlobPattern, ct as normalizeDeliveryContext, d as normalizeVerboseLevel, dn as resolveBootstrapMaxChars, dt as resolveSessionKey$1, en as collectExplicitAllowlist, et as updateLastRoute, f as resolveResponseUsageMode, fn as resolveBootstrapTotalMaxChars, ft as evaluateSessionFreshness, g as normalizeTextForComparison, gt as resolveThreadFlag, h as isMessagingToolDuplicateNormalized, hn as resolveSignalAccount, ht as resolveSessionResetType, i as formatThinkingLevels, in as normalizeToolName, it as resolveCacheTtlMs$1, j as isCloudCodeAssistFormatError, jt as registerBrowserRoutes, k as isAuthAssistantError, kt as resolveGroupSessionKey, l as normalizeThinkLevel, ln as buildBootstrapContextFiles, lt as normalizeSessionDeliveryFields, mn as listEnabledSignalAccounts, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nn as expandToolGroups, nt as updateSessionStoreEntry, o as listThinkingLevels, on as stripPluginOnlyAllowlist, ot as deliveryContextKey, p as supportsXHighThinking, pn as sanitizeGoogleTurnOrdering, pt as resolveChannelResetConfig, q as extractDeliveryInfo, qt as applySkillEnvOverrides, r as pickFallbackThinkingLevel, rn as mergeAlsoAllowPolicy, rt as isCacheEnabled, s as normalizeElevatedLevel, sn as compileGlobPatterns, st as mergeDeliveryContext, t as validateAnthropicTurns, tn as expandPolicyWithPluginGroups, tt as updateSessionStore, u as normalizeUsageDisplay, un as ensureSessionHeader, ut as acquireSessionWriteLock, v as extractToolCallsFromAssistant, vt as resolveFreshSessionTotalTokens, w as classifyFailoverReason, wt as resolveIMessageAccount, x as isAntigravityClaude, xt as deriveSessionMetaPatch, y as extractToolResultId, yt as canonicalizeMainSessionAlias, z as isTimeoutErrorMessage, zt as buildWorkspaceSkillCommandSpecs } from "./pi-embedded-helpers-D3YxFr03.js";
11
+ import { $t as buildPluginToolGroups, A as isBillingAssistantError, At as createBrowserRouteContext, B as isTransientHttpError, Bt as buildWorkspaceSkillSnapshot, C as BILLING_ERROR_USER_MESSAGE, Ct as listChannelDocks, D as formatRawAssistantErrorForUi, Dt as resolveChannelGroupToolsPolicy, E as formatBillingErrorMessage, Et as resolveChannelGroupRequireMention, F as isFailoverErrorMessage, Ft as saveMediaBuffer, G as resolveSandboxContext, Gt as assertSandboxPath, H as parseImageSizeError, Ht as resolveSkillsPromptForRun, I as isLikelyContextOverflowError, It as DEFAULT_UPLOAD_DIR, J as appendAssistantMessageToSessionTranscript, Jt as applySkillEnvOverridesFromSnapshot, K as resolveSandboxRuntimeStatus, Kt as resolveSandboxedMediaSource, L as isRateLimitAssistantError, Lt as resolvePathsWithinRoot, M as isCompactionFailureError, Mt as resolveBrowserConfig, N as isContextOverflowError, Nt as resolveProfile, O as getApiErrorPayloadFingerprint, Ot as resolveConversationLabel, P as isFailoverAssistantError, Pt as getMediaDir, Q as recordSessionMetaFromInbound, Qt as applyOwnerOnlyToolPolicy, R as isRawApiErrorPayload, Rt as getBridgeAuthForPort, S as isGoogleModelApi, St as getChannelDock, T as formatAssistantErrorText, Tt as resolveChannelGroupPolicy, U as sanitizeUserFacingText, Ut as resolvePluginSkillDirs, V as parseImageDimensionError, Vt as loadWorkspaceSkillEntries, W as ensureSandboxWorkspaceForSession, Wt as assertMediaNotDataUrl, X as loadSessionStore, Xt as resolveBrowserControlAuth, Yt as ensureBrowserControlAuth, Z as readSessionUpdatedAt, Zt as resolveSandboxConfigForAgent, _ as sanitizeSessionMessagesImages, _t as DEFAULT_RESET_TRIGGERS, a as formatXHighModelHint, an as resolveToolProfilePolicy, at as deliveryContextFromSession, b as downgradeOpenAIReasoningBlocks, bt as resolveMainSessionKey, c as normalizeReasoningLevel, cn as matchesAnyGlobPattern, ct as normalizeDeliveryContext, d as normalizeVerboseLevel, dn as resolveBootstrapMaxChars, dt as resolveSessionKey$1, en as collectExplicitAllowlist, et as updateLastRoute, f as resolveResponseUsageMode, fn as resolveBootstrapTotalMaxChars, ft as evaluateSessionFreshness, g as normalizeTextForComparison, gt as resolveThreadFlag, h as isMessagingToolDuplicateNormalized, hn as resolveSignalAccount, ht as resolveSessionResetType, i as formatThinkingLevels, in as normalizeToolName, it as resolveCacheTtlMs$1, j as isCloudCodeAssistFormatError, jt as registerBrowserRoutes, k as isAuthAssistantError, kt as resolveGroupSessionKey, l as normalizeThinkLevel, ln as buildBootstrapContextFiles, lt as normalizeSessionDeliveryFields, mn as listEnabledSignalAccounts, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nn as expandToolGroups, nt as updateSessionStoreEntry, o as listThinkingLevels, on as stripPluginOnlyAllowlist, ot as deliveryContextKey, p as supportsXHighThinking, pn as sanitizeGoogleTurnOrdering, pt as resolveChannelResetConfig, q as extractDeliveryInfo, qt as applySkillEnvOverrides, r as pickFallbackThinkingLevel, rn as mergeAlsoAllowPolicy, rt as isCacheEnabled, s as normalizeElevatedLevel, sn as compileGlobPatterns, st as mergeDeliveryContext, t as validateAnthropicTurns, tn as expandPolicyWithPluginGroups, tt as updateSessionStore, u as normalizeUsageDisplay, un as ensureSessionHeader, ut as acquireSessionWriteLock, v as extractToolCallsFromAssistant, vt as resolveFreshSessionTotalTokens, w as classifyFailoverReason, wt as resolveIMessageAccount, x as isAntigravityClaude, xt as deriveSessionMetaPatch, y as extractToolResultId, yt as canonicalizeMainSessionAlias, z as isTimeoutErrorMessage, zt as buildWorkspaceSkillCommandSpecs } from "./pi-embedded-helpers-Dow6Qreh.js";
12
12
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DWTTaAgY.js";
13
- import { C as pickPrimaryTailnetIPv4, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as pickPrimaryLanIPv4, b as rawDataToString, v as ensureChromeExtensionRelayServer } from "./chrome-BR14_3nU.js";
13
+ import { C as pickPrimaryTailnetIPv4, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as pickPrimaryLanIPv4, b as rawDataToString, v as ensureChromeExtensionRelayServer } from "./chrome-B2PpxswT.js";
14
14
  import { n as formatErrorMessage, r as formatUncaughtError, t as extractErrorCode } from "./errors-B8y79jwX.js";
15
15
  import { a as resolveSessionTranscriptPathInDir, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath } from "./paths-CdHoK26P.js";
16
16
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-BiU0SOrl.js";
17
17
  import { n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-IRIIkjuN.js";
18
- import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as ensureOpenClawModelsJson, y as resolveToolDisplay } from "./image-CIO7-OG5.js";
18
+ import { _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as ensureOpenClawModelsJson, y as resolveToolDisplay } from "./image-CRFk69Io.js";
19
19
  import { i as resolveMemorySearchConfig, n as resolveRetryConfig, r as retryAsync } from "./manager-CyBrtpKf.js";
20
20
  import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-CUiUMvKy.js";
21
21
  import { t as redactSensitiveText } from "./redact-DO22U0Pj.js";
@@ -24,7 +24,7 @@ import { _ as findFenceSpanAt, a as loadWebMedia, c as resolveMarkdownTableMode,
24
24
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-CmZi0_-L.js";
25
25
  import { i as fetchWithSsrFGuard, n as fetchRemoteMedia, r as readResponseWithLimit } from "./fetch-CE6hQpN5.js";
26
26
  import { a as normalizePollDurationHours, i as convertMarkdownTables, o as normalizePollInput, s as renderMarkdownWithMarkers, t as getActiveWebListener } from "./active-listener-B5CpzLkd.js";
27
- import { _ as applyTemplate, a as runCapability, c as modelSupportsVision, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as findModelInCatalog, p as resolveTimeoutMs$1, r as normalizeMediaAttachments, s as loadModelCatalog, t as buildProviderRegistry, u as resolveAttachmentKind } from "./runner-DED-FFOX.js";
27
+ import { _ as applyTemplate, a as runCapability, c as modelSupportsVision, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as findModelInCatalog, p as resolveTimeoutMs$1, r as normalizeMediaAttachments, s as loadModelCatalog, t as buildProviderRegistry, u as resolveAttachmentKind } from "./runner-oDUAvejt.js";
28
28
  import { t as resolveFetch } from "./fetch-DvufHSTX.js";
29
29
  import { t as makeProxyFetch } from "./proxy-_LH9fwZb.js";
30
30
  import { createRequire } from "node:module";
@@ -47,7 +47,7 @@ import AjvPkg from "ajv";
47
47
  import process$1 from "node:process";
48
48
  import * as net$1 from "node:net";
49
49
  import { createServer } from "node:http";
50
- import WebSocket$1, { WebSocket } from "ws";
50
+ import WebSocket, { WebSocket as WebSocket$1 } from "ws";
51
51
  import { Buffer as Buffer$1 } from "node:buffer";
52
52
  import { createJiti } from "jiti";
53
53
  import { Type } from "@sinclair/typebox";
@@ -7260,7 +7260,7 @@ var GatewayClient = class {
7260
7260
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
7261
7261
  });
7262
7262
  }
7263
- this.ws = new WebSocket(url, wsOptions);
7263
+ this.ws = new WebSocket$1(url, wsOptions);
7264
7264
  this.ws.on("open", () => {
7265
7265
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
7266
7266
  const tlsError = this.validateTlsFingerprint();
@@ -7463,7 +7463,7 @@ var GatewayClient = class {
7463
7463
  return null;
7464
7464
  }
7465
7465
  async request(method, params, opts) {
7466
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
7466
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
7467
7467
  const id = randomUUID();
7468
7468
  const frame = {
7469
7469
  type: "req",
@@ -8548,7 +8548,7 @@ async function routeReply(params) {
8548
8548
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
8549
8549
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
8550
8550
  try {
8551
- const { deliverOutboundPayloads } = await import("./deliver-DOrBYvPC.js").then((n) => n.n);
8551
+ const { deliverOutboundPayloads } = await import("./deliver-C7HjLIB7.js").then((n) => n.n);
8552
8552
  return {
8553
8553
  ok: true,
8554
8554
  messageId: (await deliverOutboundPayloads({
@@ -40005,7 +40005,7 @@ async function deliverSessionMaintenanceWarning(params) {
40005
40005
  return;
40006
40006
  }
40007
40007
  try {
40008
- const { deliverOutboundPayloads } = await import("./deliver-DOrBYvPC.js").then((n) => n.n);
40008
+ const { deliverOutboundPayloads } = await import("./deliver-C7HjLIB7.js").then((n) => n.n);
40009
40009
  await deliverOutboundPayloads({
40010
40010
  cfg: params.cfg,
40011
40011
  channel,
@@ -45656,7 +45656,7 @@ async function describeStickerImage(params) {
45656
45656
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
45657
45657
  try {
45658
45658
  const buffer = await fs$1.readFile(imagePath);
45659
- const { describeImageWithModel } = await import("./image-CIO7-OG5.js").then((n) => n.n);
45659
+ const { describeImageWithModel } = await import("./image-CRFk69Io.js").then((n) => n.n);
45660
45660
  return (await describeImageWithModel({
45661
45661
  buffer,
45662
45662
  fileName: "sticker.webp",
@@ -46018,7 +46018,7 @@ function createWhatsAppLoginTool() {
46018
46018
  force: Type.Optional(Type.Boolean())
46019
46019
  }),
46020
46020
  execute: async (_toolCallId, args) => {
46021
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CmkMkiw0.js");
46021
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-Cq7e7xsV.js");
46022
46022
  if ((args?.action ?? "start") === "wait") {
46023
46023
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
46024
46024
  return {
@@ -47824,7 +47824,7 @@ async function preflightDiscordMessage(params) {
47824
47824
  let preflightTranscript;
47825
47825
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
47826
47826
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
47827
- const { transcribeFirstAudio } = await import("./audio-preflight-CeC5WuRi.js");
47827
+ const { transcribeFirstAudio } = await import("./audio-preflight-kYQdd_bY.js");
47828
47828
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
47829
47829
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
47830
47830
  ctx: {
@@ -50597,7 +50597,7 @@ function createDiscordGatewayPlugin(params) {
50597
50597
  super(options);
50598
50598
  }
50599
50599
  createWebSocket(url) {
50600
- return new WebSocket$1(url, { agent });
50600
+ return new WebSocket(url, { agent });
50601
50601
  }
50602
50602
  }
50603
50603
  return new ProxyGatewayPlugin();
@@ -59159,7 +59159,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
59159
59159
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
59160
59160
  let preflightTranscript;
59161
59161
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
59162
- const { transcribeFirstAudio } = await import("./audio-preflight-CeC5WuRi.js");
59162
+ const { transcribeFirstAudio } = await import("./audio-preflight-kYQdd_bY.js");
59163
59163
  preflightTranscript = await transcribeFirstAudio({
59164
59164
  ctx: {
59165
59165
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -61235,15 +61235,15 @@ function loadWebOutbound() {
61235
61235
  return webOutboundPromise;
61236
61236
  }
61237
61237
  function loadWebLogin() {
61238
- webLoginPromise ??= import("./login-CrD6iwIT.js").then((n) => n.n);
61238
+ webLoginPromise ??= import("./login-Bub9YVmf.js").then((n) => n.n);
61239
61239
  return webLoginPromise;
61240
61240
  }
61241
61241
  function loadWebLoginQr() {
61242
- webLoginQrPromise ??= import("./login-qr-CmkMkiw0.js");
61242
+ webLoginQrPromise ??= import("./login-qr-Cq7e7xsV.js");
61243
61243
  return webLoginQrPromise;
61244
61244
  }
61245
61245
  function loadWebChannel() {
61246
- webChannelPromise ??= import("./web-RzuY5nXI.js");
61246
+ webChannelPromise ??= import("./web-B-3vMKvG.js");
61247
61247
  return webChannelPromise;
61248
61248
  }
61249
61249
  function loadWhatsAppActions() {
@@ -5,7 +5,7 @@ import { G as isPidAlive, M as parseBooleanValue } from "./model-selection-Cb682
5
5
  import { t as formatCliCommand } from "./command-format-qUVxzqYm.js";
6
6
  import { C as detectMime, G as resolveSlackReplyToMode, I as normalizeChannelId, J as normalizeChatType, R as normalizeWhatsAppTarget, V as resolveTelegramAccount, W as resolveSlackAccount, X as resolveDiscordAccount, _ as normalizeMessageChannel, a as resizeToJpeg, g as listDeliverableMessageChannels, n as getImageMetadata, w as extensionForMime } from "./image-ops-B9jnR447.js";
7
7
  import { M as resolveWhatsAppAccount, a as writeConfigFile, b as resolveMemorySlotDecision, d as parseDurationMs, g as MANIFEST_KEY, h as LEGACY_MANIFEST_KEYS, n as loadConfig, p as loadPluginManifestRegistry, s as parseByteSize, t as createConfigIO, v as normalizePluginsConfig, y as resolveEnableState } from "./config-Ejc5JKGl.js";
8
- import { A as DEFAULT_OPENCLAW_BROWSER_ENABLED, D as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, O as DEFAULT_BROWSER_EVALUATE_ENABLED, T as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, a as resolveOpenClawUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, h as fetchOk, i as launchOpenClawChrome, j as DEFAULT_OPENCLAW_BROWSER_PROFILE_NAME, k as DEFAULT_OPENCLAW_BROWSER_COLOR, l as createTargetViaCdp, m as fetchJson, n as isChromeCdpReady, o as stopOpenClawChrome, p as appendCdpPath, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as ensureChromeExtensionRelayServer, w as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, x as isLoopbackHost, y as stopChromeExtensionRelayServer } from "./chrome-BR14_3nU.js";
8
+ import { A as DEFAULT_OPENCLAW_BROWSER_ENABLED, D as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, E as DEFAULT_AI_SNAPSHOT_MAX_CHARS, O as DEFAULT_BROWSER_EVALUATE_ENABLED, T as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, a as resolveOpenClawUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, h as fetchOk, i as launchOpenClawChrome, j as DEFAULT_OPENCLAW_BROWSER_PROFILE_NAME, k as DEFAULT_OPENCLAW_BROWSER_COLOR, l as createTargetViaCdp, m as fetchJson, n as isChromeCdpReady, o as stopOpenClawChrome, p as appendCdpPath, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as ensureChromeExtensionRelayServer, w as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, x as isLoopbackHost, y as stopChromeExtensionRelayServer } from "./chrome-B2PpxswT.js";
9
9
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-B8y79jwX.js";
10
10
  import { n as resolveSessionFilePath, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-CdHoK26P.js";
11
11
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-BiU0SOrl.js";
@@ -1708,7 +1708,7 @@ function isModuleNotFoundError(err) {
1708
1708
  }
1709
1709
  async function loadPwAiModule(mode) {
1710
1710
  try {
1711
- return await import("./pw-ai-QsOEPS_1.js");
1711
+ return await import("./pw-ai-Bbd79y0r.js");
1712
1712
  } catch (err) {
1713
1713
  if (mode === "soft") return null;
1714
1714
  if (isModuleNotFoundError(err)) return null;
@@ -4135,11 +4135,11 @@ function createProfileContext(opts, profile) {
4135
4135
  const userDataDir = resolveOpenClawUserDataDir(profile.name);
4136
4136
  const profileState = getProfileState();
4137
4137
  if (await isHttpReachable(300) && !profileState.running) try {
4138
- await (await import("./pw-ai-QsOEPS_1.js")).closePlaywrightBrowserConnection();
4138
+ await (await import("./pw-ai-Bbd79y0r.js")).closePlaywrightBrowserConnection();
4139
4139
  } catch {}
4140
4140
  if (profileState.running) await stopRunningBrowser();
4141
4141
  try {
4142
- await (await import("./pw-ai-QsOEPS_1.js")).closePlaywrightBrowserConnection();
4142
+ await (await import("./pw-ai-Bbd79y0r.js")).closePlaywrightBrowserConnection();
4143
4143
  } catch {}
4144
4144
  if (!fs.existsSync(userDataDir)) return {
4145
4145
  moved: false,
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { j as getActivePluginRegistry, o as createSubsystemLogger } from "./entry.js";
3
3
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-D47kRViK.js";
4
4
  import { i as loadConfig } from "./config-B4-Vvu6M.js";
5
- import { h as loadOpenClawPlugins } from "./subagent-registry-Do5aAYdm.js";
5
+ import { h as loadOpenClawPlugins } from "./subagent-registry-2rHQ_z7c.js";
6
6
 
7
7
  //#region src/cli/plugin-registry.ts
8
8
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { kt as loadOpenClawPlugins } from "./reply-jLqhHIBQ.js";
2
+ import { kt as loadOpenClawPlugins } from "./reply-D9JN_rwA.js";
3
3
  import { E as getActivePluginRegistry, t as createSubsystemLogger } from "./subsystem-azPHgTb4.js";
4
4
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-aaTVOkax.js";
5
5
  import { i as loadConfig } from "./config-Cdu_GkcK.js";
@@ -1,4 +1,4 @@
1
- import { A as finalizeInboundContext, Ct as normalizeMentionText, H as recordChannelActivity, Ht as createDedupeCache, S as shouldComputeCommandAuthorized, St as buildMentionRegexes, Xt as resolveIdentityNamePrefix, Zt as resolveMessagePrefix, _ as createInboundDebouncer, b as resolveEnvelopeFormatOptions, c as computeBackoff, d as upsertChannelPairingRequest, dt as resolveMentionGating, et as formatLocationText, f as buildPairingReply, g as dispatchReplyWithBufferedBlockDispatcher, gt as buildHistoryContextFromEntries, h as formatDurationPrecise, ht as DEFAULT_GROUP_HISTORY_LIMIT, k as enqueueSystemEvent, l as sleepWithAbort, m as resolveAgentRoute, n as normalizeGroupActivation, ot as createReplyPrefixOptions, p as buildAgentSessionKey, r as parseActivationCommand, t as getReplyFromConfig, tt as toLocationContext, u as readChannelAllowFromStore, ut as shouldAckReactionForWhatsApp, v as resolveInboundDebounceMs, x as hasControlCommand, xt as recordPendingHistoryEntryIfEnabled, y as formatInboundEnvelope } from "./reply-CnWG5ty5.js";
1
+ import { A as finalizeInboundContext, Ct as normalizeMentionText, H as recordChannelActivity, Ht as createDedupeCache, S as shouldComputeCommandAuthorized, St as buildMentionRegexes, Xt as resolveIdentityNamePrefix, Zt as resolveMessagePrefix, _ as createInboundDebouncer, b as resolveEnvelopeFormatOptions, c as computeBackoff, d as upsertChannelPairingRequest, dt as resolveMentionGating, et as formatLocationText, f as buildPairingReply, g as dispatchReplyWithBufferedBlockDispatcher, gt as buildHistoryContextFromEntries, h as formatDurationPrecise, ht as DEFAULT_GROUP_HISTORY_LIMIT, k as enqueueSystemEvent, l as sleepWithAbort, m as resolveAgentRoute, n as normalizeGroupActivation, ot as createReplyPrefixOptions, p as buildAgentSessionKey, r as parseActivationCommand, t as getReplyFromConfig, tt as toLocationContext, u as readChannelAllowFromStore, ut as shouldAckReactionForWhatsApp, v as resolveInboundDebounceMs, x as hasControlCommand, xt as recordPendingHistoryEntryIfEnabled, y as formatInboundEnvelope } from "./reply-BCjRFrxS.js";
2
2
  import { B as isSelfChatMode, G as resolveJidToE164, H as normalizeE164, M as clamp, Q as toWhatsappJid, V as jidToE164, X as sleep, f as defaultRuntime, it as shouldLogVerbose, l as createSubsystemLogger, nt as logVerbose, ut as getChildLogger, x as normalizeChatChannelId } from "./exec-C5lqk9X4.js";
3
3
  import { M as getWebAuthAgeMs, R as readWebSelfId, k as resolveWhatsAppAccount, n as loadConfig } from "./config-DelXkt58.js";
4
4
  import { D as buildAgentMainSessionKey, E as DEFAULT_MAIN_KEY, M as normalizeAgentId, k as buildGroupHistoryKey } from "./agent-scope-ip6rBrUD.js";
@@ -9,7 +9,7 @@ import { i as convertMarkdownTables, r as setActiveWebListener } from "./active-
9
9
  import { _ as loadWebMedia, c as chunkMarkdownTextWithMode, d as resolveChunkMode, f as resolveTextChunkLimit, i as resolveMarkdownTableMode, y as getAgentScopedMediaLocalRoots } from "./ir-BEwiHV7R.js";
10
10
  import { d as registerUnhandledRejectionHandler } from "./runner-DxPwS4ed.js";
11
11
  import { i as markdownToWhatsApp, r as sendReactionWhatsApp } from "./outbound-DT2nH6dY.js";
12
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-BO6X9uoj.js";
12
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-CMKy7hKx.js";
13
13
  import { randomUUID } from "node:crypto";
14
14
  import { DisconnectReason, downloadMediaMessage, extractMessageContent, getContentType, isJidGroup, normalizeMessageContent } from "@whiskeysockets/baileys";
15
15
 
@@ -1,4 +1,4 @@
1
- import { $ as resolveControlCommandGate, $t as BLUEBUBBLES_ACTIONS, At as resolveNestedAllowlistDecision, B as resolveDiscordChannelAllowlist, Bt as readRequestBodyWithLimit, D as createReceiptCard, Dt as normalizeChannelSlug, E as stripMarkdown, Et as buildChannelKeyCandidates, F as parseChatTargetPrefixesOrThrow, Ft as DEFAULT_WEBHOOK_MAX_BODY_BYTES, G as emitDiagnosticEvent, Gt as pruneExpiredPending, Ht as createDedupeCache, I as resolveServicePrefixedAllowTarget, It as RequestBodyLimitError, J as missingTargetError, Jt as writeJsonAtomic, K as isDiagnosticsEnabled, Kt as readJsonFile, L as resolveServicePrefixedTarget, Lt as installRequestBodyLimitGuard, M as resolveSlackChannelAllowlist, Mt as isWSLEnv, N as normalizeIMessageHandle, Nt as isWSLSync, O as attachFooterText, Ot as resolveChannelEntryMatch, P as parseChatAllowTargetPrefixes, Pt as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, Q as recordInboundSession, Qt as registerPluginHttpRoute, R as detectBinary, Rt as isRequestBodyLimitError, T as processLineMessage, Tt as resolveAllowlistMatchSimple, U as parseDiscordTarget, Ut as generatePairingToken, V as collectDiscordAuditChannelIds, Vt as requestBodyErrorToText, W as normalizeDiscordSlug, Wt as createAsyncLock, X as optionalStringEnum, Y as formatDocsLink, Yt as resolveAckReaction, Z as stringEnum, _t as buildPendingHistoryContextFromMap, a as normalizeAccountId$1, at as createReplyPrefixContext, bt as recordPendingHistoryEntry, ct as removeAckReactionAfterReply, dt as resolveMentionGating, en as BLUEBUBBLES_ACTION_NAMES, et as formatLocationText, ft as resolveMentionGatingWithBypass, ht as DEFAULT_GROUP_HISTORY_LIMIT, i as listLineAccountIds, it as logTypingFailure, j as resolveSlackUserAllowlist, jt as isWSL2Sync, kt as resolveChannelEntryMatchWithFallback, lt as shouldAckReaction, mt as summarizeMapping, nn as CHANNEL_MESSAGE_ACTION_NAMES, nt as logAckFailure, o as resolveDefaultLineAccountId, ot as createReplyPrefixOptions, pt as mergeAllowlist, q as onDiagnosticEvent, qt as resolvePairingPaths, rt as logInboundDrop, s as resolveLineAccount, st as createTypingCallbacks, tn as BLUEBUBBLES_GROUP_ACTIONS, tt as toLocationContext, ut as shouldAckReactionForWhatsApp, vt as clearHistoryEntries, w as hasMarkdownToConvert, wt as formatAllowlistMatchMeta, xt as recordPendingHistoryEntryIfEnabled, yt as clearHistoryEntriesIfEnabled, z as resolveDiscordUserAllowlist, zt as readJsonBodyWithLimit } from "./reply-CnWG5ty5.js";
1
+ import { $ as resolveControlCommandGate, $t as BLUEBUBBLES_ACTIONS, At as resolveNestedAllowlistDecision, B as resolveDiscordChannelAllowlist, Bt as readRequestBodyWithLimit, D as createReceiptCard, Dt as normalizeChannelSlug, E as stripMarkdown, Et as buildChannelKeyCandidates, F as parseChatTargetPrefixesOrThrow, Ft as DEFAULT_WEBHOOK_MAX_BODY_BYTES, G as emitDiagnosticEvent, Gt as pruneExpiredPending, Ht as createDedupeCache, I as resolveServicePrefixedAllowTarget, It as RequestBodyLimitError, J as missingTargetError, Jt as writeJsonAtomic, K as isDiagnosticsEnabled, Kt as readJsonFile, L as resolveServicePrefixedTarget, Lt as installRequestBodyLimitGuard, M as resolveSlackChannelAllowlist, Mt as isWSLEnv, N as normalizeIMessageHandle, Nt as isWSLSync, O as attachFooterText, Ot as resolveChannelEntryMatch, P as parseChatAllowTargetPrefixes, Pt as DEFAULT_WEBHOOK_BODY_TIMEOUT_MS, Q as recordInboundSession, Qt as registerPluginHttpRoute, R as detectBinary, Rt as isRequestBodyLimitError, T as processLineMessage, Tt as resolveAllowlistMatchSimple, U as parseDiscordTarget, Ut as generatePairingToken, V as collectDiscordAuditChannelIds, Vt as requestBodyErrorToText, W as normalizeDiscordSlug, Wt as createAsyncLock, X as optionalStringEnum, Y as formatDocsLink, Yt as resolveAckReaction, Z as stringEnum, _t as buildPendingHistoryContextFromMap, a as normalizeAccountId$1, at as createReplyPrefixContext, bt as recordPendingHistoryEntry, ct as removeAckReactionAfterReply, dt as resolveMentionGating, en as BLUEBUBBLES_ACTION_NAMES, et as formatLocationText, ft as resolveMentionGatingWithBypass, ht as DEFAULT_GROUP_HISTORY_LIMIT, i as listLineAccountIds, it as logTypingFailure, j as resolveSlackUserAllowlist, jt as isWSL2Sync, kt as resolveChannelEntryMatchWithFallback, lt as shouldAckReaction, mt as summarizeMapping, nn as CHANNEL_MESSAGE_ACTION_NAMES, nt as logAckFailure, o as resolveDefaultLineAccountId, ot as createReplyPrefixOptions, pt as mergeAllowlist, q as onDiagnosticEvent, qt as resolvePairingPaths, rt as logInboundDrop, s as resolveLineAccount, st as createTypingCallbacks, tn as BLUEBUBBLES_GROUP_ACTIONS, tt as toLocationContext, ut as shouldAckReactionForWhatsApp, vt as clearHistoryEntries, w as hasMarkdownToConvert, wt as formatAllowlistMatchMeta, xt as recordPendingHistoryEntryIfEnabled, yt as clearHistoryEntriesIfEnabled, z as resolveDiscordUserAllowlist, zt as readJsonBodyWithLimit } from "./reply-BCjRFrxS.js";
2
2
  import { H as normalizeE164, I as escapeRegExp, M as clamp, U as pathExists, X as sleep, _t as normalizePluginHttpPath, dt as registerLogTransport, j as CONFIG_DIR, q as safeParseJson, t as runCommandWithTimeout, u as stripAnsi, v as getChatChannelMeta, z as isRecord } from "./exec-C5lqk9X4.js";
3
3
  import "./paths-ZQWYGl2V.js";
4
4
  import { X as withFileLock, Y as acquireFileLock, q as isTruthyEnvValue } from "./model-selection-DHMRsTNB.js";
@@ -18,7 +18,7 @@ import "./active-listener-CFLZdKRQ.js";
18
18
  import { _ as loadWebMedia } from "./ir-BEwiHV7R.js";
19
19
  import "./manager-Cqyl7HDP.js";
20
20
  import "./chrome-OZ5Ge8PR.js";
21
- import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-Za6SnC7J.js";
21
+ import { r as resolveWhatsAppHeartbeatRecipients } from "./channel-web-B715iUQW.js";
22
22
  import "./runner-DxPwS4ed.js";
23
23
  import "./image-2KL1DOmN.js";
24
24
  import "./pi-model-discovery-DX1x3UsN.js";
@@ -26,8 +26,8 @@ import "./redact-CZWjP0qB.js";
26
26
  import "./sqlite-CKrK6KKr.js";
27
27
  import "./proxy-CLlXFbH0.js";
28
28
  import "./outbound-DT2nH6dY.js";
29
- import "./session-BO6X9uoj.js";
30
- import { t as loginWeb } from "./login-DG-oB1Gg.js";
29
+ import "./session-CMKy7hKx.js";
30
+ import { t as loginWeb } from "./login-BPMBJ2ja.js";
31
31
  import path from "node:path";
32
32
  import fs, { createWriteStream } from "node:fs";
33
33
  import os from "node:os";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { at as success, et as danger, f as defaultRuntime, s as logInfo, tt as info } from "./exec-C5lqk9X4.js";
3
3
  import { P as logoutWeb, k as resolveWhatsAppAccount, n as loadConfig } from "./config-DelXkt58.js";
4
4
  import { t as formatCliCommand } from "./command-format-D8xZiqKN.js";
5
- import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-BO6X9uoj.js";
5
+ import { i as waitForWaConnection, n as formatError, t as createWaSocket } from "./session-CMKy7hKx.js";
6
6
  import { stdin, stdout } from "node:process";
7
7
  import readline from "node:readline/promises";
8
8
  import { DisconnectReason } from "@whiskeysockets/baileys";
@@ -4,7 +4,7 @@ import "./model-selection-DHMRsTNB.js";
4
4
  import { H as webAuthExists, P as logoutWeb, R as readWebSelfId, k as resolveWhatsAppAccount, n as loadConfig } from "./config-DelXkt58.js";
5
5
  import "./agent-scope-ip6rBrUD.js";
6
6
  import "./github-copilot-token-BmLW2kW0.js";
7
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-BO6X9uoj.js";
7
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-CMKy7hKx.js";
8
8
  import { randomUUID } from "node:crypto";
9
9
  import { DisconnectReason } from "@whiskeysockets/baileys";
10
10
  import QRCodeModule from "qrcode-terminal/vendor/QRCode/index.js";
@@ -20874,7 +20874,7 @@ function createWhatsAppLoginTool() {
20874
20874
  force: Type.Optional(Type.Boolean())
20875
20875
  }),
20876
20876
  execute: async (_toolCallId, args) => {
20877
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-DjYOgNGQ.js");
20877
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-gTXEo28v.js");
20878
20878
  if ((args?.action ?? "start") === "wait") {
20879
20879
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
20880
20880
  return {
@@ -39168,15 +39168,15 @@ function loadWebOutbound() {
39168
39168
  return webOutboundPromise;
39169
39169
  }
39170
39170
  function loadWebLogin() {
39171
- webLoginPromise ??= import("./login-DG-oB1Gg.js").then((n) => n.n);
39171
+ webLoginPromise ??= import("./login-BPMBJ2ja.js").then((n) => n.n);
39172
39172
  return webLoginPromise;
39173
39173
  }
39174
39174
  function loadWebLoginQr() {
39175
- webLoginQrPromise ??= import("./login-qr-DjYOgNGQ.js");
39175
+ webLoginQrPromise ??= import("./login-qr-gTXEo28v.js");
39176
39176
  return webLoginQrPromise;
39177
39177
  }
39178
39178
  function loadWebChannel() {
39179
- webChannelPromise ??= import("./web-DY7ps8Jl.js");
39179
+ webChannelPromise ??= import("./web-Dez1c43V.js");
39180
39180
  return webChannelPromise;
39181
39181
  }
39182
39182
  function loadWhatsAppActions() {
@@ -48,10 +48,15 @@ async function createWaSocket(printQr, verbose, opts = {}) {
48
48
  const { state, saveCreds } = await useMultiFileAuthState(authDir);
49
49
  const { version } = await fetchLatestBaileysVersion();
50
50
  let agent;
51
- const proxyUrl = process.env.HTTPS_PROXY || process.env.HTTP_PROXY;
51
+ const proxyUrl = process.env.WA_PROXY_URL || process.env.HTTPS_PROXY || process.env.HTTP_PROXY;
52
52
  if (proxyUrl) try {
53
- const { HttpsProxyAgent } = await import("https-proxy-agent");
54
- agent = new HttpsProxyAgent(proxyUrl);
53
+ if (proxyUrl.startsWith("socks")) {
54
+ const { SocksProxyAgent } = await import("socks-proxy-agent");
55
+ agent = new SocksProxyAgent(proxyUrl);
56
+ } else {
57
+ const { HttpsProxyAgent } = await import("https-proxy-agent");
58
+ agent = new HttpsProxyAgent(proxyUrl);
59
+ }
55
60
  sessionLogger.info(`Using proxy agent for WhatsApp WebSocket: ${proxyUrl.replace(/\/\/.*@/, "//***@")}`);
56
61
  } catch (err) {
57
62
  sessionLogger.warn({ err }, "Failed to create proxy agent, connecting directly");
@@ -1,4 +1,4 @@
1
- import "./reply-CnWG5ty5.js";
1
+ import "./reply-BCjRFrxS.js";
2
2
  import "./exec-C5lqk9X4.js";
3
3
  import "./paths-ZQWYGl2V.js";
4
4
  import "./model-selection-DHMRsTNB.js";
@@ -16,7 +16,7 @@ import "./active-listener-CFLZdKRQ.js";
16
16
  import "./ir-BEwiHV7R.js";
17
17
  import "./manager-Cqyl7HDP.js";
18
18
  import "./chrome-OZ5Ge8PR.js";
19
- import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-Za6SnC7J.js";
19
+ import { n as monitorWebInbox, t as monitorWebChannel } from "./channel-web-B715iUQW.js";
20
20
  import "./runner-DxPwS4ed.js";
21
21
  import "./image-2KL1DOmN.js";
22
22
  import "./pi-model-discovery-DX1x3UsN.js";
@@ -24,7 +24,7 @@ import "./redact-CZWjP0qB.js";
24
24
  import "./sqlite-CKrK6KKr.js";
25
25
  import "./proxy-CLlXFbH0.js";
26
26
  import { n as sendMessageWhatsApp } from "./outbound-DT2nH6dY.js";
27
- import { i as waitForWaConnection, t as createWaSocket } from "./session-BO6X9uoj.js";
28
- import { t as loginWeb } from "./login-DG-oB1Gg.js";
27
+ import { i as waitForWaConnection, t as createWaSocket } from "./session-CMKy7hKx.js";
28
+ import { t as loginWeb } from "./login-BPMBJ2ja.js";
29
29
 
30
30
  export { WA_WEB_AUTH_DIR, createWaSocket, logWebSelfId, loginWeb, monitorWebChannel, monitorWebInbox, pickWebChannel, sendMessageWhatsApp, waitForWaConnection, webAuthExists };
@@ -1,7 +1,7 @@
1
1
  import { g as resolveStateDir } from "./paths-B4BZAPZh.js";
2
2
  import { B as theme, C as shortenHomePath, S as shortenHomeInString, _ as resolveConfigDir, b as resolveUserPath } from "./utils-CFnnyoTP.js";
3
3
  import "./pi-embedded-helpers-DwIwt1C1.js";
4
- import "./reply-jLqhHIBQ.js";
4
+ import "./reply-D9JN_rwA.js";
5
5
  import { d as defaultRuntime } from "./subsystem-azPHgTb4.js";
6
6
  import "./exec-V7mqHC8U.js";
7
7
  import "./agent-scope-aaTVOkax.js";
@@ -80,7 +80,7 @@ import "./npm-registry-spec-CuFgcvQy.js";
80
80
  import "./skill-scanner-rZe1OKVo.js";
81
81
  import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-J67aL6S5.js";
82
82
  import { t as renderTable } from "./table-CQy-QAll.js";
83
- import { t as buildPluginStatusReport } from "./status-DfjRvBXf.js";
83
+ import { t as buildPluginStatusReport } from "./status-Dnim-lZW.js";
84
84
  import { n as updateNpmInstalledPlugins } from "./update-vJ0EItfH.js";
85
85
  import fs from "node:fs";
86
86
  import os from "node:os";
@@ -12,7 +12,7 @@ import { i as loadConfig, l as writeConfigFile } from "./config-B4-Vvu6M.js";
12
12
  import "./client-gZv0X5tz.js";
13
13
  import "./call-CeM4F1rK.js";
14
14
  import "./message-channel-CZpVDeRr.js";
15
- import "./subagent-registry-Do5aAYdm.js";
15
+ import "./subagent-registry-2rHQ_z7c.js";
16
16
  import "./sessions-D-LiJehh.js";
17
17
  import "./deliver-a9TlmfSI.js";
18
18
  import "./plugins-bX81iDy5.js";
@@ -77,7 +77,7 @@ import "./npm-registry-spec-0gjaSbs4.js";
77
77
  import "./skill-scanner-C6Fsebtt.js";
78
78
  import { i as resolvePluginInstallDir, n as installPluginFromNpmSpec, r as installPluginFromPath, t as recordPluginInstall } from "./installs-FdZTML_g.js";
79
79
  import { t as renderTable } from "./table-BU9JaTpc.js";
80
- import { t as buildPluginStatusReport } from "./status-DrjhxuYR.js";
80
+ import { t as buildPluginStatusReport } from "./status-TVzePU0v.js";
81
81
  import { n as updateNpmInstalledPlugins } from "./update-BX5yicnj.js";
82
82
  import os from "node:os";
83
83
  import path from "node:path";
@@ -13,7 +13,7 @@ import { F as VERSION } from "./config-B4-Vvu6M.js";
13
13
  import "./client-gZv0X5tz.js";
14
14
  import "./call-CeM4F1rK.js";
15
15
  import "./message-channel-CZpVDeRr.js";
16
- import "./subagent-registry-Do5aAYdm.js";
16
+ import "./subagent-registry-2rHQ_z7c.js";
17
17
  import "./sessions-D-LiJehh.js";
18
18
  import "./deliver-a9TlmfSI.js";
19
19
  import "./plugins-bX81iDy5.js";
@@ -74,13 +74,13 @@ import "./onboard-helpers-Bfg43UBg.js";
74
74
  import "./prompt-style-Ws1ofeXe.js";
75
75
  import "./pairing-labels-DKrwGHA2.js";
76
76
  import "./catalog-D8aoRgov.js";
77
- import "./plugin-registry-DBpayaga.js";
78
- import { n as resolveCliChannelOptions } from "./channel-options-DTszr7UZ.js";
79
- import "./register.subclis-tuSSdE3-.js";
80
- import { i as registerProgramCommands } from "./command-registry-Zu61QmVf.js";
77
+ import "./plugin-registry-7l0uWKmB.js";
78
+ import { n as resolveCliChannelOptions } from "./channel-options-BZj8yDQM.js";
79
+ import "./register.subclis-CDZvm5LU.js";
80
+ import { i as registerProgramCommands } from "./command-registry-BliDXGVX.js";
81
81
  import { r as setProgramContext } from "./program-context-D2pNx-CZ.js";
82
82
  import { t as forceFreePort } from "./ports-CBEgLU1F.js";
83
- import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-DlnL7Slb.js";
83
+ import { n as formatCliBannerLine, r as hasEmittedCliBanner, t as emitCliBanner } from "./banner-SSVP1FWh.js";
84
84
  import { Command } from "commander";
85
85
 
86
86
  //#region src/cli/program/context.ts
@@ -173,7 +173,7 @@ function registerPreActionHooks(program, programVersion) {
173
173
  commandPath
174
174
  });
175
175
  if (PLUGIN_REQUIRED_COMMANDS.has(commandPath[0])) {
176
- const { ensurePluginRegistryLoaded } = await import("./plugin-registry-DBpayaga.js").then((n) => n.n);
176
+ const { ensurePluginRegistryLoaded } = await import("./plugin-registry-7l0uWKmB.js").then((n) => n.n);
177
177
  ensurePluginRegistryLoaded();
178
178
  }
179
179
  });