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

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 (183) hide show
  1. package/dist/{agents-C9ij96eI.js → agents-C83RLKX2.js} +4 -4
  2. package/dist/{agents.config-PFAfbBID.js → agents.config-BVjazvnK.js} +1 -1
  3. package/dist/{agents.config-CBvMKGLh.js → agents.config-dnXbFv5H.js} +1 -1
  4. package/dist/{audio-preflight-omzaYFGD.js → audio-preflight-CLqoZYgI.js} +4 -4
  5. package/dist/{audio-preflight-CODznzqu.js → audio-preflight-Da7vejCH.js} +4 -4
  6. package/dist/{auth-choice-DH2T1E9c.js → auth-choice-BJNaxS-L.js} +1 -1
  7. package/dist/{auth-choice-CLiY8PdF.js → auth-choice-Hb6530su.js} +1 -1
  8. package/dist/{banner-CqQBBjKH.js → banner-dFAx4eE_.js} +1 -1
  9. package/dist/build-info.json +3 -3
  10. package/dist/bundled/boot-md/handler.js +6 -6
  11. package/dist/bundled/session-memory/handler.js +6 -6
  12. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  13. package/dist/{channel-options-e7Z9Smf2.js → channel-options--M8F-DHl.js} +1 -1
  14. package/dist/{channel-options-CLS27y1A.js → channel-options-D0Qjq83D.js} +1 -1
  15. package/dist/{channel-web-DHMbpU2p.js → channel-web-D8hSmcPF.js} +1 -1
  16. package/dist/{channels-cli-BDHLWbaU.js → channels-cli-6uwOEBM-.js} +4 -4
  17. package/dist/{channels-cli-CDwQerVi.js → channels-cli-BtZHPcBX.js} +4 -4
  18. package/dist/{chrome-BAv9fEiv.js → chrome-Bqbv_ZSj.js} +7 -7
  19. package/dist/{chrome-lRUqqgSD.js → chrome-CZuniMYN.js} +7 -7
  20. package/dist/{cli-BGJFLB0I.js → cli-CIImVBCM.js} +1 -1
  21. package/dist/{cli-C1nypCKP.js → cli-CijjdR37.js} +1 -1
  22. package/dist/{command-registry-pGuORBuB.js → command-registry-BtDC5Ll-.js} +9 -9
  23. package/dist/{completion-cli-Bf-Ojq_a.js → completion-cli-Bw5nZmTm.js} +2 -2
  24. package/dist/{completion-cli-C79-bpAx.js → completion-cli-CI6LWHg3.js} +1 -1
  25. package/dist/{config-cli-DLdH6zIF.js → config-cli-CgjgjWri.js} +1 -1
  26. package/dist/{config-cli-BcNHb4_E.js → config-cli-Dc0TQ1yE.js} +1 -1
  27. package/dist/{configure-BSt9S0yk.js → configure-CGqsSqXB.js} +3 -3
  28. package/dist/{configure-h1d7nrgR.js → configure-GUYUjx8A.js} +3 -3
  29. package/dist/{deliver-B2d2N8OJ.js → deliver-0ThKlzQo.js} +1 -1
  30. package/dist/{deliver-CLJRPnfx.js → deliver-CKH_FhS0.js} +1 -1
  31. package/dist/{doctor-completion-BB1f594d.js → doctor-completion-DgPc1rDZ.js} +1 -1
  32. package/dist/{doctor-completion-deY10x7w.js → doctor-completion-DipoVPSi.js} +1 -1
  33. package/dist/entry.js +1 -1
  34. package/dist/extensionAPI.js +6 -6
  35. package/dist/{gateway-cli-IziQis2t.js → gateway-cli-Ds3oN72Y.js} +8 -8
  36. package/dist/{gateway-cli-B-XwzYp2.js → gateway-cli-DuMINk2B.js} +8 -8
  37. package/dist/{health-DMrTgW8V.js → health-DQjqH1zU.js} +1 -1
  38. package/dist/{health-UmuJyu1Q.js → health-Dg0bAIKS.js} +1 -1
  39. package/dist/{hooks-cli-BparoMpt.js → hooks-cli-CEtCwdza.js} +2 -2
  40. package/dist/{hooks-cli-B6WCYLyG.js → hooks-cli-Cac2Ru8r.js} +2 -2
  41. package/dist/{image--DDZnw-F.js → image-88q3KE-C.js} +1 -1
  42. package/dist/{image-Ci28h-op.js → image-CxPjVob-.js} +1 -1
  43. package/dist/index.js +6 -6
  44. package/dist/llm-slug-generator.js +6 -6
  45. package/dist/{models-nhERae29.js → models-DnhANpnd.js} +2 -2
  46. package/dist/{models-cli-bfKNgoHD.js → models-cli-03noBf8W.js} +3 -3
  47. package/dist/{models-cli-BnbeEOCU.js → models-cli-CaP_rt4y.js} +2 -2
  48. package/dist/{onboard-D_VxXTXD.js → onboard-BMc-yUv5.js} +2 -2
  49. package/dist/{onboard-C3pJ0NU-.js → onboard-BZg2c27h.js} +2 -2
  50. package/dist/{onboard-channels-CyeyvIfw.js → onboard-channels-Lt2gG1e2.js} +1 -1
  51. package/dist/{onboard-channels-YvwszRaQ.js → onboard-channels-O6KvizE3.js} +1 -1
  52. package/dist/{onboarding-0zwx3Yv7.js → onboarding-CTgBlanm.js} +3 -3
  53. package/dist/{onboarding-D0_Q5m2W.js → onboarding-G28sv5Ms.js} +3 -3
  54. package/dist/{onboarding.finalize-CYb0_Q0z.js → onboarding.finalize-Cpt9Ymcn.js} +5 -5
  55. package/dist/{onboarding.finalize-CVeI23_g.js → onboarding.finalize-D2sylHDB.js} +6 -6
  56. package/dist/{pi-embedded-D7qD6fo-.js → pi-embedded-Dz24QZz9.js} +96 -17
  57. package/dist/{pi-embedded-CwQsXrVT.js → pi-embedded-ZvazjIyF.js} +96 -17
  58. package/dist/{pi-embedded-helpers-Cd0S0WfR.js → pi-embedded-helpers-B0Kht0I2.js} +4 -4
  59. package/dist/{pi-embedded-helpers-Ll4Lztu1.js → pi-embedded-helpers-CSE0v99A.js} +4 -4
  60. package/dist/{plugin-registry-83ThmVHf.js → plugin-registry-1pF4_jNl.js} +1 -1
  61. package/dist/{plugin-registry-D57lc9ob.js → plugin-registry-CHOacv01.js} +1 -1
  62. package/dist/plugin-sdk/{accounts-DUBJHEgi.js → accounts-BcQo4OUu.js} +1 -1
  63. package/dist/plugin-sdk/{accounts-wSu5JyDM.js → accounts-DEsAwvaZ.js} +1 -1
  64. package/dist/plugin-sdk/{accounts-Ciwy7Yxd.js → accounts-fnLsjAOi.js} +3 -3
  65. package/dist/plugin-sdk/{active-listener-Bnau4oiu.js → active-listener-CeaKSm29.js} +1 -1
  66. package/dist/plugin-sdk/{agent-scope-cT7IxdHY.js → agent-scope-D5PlT0Z0.js} +2 -2
  67. package/dist/plugin-sdk/{api-key-rotation-ElOMCP9r.js → api-key-rotation-B3O1qn0m.js} +1 -1
  68. package/dist/plugin-sdk/{audio-preflight-DtozH3sJ.js → audio-preflight-CYSy3uuZ.js} +24 -24
  69. package/dist/plugin-sdk/{bindings-CKqdifyU.js → bindings-C0XEX0yK.js} +2 -2
  70. package/dist/plugin-sdk/{channel-activity-CCnr-9bS.js → channel-activity-WgE8Z4Bb.js} +1 -1
  71. package/dist/plugin-sdk/{channel-web-XYtgc8aq.js → channel-web-Nw-bUgtV.js} +22 -22
  72. package/dist/plugin-sdk/{chrome-BO7SUTgY.js → chrome-C1xnOQsc.js} +3 -3
  73. package/dist/plugin-sdk/{chunk-DyzO7IVo.js → chunk-CQk9vawA.js} +1 -1
  74. package/dist/plugin-sdk/{command-format-DcBXOX9Z.js → command-format-DHXa0Clc.js} +1 -1
  75. package/dist/plugin-sdk/{commands-registry-BsSKPwgj.js → commands-registry-yTZdwtLj.js} +4 -4
  76. package/dist/plugin-sdk/{config-9OZuRn0C.js → config--kW4R0el.js} +9 -9
  77. package/dist/plugin-sdk/{deliver-BO_wt0wd.js → deliver-C2gjA_UH.js} +10 -10
  78. package/dist/plugin-sdk/{diagnostic-DKyVS3IK.js → diagnostic-Up1aMyxZ.js} +1 -1
  79. package/dist/plugin-sdk/{image-C31B_R8P.js → image-Bcc99tVA.js} +4 -4
  80. package/dist/plugin-sdk/{image-ops-B8aJIly2.js → image-ops-C6RLbtSJ.js} +1 -1
  81. package/dist/plugin-sdk/index.js +53 -53
  82. package/dist/plugin-sdk/{ir-CD5VqKGg.js → ir-Cwi1KVG5.js} +4 -4
  83. package/dist/plugin-sdk/{local-roots-D4PCK2jj.js → local-roots-6BSl8AoA.js} +3 -3
  84. package/dist/plugin-sdk/{login-CW17h3xU.js → login-Cau5eVVj.js} +7 -7
  85. package/dist/plugin-sdk/{login-qr-CMdk06CS.js → login-qr-CLWtfA9m.js} +9 -9
  86. package/dist/plugin-sdk/{manager-CZPPxI6R.js → manager-C3Eb_8Hz.js} +8 -8
  87. package/dist/plugin-sdk/{manifest-registry-sgHvjA6E.js → manifest-registry-DvEm2HHf.js} +1 -1
  88. package/dist/plugin-sdk/{markdown-tables-Bo-r4msS.js → markdown-tables-cJqvQe9j.js} +1 -1
  89. package/dist/plugin-sdk/{message-channel-DmB4bGFh.js → message-channel-DY9wVB2A.js} +1 -1
  90. package/dist/plugin-sdk/{model-selection-CXooYLb2.js → model-selection-BjVTBZiY.js} +4 -4
  91. package/dist/plugin-sdk/{outbound-dAcQHyyr.js → outbound-Co1QSkdS.js} +7 -7
  92. package/dist/plugin-sdk/{outbound-attachment-CCxMtk8m.js → outbound-attachment-CsmRyZPI.js} +2 -2
  93. package/dist/plugin-sdk/{pi-auth-json-C-euHc3x.js → pi-auth-json-DfEOhoTK.js} +5 -5
  94. package/dist/plugin-sdk/{pi-embedded-helpers-DU0nLxRU.js → pi-embedded-helpers-D3EACnFn.js} +17 -17
  95. package/dist/plugin-sdk/plugins/runtime/types.d.ts +2 -0
  96. package/dist/plugin-sdk/{plugins-DIzw7Ncy.js → plugins-Dyz98ZJX.js} +4 -4
  97. package/dist/plugin-sdk/{pw-ai-CYmDAwXD.js → pw-ai-smoXiGqZ.js} +8 -8
  98. package/dist/plugin-sdk/{qmd-manager-DQiT4WTr.js → qmd-manager-CUhJ7WG2.js} +4 -4
  99. package/dist/plugin-sdk/{registry-O1yza0Vh.js → registry-DL-33c9X.js} +2 -2
  100. package/dist/plugin-sdk/{replies-Bnu7HnvW.js → replies-Bkaifx0j.js} +3 -3
  101. package/dist/plugin-sdk/{reply-BSOpvBX4.js → reply-Cb54ddUA.js} +158 -79
  102. package/dist/plugin-sdk/{reply-prefix-BF0omhZE.js → reply-prefix-5vdbga0R.js} +1 -1
  103. package/dist/plugin-sdk/{resolve-outbound-target-DzZIT1V1.js → resolve-outbound-target-CP7QDN14.js} +2 -2
  104. package/dist/plugin-sdk/{resolve-route-B63ztF-V.js → resolve-route-eopifBrM.js} +3 -3
  105. package/dist/plugin-sdk/{retry-JFNwfUew.js → retry-5P3d0rYw.js} +1 -1
  106. package/dist/plugin-sdk/{runner-DztRiWhh.js → runner-DqwPn56n.js} +9 -9
  107. package/dist/plugin-sdk/{send-DEV4iiFj.js → send-C2NQjVF9.js} +10 -10
  108. package/dist/plugin-sdk/{send-D-spKwjf.js → send-D_X6p9H0.js} +10 -10
  109. package/dist/plugin-sdk/{send-CK3DCPv-.js → send-DnFB-v5n.js} +6 -6
  110. package/dist/plugin-sdk/{send-D1C2sJG1.js → send-PPtjKj-0.js} +7 -7
  111. package/dist/plugin-sdk/{send-DrYvH25B.js → send-_uj_NuFI.js} +6 -6
  112. package/dist/plugin-sdk/{session-DRJl5tKC.js → session-CZngPTYk.js} +4 -4
  113. package/dist/plugin-sdk/{skill-commands-Dv5AeOZQ.js → skill-commands-Cr54qPdy.js} +5 -5
  114. package/dist/plugin-sdk/{skills-5hEda4_Y.js → skills-Dcu4o-9l.js} +7 -7
  115. package/dist/plugin-sdk/{sqlite-DUu0dwic.js → sqlite-ulpcowfN.js} +1 -1
  116. package/dist/plugin-sdk/{store-DoRXD0QB.js → store-EUYCRBvs.js} +2 -2
  117. package/dist/plugin-sdk/{subsystem-C4Rh0kdL.js → subsystem-C9WnrKN8.js} +1 -1
  118. package/dist/plugin-sdk/{tables-C_81Ve2l.js → tables-CMdQECje.js} +1 -1
  119. package/dist/plugin-sdk/{target-errors-C638yp2-.js → target-errors-CrR2lAF7.js} +2 -2
  120. package/dist/plugin-sdk/{thinking-DexKPSsI.js → thinking-C7zYA2s9.js} +5 -5
  121. package/dist/plugin-sdk/{tokens-K9ITCatc.js → tokens-2475WU2Z.js} +1 -1
  122. package/dist/plugin-sdk/{tool-images-BvjD_HnR.js → tool-images-DCvC8yL7.js} +2 -2
  123. package/dist/plugin-sdk/{tool-loop-detection-BBRtoox8.js → tool-loop-detection-D0ADW0h2.js} +2 -2
  124. package/dist/plugin-sdk/tts/tts-core.d.ts +15 -0
  125. package/dist/plugin-sdk/tts/tts.d.ts +16 -0
  126. package/dist/plugin-sdk/web-BVkjyY4A.js +65 -0
  127. package/dist/plugin-sdk/{whatsapp-actions-D8i2vCxS.js → whatsapp-actions-DC4RRNqv.js} +21 -21
  128. package/dist/{plugins-cli-BymsOcmR.js → plugins-cli-CflNTqmB.js} +2 -2
  129. package/dist/{plugins-cli-DOWA2F0z.js → plugins-cli-DW0TLzrq.js} +2 -2
  130. package/dist/{program-T05XIetU.js → program-DUkjf6lq.js} +7 -7
  131. package/dist/{program-context-CDmctW1L.js → program-context-C0-LzXoV.js} +17 -17
  132. package/dist/{prompt-select-styled-cR4-U64b.js → prompt-select-styled-CQUE1vow.js} +4 -4
  133. package/dist/{prompt-select-styled-BbzQhWF7.js → prompt-select-styled-CWNxdPrL.js} +4 -4
  134. package/dist/{provider-auth-helpers-BbnDoytN.js → provider-auth-helpers-D39L7fZC.js} +1 -1
  135. package/dist/{provider-auth-helpers-C4RNIRyy.js → provider-auth-helpers-bYUBBkmL.js} +1 -1
  136. package/dist/{push-apns-Dli4pG4y.js → push-apns-DGIqfAg5.js} +1 -1
  137. package/dist/{push-apns-DUeNpqyF.js → push-apns-Qfohz-Hs.js} +1 -1
  138. package/dist/{pw-ai-KrN0mqVH.js → pw-ai-D-_aGzdQ.js} +1 -1
  139. package/dist/{pw-ai-C-kqYO4L.js → pw-ai-S3cpSYOy.js} +1 -1
  140. package/dist/{register.agent-aY_6enDc.js → register.agent-BEM0_4uG.js} +5 -5
  141. package/dist/{register.agent-DNAtU5WP.js → register.agent-WQgVmACk.js} +6 -6
  142. package/dist/{register.configure-CwlwOMZ3.js → register.configure-CCpFmFPt.js} +6 -6
  143. package/dist/{register.configure-C_n9kIWJ.js → register.configure-CdW3aECy.js} +6 -6
  144. package/dist/{register.maintenance-DC40nnCm.js → register.maintenance-B8RZLSOe.js} +8 -8
  145. package/dist/{register.maintenance-Dddndcoo.js → register.maintenance-CM3QEdFz.js} +7 -7
  146. package/dist/{register.message-DiR6desB.js → register.message-BRLYHuVS.js} +2 -2
  147. package/dist/{register.message-CpEf0b15.js → register.message-XYm9NyDT.js} +2 -2
  148. package/dist/{register.onboard-bOeA39xj.js → register.onboard-BzAJbRpP.js} +4 -4
  149. package/dist/{register.onboard-VzVmqpEA.js → register.onboard-EwGHFUsd.js} +4 -4
  150. package/dist/{register.setup-CNLQzxl8.js → register.setup-33shhZje.js} +4 -4
  151. package/dist/{register.setup-D6iO5Xqa.js → register.setup-DpdZyiMv.js} +4 -4
  152. package/dist/{register.status-health-sessions-CoiaeduR.js → register.status-health-sessions-C8-iqepo.js} +3 -3
  153. package/dist/{register.status-health-sessions-BtJeTZnN.js → register.status-health-sessions-CK4f2nj_.js} +3 -3
  154. package/dist/{register.subclis-CFTYYdAQ.js → register.subclis-Mn68G5tp.js} +9 -9
  155. package/dist/{reply-Bv-RvRzs.js → reply-DuVUTFfT.js} +82 -3
  156. package/dist/{run-main-EzFOCEdp.js → run-main-CNB3qjRM.js} +14 -14
  157. package/dist/{runner-ChBxge-W.js → runner-D1eXJZ8T.js} +1 -1
  158. package/dist/{runner-Dq-qfrq7.js → runner-a43IsYad.js} +1 -1
  159. package/dist/{server-node-events-B9TqPvCI.js → server-node-events-B3o3P600.js} +2 -2
  160. package/dist/{server-node-events-syk21TN6.js → server-node-events-BPFwUGbS.js} +2 -2
  161. package/dist/{session-dirs-BAcQuXpY.js → session-dirs-Cw2efkey.js} +1 -1
  162. package/dist/{session-dirs-t0YpmrIL.js → session-dirs-DsU4kvIK.js} +1 -1
  163. package/dist/{status-keCWmejk.js → status-BSJIuIlN.js} +1 -1
  164. package/dist/{status-05251w21.js → status-BhHpKHQP.js} +2 -2
  165. package/dist/{status-BqDiXxwL.js → status-C2PvVLaW.js} +1 -1
  166. package/dist/{status-B8UVm7P3.js → status-CLKmcFCC.js} +2 -2
  167. package/dist/{subagent-registry-Lm4ps45z.js → subagent-registry-Da0a_Vka.js} +82 -3
  168. package/dist/{update-cli-BTF6TXGD.js → update-cli-BW3q5tFm.js} +7 -7
  169. package/dist/{update-cli-aW6jVJIJ.js → update-cli-D4EUMrX6.js} +8 -8
  170. package/dist/{web-BYZfljIx.js → web-BTbIFuWM.js} +2 -2
  171. package/dist/{web-BjxYv-hA.js → web-C7TQSVU0.js} +1 -1
  172. package/dist/{web-DPHo2cWX.js → web-CVSol55V.js} +6 -6
  173. package/dist/{web-Cs0IP-ZO.js → web-Y49Dumye.js} +6 -6
  174. package/extensions/voice-call/package.json +2 -0
  175. package/extensions/voice-call/src/config.ts +16 -3
  176. package/extensions/voice-call/src/providers/realtime-session.ts +210 -0
  177. package/extensions/voice-call/src/providers/twilio.ts +31 -13
  178. package/extensions/voice-call/src/response-generator.ts +3 -3
  179. package/extensions/voice-call/src/telephony-audio.ts +54 -0
  180. package/extensions/voice-call/src/telephony-tts.ts +40 -2
  181. package/extensions/voice-call/src/webhook.ts +174 -8
  182. package/package.json +1 -1
  183. package/dist/plugin-sdk/web-DiLYLsml.js +0 -65
