squidclaw 3.0.19 → 3.0.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 (209) hide show
  1. package/dist/{agents-DL8uYsUq.js → agents-BOS_wASV.js} +4 -4
  2. package/dist/{agents.config-B4KAAVvR.js → agents.config-ChUZBohP.js} +1 -1
  3. package/dist/{agents.config-D93fF1eJ.js → agents.config-Dfsl4jNF.js} +1 -1
  4. package/dist/{audio-preflight-Bzo_zN4j.js → audio-preflight-lT9iRnYi.js} +4 -4
  5. package/dist/{audio-transcription-runner-Cp_lkLCv.js → audio-transcription-runner-YiR1ym3a.js} +1 -1
  6. package/dist/{auth-choice-Ba4AEm_k.js → auth-choice-B_pvWO2S.js} +1 -1
  7. package/dist/{auth-choice-ziFj5bXd.js → auth-choice-kUm2JAky.js} +1 -1
  8. package/dist/{banner-DDih2slD.js → banner-4LItBqCV.js} +1 -1
  9. package/dist/build-info.json +2 -2
  10. package/dist/bundled/boot-md/handler.js +1 -1
  11. package/dist/bundled/session-memory/handler.js +1 -1
  12. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  13. package/dist/{channel-options-DTDfU0R6.js → channel-options-DA-4IR6h.js} +1 -1
  14. package/dist/{channel-options-BBSsevyl.js → channel-options-DQeQl3Rk.js} +1 -1
  15. package/dist/{channel-web-BXl9jCKV.js → channel-web--dAjVoio.js} +1 -1
  16. package/dist/{channel-web-SF18oYqo.js → channel-web-DJ21CAFF.js} +1 -1
  17. package/dist/{channels-cli-BDLabpWH.js → channels-cli-DviJtKuS.js} +6 -6
  18. package/dist/{channels-cli-BiuWJpJu.js → channels-cli-QvrLGt6C.js} +6 -6
  19. package/dist/{chrome-CZQnp4VH.js → chrome-CuBHInKC.js} +8 -8
  20. package/dist/{cli-CfgDCCuC.js → cli-aCubMdJg.js} +1 -1
  21. package/dist/{cli-DAZ1MKrJ.js → cli-q7seQ2Xx.js} +1 -1
  22. package/dist/{command-registry-DkjNuW8w.js → command-registry-C_YMaVul.js} +9 -9
  23. package/dist/{completion-cli-DbNma3J9.js → completion-cli-CyKEJDPO.js} +1 -1
  24. package/dist/{completion-cli-Du8H92bM.js → completion-cli-w4XQjhDI.js} +2 -2
  25. package/dist/{config-cli-D16tlTWa.js → config-cli-BfhjWCvB.js} +1 -1
  26. package/dist/{config-cli-CQhQ8Bcc.js → config-cli-BhQXEuBv.js} +1 -1
  27. package/dist/{configure-B4TiK50K.js → configure-0xkYrQ0e.js} +3 -3
  28. package/dist/{configure-B9b3cQTC.js → configure-Dsg_0ymU.js} +3 -3
  29. package/dist/{deliver-B4WWPQvt.js → deliver-6zfT7daI.js} +1 -1
  30. package/dist/{deliver-runtime-CeE1X9si.js → deliver-runtime-MBexxUuG.js} +3 -3
  31. package/dist/{deps-send-whatsapp.runtime-Cw7U9orE.js → deps-send-whatsapp.runtime-B7GC68Cu.js} +2 -2
  32. package/dist/{deps-send-whatsapp.runtime-CFnZsKW0.js → deps-send-whatsapp.runtime-BGDIgEzh.js} +3 -3
  33. package/dist/{deps-send-whatsapp.runtime-B9uivfkM.js → deps-send-whatsapp.runtime-BNAJe11S.js} +3 -3
  34. package/dist/{deps-send-whatsapp.runtime-miTfQkK9.js → deps-send-whatsapp.runtime-qBpqM2k9.js} +7 -7
  35. package/dist/{doctor-completion-CEiVFPte.js → doctor-completion-BCQdm02b.js} +1 -1
  36. package/dist/{doctor-completion-ujZ_JdIz.js → doctor-completion-BlkbgU5h.js} +1 -1
  37. package/dist/entry.js +2 -2
  38. package/dist/extensionAPI.js +6 -6
  39. package/dist/{gateway-cli-NXeo-J8r.js → gateway-cli-tFwyE4a3.js} +8 -8
  40. package/dist/{gateway-cli-2jaWM_Ci.js → gateway-cli-uWj08vdf.js} +8 -8
  41. package/dist/{health-BPZALM__.js → health-BwC4Qe5W.js} +1 -1
  42. package/dist/{health-DFZKMrW2.js → health-DS3reqch.js} +1 -1
  43. package/dist/{hooks-cli-B3rkhWcT.js → hooks-cli-oei5kRQM.js} +2 -2
  44. package/dist/{hooks-cli-BO_gZJVD.js → hooks-cli-tp5LchRL.js} +2 -2
  45. package/dist/{image-DKkuLtZ4.js → image-VgwN31FZ.js} +1 -1
  46. package/dist/{image-runtime-BMavqm9n.js → image-runtime-CwMuTYvd.js} +3 -3
  47. package/dist/index.js +6 -6
  48. package/dist/llm-slug-generator.js +1 -1
  49. package/dist/{models-Bb-GYqHr.js → models-D9X4EUlY.js} +2 -2
  50. package/dist/{models-cli-CAIJM1Wh.js → models-cli-C1PLBYF7.js} +2 -2
  51. package/dist/{models-cli-DffAz0ji.js → models-cli-LGp-Tok9.js} +3 -3
  52. package/dist/{npm-resolution-D2_zGJM-.js → npm-resolution-BUvQm-e-.js} +1 -1
  53. package/dist/{npm-resolution-D5pBCkUw.js → npm-resolution-Dtkh26DG.js} +1 -1
  54. package/dist/{onboard-dhG2YBez.js → onboard-B0padonr.js} +2 -2
  55. package/dist/{onboard-DcVsL9Jx.js → onboard-DDD6GX8E.js} +2 -2
  56. package/dist/{onboard-channels-mNXKTvFs.js → onboard-channels-9My16AOy.js} +1 -1
  57. package/dist/{onboard-channels-C-cQFUBH.js → onboard-channels-Bm_NXV3z.js} +1 -1
  58. package/dist/{onboarding-B3-IwkNi.js → onboarding-dES4q9RV.js} +3 -3
  59. package/dist/{onboarding-Cl6kW_iq.js → onboarding-o-id7p0-.js} +3 -3
  60. package/dist/{onboarding.finalize-BZqsNG2H.js → onboarding.finalize-BFtOLT7n.js} +6 -6
  61. package/dist/{onboarding.finalize-CCU-ykTR.js → onboarding.finalize-dpgNgUt5.js} +5 -5
  62. package/dist/{pi-embedded-C5U8Qxn6.js → pi-embedded-B_4NAHxA.js} +4 -40
  63. package/dist/{pi-embedded-B79nZERv.js → pi-embedded-BpHQIzjg.js} +24 -60
  64. package/dist/{pi-embedded-helpers-CEHpGDRs.js → pi-embedded-helpers-A9VYPVCH.js} +3 -3
  65. package/dist/{plugin-registry-CB47SSz1.js → plugin-registry-CCeUDvxY.js} +1 -1
  66. package/dist/{plugin-registry-Gy_VByyf.js → plugin-registry-CCkpP8-I.js} +1 -1
  67. package/dist/plugin-sdk/{channel-web-vB3Dcd8-.js → channel-web-BQE2gJ5U.js} +1 -1
  68. package/dist/plugin-sdk/{channel-web-BrhP6FQO.js → channel-web-BtNgAS1G.js} +1 -1
  69. package/dist/plugin-sdk/compat.js +50 -50
  70. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-CuxKhIE0.js → deps-send-whatsapp.runtime-DPZSTh1j.js} +3 -3
  71. package/dist/plugin-sdk/{deps-send-whatsapp.runtime-Ce4Gzz-J.js → deps-send-whatsapp.runtime-V0Jfat5S.js} +3 -3
  72. package/dist/plugin-sdk/index.js +2 -2
  73. package/dist/plugin-sdk/mattermost.js +3 -3
  74. package/dist/plugin-sdk/nextcloud-talk.js +2 -2
  75. package/dist/plugin-sdk/{reply-DxvpiQBp.js → reply-DJYA4ZNu.js} +4 -40
  76. package/dist/plugin-sdk/{reply-sFKB3ofA.js → reply-DeKKmUDh.js} +4 -40
  77. package/dist/plugin-sdk/{slash-dispatch.runtime-C7u7mlny.js → slash-dispatch.runtime-E6j8gkO2.js} +1 -1
  78. package/dist/plugin-sdk/{slash-dispatch.runtime-Dyb_EkUt.js → slash-dispatch.runtime-k8xSVYOI.js} +1 -1
  79. package/dist/plugin-sdk/{subagent-registry-runtime-B6l6PxqP.js → subagent-registry-runtime-Cca50Qld.js} +1 -1
  80. package/dist/plugin-sdk/{subagent-registry-runtime-hdnabonI.js → subagent-registry-runtime-D6cTAG2k.js} +1 -1
  81. package/dist/plugin-sdk/{web-Bnn82S4u.js → web-Be4JS3z8.js} +2 -2
  82. package/dist/plugin-sdk/{web-D9LAdsuU.js → web-DkbCMgLG.js} +2 -2
  83. package/dist/plugin-sdk/whatsapp.js +2 -2
  84. package/dist/{plugins-cli-gtgkmDcv.js → plugins-cli-CZCadI9y.js} +2 -2
  85. package/dist/{plugins-cli-BYnoJwF1.js → plugins-cli-DFpHU_xo.js} +2 -2
  86. package/dist/{program-BGlgDpHI.js → program-B4_o5EDH.js} +7 -7
  87. package/dist/{program-context-M4FTWqqg.js → program-context-CkfdLtpp.js} +17 -17
  88. package/dist/{prompt-select-styled-AL5Tm3yO.js → prompt-select-styled-C1DFrYuk.js} +4 -4
  89. package/dist/{prompt-select-styled-BVC2byQV.js → prompt-select-styled-CZJJ2rPA.js} +4 -4
  90. package/dist/{provider-auth-helpers-DDgrFku5.js → provider-auth-helpers-BlYwNWkq.js} +1 -1
  91. package/dist/{provider-auth-helpers-Q7aIhDgv.js → provider-auth-helpers-C5taJG0R.js} +1 -1
  92. package/dist/{push-apns-FyGbUyh2.js → push-apns-Bhk1_5ut.js} +1 -1
  93. package/dist/{push-apns-Ga8xvhkh.js → push-apns-Dkjfalec.js} +1 -1
  94. package/dist/{pw-ai-Du22SYoO.js → pw-ai-CM87tQwG.js} +1 -1
  95. package/dist/{register.agent-zP8a-sNB.js → register.agent-DOp4lbyc.js} +7 -7
  96. package/dist/{register.agent-koAXw1ay.js → register.agent-s2PqcoIS.js} +6 -6
  97. package/dist/{register.configure-CYrmyjlf.js → register.configure-BGfourxZ.js} +7 -7
  98. package/dist/{register.configure-CUuP5J8W.js → register.configure-DABoMBBf.js} +7 -7
  99. package/dist/{register.maintenance-BZuEljPU.js → register.maintenance-Bdr3bSAF.js} +8 -8
  100. package/dist/{register.maintenance-ByEQ2CVH.js → register.maintenance-DmP8sVxb.js} +7 -7
  101. package/dist/{register.message-BkSXhv9I.js → register.message-DF0InVCv.js} +2 -2
  102. package/dist/{register.message-CgHfmDHm.js → register.message-gz8DaAc1.js} +2 -2
  103. package/dist/{register.onboard-HcQwPAEK.js → register.onboard-Do14cwDQ.js} +2 -2
  104. package/dist/{register.onboard-4ke40MNP.js → register.onboard-auVLfmF3.js} +2 -2
  105. package/dist/{register.setup-xAb7Cvzy.js → register.setup-B3aVuPyo.js} +2 -2
  106. package/dist/{register.setup-B41xZb1r.js → register.setup-ZyGJlYOD.js} +2 -2
  107. package/dist/{register.status-health-sessions-CcOVL0x8.js → register.status-health-sessions-C-1HE5oP.js} +3 -3
  108. package/dist/{register.status-health-sessions-BbHAAKwv.js → register.status-health-sessions-vFpvdVS1.js} +3 -3
  109. package/dist/{register.subclis-_uSASnfC.js → register.subclis-BYiAuTiK.js} +9 -9
  110. package/dist/{reply-BFTOdZcK.js → reply-BaVB3YlN.js} +4 -40
  111. package/dist/{run-main-C1eZrW-5.js → run-main-DW-JR8hB.js} +14 -14
  112. package/dist/{server-node-events-DbS1jJ5j.js → server-node-events-D-EmiDyc.js} +2 -2
  113. package/dist/{server-node-events-pYrJmi9w.js → server-node-events-rumcq7j0.js} +2 -2
  114. package/dist/{slash-dispatch.runtime-BGXbtMX6.js → slash-dispatch.runtime-BeltKAMm.js} +6 -6
  115. package/dist/{slash-dispatch.runtime-DqZVfX4H.js → slash-dispatch.runtime-C7rHRQFg.js} +1 -1
  116. package/dist/{slash-dispatch.runtime-DmFVOi3w.js → slash-dispatch.runtime-DPRwMKXk.js} +1 -1
  117. package/dist/{slash-dispatch.runtime-PX9_08Hm.js → slash-dispatch.runtime-sVHNrSL1.js} +1 -1
  118. package/dist/{status-DtiapFqq.js → status-BeSD1NDD.js} +2 -2
  119. package/dist/{status-B4eVRJcO.js → status-DGF_ROMC.js} +2 -2
  120. package/dist/{subagent-registry-Ctrhw4X-.js → subagent-registry-CgUBOyi3.js} +4 -40
  121. package/dist/{subagent-registry-runtime-Cy7dsGqF.js → subagent-registry-runtime-BYpjZwjA.js} +1 -1
  122. package/dist/{subagent-registry-runtime-BIKGAzgI.js → subagent-registry-runtime-Bm5UEB8c.js} +1 -1
  123. package/dist/{subagent-registry-runtime-CezPaX9P.js → subagent-registry-runtime-Bxc5DYZt.js} +6 -6
  124. package/dist/{subagent-registry-runtime-CTjx4TK5.js → subagent-registry-runtime-Cx5vPpG8.js} +1 -1
  125. package/dist/{update-cli-DLOWRdjv.js → update-cli-BSIF-OEa.js} +8 -8
  126. package/dist/{update-cli-_FsTRdQZ.js → update-cli-Duy8S3Bj.js} +7 -7
  127. package/dist/{update-runner-BY3l7ytB.js → update-runner-CMpruPN8.js} +1 -1
  128. package/dist/{update-runner-BKWHnVYI.js → update-runner-D_nDdx7d.js} +1 -1
  129. package/dist/{web-BNfDYvlW.js → web-Bnr4YuWJ.js} +2 -2
  130. package/dist/{web-BdZ3mX3p.js → web-C-5RPkV9.js} +2 -2
  131. package/dist/{web-1D0d1RHD.js → web-C0xcHURK.js} +1 -1
  132. package/dist/{web-B46aOGK0.js → web-CKY0tK0k.js} +6 -6
  133. package/package.json +1 -1
  134. package/dist/plugin-sdk/accounts-CUEuUR3C.js +0 -46
  135. package/dist/plugin-sdk/accounts-D0W2pELU.js +0 -288
  136. package/dist/plugin-sdk/accounts-ucj0odJq.js +0 -35
  137. package/dist/plugin-sdk/active-listener-BO7eBEG_.js +0 -50
  138. package/dist/plugin-sdk/agents/agent-tier.d.ts +0 -13
  139. package/dist/plugin-sdk/api-key-rotation-C4C_mDsg.js +0 -181
  140. package/dist/plugin-sdk/audio-preflight-Cqdo0JKm.js +0 -69
  141. package/dist/plugin-sdk/audio-transcription-runner-DnEooIyE.js +0 -2176
  142. package/dist/plugin-sdk/audit-membership-runtime-B9b-zRwg.js +0 -58
  143. package/dist/plugin-sdk/channel-activity-BMWLw4o2.js +0 -94
  144. package/dist/plugin-sdk/channel-web-D9WdAFlv.js +0 -2256
  145. package/dist/plugin-sdk/chrome-CV-q0Lmc.js +0 -2415
  146. package/dist/plugin-sdk/commands-registry-e7YoqrbP.js +0 -1125
  147. package/dist/plugin-sdk/config-B2B64aX0.js +0 -17911
  148. package/dist/plugin-sdk/deliver-BkyBtcLR.js +0 -1694
  149. package/dist/plugin-sdk/deliver-runtime-O4lwAWMw.js +0 -32
  150. package/dist/plugin-sdk/deps-send-discord.runtime-BAeeBldY.js +0 -23
  151. package/dist/plugin-sdk/deps-send-imessage.runtime-EL-CfikZ.js +0 -22
  152. package/dist/plugin-sdk/deps-send-signal.runtime-BeemHeUu.js +0 -21
  153. package/dist/plugin-sdk/deps-send-slack.runtime-DTttkC0N.js +0 -19
  154. package/dist/plugin-sdk/deps-send-telegram.runtime-Dsf9Cnka.js +0 -24
  155. package/dist/plugin-sdk/deps-send-whatsapp.runtime-CCS71r77.js +0 -57
  156. package/dist/plugin-sdk/diagnostic-DPRVoKTk.js +0 -319
  157. package/dist/plugin-sdk/errors-B8oJXuCF.js +0 -54
  158. package/dist/plugin-sdk/fetch-guard-F0Fnqisy.js +0 -156
  159. package/dist/plugin-sdk/fs-safe-Dqmpk-Fr.js +0 -352
  160. package/dist/plugin-sdk/image-cBW8L8pp.js +0 -2310
  161. package/dist/plugin-sdk/image-ops-BP8ix1GC.js +0 -584
  162. package/dist/plugin-sdk/image-runtime-9xkgSlNz.js +0 -25
  163. package/dist/plugin-sdk/ir-DWEc6zOp.js +0 -1296
  164. package/dist/plugin-sdk/local-roots-BIPT8uAO.js +0 -186
  165. package/dist/plugin-sdk/logger-DDdrdbDu.js +0 -1163
  166. package/dist/plugin-sdk/login-BMTiGutN.js +0 -57
  167. package/dist/plugin-sdk/login-qr-BFxqYUkc.js +0 -320
  168. package/dist/plugin-sdk/manager-BD-aYaZ8.js +0 -3917
  169. package/dist/plugin-sdk/manager-runtime-C5bRwUlz.js +0 -15
  170. package/dist/plugin-sdk/outbound-Bm07xvO6.js +0 -212
  171. package/dist/plugin-sdk/outbound-attachment-DLsaxDsc.js +0 -19
  172. package/dist/plugin-sdk/path-alias-guards-gBhrAn14.js +0 -43
  173. package/dist/plugin-sdk/paths-C6W4VHoa.js +0 -166
  174. package/dist/plugin-sdk/pi-embedded-helpers-BExwPvTh.js +0 -9627
  175. package/dist/plugin-sdk/pi-model-discovery-DdctvBeX.js +0 -134
  176. package/dist/plugin-sdk/pi-model-discovery-runtime-DrtpLJjk.js +0 -8
  177. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-rgTz3FBl.js +0 -354
  178. package/dist/plugin-sdk/plugins-BN64HHZA.js +0 -864
  179. package/dist/plugin-sdk/proxy-fetch-ZPEvp58f.js +0 -38
  180. package/dist/plugin-sdk/pw-ai-DBm3RdBK.js +0 -1938
  181. package/dist/plugin-sdk/qmd-manager-6bozlfFg.js +0 -1448
  182. package/dist/plugin-sdk/query-expansion-eeVz_aEm.js +0 -1011
  183. package/dist/plugin-sdk/redact-BoNEjbpF.js +0 -319
  184. package/dist/plugin-sdk/reply-CqXMy3Yd.js +0 -98731
  185. package/dist/plugin-sdk/resolve-outbound-target-DXfjGlZQ.js +0 -40
  186. package/dist/plugin-sdk/run-with-concurrency-5DMu9szx.js +0 -1994
  187. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-D2hkJBa-.js +0 -10
  188. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-C06I4adi.js +0 -19
  189. package/dist/plugin-sdk/send-B9xnwtQ-.js +0 -540
  190. package/dist/plugin-sdk/send-BxySs-Cu.js +0 -2587
  191. package/dist/plugin-sdk/send-D9THKp_J.js +0 -414
  192. package/dist/plugin-sdk/send-DCuaaP2w.js +0 -503
  193. package/dist/plugin-sdk/send-Dm_-_xje.js +0 -3135
  194. package/dist/plugin-sdk/session-DDzIZHxt.js +0 -169
  195. package/dist/plugin-sdk/skill-commands-DRvqtuFC.js +0 -342
  196. package/dist/plugin-sdk/skills-BWwlfbVj.js +0 -1428
  197. package/dist/plugin-sdk/slash-commands.runtime-BzYsaTST.js +0 -13
  198. package/dist/plugin-sdk/slash-dispatch.runtime-BC3IAF-I.js +0 -52
  199. package/dist/plugin-sdk/slash-skill-commands.runtime-sg98L8BK.js +0 -16
  200. package/dist/plugin-sdk/ssrf-DOBwjFow.js +0 -202
  201. package/dist/plugin-sdk/store-BKDR_-Qk.js +0 -81
  202. package/dist/plugin-sdk/subagent-registry-runtime-Ceu7AzWi.js +0 -52
  203. package/dist/plugin-sdk/tables-GIj79us5.js +0 -55
  204. package/dist/plugin-sdk/target-errors-jlLHihbX.js +0 -195
  205. package/dist/plugin-sdk/thinking-BgdUnMZ2.js +0 -1206
  206. package/dist/plugin-sdk/tokens-CTIYTLWu.js +0 -52
  207. package/dist/plugin-sdk/tool-images-GSlvf6RP.js +0 -274
  208. package/dist/plugin-sdk/web-BK2-uaOo.js +0 -56
  209. package/dist/plugin-sdk/whatsapp-actions-DQpK_5Ds.js +0 -80