@@ -1,72 +1,72 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { _ as isCronSessionKey, b as resolveThreadParentSessionKey, c as normalizeMainKey, d as sanitizeAgentId, f as DEFAULT_ACCOUNT_ID, g as isAcpSessionKey, h as getSubagentDepth, l as resolveAgentIdFromSessionKey, o as classifySessionKeyShape, p as normalizeAccountId$2, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveThreadSessionKeys, v as isSubagentSessionKey, y as parseAgentSessionKey } from "./session-key-C_0eELjb.js";
3
- import { c as logoutWeb, f as readWebSelfId, g as webAuthExists, o as getWebAuthAgeMs, r as resolveWhatsAppAccount, s as logWebSelfId } from "./accounts-Ciwy7Yxd.js";
3
+ import { c as logoutWeb, f as readWebSelfId, g as webAuthExists, o as getWebAuthAgeMs, r as resolveWhatsAppAccount, s as logWebSelfId } from "./accounts-fnLsjAOi.js";
4
4
  import { c as expandHomePrefix, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-DVWx7USN.js";
5
5
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-Cg0YPPSu.js";
6
- import { A as resolveSlackBotToken, C as resolveTelegramToken, D as resolveSlackAccount, F as resolveDiscordAccount, I as normalizeDiscordToken, N as listEnabledDiscordAccounts, S as resolveTelegramAccount, _ as normalizeWhatsAppTarget, b as listTelegramAccountIds, g as isWhatsAppGroupJid, h as resolveSlackChannelId, j as createDiscordActionGate, k as resolveSlackAppToken, m as parseSlackTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as createTelegramActionGate, y as listEnabledTelegramAccounts } from "./plugins-DIzw7Ncy.js";
6
+ import { A as resolveSlackBotToken, C as resolveTelegramToken, D as resolveSlackAccount, F as resolveDiscordAccount, I as normalizeDiscordToken, N as listEnabledDiscordAccounts, S as resolveTelegramAccount, _ as normalizeWhatsAppTarget, b as listTelegramAccountIds, g as isWhatsAppGroupJid, h as resolveSlackChannelId, j as createDiscordActionGate, k as resolveSlackAppToken, m as parseSlackTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, v as createTelegramActionGate, y as listEnabledTelegramAccounts } from "./plugins-Dyz98ZJX.js";
7
7
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-ChYuW7LE.js";
8
8
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-b2Zm8y7X.js";
9
- import { $ as isRich, A as normalizeE164, D as isRecord$1, E as formatTerminalLink, H as isPlainObject, I as shortenHomeInString, J as setVerbose, K as logVerbose, L as shortenHomePath, P as resolveUserPath, Q as colorize, R as sleep$1, S as clampInt, T as escapeRegExp, U as danger, V as truncateUtf16Safe, Y as shouldLogVerbose, Z as warn, _ as matchPluginCommand, a as normalizeAnyChannelId, b as CONFIG_DIR, ct as normalizeLogLevel, d as createPluginRegistry, et as theme, f as normalizePluginHttpPath, g as listPluginCommands, h as getPluginCommandSpecs, l as requireActivePluginRegistry, m as executePluginCommand, n as CHAT_CHANNEL_ORDER, o as normalizeChannelId$1, p as clearPluginCommands, r as DEFAULT_CHAT_CHANNEL, tt as getChildLogger, u as setActivePluginRegistry, ut as resolvePreferredOpenClawTmpDir, v as createInternalHookEvent, w as ensureDir$3, y as triggerInternalHook, z as sliceUtf16Safe } from "./registry-O1yza0Vh.js";
10
- import { n as retryAsync } from "./retry-JFNwfUew.js";
11
- import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, At as fetchDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, E as listThreadsDiscord, Et as normalizeChannelSlug, 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 resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as buildChannelKeyCandidates, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as applyChannelMatchMeta, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-DEV4iiFj.js";
12
- import { B as getConfigOverrides, C as resolveIMessageRemoteAttachmentRoots, G as parseConfigPath, H as setConfigOverride, J as isSafeExecutableValue, K as setConfigValueAtPath, R as parseDurationMs, S as resolveIMessageAttachmentRoots, U as unsetConfigOverride, V as resetConfigOverrides, W as getConfigValueAtPath, X as resolveAgentMaxConcurrent, Y as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Z as VERSION, _ as normalizeTelegramCommandName, a as writeConfigFile, b as isInboundPathAllowed, g as TELEGRAM_COMMAND_NAME_PATTERN, i as resolveConfigSnapshotHash, n as loadConfig, o as validateConfigObjectWithPlugins, q as unsetConfigValueAtPath, r as readConfigFileSnapshot, v as resolveTelegramCustomCommands, w as normalizeScpRemoteHost, z as validateJsonSchemaValue } from "./config-9OZuRn0C.js";
13
- import { a as clearActiveProgressLine, i as defaultRuntime, o as registerActiveProgressLine, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger } from "./subsystem-C4Rh0kdL.js";
14
- import { i as parseBooleanValue$1, n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-DcBXOX9Z.js";
15
- import { A as getSoonestCooldownExpiry, B as resolveOpenClawAgentDir, C as getCustomProviderApiKey, D as resolveModelAuthMode, E as resolveEnvApiKey, F as dedupeProfileIds, G as normalizeSecretInput, H as withFileLock, I as listProfilesForProvider, J as DEFAULT_MODEL, K as resolveAuthProfileDisplayLabel, L as markAuthProfileGood, M as markAuthProfileFailure, N as markAuthProfileUsed, P as resolveApiKeyForProfile, Q as resolveShellEnvFallbackTimeoutMs, R as ensureAuthProfileStore, S as getApiKeyForModel, T as resolveApiKeyForProvider, X as getShellPathFromLoginShell, Y as DEFAULT_PROVIDER, a as isCliProvider, b as OLLAMA_NATIVE_BASE_URL, c as normalizeProviderId, d as resolveDefaultModelForAgent, f as resolveModelRefFromString, i as findNormalizedProviderValue, j as isProfileInCooldown, k as resolveAuthProfileOrder, m as resolveThinkingDefault, n as buildConfiguredAllowlistKeys, o as modelKey, p as resolveSubagentSpawnModelSelection, q as DEFAULT_CONTEXT_TOKENS, r as buildModelAliasIndex, s as normalizeModelRef$2, t as buildAllowedModelSet, u as resolveConfiguredModelRef, w as requireApiKey, x as createOllamaStreamFn, z as resolveAuthStorePathForDisplay } from "./model-selection-CXooYLb2.js";
16
- import { A as logInfo, C as resolveOpenClawPackageRoot, D as spawnWithFallback, E as runExec, O as logDebug, S as loadWorkspaceBootstrapFiles, T as runCommandWithTimeout, a as resolveAgentModelPrimary, b as ensureAgentWorkspace, c as resolveDefaultAgentId, d as resolveSessionAgentIds, g as DEFAULT_IDENTITY_FILENAME, i as resolveAgentModelFallbacksOverride, j as logWarn, k as logError, l as resolveEffectiveModelFallbacks, m as DEFAULT_BOOTSTRAP_FILENAME, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId, x as filterBootstrapFilesForSession } from "./agent-scope-cT7IxdHY.js";
17
- import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverOpenClawPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-sgHvjA6E.js";
9
+ import { $ as isRich, A as normalizeE164, D as isRecord$1, E as formatTerminalLink, H as isPlainObject, I as shortenHomeInString, J as setVerbose, K as logVerbose, L as shortenHomePath, P as resolveUserPath, Q as colorize, R as sleep$1, S as clampInt, T as escapeRegExp, U as danger, V as truncateUtf16Safe, Y as shouldLogVerbose, Z as warn, _ as matchPluginCommand, a as normalizeAnyChannelId, b as CONFIG_DIR, ct as normalizeLogLevel, d as createPluginRegistry, et as theme, f as normalizePluginHttpPath, g as listPluginCommands, h as getPluginCommandSpecs, l as requireActivePluginRegistry, m as executePluginCommand, n as CHAT_CHANNEL_ORDER, o as normalizeChannelId$1, p as clearPluginCommands, r as DEFAULT_CHAT_CHANNEL, tt as getChildLogger, u as setActivePluginRegistry, ut as resolvePreferredOpenClawTmpDir, v as createInternalHookEvent, w as ensureDir$3, y as triggerInternalHook, z as sliceUtf16Safe } from "./registry-DL-33c9X.js";
10
+ import { n as retryAsync } from "./retry-5P3d0rYw.js";
11
+ import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, At as fetchDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, E as listThreadsDiscord, Et as normalizeChannelSlug, 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 resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as buildChannelKeyCandidates, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as applyChannelMatchMeta, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-C2NQjVF9.js";
12
+ import { B as getConfigOverrides, C as resolveIMessageRemoteAttachmentRoots, G as parseConfigPath, H as setConfigOverride, J as isSafeExecutableValue, K as setConfigValueAtPath, R as parseDurationMs, S as resolveIMessageAttachmentRoots, U as unsetConfigOverride, V as resetConfigOverrides, W as getConfigValueAtPath, X as resolveAgentMaxConcurrent, Y as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Z as VERSION, _ as normalizeTelegramCommandName, a as writeConfigFile, b as isInboundPathAllowed, g as TELEGRAM_COMMAND_NAME_PATTERN, i as resolveConfigSnapshotHash, n as loadConfig, o as validateConfigObjectWithPlugins, q as unsetConfigValueAtPath, r as readConfigFileSnapshot, v as resolveTelegramCustomCommands, w as normalizeScpRemoteHost, z as validateJsonSchemaValue } from "./config--kW4R0el.js";
13
+ import { a as clearActiveProgressLine, i as defaultRuntime, o as registerActiveProgressLine, r as createNonExitingRuntime, s as unregisterActiveProgressLine, t as createSubsystemLogger } from "./subsystem-C9WnrKN8.js";
14
+ import { i as parseBooleanValue$1, n as resolveCliName, r as isTruthyEnvValue, t as formatCliCommand } from "./command-format-DHXa0Clc.js";
15
+ import { A as getSoonestCooldownExpiry, B as resolveOpenClawAgentDir, C as getCustomProviderApiKey, D as resolveModelAuthMode, E as resolveEnvApiKey, F as dedupeProfileIds, G as normalizeSecretInput, H as withFileLock, I as listProfilesForProvider, J as DEFAULT_MODEL, K as resolveAuthProfileDisplayLabel, L as markAuthProfileGood, M as markAuthProfileFailure, N as markAuthProfileUsed, P as resolveApiKeyForProfile, Q as resolveShellEnvFallbackTimeoutMs, R as ensureAuthProfileStore, S as getApiKeyForModel, T as resolveApiKeyForProvider, X as getShellPathFromLoginShell, Y as DEFAULT_PROVIDER, a as isCliProvider, b as OLLAMA_NATIVE_BASE_URL, c as normalizeProviderId, d as resolveDefaultModelForAgent, f as resolveModelRefFromString, i as findNormalizedProviderValue, j as isProfileInCooldown, k as resolveAuthProfileOrder, m as resolveThinkingDefault, n as buildConfiguredAllowlistKeys, o as modelKey, p as resolveSubagentSpawnModelSelection, q as DEFAULT_CONTEXT_TOKENS, r as buildModelAliasIndex, s as normalizeModelRef$2, t as buildAllowedModelSet, u as resolveConfiguredModelRef, w as requireApiKey, x as createOllamaStreamFn, z as resolveAuthStorePathForDisplay } from "./model-selection-BjVTBZiY.js";
16
+ import { A as logInfo, C as resolveOpenClawPackageRoot, D as spawnWithFallback, E as runExec, O as logDebug, S as loadWorkspaceBootstrapFiles, T as runCommandWithTimeout, a as resolveAgentModelPrimary, b as ensureAgentWorkspace, c as resolveDefaultAgentId, d as resolveSessionAgentIds, g as DEFAULT_IDENTITY_FILENAME, i as resolveAgentModelFallbacksOverride, j as logWarn, k as logError, l as resolveEffectiveModelFallbacks, m as DEFAULT_BOOTSTRAP_FILENAME, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_AGENT_WORKSPACE_DIR, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentId, x as filterBootstrapFilesForSession } from "./agent-scope-D5PlT0Z0.js";
17
+ import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverOpenClawPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-DvEm2HHf.js";
18
18
  import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-Bv8oZiTO.js";
19
- import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-CCnr-9bS.js";
19
+ import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-WgE8Z4Bb.js";
20
20
  import { n as normalizePollInput } from "./polls-3WJMd-G-.js";
21
- import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-B8aJIly2.js";
21
+ import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-C6RLbtSJ.js";
22
22
  import { a as isBlockedHostnameOrIp, c as normalizeHostname, t as SsrFBlockedError } from "./ssrf-DKZ8eBrk.js";
23
- import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-D4PCK2jj.js";
24
- import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-CD5VqKGg.js";
25
- import { a as chunkText, c as resolveChunkMode, d as findFenceSpanAt, f as isSafeFenceBreak, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, p as parseFenceSpans, r as chunkMarkdownText, t as chunkByNewline } from "./chunk-DyzO7IVo.js";
26
- import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-DmB4bGFh.js";
23
+ import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-6BSl8AoA.js";
24
+ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-Cwi1KVG5.js";
25
+ import { a as chunkText, c as resolveChunkMode, d as findFenceSpanAt, f as isSafeFenceBreak, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, p as parseFenceSpans, r as chunkMarkdownText, t as chunkByNewline } from "./chunk-CQk9vawA.js";
26
+ import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-DY9wVB2A.js";
27
27
  import { t as normalizeChatType } from "./chat-type-CEMQNtWX.js";
28
- import { n as resolveMarkdownTableMode } from "./markdown-tables-Bo-r4msS.js";
29
- import { t as convertMarkdownTables } from "./tables-C_81Ve2l.js";
30
- import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-D1C2sJG1.js";
31
- import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-BvjD_HnR.js";
32
- import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-C638yp2-.js";
33
- import { a as createSlackWebClient, c as validateSlackBlocksArray, i as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack } from "./send-CK3DCPv-.js";
34
- import { $ as parseTelegramTarget, A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as readChannelAllowFromStore, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as upsertChannelPairingRequest, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, Q as isVoiceCompatibleAudio, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as addChannelAllowFromStoreEntry, X as listPairingChannels, Y as getPairingAdapter, Z as withTelegramApiErrorLogging, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, et as resolveTelegramTargetChatType, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as toLocationContext, o as sendMessageTelegram, p as markdownToTelegramChunks, q as removeChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as formatLocationText, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-D-spKwjf.js";
35
- import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as registerUnhandledRejectionHandler, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as buildRandomTempFilePath } from "./runner-DztRiWhh.js";
36
- import { a as resolveAckReaction, c as resolveHumanDelayConfig, i as resolveResponsePrefixTemplate, n as createReplyPrefixOptions, o as resolveAgentIdentity, s as resolveEffectiveMessagesConfig } from "./reply-prefix-BF0omhZE.js";
37
- import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-K9ITCatc.js";
38
- import { c as getSkillsSnapshotVersion, d as resolvePairingPaths, f as createAsyncLock, i as resolveSkillCommandInvocation, l as generatePairingToken, m as writeJsonAtomic, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as readJsonFile, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as pruneExpiredPending } from "./skill-commands-Dv5AeOZQ.js";
39
- 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-5hEda4_Y.js";
40
- import { M as isSecureWebSocketUrl, N as rawDataToString, T as DEFAULT_AI_SNAPSHOT_MAX_CHARS, x as ensureChromeExtensionRelayServer } from "./chrome-BO7SUTgY.js";
41
- import { A as normalizeHyphenSlug, F as resolveChannelGroupRequireMention, I as resolveChannelGroupToolsPolicy, M as normalizeStringEntriesLower, P as resolveChannelGroupPolicy, a as normalizeReasoningLevel, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, i as normalizeElevatedLevel, j as normalizeStringEntries, k as normalizeAtHashSlug, l as resolveResponseUsageMode, m as normalizeSignalMessagingTarget, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-DexKPSsI.js";
42
- import { r as resolveIMessageAccount } from "./accounts-wSu5JyDM.js";
43
- import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-DUBJHEgi.js";
44
- import { C as getGlobalHookRunner, S as throwIfAborted, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as splitMediaFromOutput, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as parseReplyDirectives, w as initializeGlobalHookRunner, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-BO_wt0wd.js";
45
- import { $ as normalizeToolName, A as isTransientHttpError, At as countToolResults, B as resolveProfile, Bt as resolveChannelResetConfig, C as isContextOverflowError, Ct as deliveryContextKey, D as isRateLimitAssistantError, Dt as normalizeAccountId$3, E as isLikelyContextOverflowError, Et as normalizeSessionDeliveryFields, F as resolveSandboxContext, Ft as normalizeInputProvenance, G as resolveBrowserControlAuth, Gt as resolveFreshSessionTotalTokens, H as resolveExistingPathsWithinRoot, Ht as resolveSessionResetType, I as resolveSandboxRuntimeStatus, It as acquireSessionWriteLock, J as buildPluginToolGroups, Jt as resolveMainSessionKey, K as resolveSandboxConfigForAgent, Kt as canonicalizeMainSessionAlias, L as createBrowserRouteContext, Lt as resolveSessionLockMaxHoldFromTimeout, M as parseImageSizeError, Mt as INPUT_PROVENANCE_KIND_VALUES, N as sanitizeUserFacingText, Nt as applyInputProvenanceToUserMessage, O as isRawApiErrorPayload, Ot as archiveSessionTranscripts, P as ensureSandboxWorkspaceForSession, Pt as hasInterSessionUserProvenance, Q as mergeAlsoAllowPolicy, R as registerBrowserRoutes, Rt as resolveSessionKey, S as isCompactionFailureError, St as deliveryContextFromSession, T as isFailoverErrorMessage, Tt as normalizeDeliveryContext, U as getBridgeAuthForPort, Ut as resolveThreadFlag, V as DEFAULT_UPLOAD_DIR, Vt as resolveSessionResetPolicy, W as ensureBrowserControlAuth, Wt as DEFAULT_RESET_TRIGGERS, X as expandPolicyWithPluginGroups, Xt as resolveGroupSessionKey, Y as collectExplicitAllowlist, Yt as deriveSessionMetaPatch, Z as expandToolGroups, _ as formatRawAssistantErrorForUi, _t as updateLastRoute, a as isMessagingToolDuplicateNormalized, at as ensureSessionHeader, b as isBillingAssistantError, bt as isCacheEnabled, c as extractToolCallsFromAssistant, ct as sanitizeGoogleTurnOrdering, d as isAntigravityClaude, dt as appendAssistantMessageToSessionTranscript, et as resolveToolProfilePolicy, f as isGoogleModelApi, g as formatBillingErrorMessage, gt as recordSessionMetaFromInbound, h as formatAssistantErrorText, ht as readSessionUpdatedAt, it as buildBootstrapContextFiles, j as parseImageDimensionError, jt as extractToolCallNames, k as isTimeoutErrorMessage, kt as capArrayByJsonBytes, l as extractToolResultId, lt as extractDeliveryInfo, m as classifyFailoverReason, mt as loadSessionStore, n as validateGeminiTurns, nt as compileGlobPatterns, o as normalizeTextForComparison, ot as resolveBootstrapMaxChars, p as BILLING_ERROR_USER_MESSAGE, pt as resolveAndPersistSessionFile, q as applyOwnerOnlyToolPolicy, qt as resolveExplicitAgentSessionKey, r as pickFallbackThinkingLevel, rt as matchesAnyGlobPattern, s as sanitizeSessionMessagesImages, st as resolveBootstrapTotalMaxChars, t as validateAnthropicTurns, tt as stripPluginOnlyAllowlist, u as downgradeOpenAIReasoningBlocks, ut as parseSessionThreadInfo, v as getApiErrorPayloadFingerprint, vt as updateSessionStore, w as isFailoverAssistantError, wt as mergeDeliveryContext, x as isCloudCodeAssistFormatError, xt as resolveCacheTtlMs$1, y as isAuthAssistantError, yt as updateSessionStoreEntry, z as resolveBrowserConfig, zt as evaluateSessionFreshness } from "./pi-embedded-helpers-DU0nLxRU.js";
28
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-cJqvQe9j.js";
29
+ import { t as convertMarkdownTables } from "./tables-CMdQECje.js";
30
+ import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-PPtjKj-0.js";
31
+ import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-DCvC8yL7.js";
32
+ import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-CrR2lAF7.js";
33
+ import { a as createSlackWebClient, c as validateSlackBlocksArray, i as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack } from "./send-DnFB-v5n.js";
34
+ import { $ as parseTelegramTarget, A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as readChannelAllowFromStore, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as upsertChannelPairingRequest, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, Q as isVoiceCompatibleAudio, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as addChannelAllowFromStoreEntry, X as listPairingChannels, Y as getPairingAdapter, Z as withTelegramApiErrorLogging, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, et as resolveTelegramTargetChatType, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, nt as toLocationContext, o as sendMessageTelegram, p as markdownToTelegramChunks, q as removeChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as formatLocationText, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-D_X6p9H0.js";
35
+ import { _ as CLI_OUTPUT_MAX_BUFFER, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as registerUnhandledRejectionHandler, g as resolveMediaUnderstandingScope, h as normalizeMediaUnderstandingChatType, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveTimeoutMs$1, n as createMediaAttachmentCache, o as runCapability, p as resolveConcurrency, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as applyTemplate, y as buildRandomTempFilePath } from "./runner-DqwPn56n.js";
36
+ import { a as resolveAckReaction, c as resolveHumanDelayConfig, i as resolveResponsePrefixTemplate, n as createReplyPrefixOptions, o as resolveAgentIdentity, s as resolveEffectiveMessagesConfig } from "./reply-prefix-5vdbga0R.js";
37
+ import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-2475WU2Z.js";
38
+ import { c as getSkillsSnapshotVersion, d as resolvePairingPaths, f as createAsyncLock, i as resolveSkillCommandInvocation, l as generatePairingToken, m as writeJsonAtomic, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as readJsonFile, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as pruneExpiredPending } from "./skill-commands-Cr54qPdy.js";
39
+ 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-Dcu4o-9l.js";
40
+ import { M as isSecureWebSocketUrl, N as rawDataToString, T as DEFAULT_AI_SNAPSHOT_MAX_CHARS, x as ensureChromeExtensionRelayServer } from "./chrome-C1xnOQsc.js";
41
+ import { A as normalizeHyphenSlug, F as resolveChannelGroupRequireMention, I as resolveChannelGroupToolsPolicy, M as normalizeStringEntriesLower, P as resolveChannelGroupPolicy, a as normalizeReasoningLevel, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, i as normalizeElevatedLevel, j as normalizeStringEntries, k as normalizeAtHashSlug, l as resolveResponseUsageMode, m as normalizeSignalMessagingTarget, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-C7zYA2s9.js";
42
+ import { r as resolveIMessageAccount } from "./accounts-DEsAwvaZ.js";
43
+ import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-BcQo4OUu.js";
44
+ import { C as getGlobalHookRunner, S as throwIfAborted, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as splitMediaFromOutput, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as parseReplyDirectives, w as initializeGlobalHookRunner, x as parseInlineDirectives$1, y as MEDIA_TOKEN_RE } from "./deliver-C2gjA_UH.js";
45
+ import { $ as normalizeToolName, A as isTransientHttpError, At as countToolResults, B as resolveProfile, Bt as resolveChannelResetConfig, C as isContextOverflowError, Ct as deliveryContextKey, D as isRateLimitAssistantError, Dt as normalizeAccountId$3, E as isLikelyContextOverflowError, Et as normalizeSessionDeliveryFields, F as resolveSandboxContext, Ft as normalizeInputProvenance, G as resolveBrowserControlAuth, Gt as resolveFreshSessionTotalTokens, H as resolveExistingPathsWithinRoot, Ht as resolveSessionResetType, I as resolveSandboxRuntimeStatus, It as acquireSessionWriteLock, J as buildPluginToolGroups, Jt as resolveMainSessionKey, K as resolveSandboxConfigForAgent, Kt as canonicalizeMainSessionAlias, L as createBrowserRouteContext, Lt as resolveSessionLockMaxHoldFromTimeout, M as parseImageSizeError, Mt as INPUT_PROVENANCE_KIND_VALUES, N as sanitizeUserFacingText, Nt as applyInputProvenanceToUserMessage, O as isRawApiErrorPayload, Ot as archiveSessionTranscripts, P as ensureSandboxWorkspaceForSession, Pt as hasInterSessionUserProvenance, Q as mergeAlsoAllowPolicy, R as registerBrowserRoutes, Rt as resolveSessionKey, S as isCompactionFailureError, St as deliveryContextFromSession, T as isFailoverErrorMessage, Tt as normalizeDeliveryContext, U as getBridgeAuthForPort, Ut as resolveThreadFlag, V as DEFAULT_UPLOAD_DIR, Vt as resolveSessionResetPolicy, W as ensureBrowserControlAuth, Wt as DEFAULT_RESET_TRIGGERS, X as expandPolicyWithPluginGroups, Xt as resolveGroupSessionKey, Y as collectExplicitAllowlist, Yt as deriveSessionMetaPatch, Z as expandToolGroups, _ as formatRawAssistantErrorForUi, _t as updateLastRoute, a as isMessagingToolDuplicateNormalized, at as ensureSessionHeader, b as isBillingAssistantError, bt as isCacheEnabled, c as extractToolCallsFromAssistant, ct as sanitizeGoogleTurnOrdering, d as isAntigravityClaude, dt as appendAssistantMessageToSessionTranscript, et as resolveToolProfilePolicy, f as isGoogleModelApi, g as formatBillingErrorMessage, gt as recordSessionMetaFromInbound, h as formatAssistantErrorText, ht as readSessionUpdatedAt, it as buildBootstrapContextFiles, j as parseImageDimensionError, jt as extractToolCallNames, k as isTimeoutErrorMessage, kt as capArrayByJsonBytes, l as extractToolResultId, lt as extractDeliveryInfo, m as classifyFailoverReason, mt as loadSessionStore, n as validateGeminiTurns, nt as compileGlobPatterns, o as normalizeTextForComparison, ot as resolveBootstrapMaxChars, p as BILLING_ERROR_USER_MESSAGE, pt as resolveAndPersistSessionFile, q as applyOwnerOnlyToolPolicy, qt as resolveExplicitAgentSessionKey, r as pickFallbackThinkingLevel, rt as matchesAnyGlobPattern, s as sanitizeSessionMessagesImages, st as resolveBootstrapTotalMaxChars, t as validateAnthropicTurns, tt as stripPluginOnlyAllowlist, u as downgradeOpenAIReasoningBlocks, ut as parseSessionThreadInfo, v as getApiErrorPayloadFingerprint, vt as updateSessionStore, w as isFailoverAssistantError, wt as mergeDeliveryContext, x as isCloudCodeAssistFormatError, xt as resolveCacheTtlMs$1, y as isAuthAssistantError, yt as updateSessionStoreEntry, z as resolveBrowserConfig, zt as evaluateSessionFreshness } from "./pi-embedded-helpers-D3EACnFn.js";
46
46
  import { n as resolveConversationLabel } from "./conversation-label-yNSj43Jt.js";
47
47
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-BNQjLbn7.js";
48
48
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-x1D4Vniz.js";
49
- import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-DKyVS3IK.js";
50
- import { i as saveMediaBuffer, r as getMediaDir } from "./store-DoRXD0QB.js";
49
+ import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-Up1aMyxZ.js";
50
+ import { i as saveMediaBuffer, r as getMediaDir } from "./store-EUYCRBvs.js";
51
51
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-D5EzMeL_.js";
52
- import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as extractTextFromChatContent, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as resolveToolDisplay, x as ensureOpenClawModelsJson, y as stripReasoningTagsFromText } from "./image-C31B_R8P.js";
52
+ import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as extractTextFromChatContent, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as resolveToolDisplay, x as ensureOpenClawModelsJson, y as stripReasoningTagsFromText } from "./image-Bcc99tVA.js";
53
53
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-LbcEa65a.js";
54
- import { d as listMemoryFiles, f as normalizeExtraMemoryPaths, v as runTasksWithConcurrency } from "./sqlite-DUu0dwic.js";
54
+ import { d as listMemoryFiles, f as normalizeExtraMemoryPaths, v as runTasksWithConcurrency } from "./sqlite-ulpcowfN.js";
55
55
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Wd5tNeQG.js";
56
- import { n as resolveMemorySearchConfig } from "./manager-CZPPxI6R.js";
57
- import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-BsSKPwgj.js";
58
- import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-DrYvH25B.js";
56
+ import { n as resolveMemorySearchConfig } from "./manager-C3Eb_8Hz.js";
57
+ import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-yTZdwtLj.js";
58
+ import { c as signalRpcRequest, l as streamSignalEvents, n as sendReadReceiptSignal, o as resolveSignalRpcContext, r as sendTypingSignal, s as signalCheck, t as sendMessageSignal } from "./send-_uj_NuFI.js";
59
59
  import { t as makeProxyFetch } from "./proxy-MquBDehr.js";
60
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-B63ztF-V.js";
61
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-Bnu7HnvW.js";
62
- import { t as getActiveWebListener } from "./active-listener-Bnau4oiu.js";
60
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-eopifBrM.js";
61
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-Bkaifx0j.js";
62
+ import { t as getActiveWebListener } from "./active-listener-CeaKSm29.js";
63
63
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-CBq0jVRw.js";
64
64
  import { createRequire } from "node:module";
65
65
  import fs, { existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
66
66
  import * as path$1 from "node:path";
67
67
  import path from "node:path";
68
68
  import os, { homedir } from "node:os";
69
- import JSON5 from "json5";
69
+ import json5 from "json5";
70
70
  import { ApplicationCommandOptionType, ButtonStyle, ChannelType, PermissionFlagsBits, Routes, StickerFormatType } from "discord-api-types/v10";
71
71
  import { Button, ChannelSelectMenu, ChannelType as ChannelType$1, Client, Command, CommandWithSubcommands, Container, MentionableSelectMenu, MessageCreateListener, MessageReactionAddListener, MessageReactionRemoveListener, MessageType, Modal, PresenceUpdateListener, ReadyListener, RoleSelectMenu, Row, Separator, StringSelectMenu, TextDisplay, UserSelectMenu, serializePayload } from "@buape/carbon";
72
72
  import crypto, { X509Certificate, createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
@@ -7787,7 +7787,7 @@ async function createModelSelectionState(params) {
7787
7787
  }
7788
7788
  }
7789
7789
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
7790
- const { ensureAuthProfileStore } = await import("./model-selection-CXooYLb2.js").then((n) => n.O);
7790
+ const { ensureAuthProfileStore } = await import("./model-selection-BjVTBZiY.js").then((n) => n.O);
7791
7791
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
7792
7792
  const providerKey = normalizeProviderId(provider);
7793
7793
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -10486,6 +10486,43 @@ async function openaiTTS(params) {
10486
10486
  clearTimeout(timeout);
10487
10487
  }
10488
10488
  }
10489
+ /**
10490
+ * Streaming variant of openaiTTS. Returns the response body as a ReadableStream
10491
+ * so callers can process PCM chunks as they arrive instead of buffering the entire response.
10492
+ */
10493
+ async function openaiTTSStream(params) {
10494
+ const { text, apiKey, model, voice, responseFormat, timeoutMs } = params;
10495
+ if (!isValidOpenAIModel(model)) throw new Error(`Invalid model: ${model}`);
10496
+ if (!isValidOpenAIVoice(voice)) throw new Error(`Invalid voice: ${voice}`);
10497
+ const controller = new AbortController();
10498
+ const timeout = setTimeout(() => controller.abort(), timeoutMs);
10499
+ const response = await fetch(`${getOpenAITtsBaseUrl()}/audio/speech`, {
10500
+ method: "POST",
10501
+ headers: {
10502
+ Authorization: `Bearer ${apiKey}`,
10503
+ "Content-Type": "application/json"
10504
+ },
10505
+ body: JSON.stringify({
10506
+ model,
10507
+ input: text,
10508
+ voice,
10509
+ response_format: responseFormat
10510
+ }),
10511
+ signal: controller.signal
10512
+ });
10513
+ if (!response.ok) {
10514
+ clearTimeout(timeout);
10515
+ throw new Error(`OpenAI TTS API error (${response.status})`);
10516
+ }
10517
+ if (!response.body) {
10518
+ clearTimeout(timeout);
10519
+ throw new Error("OpenAI TTS response has no body");
10520
+ }
10521
+ return {
10522
+ body: response.body,
10523
+ cleanup: () => clearTimeout(timeout)
10524
+ };
10525
+ }
10489
10526
  function inferEdgeExtension(outputFormat) {
10490
10527
  const normalized = outputFormat.toLowerCase();
10491
10528
  if (normalized.includes("webm")) return ".webm";
@@ -11011,6 +11048,45 @@ async function textToSpeechTelephony(params) {
11011
11048
  error: `TTS conversion failed: ${errors.join("; ") || "no providers available"}`
11012
11049
  };
11013
11050
  }
11051
+ /**
11052
+ * Streaming variant of textToSpeechTelephony.
11053
+ * Returns a ReadableStream of PCM audio chunks for incremental processing.
11054
+ * Only supports OpenAI provider (PCM format required for streaming).
11055
+ */
11056
+ async function textToSpeechTelephonyStream(params) {
11057
+ const config = resolveTtsConfig(params.cfg);
11058
+ if ((config.provider ?? "openai") !== "openai") return {
11059
+ success: false,
11060
+ error: "Streaming TTS only supported for OpenAI"
11061
+ };
11062
+ const apiKey = resolveTtsApiKey(config, "openai");
11063
+ if (!apiKey) return {
11064
+ success: false,
11065
+ error: "No OpenAI API key for streaming TTS"
11066
+ };
11067
+ try {
11068
+ const output = TELEPHONY_OUTPUT.openai;
11069
+ const result = await openaiTTSStream({
11070
+ text: params.text,
11071
+ apiKey,
11072
+ model: config.openai.model,
11073
+ voice: config.openai.voice,
11074
+ responseFormat: "pcm",
11075
+ timeoutMs: config.timeoutMs
11076
+ });
11077
+ return {
11078
+ success: true,
11079
+ stream: result.body,
11080
+ sampleRate: output.sampleRate,
11081
+ cleanup: result.cleanup
11082
+ };
11083
+ } catch (err) {
11084
+ return {
11085
+ success: false,
11086
+ error: err instanceof Error ? err.message : String(err)
11087
+ };
11088
+ }
11089
+ }
11014
11090
  async function maybeApplyTtsToPayload(params) {
11015
11091
  const config = resolveTtsConfig(params.cfg);
11016
11092
  const prefsPath = resolveTtsPrefsPath(config);
@@ -11539,7 +11615,7 @@ async function getMemorySearchManager(params) {
11539
11615
  if (cached) return { manager: cached };
11540
11616
  }
11541
11617
  try {
11542
- const { QmdMemoryManager } = await import("./qmd-manager-DQiT4WTr.js");
11618
+ const { QmdMemoryManager } = await import("./qmd-manager-CUhJ7WG2.js");
11543
11619
  const primary = await QmdMemoryManager.create({
11544
11620
  cfg: params.cfg,
11545
11621
  agentId: params.agentId,
@@ -11551,7 +11627,7 @@ async function getMemorySearchManager(params) {
11551
11627
  const wrapper = new FallbackMemoryManager({
11552
11628
  primary,
11553
11629
  fallbackFactory: async () => {
11554
- const { MemoryIndexManager } = await import("./manager-CZPPxI6R.js").then((n) => n.t);
11630
+ const { MemoryIndexManager } = await import("./manager-C3Eb_8Hz.js").then((n) => n.t);
11555
11631
  return await MemoryIndexManager.get(params);
11556
11632
  }
11557
11633
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -11564,7 +11640,7 @@ async function getMemorySearchManager(params) {
11564
11640
  }
11565
11641
  }
11566
11642
  try {
11567
- const { MemoryIndexManager } = await import("./manager-CZPPxI6R.js").then((n) => n.t);
11643
+ const { MemoryIndexManager } = await import("./manager-C3Eb_8Hz.js").then((n) => n.t);
11568
11644
  return { manager: await MemoryIndexManager.get(params) };
11569
11645
  } catch (err) {
11570
11646
  return {
@@ -12623,7 +12699,7 @@ function normalizeSessionKey(value) {
12623
12699
  function readSessionStore(storePath) {
12624
12700
  try {
12625
12701
  const raw = fs.readFileSync(storePath, "utf-8");
12626
- const parsed = JSON5.parse(raw);
12702
+ const parsed = json5.parse(raw);
12627
12703
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
12628
12704
  } catch {}
12629
12705
  return {};
@@ -15480,7 +15556,7 @@ async function routeReply(params) {
15480
15556
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
15481
15557
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
15482
15558
  try {
15483
- const { deliverOutboundPayloads } = await import("./deliver-BO_wt0wd.js").then((n) => n.n);
15559
+ const { deliverOutboundPayloads } = await import("./deliver-C2gjA_UH.js").then((n) => n.n);
15484
15560
  return {
15485
15561
  ok: true,
15486
15562
  messageId: (await deliverOutboundPayloads({
@@ -17958,7 +18034,7 @@ async function describeStickerImage(params) {
17958
18034
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
17959
18035
  try {
17960
18036
  const buffer = await fs$1.readFile(imagePath);
17961
- const { describeImageWithModel } = await import("./image-C31B_R8P.js").then((n) => n.n);
18037
+ const { describeImageWithModel } = await import("./image-Bcc99tVA.js").then((n) => n.n);
17962
18038
  return (await describeImageWithModel({
17963
18039
  buffer,
17964
18040
  fileName: "sticker.webp",
@@ -18369,7 +18445,7 @@ function createWhatsAppLoginTool() {
18369
18445
  force: Type.Optional(Type.Boolean())
18370
18446
  }),
18371
18447
  execute: async (_toolCallId, args) => {
18372
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CMdk06CS.js");
18448
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CLWtfA9m.js");
18373
18449
  if ((args?.action ?? "start") === "wait") {
18374
18450
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
18375
18451
  return {
@@ -20236,7 +20312,7 @@ async function preflightDiscordMessage(params) {
20236
20312
  let preflightTranscript;
20237
20313
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
20238
20314
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
20239
- const { transcribeFirstAudio } = await import("./audio-preflight-DtozH3sJ.js");
20315
+ const { transcribeFirstAudio } = await import("./audio-preflight-CYSy3uuZ.js");
20240
20316
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
20241
20317
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
20242
20318
  ctx: {
@@ -26836,27 +26912,27 @@ async function runWithImageModelFallback(params) {
26836
26912
  function createDefaultDeps() {
26837
26913
  return {
26838
26914
  sendMessageWhatsApp: async (...args) => {
26839
- const { sendMessageWhatsApp } = await import("./web-DiLYLsml.js");
26915
+ const { sendMessageWhatsApp } = await import("./web-BVkjyY4A.js");
26840
26916
  return await sendMessageWhatsApp(...args);
26841
26917
  },
26842
26918
  sendMessageTelegram: async (...args) => {
26843
- const { sendMessageTelegram } = await import("./send-D-spKwjf.js").then((n) => n.l);
26919
+ const { sendMessageTelegram } = await import("./send-D_X6p9H0.js").then((n) => n.l);
26844
26920
  return await sendMessageTelegram(...args);
26845
26921
  },
26846
26922
  sendMessageDiscord: async (...args) => {
26847
- const { sendMessageDiscord } = await import("./send-DEV4iiFj.js").then((n) => n.t);
26923
+ const { sendMessageDiscord } = await import("./send-C2NQjVF9.js").then((n) => n.t);
26848
26924
  return await sendMessageDiscord(...args);
26849
26925
  },
26850
26926
  sendMessageSlack: async (...args) => {
26851
- const { sendMessageSlack } = await import("./send-CK3DCPv-.js").then((n) => n.n);
26927
+ const { sendMessageSlack } = await import("./send-DnFB-v5n.js").then((n) => n.n);
26852
26928
  return await sendMessageSlack(...args);
26853
26929
  },
26854
26930
  sendMessageSignal: async (...args) => {
26855
- const { sendMessageSignal } = await import("./send-DrYvH25B.js").then((n) => n.i);
26931
+ const { sendMessageSignal } = await import("./send-_uj_NuFI.js").then((n) => n.i);
26856
26932
  return await sendMessageSignal(...args);
26857
26933
  },
26858
26934
  sendMessageIMessage: async (...args) => {
26859
- const { sendMessageIMessage } = await import("./send-D1C2sJG1.js").then((n) => n.n);
26935
+ const { sendMessageIMessage } = await import("./send-PPtjKj-0.js").then((n) => n.n);
26860
26936
  return await sendMessageIMessage(...args);
26861
26937
  }
26862
26938
  };
@@ -37127,7 +37203,7 @@ function readSlackExternalArgMenuToken(raw) {
37127
37203
  }
37128
37204
  let commandsRegistry;
37129
37205
  async function getCommandsRegistry() {
37130
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-BsSKPwgj.js").then((n) => n.n);
37206
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-yTZdwtLj.js").then((n) => n.n);
37131
37207
  return commandsRegistry;
37132
37208
  }
37133
37209
  function encodeSlackCommandArgValue(parts) {
@@ -37469,11 +37545,11 @@ async function registerSlackMonitorSlashCommands(params) {
37469
37545
  const channelName = channelInfo?.name;
37470
37546
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
37471
37547
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
37472
- import("./resolve-route-B63ztF-V.js").then((n) => n.r),
37548
+ import("./resolve-route-eopifBrM.js").then((n) => n.r),
37473
37549
  import("./inbound-context-D5EzMeL_.js").then((n) => n.n),
37474
37550
  Promise.resolve().then(() => provider_dispatcher_exports)
37475
37551
  ]);
37476
- const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-yNSj43Jt.js").then((n) => n.t), import("./reply-prefix-BF0omhZE.js").then((n) => n.r)]);
37552
+ const [{ resolveConversationLabel }, { createReplyPrefixOptions }] = await Promise.all([import("./conversation-label-yNSj43Jt.js").then((n) => n.t), import("./reply-prefix-5vdbga0R.js").then((n) => n.r)]);
37477
37553
  const route = resolveAgentRoute({
37478
37554
  cfg,
37479
37555
  channel: "slack",
@@ -37530,9 +37606,9 @@ async function registerSlackMonitorSlashCommands(params) {
37530
37606
  });
37531
37607
  const deliverSlashPayloads = async (replies) => {
37532
37608
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
37533
- import("./replies-Bnu7HnvW.js").then((n) => n.r),
37534
- import("./chunk-DyzO7IVo.js").then((n) => n.s),
37535
- import("./markdown-tables-Bo-r4msS.js").then((n) => n.t)
37609
+ import("./replies-Bkaifx0j.js").then((n) => n.r),
37610
+ import("./chunk-CQk9vawA.js").then((n) => n.s),
37611
+ import("./markdown-tables-cJqvQe9j.js").then((n) => n.t)
37536
37612
  ]);
37537
37613
  await deliverSlackSlashReplies({
37538
37614
  replies,
@@ -37585,7 +37661,7 @@ async function registerSlackMonitorSlashCommands(params) {
37585
37661
  let nativeCommands = [];
37586
37662
  if (nativeEnabled) {
37587
37663
  reg = await getCommandsRegistry();
37588
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Dv5AeOZQ.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
37664
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Cr54qPdy.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
37589
37665
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
37590
37666
  skillCommands,
37591
37667
  provider: "slack"
@@ -42366,7 +42442,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
42366
42442
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
42367
42443
  let preflightTranscript;
42368
42444
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
42369
- const { transcribeFirstAudio } = await import("./audio-preflight-DtozH3sJ.js");
42445
+ const { transcribeFirstAudio } = await import("./audio-preflight-CYSy3uuZ.js");
42370
42446
  preflightTranscript = await transcribeFirstAudio({
42371
42447
  ctx: {
42372
42448
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -44511,23 +44587,23 @@ let webLoginQrPromise = null;
44511
44587
  let webChannelPromise = null;
44512
44588
  let whatsappActionsPromise = null;
44513
44589
  function loadWebOutbound() {
44514
- webOutboundPromise ??= import("./outbound-dAcQHyyr.js").then((n) => n.t);
44590
+ webOutboundPromise ??= import("./outbound-Co1QSkdS.js").then((n) => n.t);
44515
44591
  return webOutboundPromise;
44516
44592
  }
44517
44593
  function loadWebLogin() {
44518
- webLoginPromise ??= import("./login-CW17h3xU.js").then((n) => n.n);
44594
+ webLoginPromise ??= import("./login-Cau5eVVj.js").then((n) => n.n);
44519
44595
  return webLoginPromise;
44520
44596
  }
44521
44597
  function loadWebLoginQr() {
44522
- webLoginQrPromise ??= import("./login-qr-CMdk06CS.js");
44598
+ webLoginQrPromise ??= import("./login-qr-CLWtfA9m.js");
44523
44599
  return webLoginQrPromise;
44524
44600
  }
44525
44601
  function loadWebChannel() {
44526
- webChannelPromise ??= import("./web-DiLYLsml.js");
44602
+ webChannelPromise ??= import("./web-BVkjyY4A.js");
44527
44603
  return webChannelPromise;
44528
44604
  }
44529
44605
  function loadWhatsAppActions() {
44530
- whatsappActionsPromise ??= import("./whatsapp-actions-D8i2vCxS.js");
44606
+ whatsappActionsPromise ??= import("./whatsapp-actions-DC4RRNqv.js");
44531
44607
  return whatsappActionsPromise;
44532
44608
  }
44533
44609
  function createPluginRuntime() {
@@ -44536,7 +44612,10 @@ function createPluginRuntime() {
44536
44612
  config: createRuntimeConfig(),
44537
44613
  system: createRuntimeSystem(),
44538
44614
  media: createRuntimeMedia(),
44539
- tts: { textToSpeechTelephony },
44615
+ tts: {
44616
+ textToSpeechTelephony,
44617
+ textToSpeechTelephonyStream
44618
+ },
44540
44619
  tools: createRuntimeTools(),
44541
44620
  channel: createRuntimeChannel(),
44542
44621
  logging: createRuntimeLogging(),
@@ -59661,7 +59740,7 @@ async function recordLoopOutcome(args) {
59661
59740
  if (!args.ctx?.sessionKey) return;
59662
59741
  try {
59663
59742
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Wd5tNeQG.js").then((n) => n.n);
59664
- const { recordToolCallOutcome } = await import("./tool-loop-detection-BBRtoox8.js");
59743
+ const { recordToolCallOutcome } = await import("./tool-loop-detection-D0ADW0h2.js");
59665
59744
  recordToolCallOutcome(getDiagnosticSessionState({
59666
59745
  sessionKey: args.ctx.sessionKey,
59667
59746
  sessionId: args.ctx?.agentId
@@ -59682,8 +59761,8 @@ async function runBeforeToolCallHook(args) {
59682
59761
  const params = args.params;
59683
59762
  if (args.ctx?.sessionKey) {
59684
59763
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Wd5tNeQG.js").then((n) => n.n);
59685
- const { logToolLoopAction } = await import("./diagnostic-DKyVS3IK.js").then((n) => n.n);
59686
- const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-BBRtoox8.js");
59764
+ const { logToolLoopAction } = await import("./diagnostic-Up1aMyxZ.js").then((n) => n.n);
59765
+ const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-D0ADW0h2.js");
59687
59766
  const sessionState = getDiagnosticSessionState({
59688
59767
  sessionKey: args.ctx.sessionKey,
59689
59768
  sessionId: args.ctx?.agentId
@@ -76415,7 +76494,7 @@ async function deliverSessionMaintenanceWarning(params) {
76415
76494
  return;
76416
76495
  }
76417
76496
  try {
76418
- const { deliverOutboundPayloads } = await import("./deliver-BO_wt0wd.js").then((n) => n.n);
76497
+ const { deliverOutboundPayloads } = await import("./deliver-C2gjA_UH.js").then((n) => n.n);
76419
76498
  await deliverOutboundPayloads({
76420
76499
  cfg: params.cfg,
76421
76500
  channel,
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { n as resolveAgentConfig } from "./agent-scope-cT7IxdHY.js";
2
+ import { n as resolveAgentConfig } from "./agent-scope-D5PlT0Z0.js";
3
3
 
4
4
  //#region src/agents/identity.ts
5
5
  const DEFAULT_ACK_REACTION = "👀";
@@ -1,5 +1,5 @@
1
- import { _ as normalizeWhatsAppTarget, g as isWhatsAppGroupJid } from "./plugins-DIzw7Ncy.js";
2
- import { n as missingTargetError } from "./target-errors-C638yp2-.js";
1
+ import { _ as normalizeWhatsAppTarget, g as isWhatsAppGroupJid } from "./plugins-Dyz98ZJX.js";
2
+ import { n as missingTargetError } from "./target-errors-CrR2lAF7.js";
3
3
 
4
4
  //#region src/whatsapp/resolve-outbound-target.ts
5
5
  function resolveWhatsAppOutboundTarget(params) {
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { d as sanitizeAgentId, f as DEFAULT_ACCOUNT_ID, i as buildAgentPeerSessionKey, n as DEFAULT_MAIN_KEY, p as normalizeAccountId, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-C_0eELjb.js";
3
- import { Y as shouldLogVerbose } from "./registry-O1yza0Vh.js";
4
- import { O as logDebug, c as resolveDefaultAgentId } from "./agent-scope-cT7IxdHY.js";
3
+ import { Y as shouldLogVerbose } from "./registry-DL-33c9X.js";
4
+ import { O as logDebug, c as resolveDefaultAgentId } from "./agent-scope-D5PlT0Z0.js";
5
5
  import { t as normalizeChatType } from "./chat-type-CEMQNtWX.js";
6
- import { t as listBindings } from "./bindings-CKqdifyU.js";
6
+ import { t as listBindings } from "./bindings-C0XEX0yK.js";
7
7
 
8
8
  //#region src/routing/resolve-route.ts
9
9
  var resolve_route_exports = /* @__PURE__ */ __exportAll({
@@ -1,4 +1,4 @@
1
- import { R as sleep } from "./registry-O1yza0Vh.js";
1
+ import { R as sleep } from "./registry-DL-33c9X.js";
2
2
 
3
3
  //#region src/infra/retry.ts
4
4
  const DEFAULT_RETRY_CONFIG = {
@@ -1,13 +1,13 @@
1
1
  import { n as fetchWithTimeout } from "./fetch-timeout-ChYuW7LE.js";
2
- import { K as logVerbose, Y as shouldLogVerbose } from "./registry-O1yza0Vh.js";
3
- import { S as resolveIMessageAttachmentRoots, b as isInboundPathAllowed, n as loadConfig, x as mergeInboundPathRoots, y as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS } from "./config-9OZuRn0C.js";
4
- import { B as resolveOpenClawAgentDir, T as resolveApiKeyForProvider, c as normalizeProviderId, h as normalizeGoogleModelId, w as requireApiKey } from "./model-selection-CXooYLb2.js";
5
- import { E as runExec } from "./agent-scope-cT7IxdHY.js";
6
- import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-B8aJIly2.js";
7
- import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, r as MediaFetchError } from "./local-roots-D4PCK2jj.js";
2
+ import { K as logVerbose, Y as shouldLogVerbose } from "./registry-DL-33c9X.js";
3
+ import { S as resolveIMessageAttachmentRoots, b as isInboundPathAllowed, n as loadConfig, x as mergeInboundPathRoots, y as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS } from "./config--kW4R0el.js";
4
+ import { B as resolveOpenClawAgentDir, T as resolveApiKeyForProvider, c as normalizeProviderId, h as normalizeGoogleModelId, w as requireApiKey } from "./model-selection-BjVTBZiY.js";
5
+ import { E as runExec } from "./agent-scope-D5PlT0Z0.js";
6
+ import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-C6RLbtSJ.js";
7
+ import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, r as MediaFetchError } from "./local-roots-6BSl8AoA.js";
8
8
  import { t as normalizeChatType } from "./chat-type-CEMQNtWX.js";
9
- import { t as describeImageWithModel, x as ensureOpenClawModelsJson } from "./image-C31B_R8P.js";
10
- import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-ElOMCP9r.js";
9
+ import { t as describeImageWithModel, x as ensureOpenClawModelsJson } from "./image-Bcc99tVA.js";
10
+ import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-B3O1qn0m.js";
11
11
  import { constants } from "node:fs";
12
12
  import path from "node:path";
13
13
  import os from "node:os";
@@ -899,7 +899,7 @@ async function loadModelCatalog(params) {
899
899
  });
900
900
  try {
901
901
  await ensureOpenClawModelsJson(params?.config ?? loadConfig());
902
- await (await import("./pi-auth-json-C-euHc3x.js")).ensurePiAuthJsonFromAuthProfiles(resolveOpenClawAgentDir());
902
+ await (await import("./pi-auth-json-DfEOhoTK.js")).ensurePiAuthJsonFromAuthProfiles(resolveOpenClawAgentDir());
903
903
  const piSdk = await importPiSdk();
904
904
  const agentDir = resolveOpenClawAgentDir();
905
905
  const { join } = await import("node:path");
@@ -1,16 +1,16 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { B as parseTargetPrefixes, F as resolveDiscordAccount, I as normalizeDiscordToken, L as buildMessagingTarget, R as ensureTargetId, V as requireTargetKind, z as parseTargetMention } from "./plugins-DIzw7Ncy.js";
2
+ import { B as parseTargetPrefixes, F as resolveDiscordAccount, I as normalizeDiscordToken, L as buildMessagingTarget, R as ensureTargetId, V as requireTargetKind, z as parseTargetMention } from "./plugins-Dyz98ZJX.js";
3
3
  import { t as resolveFetch } from "./fetch-b2Zm8y7X.js";
4
- import { ut as resolvePreferredOpenClawTmpDir } from "./registry-O1yza0Vh.js";
5
- import { n as retryAsync, t as resolveRetryConfig } from "./retry-JFNwfUew.js";
6
- import { n as loadConfig } from "./config-9OZuRn0C.js";
7
- import { n as recordChannelActivity, r as createDiscordRetryRunner } from "./channel-activity-CCnr-9bS.js";
4
+ import { ut as resolvePreferredOpenClawTmpDir } from "./registry-DL-33c9X.js";
5
+ import { n as retryAsync, t as resolveRetryConfig } from "./retry-5P3d0rYw.js";
6
+ import { n as loadConfig } from "./config--kW4R0el.js";
7
+ import { n as recordChannelActivity, r as createDiscordRetryRunner } from "./channel-activity-WgE8Z4Bb.js";
8
8
  import { n as normalizePollInput, t as normalizePollDurationHours } from "./polls-3WJMd-G-.js";
9
- import { _ as maxBytesForKind, l as extensionForMime } from "./image-ops-B8aJIly2.js";
10
- import { a as loadWebMedia, o as loadWebMediaRaw } from "./ir-CD5VqKGg.js";
11
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode } from "./chunk-DyzO7IVo.js";
12
- import { n as resolveMarkdownTableMode } from "./markdown-tables-Bo-r4msS.js";
13
- import { t as convertMarkdownTables } from "./tables-C_81Ve2l.js";
9
+ import { _ as maxBytesForKind, l as extensionForMime } from "./image-ops-C6RLbtSJ.js";
10
+ import { a as loadWebMedia, o as loadWebMediaRaw } from "./ir-Cwi1KVG5.js";
11
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode } from "./chunk-CQk9vawA.js";
12
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-cJqvQe9j.js";
13
+ import { t as convertMarkdownTables } from "./tables-CMdQECje.js";
14
14
  import path from "node:path";
15
15
  import { ButtonStyle, ChannelType, MessageFlags, PermissionFlagsBits, Routes, TextInputStyle } from "discord-api-types/v10";
16
16
  import { Button, ChannelSelectMenu, CheckboxGroup, Container, Embed, File, Label, LinkButton, MediaGallery, MentionableSelectMenu, Modal, RadioGroup, RequestClient, RoleSelectMenu, Row, Section, Separator, StringSelectMenu, TextDisplay, TextInput, Thumbnail, UserSelectMenu, parseCustomId, serializePayload } from "@buape/carbon";