@@ -245,7 +245,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
245
245
  const { ensureAuthProfileStore } = await import("./model-selection-CR7aXCux.js").then((n) => n.ht);
246
246
  const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-D8RKb8oM.js").then((n) => n.t);
247
247
  const { promptCustomApiConfig } = await import("./onboard-custom-bh8YoCuf.js").then((n) => n.r);
248
- const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-ziFj5bXd.js").then((n) => n.t);
248
+ const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-kUm2JAky.js").then((n) => n.t);
249
249
  const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-C3iHY6CJ.js").then((n) => n.i);
250
250
  const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
251
251
  const authChoiceFromPrompt = opts.authChoice === void 0;
@@ -300,7 +300,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
300
300
  if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
301
301
  else {
302
302
  const { listChannelPlugins } = await import("./plugins-H53_4Gxb.js").then((n) => n.i);
303
- const { setupChannels } = await import("./onboard-channels-mNXKTvFs.js").then((n) => n.n);
303
+ const { setupChannels } = await import("./onboard-channels-9My16AOy.js").then((n) => n.n);
304
304
  const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
305
305
  const forceAllowFromChannels = Array.from(new Set([...quickstartAllowFromChannels, "telegram"]));
306
306
  nextConfig = await setupChannels(nextConfig, runtime, prompter, {
@@ -328,7 +328,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
328
328
  mode
329
329
  });
330
330
  await writeConfigFile(nextConfig);
331
- const { finalizeOnboardingWizard } = await import("./onboarding.finalize-CCU-ykTR.js");
331
+ const { finalizeOnboardingWizard } = await import("./onboarding.finalize-dpgNgUt5.js");
332
332
  const { launchedTui } = await finalizeOnboardingWizard({
333
333
  flow,
334
334
  opts,
@@ -245,7 +245,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
245
245
  const { ensureAuthProfileStore } = await import("./auth-profiles-CX4YYu7Z.js").then((n) => n.t);
246
246
  const { promptAuthChoiceGrouped } = await import("./auth-choice-prompt-4mupmvzh.js").then((n) => n.t);
247
247
  const { promptCustomApiConfig } = await import("./onboard-custom-CZtjqrY7.js").then((n) => n.r);
248
- const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-Ba4AEm_k.js").then((n) => n.t);
248
+ const { applyAuthChoice, resolvePreferredProviderForAuthChoice, warnIfModelConfigLooksOff } = await import("./auth-choice-B_pvWO2S.js").then((n) => n.t);
249
249
  const { applyPrimaryModel, promptDefaultModel } = await import("./model-picker-CLhaaagi.js").then((n) => n.i);
250
250
  const authStore = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false });
251
251
  const authChoiceFromPrompt = opts.authChoice === void 0;
@@ -300,7 +300,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
300
300
  if (opts.skipChannels ?? opts.skipProviders) await prompter.note("Skipping channel setup.", "Channels");
301
301
  else {
302
302
  const { listChannelPlugins } = await import("./plugins-BDTkSIi7.js").then((n) => n.i);
303
- const { setupChannels } = await import("./onboard-channels-C-cQFUBH.js").then((n) => n.n);
303
+ const { setupChannels } = await import("./onboard-channels-Bm_NXV3z.js").then((n) => n.n);
304
304
  const quickstartAllowFromChannels = flow === "quickstart" ? listChannelPlugins().filter((plugin) => plugin.meta.quickstartAllowFrom).map((plugin) => plugin.id) : [];
305
305
  const forceAllowFromChannels = Array.from(new Set([...quickstartAllowFromChannels, "telegram"]));
306
306
  nextConfig = await setupChannels(nextConfig, runtime, prompter, {
@@ -328,7 +328,7 @@ async function runOnboardingWizard(opts, runtime = defaultRuntime, prompter) {
328
328
  mode
329
329
  });
330
330
  await writeConfigFile(nextConfig);
331
- const { finalizeOnboardingWizard } = await import("./onboarding.finalize-BZqsNG2H.js");
331
+ const { finalizeOnboardingWizard } = await import("./onboarding.finalize-BFtOLT7n.js");
332
332
  const { launchedTui } = await finalizeOnboardingWizard({
333
333
  flow,
334
334
  opts,
@@ -31,7 +31,7 @@ import "./logging-CcxUDNcI.js";
31
31
  import "./accounts-KzgPbLHP.js";
32
32
  import "./send-z-sMjqvX.js";
33
33
  import "./send-DEs83M9V.js";
34
- import "./subagent-registry-Ctrhw4X-.js";
34
+ import "./subagent-registry-CgUBOyi3.js";
35
35
  import "./paths-Dn_rzeZN.js";
36
36
  import "./chat-envelope-thy05gXR.js";
37
37
  import "./client-G9E5HGM2.js";
@@ -112,20 +112,20 @@ import "./cli-utils-BKqG4ZT-.js";
112
112
  import "./help-format-CpR5cEGe.js";
113
113
  import "./progress-DuhDspl6.js";
114
114
  import "./note-IoQo8Ol0.js";
115
- import { r as installCompletion } from "./completion-cli-Du8H92bM.js";
116
- import "./register.subclis-_uSASnfC.js";
117
- import "./command-registry-DkjNuW8w.js";
115
+ import { r as installCompletion } from "./completion-cli-w4XQjhDI.js";
116
+ import "./register.subclis-BYiAuTiK.js";
117
+ import "./command-registry-C_YMaVul.js";
118
118
  import "./program-context-DKVuITe2.js";
119
119
  import { n as gatewayInstallErrorHint, t as buildGatewayInstallPlan } from "./daemon-install-helpers-CJtiW2RE.js";
120
120
  import "./runtime-guard-BPoq8vFM.js";
121
121
  import { n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-Dgg-ogyc.js";
122
122
  import { r as isSystemdUserServiceAvailable } from "./systemd-Cj2cX_ZP.js";
123
123
  import { t as resolveGatewayService } from "./service-DSqxS6_D.js";
124
- import { r as healthCommand } from "./health-DFZKMrW2.js";
124
+ import { r as healthCommand } from "./health-DS3reqch.js";
125
125
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BYEy341x.js";
126
126
  import { t as resolveOnboardingSecretInputString } from "./onboarding.secret-input-BTK1IG-J.js";
127
127
  import { t as formatHealthCheckFailure } from "./health-format-eNDYxTNS.js";
128
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-ujZ_JdIz.js";
128
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BlkbgU5h.js";
129
129
  import { t as runTui } from "./tui-CC_AbfZr.js";
130
130
  import { spawn } from "node:child_process";
131
131
  import os from "node:os";
@@ -2,7 +2,7 @@ import "./paths-mdt1HFK2.js";
2
2
  import "./globals-xfUIfxbE.js";
3
3
  import { h as pathExists, y as resolveUserPath } from "./utils-DMGXr25O.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import "./reply-BFTOdZcK.js";
5
+ import "./reply-BaVB3YlN.js";
6
6
  import { v as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-C1XMay0T.js";
7
7
  import { f as restoreTerminalState } from "./subsystem-DC87CPVS.js";
8
8
  import "./squidclaw-root-CnE19yKj.js";
@@ -111,18 +111,18 @@ import "./progress-BHN121Ps.js";
111
111
  import "./server-lifecycle-CnZYKJ9s.js";
112
112
  import "./stagger-DL-XRpny.js";
113
113
  import "./runtime-guard-pMNmDPEU.js";
114
- import "./program-context-M4FTWqqg.js";
114
+ import "./program-context-CkfdLtpp.js";
115
115
  import "./note-CBt9wSWa.js";
116
- import { r as installCompletion } from "./completion-cli-DbNma3J9.js";
116
+ import { r as installCompletion } from "./completion-cli-CyKEJDPO.js";
117
117
  import { n as gatewayInstallErrorHint, t as buildGatewayInstallPlan } from "./daemon-install-helpers-a4pGEsbA.js";
118
118
  import { n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-Di8BSZyD.js";
119
119
  import { r as isSystemdUserServiceAvailable } from "./systemd-fP8tz4aL.js";
120
120
  import { t as resolveGatewayService } from "./service-D4y0_Q5Z.js";
121
- import { r as healthCommand } from "./health-BPZALM__.js";
121
+ import { r as healthCommand } from "./health-BwC4Qe5W.js";
122
122
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Bz7TCLpb.js";
123
123
  import { t as resolveOnboardingSecretInputString } from "./onboarding.secret-input-gGUgwqKJ.js";
124
124
  import { t as formatHealthCheckFailure } from "./health-format-B3bJdIC6.js";
125
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-CEiVFPte.js";
125
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-BCQdm02b.js";
126
126
  import { t as runTui } from "./tui-DNmtKt-5.js";
127
127
  import os from "node:os";
128
128
  import path from "node:path";
@@ -11181,7 +11181,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
11181
11181
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
11182
11182
  let subagentRegistryRuntimePromise = null;
11183
11183
  function loadSubagentRegistryRuntime() {
11184
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-BIKGAzgI.js");
11184
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-Bm5UEB8c.js");
11185
11185
  return subagentRegistryRuntimePromise;
11186
11186
  }
11187
11187
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -22364,41 +22364,6 @@ function resolveContextTokensForModel(params) {
22364
22364
  return lookupContextTokens(params.model) ?? params.fallbackContextTokens;
22365
22365
  }
22366
22366
 
22367
- //#endregion
22368
- //#region src/agents/agent-tier.ts
22369
- const PAID_PROVIDERS = ["anthropic", "openai"];
22370
- function isPaidProvider(modelRef) {
22371
- const trimmed = modelRef.trim().toLowerCase();
22372
- for (const provider of PAID_PROVIDERS) if (trimmed.startsWith(provider + "/") || trimmed.startsWith(provider + ":")) return {
22373
- isPaid: true,
22374
- provider
22375
- };
22376
- return {
22377
- isPaid: false,
22378
- provider: ""
22379
- };
22380
- }
22381
- /**
22382
- * Resolve the current agent tier.
22383
- *
22384
- * - "super": Paid provider configured and key present.
22385
- * - "base": Local/free model only.
22386
- */
22387
- function resolveAgentTier(params) {
22388
- const primary = resolveAgentModelPrimaryValue(params.cfg?.agents?.defaults?.model);
22389
- if (!primary) return "base";
22390
- const { isPaid, provider } = isPaidProvider(primary);
22391
- if (!isPaid) return "base";
22392
- if (!resolveEnvApiKey(provider)) return "base";
22393
- return "super";
22394
- }
22395
- function formatAgentTierLabel(tier) {
22396
- switch (tier) {
22397
- case "super": return "🟢 Super Agent";
22398
- case "base": return "🟡 Basic Agent";
22399
- }
22400
- }
22401
-
22402
22367
  //#endregion
22403
22368
  //#region src/agents/usage.ts
22404
22369
  function makeZeroUsageSnapshot() {
@@ -23087,7 +23052,6 @@ function buildStatusMessage(args) {
23087
23052
  const voiceLine = formatVoiceModeLine(args.config, args.sessionEntry);
23088
23053
  return [
23089
23054
  versionLine,
23090
- args.config ? formatAgentTierLabel(resolveAgentTier({ cfg: args.config })) : null,
23091
23055
  args.timeLine,
23092
23056
  modelLine,
23093
23057
  fallbackLine,
@@ -65870,7 +65834,7 @@ let slackSenderRuntimePromise = null;
65870
65834
  let signalSenderRuntimePromise = null;
65871
65835
  let imessageSenderRuntimePromise = null;
65872
65836
  function loadWhatsAppSenderRuntime() {
65873
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-Cw7U9orE.js");
65837
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-B7GC68Cu.js");
65874
65838
  return whatsappSenderRuntimePromise;
65875
65839
  }
65876
65840
  function loadTelegramSenderRuntime() {
@@ -78731,7 +78695,7 @@ function loadSlashCommandsRuntime() {
78731
78695
  return slashCommandsRuntimePromise;
78732
78696
  }
78733
78697
  function loadSlashDispatchRuntime() {
78734
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-DqZVfX4H.js");
78698
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-C7rHRQFg.js");
78735
78699
  return slashDispatchRuntimePromise;
78736
78700
  }
78737
78701
  function loadSlashSkillCommandsRuntime() {
@@ -85026,7 +84990,7 @@ function loadWebLoginQr() {
85026
84990
  return webLoginQrPromise;
85027
84991
  }
85028
84992
  function loadWebChannel() {
85029
- webChannelPromise ??= import("./web-1D0d1RHD.js");
84993
+ webChannelPromise ??= import("./web-C0xcHURK.js");
85030
84994
  return webChannelPromise;
85031
84995
  }
85032
84996
  function loadWhatsAppActions() {
@@ -10,15 +10,15 @@ import { a as logWebSelfId, h as resolveAccountEntry, i as getWebAuthAgeMs, m as
10
10
  import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-B1S2o3_t.js";
11
11
  import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-WA7QCsM4.js";
12
12
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-D68-1Hhs.js";
13
- import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-B4WWPQvt.js";
13
+ import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-6zfT7daI.js";
14
14
  import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-DKZWH846.js";
15
15
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BVDcCQsz.js";
16
16
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-D1wBrTyc.js";
17
17
  import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-Co3B94Bx.js";
18
18
  import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-Dv1Xtf-W.js";
19
19
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BEIYBmq-.js";
20
- import { $ as deliveryContextFromSession, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as resolveFreshSessionTotalTokens, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateLastRoute, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as resolveCacheTtlMs$1, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as mergeSessionEntry, T as isFailoverAssistantError, Tt as canonicalizeMainSessionAlias, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as updateSessionStoreEntry, Xt as normalizeToolName, Y as updateSessionStore, Yt as expandToolGroups, Z as isCacheEnabled, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveChannelResetConfig, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as archiveSessionTranscripts, b as isAuthAssistantError, bt as resolveThreadFlag, c as extractToolCallsFromAssistant, ct as extractToolCallNames, d as downgradeOpenAIFunctionCallReasoningPairs, dt as applyInputProvenanceToUserMessage, en as buildBootstrapContextFiles, et as deliveryContextKey, f as downgradeOpenAIReasoningBlocks, ft as hasInterSessionUserProvenance, g as formatAssistantErrorText, gt as evaluateSessionFreshness, h as classifyFailoverReason, ht as resolveSessionKey, in as resolveBootstrapTotalMaxChars, it as normalizeAccountId$3, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as parseInlineDirectives$1, m as BILLING_ERROR_USER_MESSAGE, mt as jsonUtf8Bytes, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeDeliveryContext, o as normalizeTextForComparison, ot as capArrayByJsonBytes, p as isGoogleModelApi, pt as normalizeInputProvenance, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeSessionDeliveryFields, s as sanitizeSessionMessagesImages, st as countToolResults, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as mergeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as INPUT_PROVENANCE_KIND_VALUES, v as formatRawAssistantErrorForUi, vt as resolveSessionResetPolicy, w as isContextOverflowError, wt as setSessionRuntimeModel, x as isBillingAssistantError, xt as DEFAULT_RESET_TRIGGERS, y as getApiErrorPayloadFingerprint, yt as resolveSessionResetType, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-CEHpGDRs.js";
21
- import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-CZQnp4VH.js";
20
+ import { $ as deliveryContextFromSession, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as resolveFreshSessionTotalTokens, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateLastRoute, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as resolveCacheTtlMs$1, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as mergeSessionEntry, T as isFailoverAssistantError, Tt as canonicalizeMainSessionAlias, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as updateSessionStoreEntry, Xt as normalizeToolName, Y as updateSessionStore, Yt as expandToolGroups, Z as isCacheEnabled, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveChannelResetConfig, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as archiveSessionTranscripts, b as isAuthAssistantError, bt as resolveThreadFlag, c as extractToolCallsFromAssistant, ct as extractToolCallNames, d as downgradeOpenAIFunctionCallReasoningPairs, dt as applyInputProvenanceToUserMessage, en as buildBootstrapContextFiles, et as deliveryContextKey, f as downgradeOpenAIReasoningBlocks, ft as hasInterSessionUserProvenance, g as formatAssistantErrorText, gt as evaluateSessionFreshness, h as classifyFailoverReason, ht as resolveSessionKey, in as resolveBootstrapTotalMaxChars, it as normalizeAccountId$3, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as parseInlineDirectives$1, m as BILLING_ERROR_USER_MESSAGE, mt as jsonUtf8Bytes, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeDeliveryContext, o as normalizeTextForComparison, ot as capArrayByJsonBytes, p as isGoogleModelApi, pt as normalizeInputProvenance, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeSessionDeliveryFields, s as sanitizeSessionMessagesImages, st as countToolResults, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as mergeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as INPUT_PROVENANCE_KIND_VALUES, v as formatRawAssistantErrorForUi, vt as resolveSessionResetPolicy, w as isContextOverflowError, wt as setSessionRuntimeModel, x as isBillingAssistantError, xt as DEFAULT_RESET_TRIGGERS, y as getApiErrorPayloadFingerprint, yt as resolveSessionResetType, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-A9VYPVCH.js";
21
+ import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-CuBHInKC.js";
22
22
  import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-CjGoSoba.js";
23
23
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DLHloUkx.js";
24
24
  import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-kK-uDSQK.js";
@@ -31,8 +31,8 @@ import { t as resolveIMessageAccount } from "./accounts-B5aNbLs5.js";
31
31
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-BeCJt7wC.js";
32
32
  import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-UAKcGiUQ.js";
33
33
  import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-ZB2Mu1HF.js";
34
- import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureSquidClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-DKkuLtZ4.js";
35
- import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-Cp_lkLCv.js";
34
+ import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureSquidClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-VgwN31FZ.js";
35
+ import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-YiR1ym3a.js";
36
36
  import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-VXOrovPC.js";
37
37
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-B_Wivh-n.js";
38
38
  import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-DU7jYYlW.js";
@@ -69,7 +69,7 @@ import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, Setting
69
69
  import { EdgeTTS } from "node-edge-tts";
70
70
  import { createServer } from "node:http";
71
71
  import { ProxyAgent, fetch as fetch$1 } from "undici";
72
- import WebSocket, { WebSocket as WebSocket$1 } from "ws";
72
+ import WebSocket$1, { WebSocket } from "ws";
73
73
  import { Buffer as Buffer$1 } from "node:buffer";
74
74
  import { createJiti } from "jiti";
75
75
  import AjvPkg from "ajv";
@@ -8230,7 +8230,7 @@ var GatewayClient = class {
8230
8230
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
8231
8231
  });
8232
8232
  }
8233
- this.ws = new WebSocket$1(url, wsOptions);
8233
+ this.ws = new WebSocket(url, wsOptions);
8234
8234
  this.ws.on("open", () => {
8235
8235
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
8236
8236
  const tlsError = this.validateTlsFingerprint();
@@ -8426,7 +8426,7 @@ var GatewayClient = class {
8426
8426
  const connectChallengeTimeoutMs = typeof rawConnectDelayMs === "number" && Number.isFinite(rawConnectDelayMs) ? Math.max(250, Math.min(1e4, rawConnectDelayMs)) : 2e3;
8427
8427
  if (this.connectTimer) clearTimeout(this.connectTimer);
8428
8428
  this.connectTimer = setTimeout(() => {
8429
- if (this.connectSent || this.ws?.readyState !== WebSocket$1.OPEN) return;
8429
+ if (this.connectSent || this.ws?.readyState !== WebSocket.OPEN) return;
8430
8430
  this.opts.onConnectError?.(/* @__PURE__ */ new Error("gateway connect challenge timeout"));
8431
8431
  this.ws?.close(1008, "connect challenge timeout");
8432
8432
  }, connectChallengeTimeoutMs);
@@ -8468,7 +8468,7 @@ var GatewayClient = class {
8468
8468
  return null;
8469
8469
  }
8470
8470
  async request(method, params, opts) {
8471
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
8471
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
8472
8472
  const id = randomUUID();
8473
8473
  const frame = {
8474
8474
  type: "req",
@@ -9890,7 +9890,7 @@ function normalizeReplyPayload(payload, opts = {}) {
9890
9890
  */
9891
9891
  let deliverRuntimePromise$2 = null;
9892
9892
  function loadDeliverRuntime$2() {
9893
- deliverRuntimePromise$2 ??= import("./deliver-runtime-CeE1X9si.js");
9893
+ deliverRuntimePromise$2 ??= import("./deliver-runtime-MBexxUuG.js");
9894
9894
  return deliverRuntimePromise$2;
9895
9895
  }
9896
9896
  /**
@@ -11178,7 +11178,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
11178
11178
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
11179
11179
  let subagentRegistryRuntimePromise = null;
11180
11180
  function loadSubagentRegistryRuntime() {
11181
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-CezPaX9P.js");
11181
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-Bxc5DYZt.js");
11182
11182
  return subagentRegistryRuntimePromise;
11183
11183
  }
11184
11184
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -14532,7 +14532,7 @@ async function runWithConcurrency(tasks, limit) {
14532
14532
  //#region src/media-understanding/echo-transcript.ts
14533
14533
  let deliverRuntimePromise$1 = null;
14534
14534
  function loadDeliverRuntime$1() {
14535
- deliverRuntimePromise$1 ??= import("./deliver-runtime-CeE1X9si.js");
14535
+ deliverRuntimePromise$1 ??= import("./deliver-runtime-MBexxUuG.js");
14536
14536
  return deliverRuntimePromise$1;
14537
14537
  }
14538
14538
  const DEFAULT_ECHO_TRANSCRIPT_FORMAT = "📝 \"{transcript}\"";
@@ -22361,41 +22361,6 @@ function resolveContextTokensForModel(params) {
22361
22361
  return lookupContextTokens(params.model) ?? params.fallbackContextTokens;
22362
22362
  }
22363
22363
 
22364
- //#endregion
22365
- //#region src/agents/agent-tier.ts
22366
- const PAID_PROVIDERS = ["anthropic", "openai"];
22367
- function isPaidProvider(modelRef) {
22368
- const trimmed = modelRef.trim().toLowerCase();
22369
- for (const provider of PAID_PROVIDERS) if (trimmed.startsWith(provider + "/") || trimmed.startsWith(provider + ":")) return {
22370
- isPaid: true,
22371
- provider
22372
- };
22373
- return {
22374
- isPaid: false,
22375
- provider: ""
22376
- };
22377
- }
22378
- /**
22379
- * Resolve the current agent tier.
22380
- *
22381
- * - "super": Paid provider configured and key present.
22382
- * - "base": Local/free model only.
22383
- */
22384
- function resolveAgentTier(params) {
22385
- const primary = resolveAgentModelPrimaryValue(params.cfg?.agents?.defaults?.model);
22386
- if (!primary) return "base";
22387
- const { isPaid, provider } = isPaidProvider(primary);
22388
- if (!isPaid) return "base";
22389
- if (!resolveEnvApiKey(provider)) return "base";
22390
- return "super";
22391
- }
22392
- function formatAgentTierLabel(tier) {
22393
- switch (tier) {
22394
- case "super": return "🟢 Super Agent";
22395
- case "base": return "🟡 Basic Agent";
22396
- }
22397
- }
22398
-
22399
22364
  //#endregion
22400
22365
  //#region src/agents/usage.ts
22401
22366
  function makeZeroUsageSnapshot() {
@@ -23084,7 +23049,6 @@ function buildStatusMessage(args) {
23084
23049
  const voiceLine = formatVoiceModeLine(args.config, args.sessionEntry);
23085
23050
  return [
23086
23051
  versionLine,
23087
- args.config ? formatAgentTierLabel(resolveAgentTier({ cfg: args.config })) : null,
23088
23052
  args.timeLine,
23089
23053
  modelLine,
23090
23054
  fallbackLine,
@@ -51435,7 +51399,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
51435
51399
  const log$10 = createSubsystemLogger("session-maintenance-warning");
51436
51400
  let deliverRuntimePromise = null;
51437
51401
  function loadDeliverRuntime() {
51438
- deliverRuntimePromise ??= import("./deliver-runtime-CeE1X9si.js");
51402
+ deliverRuntimePromise ??= import("./deliver-runtime-MBexxUuG.js");
51439
51403
  return deliverRuntimePromise;
51440
51404
  }
51441
51405
  function shouldSendWarning() {
@@ -56412,7 +56376,7 @@ const VISION_PROVIDERS = [
56412
56376
  ];
56413
56377
  let imageRuntimePromise = null;
56414
56378
  function loadImageRuntime() {
56415
- imageRuntimePromise ??= import("./image-runtime-BMavqm9n.js");
56379
+ imageRuntimePromise ??= import("./image-runtime-CwMuTYvd.js");
56416
56380
  return imageRuntimePromise;
56417
56381
  }
56418
56382
  /**
@@ -58473,7 +58437,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
58473
58437
  hasTypedText
58474
58438
  };
58475
58439
  try {
58476
- const { transcribeFirstAudio } = await import("./audio-preflight-Bzo_zN4j.js");
58440
+ const { transcribeFirstAudio } = await import("./audio-preflight-lT9iRnYi.js");
58477
58441
  if (params.abortSignal?.aborted) return {
58478
58442
  hasAudioAttachment,
58479
58443
  hasTypedText
@@ -65867,7 +65831,7 @@ let slackSenderRuntimePromise = null;
65867
65831
  let signalSenderRuntimePromise = null;
65868
65832
  let imessageSenderRuntimePromise = null;
65869
65833
  function loadWhatsAppSenderRuntime() {
65870
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-miTfQkK9.js");
65834
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-qBpqM2k9.js");
65871
65835
  return whatsappSenderRuntimePromise;
65872
65836
  }
65873
65837
  function loadTelegramSenderRuntime() {
@@ -69571,7 +69535,7 @@ function createDiscordGatewayPlugin(params) {
69571
69535
  return super.registerClient(client);
69572
69536
  }
69573
69537
  createWebSocket(url) {
69574
- return new WebSocket(url, { agent: wsAgent });
69538
+ return new WebSocket$1(url, { agent: wsAgent });
69575
69539
  }
69576
69540
  }
69577
69541
  return new ProxyGatewayPlugin();
@@ -78722,7 +78686,7 @@ function loadSlashCommandsRuntime() {
78722
78686
  return slashCommandsRuntimePromise;
78723
78687
  }
78724
78688
  function loadSlashDispatchRuntime() {
78725
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-BGXbtMX6.js");
78689
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-BeltKAMm.js");
78726
78690
  return slashDispatchRuntimePromise;
78727
78691
  }
78728
78692
  function loadSlashSkillCommandsRuntime() {
@@ -82091,7 +82055,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
82091
82055
  const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
82092
82056
  let preflightTranscript;
82093
82057
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
82094
- const { transcribeFirstAudio } = await import("./audio-preflight-Bzo_zN4j.js");
82058
+ const { transcribeFirstAudio } = await import("./audio-preflight-lT9iRnYi.js");
82095
82059
  preflightTranscript = await transcribeFirstAudio({
82096
82060
  ctx: {
82097
82061
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -85017,7 +84981,7 @@ function loadWebLoginQr() {
85017
84981
  return webLoginQrPromise;
85018
84982
  }
85019
84983
  function loadWebChannel() {
85020
- webChannelPromise ??= import("./web-B46aOGK0.js");
84984
+ webChannelPromise ??= import("./web-CKY0tK0k.js");
85021
84985
  return webChannelPromise;
85022
84986
  }
85023
84987
  function loadWhatsAppActions() {
@@ -93280,7 +93244,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93280
93244
  * Throws if the connection is not open.
93281
93245
  */
93282
93246
  send(event) {
93283
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
93247
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
93284
93248
  this.ws.send(JSON.stringify(event));
93285
93249
  }
93286
93250
  /**
@@ -93297,7 +93261,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93297
93261
  * Returns true if the WebSocket is currently open and ready to send.
93298
93262
  */
93299
93263
  isConnected() {
93300
- return this.ws !== null && this.ws.readyState === WebSocket.OPEN;
93264
+ return this.ws !== null && this.ws.readyState === WebSocket$1.OPEN;
93301
93265
  }
93302
93266
  /**
93303
93267
  * Permanently closes the WebSocket connection and disables auto-reconnect.
@@ -93307,7 +93271,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93307
93271
  this._cancelRetryTimer();
93308
93272
  if (this.ws) {
93309
93273
  this.ws.removeAllListeners();
93310
- if (this.ws.readyState === WebSocket.OPEN || this.ws.readyState === WebSocket.CONNECTING) this.ws.close(1e3, "Client closed");
93274
+ if (this.ws.readyState === WebSocket$1.OPEN || this.ws.readyState === WebSocket$1.CONNECTING) this.ws.close(1e3, "Client closed");
93311
93275
  this.ws = null;
93312
93276
  }
93313
93277
  }
@@ -93317,7 +93281,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
93317
93281
  reject(/* @__PURE__ */ new Error("OpenAIWebSocketManager: apiKey is required before connecting."));
93318
93282
  return;
93319
93283
  }
93320
- const socket = new WebSocket(this.wsUrl, { headers: {
93284
+ const socket = new WebSocket$1(this.wsUrl, { headers: {
93321
93285
  Authorization: `Bearer ${this.apiKey}`,
93322
93286
  "OpenAI-Beta": "responses-websocket=v1"
93323
93287
  } });
@@ -6,7 +6,7 @@ import { d as getChannelDock, o as normalizeThinkLevel, v as normalizeHyphenSlug
6
6
  import { _ as normalizeChatType, r as normalizeChannelId } from "./plugins-BxlUqxlx.js";
7
7
  import { t as generateSecureToken } from "./secure-random-D68-1Hhs.js";
8
8
  import { i as getImageMetadata, m as normalizeMessageChannel, n as buildImageResizeSideGrid, p as listDeliverableMessageChannels, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-Co3B94Bx.js";
9
- import { C as ensureChromeExtensionRelayServer, D as PROFILE_POST_RESTART_WS_TIMEOUT_MS, E as PROFILE_ATTACH_RETRY_TIMEOUT_MS, G as DEFAULT_BROWSER_EVALUATE_ENABLED, H as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, I as resolveWritablePathWithinRoot, J as DEFAULT_SQUIDCLAW_BROWSER_PROFILE_NAME, K as DEFAULT_SQUIDCLAW_BROWSER_COLOR, M as DEFAULT_TRACE_DIR, N as DEFAULT_UPLOAD_DIR, O as resolveCdpReachabilityTimeouts, P as resolveExistingPathsWithinRoot, R as normalizeBrowserFormField, T as CDP_JSON_NEW_TIMEOUT_MS, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, V as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, W as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, _ as withBrowserNavigationPolicy, a as resolveSquidClawUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchSquidClawChrome, j as DEFAULT_DOWNLOAD_DIR, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopSquidClawChrome, p as snapshotAria, q as DEFAULT_SQUIDCLAW_BROWSER_ENABLED, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as isLoopbackHost } from "./chrome-CZQnp4VH.js";
9
+ import { C as ensureChromeExtensionRelayServer, D as PROFILE_POST_RESTART_WS_TIMEOUT_MS, E as PROFILE_ATTACH_RETRY_TIMEOUT_MS, G as DEFAULT_BROWSER_EVALUATE_ENABLED, H as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, I as resolveWritablePathWithinRoot, J as DEFAULT_SQUIDCLAW_BROWSER_PROFILE_NAME, K as DEFAULT_SQUIDCLAW_BROWSER_COLOR, M as DEFAULT_TRACE_DIR, N as DEFAULT_UPLOAD_DIR, O as resolveCdpReachabilityTimeouts, P as resolveExistingPathsWithinRoot, R as normalizeBrowserFormField, T as CDP_JSON_NEW_TIMEOUT_MS, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, V as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, W as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, _ as withBrowserNavigationPolicy, a as resolveSquidClawUserDataDir, b as fetchOk, c as resolveBrowserExecutableForPlatform, f as normalizeCdpWsUrl, g as assertBrowserNavigationResultAllowed, h as assertBrowserNavigationAllowed, i as launchSquidClawChrome, j as DEFAULT_DOWNLOAD_DIR, l as captureScreenshot, m as InvalidBrowserNavigationUrlError, n as isChromeCdpReady, o as stopSquidClawChrome, p as snapshotAria, q as DEFAULT_SQUIDCLAW_BROWSER_ENABLED, r as isChromeReachable, u as createTargetViaCdp, v as appendCdpPath, w as stopChromeExtensionRelayServer, y as fetchJson, z as isLoopbackHost } from "./chrome-CuBHInKC.js";
10
10
  import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-CjGoSoba.js";
11
11
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DLHloUkx.js";
12
12
  import { n as extractErrorCode, r as formatErrorMessage } from "./errors-VR6fgqPc.js";
@@ -1275,7 +1275,7 @@ function isModuleNotFoundError(err) {
1275
1275
  }
1276
1276
  async function loadPwAiModule(mode) {
1277
1277
  try {
1278
- return await import("./pw-ai-Du22SYoO.js");
1278
+ return await import("./pw-ai-CM87tQwG.js");
1279
1279
  } catch (err) {
1280
1280
  if (mode === "soft") return null;
1281
1281
  if (isModuleNotFoundError(err)) return null;
@@ -3641,7 +3641,7 @@ function createProfileAvailability({ opts, profile, state, getProfileState, setP
3641
3641
  //#region src/browser/server-context.reset.ts
3642
3642
  async function closePlaywrightBrowserConnection() {
3643
3643
  try {
3644
- await (await import("./pw-ai-Du22SYoO.js")).closePlaywrightBrowserConnection();
3644
+ await (await import("./pw-ai-CM87tQwG.js")).closePlaywrightBrowserConnection();
3645
3645
  } catch {}
3646
3646
  }
3647
3647
  function createProfileResetOps({ profile, getProfileState, stopRunningBrowser, isHttpReachable, resolveSquidClawUserDataDir }) {
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { ft as loadSquidClawPlugins } from "./reply-BFTOdZcK.js";
2
+ import { ft as loadSquidClawPlugins } from "./reply-BaVB3YlN.js";
3
3
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-C1XMay0T.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-DC87CPVS.js";
5
5
  import { $t as loadConfig } from "./model-selection-CR7aXCux.js";
@@ -3,7 +3,7 @@ import { t as createSubsystemLogger } from "./subsystem-Bw5n50gj.js";
3
3
  import { z as loadConfig } from "./auth-profiles-CX4YYu7Z.js";
4
4
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-Cq4vDGrK.js";
5
5
  import { u as getActivePluginRegistry } from "./registry-BXcl3IkC.js";
6
- import { b as loadSquidClawPlugins } from "./subagent-registry-Ctrhw4X-.js";
6
+ import { b as loadSquidClawPlugins } from "./subagent-registry-CgUBOyi3.js";
7
7
 
8
8
  //#region src/cli/plugin-registry.ts
9
9
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -3,7 +3,7 @@ import { Tr as formatCliCommand, n as loadConfig, ur as normalizeChatChannelId }
3
3
  import { C as sleep, G as getChildLogger, L as logVerbose, O as createSubsystemLogger, T as toWhatsappJid, h as normalizeE164, j as defaultRuntime, m as jidToE164, o as clamp, p as isSelfChatMode, v as resolveJidToE164, z as shouldLogVerbose } from "./logger-DIb2cGHp.js";
4
4
  import { i as resolveWhatsAppAccount, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-xZOA23tQ.js";
5
5
  import { C as resolveChannelGroupRequireMention, S as resolveChannelGroupPolicy } from "./thinking-DRNOh5Xx.js";
6
- import { A as shouldComputeCommandAuthorized, B as formatDurationPrecise, C as createInboundDebouncer, D as buildAgentSessionKey, E as createDedupeCache, G as resolveOpenProviderRuntimeGroupPolicy, H as finalizeInboundContext, I as resolveIdentityNamePrefix, K as warnMissingProviderGroupPolicyFallbackOnce, L as resolveMessagePrefix, O as resolveAgentRoute, R as buildMentionRegexes, T as formatInboundEnvelope, V as enqueueSystemEvent, W as resolveDefaultGroupPolicy, _ as resolveDmGroupAccessWithCommandGate, a as parseActivationCommand, b as shouldAckReactionForWhatsApp, c as computeBackoff, d as buildPairingReply, f as resolveMentionGating, g as readStoreAllowFromForDmPolicy, h as recordPendingHistoryEntryIfEnabled, i as normalizeGroupActivation, k as hasControlCommand, l as sleepWithAbort, m as buildHistoryContextFromEntries, p as DEFAULT_GROUP_HISTORY_LIMIT, s as resolveInboundSessionEnvelopeContext, t as getReplyFromConfig, u as createReplyPrefixOptions, v as resolveDmGroupAccessWithLists, w as resolveInboundDebounceMs, x as dispatchReplyWithBufferedBlockDispatcher, y as resolvePinnedMainDmOwnerFromAllowlist, z as normalizeMentionText } from "./reply-sFKB3ofA.js";
6
+ import { A as shouldComputeCommandAuthorized, B as formatDurationPrecise, C as createInboundDebouncer, D as buildAgentSessionKey, E as createDedupeCache, G as resolveOpenProviderRuntimeGroupPolicy, H as finalizeInboundContext, I as resolveIdentityNamePrefix, K as warnMissingProviderGroupPolicyFallbackOnce, L as resolveMessagePrefix, O as resolveAgentRoute, R as buildMentionRegexes, T as formatInboundEnvelope, V as enqueueSystemEvent, W as resolveDefaultGroupPolicy, _ as resolveDmGroupAccessWithCommandGate, a as parseActivationCommand, b as shouldAckReactionForWhatsApp, c as computeBackoff, d as buildPairingReply, f as resolveMentionGating, g as readStoreAllowFromForDmPolicy, h as recordPendingHistoryEntryIfEnabled, i as normalizeGroupActivation, k as hasControlCommand, l as sleepWithAbort, m as buildHistoryContextFromEntries, p as DEFAULT_GROUP_HISTORY_LIMIT, s as resolveInboundSessionEnvelopeContext, t as getReplyFromConfig, u as createReplyPrefixOptions, v as resolveDmGroupAccessWithLists, w as resolveInboundDebounceMs, x as dispatchReplyWithBufferedBlockDispatcher, y as resolvePinnedMainDmOwnerFromAllowlist, z as normalizeMentionText } from "./reply-DeKKmUDh.js";
7
7
  import { _t as loadSessionStore, bt as updateLastRoute, in as resolveGroupSessionKey, yt as recordSessionMetaFromInbound } from "./pi-embedded-helpers-BioULNev.js";
8
8
  import { s as resolveStorePath } from "./paths-B7_75Pdr.js";
9
9
  import { X as toLocationContext, Y as formatLocationText, et as readChannelAllowFromStoreSync, nt as upsertChannelPairingRequest } from "./send-DhGDAZnT.js";
@@ -1,6 +1,6 @@
1
1
  import { $ as normalizeAgentId, J as buildAgentMainSessionKey, X as buildGroupHistoryKey, at as DEFAULT_ACCOUNT_ID, q as DEFAULT_MAIN_KEY } from "./run-with-concurrency-BvgevDAl.js";
2
2
  import { i as resolveWhatsAppAccount, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-Ba9Wgzzz.js";
3
- import { Et as resolveMessagePrefix, Gt as resolveOpenProviderRuntimeGroupPolicy, It as resolveDmGroupAccessWithCommandGate, Lt as resolveDmGroupAccessWithLists, M as enqueueSystemEvent, N as finalizeInboundContext, Nt as readStoreAllowFromForDmPolicy, Tt as resolveIdentityNamePrefix, Wt as resolveDefaultGroupPolicy, X as createReplyPrefixOptions, _ as buildAgentSessionKey, at as DEFAULT_GROUP_HISTORY_LIMIT, b as shouldComputeCommandAuthorized, d as computeBackoff, et as shouldAckReactionForWhatsApp, f as sleepWithAbort, ft as recordPendingHistoryEntryIfEnabled, g as resolveInboundDebounceMs, h as createInboundDebouncer, ht as createDedupeCache, i as parseActivationCommand, j as formatDurationPrecise, jt as buildPairingReply, mt as normalizeMentionText, o as resolveInboundSessionEnvelopeContext, ot as buildHistoryContextFromEntries, p as dispatchReplyWithBufferedBlockDispatcher, pt as buildMentionRegexes, qt as warnMissingProviderGroupPolicyFallbackOnce, r as normalizeGroupActivation, t as getReplyFromConfig, tt as resolveMentionGating, v as resolveAgentRoute, y as hasControlCommand, yt as formatInboundEnvelope, zt as resolvePinnedMainDmOwnerFromAllowlist } from "./reply-DxvpiQBp.js";
3
+ import { Et as resolveMessagePrefix, Gt as resolveOpenProviderRuntimeGroupPolicy, It as resolveDmGroupAccessWithCommandGate, Lt as resolveDmGroupAccessWithLists, M as enqueueSystemEvent, N as finalizeInboundContext, Nt as readStoreAllowFromForDmPolicy, Tt as resolveIdentityNamePrefix, Wt as resolveDefaultGroupPolicy, X as createReplyPrefixOptions, _ as buildAgentSessionKey, at as DEFAULT_GROUP_HISTORY_LIMIT, b as shouldComputeCommandAuthorized, d as computeBackoff, et as shouldAckReactionForWhatsApp, f as sleepWithAbort, ft as recordPendingHistoryEntryIfEnabled, g as resolveInboundDebounceMs, h as createInboundDebouncer, ht as createDedupeCache, i as parseActivationCommand, j as formatDurationPrecise, jt as buildPairingReply, mt as normalizeMentionText, o as resolveInboundSessionEnvelopeContext, ot as buildHistoryContextFromEntries, p as dispatchReplyWithBufferedBlockDispatcher, pt as buildMentionRegexes, qt as warnMissingProviderGroupPolicyFallbackOnce, r as normalizeGroupActivation, t as getReplyFromConfig, tt as resolveMentionGating, v as resolveAgentRoute, y as hasControlCommand, yt as formatInboundEnvelope, zt as resolvePinnedMainDmOwnerFromAllowlist } from "./reply-DJYA4ZNu.js";
4
4
  import { Ct as normalizeChatChannelId, Pr as formatCliCommand, n as loadConfig } from "./config-k8lexny8.js";
5
5
  import { A as sleep, G as getChildLogger, L as logVerbose, M as toWhatsappJid, S as normalizeE164, T as resolveJidToE164, a as createSubsystemLogger, b as isSelfChatMode, c as defaultRuntime, p as clamp, x as jidToE164, z as shouldLogVerbose } from "./logger-D0ST0Irn.js";
6
6
  import { U as resolveChannelGroupPolicy, W as resolveChannelGroupRequireMention } from "./thinking-DgMA62hm.js";