@lawpath-tech/openclaw 2026.2.21-3 → 2026.2.21-5

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (186) hide show
  1. package/dist/{agents-DACIOY6e.js → agents-CuMsK_DS.js} +4 -4
  2. package/dist/{agents.config-CMqaoJds.js → agents.config-BXoIfujZ.js} +1 -1
  3. package/dist/{agents.config-1H3pmQ3X.js → agents.config-e_xeppAS.js} +1 -1
  4. package/dist/{audio-preflight-BbLjRB5z.js → audio-preflight-BAupR5wm.js} +4 -4
  5. package/dist/{audio-preflight-CPOelDjQ.js → audio-preflight-Bgb5ILYG.js} +3 -3
  6. package/dist/{audio-preflight-e2mShqWy.js → audio-preflight-COZa0IDW.js} +3 -3
  7. package/dist/{audio-preflight-BcdVhY9A.js → audio-preflight-DSln0Zsg.js} +4 -4
  8. package/dist/{auth-choice-DXjIdZNV.js → auth-choice-B45xiAZ_.js} +1 -1
  9. package/dist/{auth-choice-_7eilQuG.js → auth-choice-Cds0pSuL.js} +1 -1
  10. package/dist/{banner-C_Srx2e4.js → banner-BrBNvO5B.js} +1 -1
  11. package/dist/build-info.json +3 -3
  12. package/dist/bundled/boot-md/handler.js +6 -6
  13. package/dist/bundled/session-memory/handler.js +6 -6
  14. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  15. package/dist/{channel-options-BC4EwIAa.js → channel-options-HIUzORO6.js} +1 -1
  16. package/dist/{channel-options-C1XZ6wuv.js → channel-options-K4gVRVl0.js} +1 -1
  17. package/dist/{channel-web-Dqw2Birw.js → channel-web-BhQMRa2x.js} +2 -2
  18. package/dist/{channels-cli-CZ02_4BX.js → channels-cli-RbZdgktP.js} +8 -8
  19. package/dist/{channels-cli-COh3Dgcn.js → channels-cli-SwsUfdhN.js} +8 -8
  20. package/dist/{chrome-CQlDoNNk.js → chrome-CzHty2tf.js} +7 -7
  21. package/dist/{chrome-HMhmjNaM.js → chrome-_026ohiG.js} +7 -7
  22. package/dist/{cli-DkGpOXdQ.js → cli-DCtguEMl.js} +5 -5
  23. package/dist/{cli-CPwJJb6R.js → cli-DZR34VYb.js} +5 -5
  24. package/dist/{command-registry-D1UpBQsm.js → command-registry-CuwwryVI.js} +9 -9
  25. package/dist/{completion-cli-CmtJ7Nfl.js → completion-cli-CHvR27lh.js} +2 -2
  26. package/dist/{completion-cli-Dn0roFg0.js → completion-cli-Cq8iP9Aw.js} +1 -1
  27. package/dist/{config-cli-6efMnuMu.js → config-cli-BwShV3v6.js} +1 -1
  28. package/dist/{config-cli-ClI7PyaS.js → config-cli-Ci5S1iD4.js} +1 -1
  29. package/dist/{configure-Ct8Kh4Y_.js → configure-DPlBhyXy.js} +3 -3
  30. package/dist/{configure-BY238M3V.js → configure-D_1pz9E3.js} +3 -3
  31. package/dist/{deliver-DinEoESw.js → deliver-B9BKqp1a.js} +1 -1
  32. package/dist/{deliver-B3j471em.js → deliver-BQUkAN72.js} +1 -1
  33. package/dist/{deliver-CBHEFMKU.js → deliver-CChv42uL.js} +1 -1
  34. package/dist/{deliver-BftA3M2a.js → deliver-IOU5_B6z.js} +1 -1
  35. package/dist/{doctor-completion-DjlhMMVm.js → doctor-completion-BJIw8vai.js} +1 -1
  36. package/dist/{doctor-completion-BlRdqi66.js → doctor-completion-BfrgA2mV.js} +1 -1
  37. package/dist/entry.js +1 -1
  38. package/dist/extensionAPI.js +6 -6
  39. package/dist/{gateway-cli-I2OTV3t6.js → gateway-cli-BeBfQrbx.js} +13 -13
  40. package/dist/{gateway-cli-CEgcSQ7Q.js → gateway-cli-yqwgOF3f.js} +13 -13
  41. package/dist/{health-CvOhkOry.js → health-BTIp89si.js} +2 -2
  42. package/dist/{health-DDZkmBZm.js → health-CKF0OJ25.js} +2 -2
  43. package/dist/{hooks-cli-CgkpWHrn.js → hooks-cli-BKn8RjUM.js} +6 -6
  44. package/dist/{hooks-cli-Dg_9aZD3.js → hooks-cli-Cjs7SuB4.js} +6 -6
  45. package/dist/{image-BJOYFMbX.js → image-B9TdLqUC.js} +1 -1
  46. package/dist/{image-VgmUXiDj.js → image-Brqat-9-.js} +1 -1
  47. package/dist/{image-CtZAwt5G.js → image-CdTrSqaH.js} +1 -1
  48. package/dist/{image-n4RsTiL-.js → image-SjYLchaS.js} +1 -1
  49. package/dist/index.js +10 -10
  50. package/dist/llm-slug-generator.js +6 -6
  51. package/dist/{models-Blvv1jqt.js → models-C08NQUuO.js} +2 -2
  52. package/dist/{models-cli-CEHe5QaR.js → models-cli-COXYLQjz.js} +6 -6
  53. package/dist/{models-cli-DJcP4xmj.js → models-cli-uJJpIivJ.js} +7 -7
  54. package/dist/{onboard-BiPVfH2i.js → onboard-CnHHrRkg.js} +2 -2
  55. package/dist/{onboard-BvSlWRy_.js → onboard-D9sqU2kW.js} +2 -2
  56. package/dist/{onboard-channels-Kh21UhRy.js → onboard-channels-DFdGULvK.js} +1 -1
  57. package/dist/{onboard-channels-DVCGhYti.js → onboard-channels-FyoGJoRI.js} +1 -1
  58. package/dist/{onboarding-BlBICx9e.js → onboarding-BMdfhdc1.js} +3 -3
  59. package/dist/{onboarding-0S32lgTh.js → onboarding-ys5PK2iC.js} +3 -3
  60. package/dist/{onboarding.finalize-CNm3Z9bJ.js → onboarding.finalize-Czj9rIDx.js} +11 -11
  61. package/dist/{onboarding.finalize-B4K4VMQZ.js → onboarding.finalize-DGwRmQPQ.js} +10 -10
  62. package/dist/{pi-embedded-CybcroMl.js → pi-embedded-BFfZiGJD.js} +52 -19
  63. package/dist/{pi-embedded-B5Wvoi23.js → pi-embedded-CQ9C6y-Z.js} +52 -19
  64. package/dist/{pi-embedded-helpers-uj4u33AJ.js → pi-embedded-helpers-B5E_Q6LM.js} +6 -0
  65. package/dist/{pi-embedded-helpers-BOpwqASt.js → pi-embedded-helpers-DChC7Q7D.js} +10 -4
  66. package/dist/{pi-embedded-helpers-7HA49-yo.js → pi-embedded-helpers-Mzn8kkGx.js} +10 -4
  67. package/dist/{pi-embedded-helpers-ZMDgzGB5.js → pi-embedded-helpers-oDqv-DiZ.js} +6 -0
  68. package/dist/{plugin-registry-CD23llsm.js → plugin-registry-Bm3oXtZ_.js} +1 -1
  69. package/dist/{plugin-registry-DKd5rut1.js → plugin-registry-CbLd0SuX.js} +1 -1
  70. package/dist/plugin-sdk/{accounts-DUBJHEgi.js → accounts-BcQo4OUu.js} +1 -1
  71. package/dist/plugin-sdk/{accounts-wSu5JyDM.js → accounts-DEsAwvaZ.js} +1 -1
  72. package/dist/plugin-sdk/{accounts-Ciwy7Yxd.js → accounts-fnLsjAOi.js} +3 -3
  73. package/dist/plugin-sdk/{active-listener-Bnau4oiu.js → active-listener-CeaKSm29.js} +1 -1
  74. package/dist/plugin-sdk/{agent-scope-B_K0lnIZ.js → agent-scope-DSex4wfg.js} +2 -2
  75. package/dist/plugin-sdk/{api-key-rotation-ubwcEE3L.js → api-key-rotation-DVRFDYWE.js} +1 -1
  76. package/dist/plugin-sdk/{audio-preflight-CLMFtfDb.js → audio-preflight-rT8tAkD-.js} +24 -24
  77. package/dist/plugin-sdk/{bindings-y5ob6sm3.js → bindings-DeKqzYUw.js} +2 -2
  78. package/dist/plugin-sdk/{channel-activity-CCnr-9bS.js → channel-activity-WgE8Z4Bb.js} +1 -1
  79. package/dist/plugin-sdk/{channel-web-BWDwo6em.js → channel-web-BijwJ-sy.js} +22 -22
  80. package/dist/plugin-sdk/{chrome-BY2jt7nz.js → chrome-CmTDPHBP.js} +3 -3
  81. package/dist/plugin-sdk/{chunk-DyzO7IVo.js → chunk-CQk9vawA.js} +1 -1
  82. package/dist/plugin-sdk/{command-format-DcBXOX9Z.js → command-format-DHXa0Clc.js} +1 -1
  83. package/dist/plugin-sdk/{commands-registry-BlifvuiT.js → commands-registry-lvrJ62DW.js} +4 -4
  84. package/dist/plugin-sdk/{config-c9LTBVr8.js → config-BT7sZurc.js} +9 -9
  85. package/dist/plugin-sdk/{deliver-B_b7quq8.js → deliver-CJxTyTAX.js} +10 -10
  86. package/dist/plugin-sdk/{diagnostic-DKyVS3IK.js → diagnostic-Up1aMyxZ.js} +1 -1
  87. package/dist/plugin-sdk/{image-NUmwwe5Y.js → image-DN02b1Un.js} +4 -4
  88. package/dist/plugin-sdk/{image-ops-DvH046F-.js → image-ops-CZqefviF.js} +1 -1
  89. package/dist/plugin-sdk/index.js +53 -53
  90. package/dist/plugin-sdk/{ir-CKLBdoDN.js → ir-B7rkHLE2.js} +4 -4
  91. package/dist/plugin-sdk/{local-roots-Com8GhnT.js → local-roots-BQE1Ebnw.js} +3 -3
  92. package/dist/plugin-sdk/{login-Bg_WVfHE.js → login-De0S3iEe.js} +7 -7
  93. package/dist/plugin-sdk/{login-qr-0RXOeFuV.js → login-qr-DbAmVoVd.js} +9 -9
  94. package/dist/plugin-sdk/{manager-0ITt6KKN.js → manager-NrAHkxhT.js} +8 -8
  95. package/dist/plugin-sdk/{manifest-registry-sgHvjA6E.js → manifest-registry-DvEm2HHf.js} +1 -1
  96. package/dist/plugin-sdk/{markdown-tables-CTgITejf.js → markdown-tables-FPKU-GAf.js} +1 -1
  97. package/dist/plugin-sdk/{message-channel-DmB4bGFh.js → message-channel-DY9wVB2A.js} +1 -1
  98. package/dist/plugin-sdk/{model-selection-eaUqWB9v.js → model-selection-D74TGHOt.js} +4 -4
  99. package/dist/plugin-sdk/{outbound-attachment-DFlJJUUs.js → outbound-attachment-t84PRHhe.js} +2 -2
  100. package/dist/plugin-sdk/{outbound-YogvVnLx.js → outbound-hovTyykv.js} +7 -7
  101. package/dist/plugin-sdk/{pi-auth-json-BNYV9v5Z.js → pi-auth-json-3M5ZaNhl.js} +5 -5
  102. package/dist/plugin-sdk/{pi-embedded-helpers-Cw48_Bdn.js → pi-embedded-helpers-HEdGJVz9.js} +23 -17
  103. package/dist/plugin-sdk/{plugins-Bi3zjb1D.js → plugins-a8_TtkpO.js} +4 -4
  104. package/dist/plugin-sdk/{pw-ai-D17TBpla.js → pw-ai-CBpL2WWS.js} +8 -8
  105. package/dist/plugin-sdk/{qmd-manager-C5jlBI8H.js → qmd-manager-Hv8FbJlj.js} +4 -4
  106. package/dist/plugin-sdk/{registry-O1yza0Vh.js → registry-DL-33c9X.js} +2 -2
  107. package/dist/plugin-sdk/{replies-Bi2MUExf.js → replies-BsiP6hrm.js} +3 -3
  108. package/dist/plugin-sdk/{reply-CWWIp29D.js → reply-7CRdEEVf.js} +114 -81
  109. package/dist/plugin-sdk/{reply-prefix-D9Vp9XsI.js → reply-prefix-DNtb4_wd.js} +1 -1
  110. package/dist/plugin-sdk/{resolve-outbound-target-4LJSOI03.js → resolve-outbound-target-EACA6DIF.js} +2 -2
  111. package/dist/plugin-sdk/{resolve-route-DGSGaQkJ.js → resolve-route-Cqj4b_M3.js} +3 -3
  112. package/dist/plugin-sdk/{retry-JFNwfUew.js → retry-5P3d0rYw.js} +1 -1
  113. package/dist/plugin-sdk/{runner-Bz2zSQOh.js → runner-CF0Vfhdz.js} +9 -9
  114. package/dist/plugin-sdk/{send-CuVP5yhW.js → send-4EuOqK3R.js} +7 -7
  115. package/dist/plugin-sdk/{send-Cy2TYbta.js → send-B3LOEv4r.js} +6 -6
  116. package/dist/plugin-sdk/{send-e4x0TcgT.js → send-Cz-EZBfd.js} +10 -10
  117. package/dist/plugin-sdk/{send-iHZz9oKf.js → send-Czuwer1y.js} +6 -6
  118. package/dist/plugin-sdk/{send-7v9Tg-1N.js → send-jhlw6FJR.js} +10 -10
  119. package/dist/plugin-sdk/{session-CHV-qoDA.js → session-BjNuud8u.js} +4 -4
  120. package/dist/plugin-sdk/{skill-commands-uBEgxRtL.js → skill-commands-B5t3dEA3.js} +5 -5
  121. package/dist/plugin-sdk/{skills-CIpuy3Vv.js → skills-n6vXaMPn.js} +7 -7
  122. package/dist/plugin-sdk/{sqlite-DUu0dwic.js → sqlite-ulpcowfN.js} +1 -1
  123. package/dist/plugin-sdk/{store-BVL3fS5q.js → store-CLotPIp_.js} +2 -2
  124. package/dist/plugin-sdk/{subsystem-C4Rh0kdL.js → subsystem-C9WnrKN8.js} +1 -1
  125. package/dist/plugin-sdk/{tables-DHwGo-4a.js → tables-7y86aoG1.js} +1 -1
  126. package/dist/plugin-sdk/{target-errors-DGfjmC5j.js → target-errors-Bu2PpCSS.js} +2 -2
  127. package/dist/plugin-sdk/{thinking-D3o92jol.js → thinking-b64dDuH9.js} +5 -5
  128. package/dist/plugin-sdk/{tokens-K9ITCatc.js → tokens-2475WU2Z.js} +1 -1
  129. package/dist/plugin-sdk/{tool-images-zxFUoVW3.js → tool-images-CbUjCJCh.js} +2 -2
  130. package/dist/plugin-sdk/{tool-loop-detection-BBRtoox8.js → tool-loop-detection-D0ADW0h2.js} +2 -2
  131. package/dist/plugin-sdk/web-DbfteoVI.js +65 -0
  132. package/dist/plugin-sdk/{whatsapp-actions-DdqYVOos.js → whatsapp-actions-DrC9AVN9.js} +21 -21
  133. package/dist/{plugins-cli-DHO1IABg.js → plugins-cli-CuZ9yeLM.js} +6 -6
  134. package/dist/{plugins-cli-Dd1EUb3v.js → plugins-cli-D9kYnV70.js} +6 -6
  135. package/dist/{program-BpIff9DA.js → program-DnLmcYvI.js} +11 -11
  136. package/dist/{program-context-lgLWZvCs.js → program-context-BFlDtZ7u.js} +18 -18
  137. package/dist/{prompt-select-styled-Dc-e3dbo.js → prompt-select-styled-ByfdmSdC.js} +4 -4
  138. package/dist/{prompt-select-styled-DDqOnKA_.js → prompt-select-styled-vecx8TWe.js} +4 -4
  139. package/dist/{provider-auth-helpers-Lzfq96dP.js → provider-auth-helpers-CDiCEf5I.js} +1 -1
  140. package/dist/{provider-auth-helpers-BSbx5FeM.js → provider-auth-helpers-D5aiUDUx.js} +1 -1
  141. package/dist/{push-apns-BwifEO2b.js → push-apns-CIFN_ehC.js} +1 -1
  142. package/dist/{push-apns-a74f8XqC.js → push-apns-DnQI6P_1.js} +1 -1
  143. package/dist/{pw-ai-CgdTTLSx.js → pw-ai-BE9RDOQB.js} +1 -1
  144. package/dist/{pw-ai-DrpEVs06.js → pw-ai-CpnhdYBs.js} +1 -1
  145. package/dist/{register.agent-eqOPq5Gd.js → register.agent-BAb4XSav.js} +9 -9
  146. package/dist/{register.agent-D9MKpOCO.js → register.agent-m9s6Wdxg.js} +10 -10
  147. package/dist/{register.configure-BGHYShAa.js → register.configure-CH9nyxsf.js} +10 -10
  148. package/dist/{register.configure-C05cIKKS.js → register.configure-lUHQYgJj.js} +10 -10
  149. package/dist/{register.maintenance-BmS341L8.js → register.maintenance-BZ5w5uEj.js} +11 -11
  150. package/dist/{register.maintenance-q9wx5Pl-.js → register.maintenance-D6b4iNV5.js} +12 -12
  151. package/dist/{register.message-DXyTnwR3.js → register.message-BNwoWgh6.js} +6 -6
  152. package/dist/{register.message-D0dF6PzF.js → register.message-DrqsD-cs.js} +6 -6
  153. package/dist/{register.onboard-CtmN2j9k.js → register.onboard-BJC-pkiP.js} +8 -8
  154. package/dist/{register.onboard-B6lubsmf.js → register.onboard-CWGIbeMt.js} +8 -8
  155. package/dist/{register.setup-DLc7wuYn.js → register.setup-B2Q7oNUf.js} +8 -8
  156. package/dist/{register.setup-DtVdBO3N.js → register.setup-Cyy-u_LT.js} +8 -8
  157. package/dist/{register.status-health-sessions-CUpDWk7b.js → register.status-health-sessions-CbFmRZ23.js} +7 -7
  158. package/dist/{register.status-health-sessions-Dj6JZlTX.js → register.status-health-sessions-XToqPPob.js} +7 -7
  159. package/dist/{register.subclis-DFFLQ5_4.js → register.subclis-kiCDYnvk.js} +10 -10
  160. package/dist/{reply-BY9rD4Ht.js → reply-BLgYvx8K.js} +47 -14
  161. package/dist/{run-main-CGu5hq5w.js → run-main-ClQN17NG.js} +18 -18
  162. package/dist/{runner-CMf_wCK1.js → runner-B-q1xy9_.js} +1 -1
  163. package/dist/{runner-XECyLnFJ.js → runner-B1nTuveb.js} +1 -1
  164. package/dist/{runner-DbrcHMi-.js → runner-DU6rPdbF.js} +1 -1
  165. package/dist/{runner-CBXPibkx.js → runner-T-0k0N56.js} +1 -1
  166. package/dist/{server-node-events-Dl1EGODn.js → server-node-events-CtGYZ4NX.js} +6 -6
  167. package/dist/{server-node-events-BHo1rJtr.js → server-node-events-D8mdarwc.js} +6 -6
  168. package/dist/{session-dirs-BHU9ghX6.js → session-dirs-CLp_APkW.js} +1 -1
  169. package/dist/{session-dirs-B_5JB4s2.js → session-dirs-qa1wz8KY.js} +1 -1
  170. package/dist/{status-BVBqruUZ.js → status-B0DTmnlx.js} +1 -1
  171. package/dist/{status-BRULnvDA.js → status-BpU9At8G.js} +1 -1
  172. package/dist/{status-jqo65p8J.js → status-CUi6ZcuM.js} +2 -2
  173. package/dist/{status-t76977-D.js → status-DlprmiLH.js} +2 -2
  174. package/dist/{subagent-registry-h0-RYRm3.js → subagent-registry-DoLtM6tb.js} +47 -14
  175. package/dist/{tui-CRm0KI_b.js → tui-BE7l4bos.js} +1 -1
  176. package/dist/{tui-2swRDu6V.js → tui-CtmZFfLN.js} +1 -1
  177. package/dist/{tui-cli-OWn1wJMv.js → tui-cli-DyU4OHGr.js} +2 -2
  178. package/dist/{tui-cli-CnPDULYR.js → tui-cli-Dyf9F5_u.js} +2 -2
  179. package/dist/{update-cli-BU06A3-9.js → update-cli-DDK1P0nj.js} +11 -11
  180. package/dist/{update-cli-CVZ_0mbB.js → update-cli-eHwjFIY5.js} +12 -12
  181. package/dist/{web-CmcYQtF5.js → web-BNiJyHah.js} +5 -5
  182. package/dist/{web-Dm_p_Je3.js → web-DPUOYear.js} +6 -6
  183. package/dist/{web-AF6_b3ME.js → web-gOkp0QXS.js} +6 -6
  184. package/dist/{web-CaOnljeW.js → web-w_Wqd8mO.js} +6 -6
  185. package/package.json +1 -1
  186. package/dist/plugin-sdk/web-b1hIfesD.js +0 -65
@@ -21,11 +21,11 @@ import { a as isPathInsideWithRealpath } from "./legacy-names-u6U1_9U0.js";
21
21
  import { t as normalizeChatType } from "./chat-type-DyovJwCt.js";
22
22
  import { n as resolveConversationLabel } from "./conversation-label-Bn5j3lUT.js";
23
23
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-CmmmT8IP.js";
24
- import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-XECyLnFJ.js";
25
- import { _ as stripThinkingTagsFromText, a as decodeDataUrl, b as minimaxUnderstandImage, 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 stripReasoningTagsFromText, y as extractTextFromChatContent } from "./image-VgmUXiDj.js";
24
+ import { _ as applyTemplate, a as resolveMediaAttachmentLocalRoots, c as resolveAttachmentKind, d as registerUnhandledRejectionHandler, f as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as resolveAutoImageModel, l as buildRandomTempFilePath, m as normalizeMediaUnderstandingChatType, n as createMediaAttachmentCache, o as runCapability, p as resolveTimeoutMs, r as normalizeMediaAttachments, t as buildProviderRegistry } from "./runner-B1nTuveb.js";
25
+ import { _ as stripThinkingTagsFromText, a as decodeDataUrl, b as minimaxUnderstandImage, 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 stripReasoningTagsFromText, y as extractTextFromChatContent } from "./image-Brqat-9-.js";
26
26
  import { t as ensureOpenClawModelsJson } from "./models-config-olcwWBOV.js";
27
27
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-4uUnLc3n.js";
28
- import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-ZMDgzGB5.js";
28
+ import { A as isTransientHttpError, C as isContextOverflowError, D as isRateLimitAssistantError, E as isLikelyContextOverflowError, F as ensureSessionHeader, I as resolveBootstrapMaxChars, L as resolveBootstrapTotalMaxChars, M as parseImageSizeError, N as sanitizeUserFacingText, O as isRawApiErrorPayload, P as buildBootstrapContextFiles, R as sanitizeGoogleTurnOrdering, S as isCompactionFailureError, T as isFailoverErrorMessage, _ as formatRawAssistantErrorForUi, a as isMessagingToolDuplicateNormalized, b as isBillingAssistantError, c as extractToolCallsFromAssistant, d as isAntigravityClaude, f as isGoogleModelApi, g as formatBillingErrorMessage, h as formatAssistantErrorText, j as parseImageDimensionError, k as isTimeoutErrorMessage, l as extractToolResultId, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as getApiErrorPayloadFingerprint, w as isFailoverAssistantError, x as isCloudCodeAssistFormatError, y as isAuthAssistantError } from "./pi-embedded-helpers-oDqv-DiZ.js";
29
29
  import { C as stripPluginOnlyAllowlist, S as resolveToolProfilePolicy, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as mergeAlsoAllowPolicy, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as normalizeToolName } from "./sandbox-STY6PUpe.js";
30
30
  import { T as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-DGgRjC9g.js";
31
31
  import { i as resolveBrowserConfig, m as resolveBrowserControlAuth } from "./server-context-uzgrqGVZ.js";
@@ -54,7 +54,7 @@ import { v as runTasksWithConcurrency } from "./sqlite-Bbubvc33.js";
54
54
  import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-O8FG_tUO.js";
55
55
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-BDil8-Uk.js";
56
56
  import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout$4 } from "./with-timeout-CramKm-w.js";
57
- 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-B3j471em.js";
57
+ 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-BQUkAN72.js";
58
58
  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-BvpClNOn.js";
59
59
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-CUslJyKP.js";
60
60
  import { A as hasBotMention, B as resolveSenderAllowMatch, C as buildTelegramGroupPeerId, D as describeReplyTarget, E as buildTypingThreadParams, F as resolveTelegramReplyId, G as toLocationContext, H as isSenderIdAllowed, I as resolveTelegramStreamMode, J as parseTelegramTarget, K as withTelegramApiErrorLogging, L as resolveTelegramThreadSpec, M as resolveTelegramForumThreadId, N as resolveTelegramGroupAllowFromContext, O as expandTextLinks, P as resolveTelegramMediaPlaceholder, R as isSenderAllowed$1, S as buildTelegramGroupFrom, T as buildTelegramThreadParams, U as mergeAllowFromSources, V as firstDefined$1, W as formatLocationText, Y as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildSenderLabel, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as normalizeForwardedContext, k as extractTelegramLocation, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as isVoiceCompatibleAudio, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramParentPeer, x as buildSenderName, y as buildGroupLabel, z as normalizeAllowFromWithStore$1 } from "./send-BGnLghtC.js";
@@ -10413,7 +10413,7 @@ async function routeReply(params) {
10413
10413
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
10414
10414
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
10415
10415
  try {
10416
- const { deliverOutboundPayloads } = await import("./deliver-B3j471em.js").then((n) => n.n);
10416
+ const { deliverOutboundPayloads } = await import("./deliver-BQUkAN72.js").then((n) => n.n);
10417
10417
  return {
10418
10418
  ok: true,
10419
10419
  messageId: (await deliverOutboundPayloads({
@@ -12963,7 +12963,7 @@ async function describeStickerImage(params) {
12963
12963
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
12964
12964
  try {
12965
12965
  const buffer = await fs$1.readFile(imagePath);
12966
- const { describeImageWithModel } = await import("./image-VgmUXiDj.js").then((n) => n.n);
12966
+ const { describeImageWithModel } = await import("./image-Brqat-9-.js").then((n) => n.n);
12967
12967
  return (await describeImageWithModel({
12968
12968
  buffer,
12969
12969
  fileName: "sticker.webp",
@@ -15602,7 +15602,7 @@ async function preflightDiscordMessage(params) {
15602
15602
  let preflightTranscript;
15603
15603
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
15604
15604
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
15605
- const { transcribeFirstAudio } = await import("./audio-preflight-CPOelDjQ.js");
15605
+ const { transcribeFirstAudio } = await import("./audio-preflight-Bgb5ILYG.js");
15606
15606
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
15607
15607
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
15608
15608
  ctx: {
@@ -22291,7 +22291,7 @@ async function runWithImageModelFallback(params) {
22291
22291
  function createDefaultDeps() {
22292
22292
  return {
22293
22293
  sendMessageWhatsApp: async (...args) => {
22294
- const { sendMessageWhatsApp } = await import("./web-CaOnljeW.js");
22294
+ const { sendMessageWhatsApp } = await import("./web-w_Wqd8mO.js");
22295
22295
  return await sendMessageWhatsApp(...args);
22296
22296
  },
22297
22297
  sendMessageTelegram: async (...args) => {
@@ -31803,7 +31803,10 @@ function registerSlackMessageEvents(params) {
31803
31803
  ctx.app.event("app_mention", async ({ event, body }) => {
31804
31804
  try {
31805
31805
  if (ctx.shouldDropMismatchedSlackEvent(body)) return;
31806
- await handleSlackMessage(event, {
31806
+ const mention = event;
31807
+ const channelType = mention.channel_type;
31808
+ if (channelType === "im" || channelType === "mpim") return;
31809
+ await handleSlackMessage(mention, {
31807
31810
  source: "app_mention",
31808
31811
  wasMentioned: true
31809
31812
  });
@@ -33339,6 +33342,11 @@ function createSlackThreadTsResolver(params) {
33339
33342
 
33340
33343
  //#endregion
33341
33344
  //#region src/slack/monitor/message-handler.ts
33345
+ const APP_MENTION_RETRY_TTL_MS = 6e4;
33346
+ function buildSeenMessageKey(channelId, ts) {
33347
+ if (!channelId || !ts) return null;
33348
+ return `${channelId}:${ts}`;
33349
+ }
33342
33350
  function createSlackMessageHandler(params) {
33343
33351
  const { ctx, account } = params;
33344
33352
  const debounceMs = resolveInboundDebounceMs({
@@ -33346,6 +33354,21 @@ function createSlackMessageHandler(params) {
33346
33354
  channel: "slack"
33347
33355
  });
33348
33356
  const threadTsResolver = createSlackThreadTsResolver({ client: ctx.app.client });
33357
+ const appMentionRetryKeys = /* @__PURE__ */ new Map();
33358
+ const pruneAppMentionRetryKeys = (now) => {
33359
+ for (const [key, expiresAt] of appMentionRetryKeys) if (expiresAt <= now) appMentionRetryKeys.delete(key);
33360
+ };
33361
+ const rememberAppMentionRetryKey = (key) => {
33362
+ const now = Date.now();
33363
+ pruneAppMentionRetryKeys(now);
33364
+ appMentionRetryKeys.set(key, now + APP_MENTION_RETRY_TTL_MS);
33365
+ };
33366
+ const consumeAppMentionRetryKey = (key) => {
33367
+ pruneAppMentionRetryKeys(Date.now());
33368
+ if (!appMentionRetryKeys.has(key)) return false;
33369
+ appMentionRetryKeys.delete(key);
33370
+ return true;
33371
+ };
33349
33372
  const debouncer = createInboundDebouncer({
33350
33373
  debounceMs,
33351
33374
  buildKey: (entry) => {
@@ -33378,7 +33401,14 @@ function createSlackMessageHandler(params) {
33378
33401
  wasMentioned: combinedMentioned || last.opts.wasMentioned
33379
33402
  }
33380
33403
  });
33381
- if (!prepared) return;
33404
+ const seenMessageKey = buildSeenMessageKey(last.message.channel, last.message.ts);
33405
+ if (!prepared) {
33406
+ const hasMessageSource = entries.some((entry) => entry.opts.source === "message");
33407
+ const hasAppMentionSource = entries.some((entry) => entry.opts.source === "app_mention");
33408
+ if (seenMessageKey && hasMessageSource && !hasAppMentionSource) rememberAppMentionRetryKey(seenMessageKey);
33409
+ return;
33410
+ }
33411
+ if (seenMessageKey) appMentionRetryKeys.delete(seenMessageKey);
33382
33412
  if (entries.length > 1) {
33383
33413
  const ids = entries.map((entry) => entry.message.ts).filter(Boolean);
33384
33414
  if (ids.length > 0) {
@@ -33396,7 +33426,10 @@ function createSlackMessageHandler(params) {
33396
33426
  return async (message, opts) => {
33397
33427
  if (opts.source === "message" && message.type !== "message") return;
33398
33428
  if (opts.source === "message" && message.subtype && message.subtype !== "file_share" && message.subtype !== "bot_message") return;
33399
- if (ctx.markMessageSeen(message.channel, message.ts)) return;
33429
+ const seenMessageKey = buildSeenMessageKey(message.channel, message.ts);
33430
+ if (seenMessageKey && ctx.markMessageSeen(message.channel, message.ts)) {
33431
+ if (opts.source !== "app_mention" || !consumeAppMentionRetryKey(seenMessageKey)) return;
33432
+ }
33400
33433
  const resolvedMessage = await threadTsResolver.resolve({
33401
33434
  message,
33402
33435
  source: opts.source
@@ -38694,7 +38727,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
38694
38727
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
38695
38728
  let preflightTranscript;
38696
38729
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
38697
- const { transcribeFirstAudio } = await import("./audio-preflight-CPOelDjQ.js");
38730
+ const { transcribeFirstAudio } = await import("./audio-preflight-Bgb5ILYG.js");
38698
38731
  preflightTranscript = await transcribeFirstAudio({
38699
38732
  ctx: {
38700
38733
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -40860,7 +40893,7 @@ function loadWebLoginQr() {
40860
40893
  return webLoginQrPromise;
40861
40894
  }
40862
40895
  function loadWebChannel() {
40863
- webChannelPromise ??= import("./web-CaOnljeW.js");
40896
+ webChannelPromise ??= import("./web-w_Wqd8mO.js");
40864
40897
  return webChannelPromise;
40865
40898
  }
40866
40899
  function loadWhatsAppActions() {
@@ -70894,7 +70927,7 @@ async function deliverSessionMaintenanceWarning(params) {
70894
70927
  return;
70895
70928
  }
70896
70929
  try {
70897
- const { deliverOutboundPayloads } = await import("./deliver-B3j471em.js").then((n) => n.n);
70930
+ const { deliverOutboundPayloads } = await import("./deliver-BQUkAN72.js").then((n) => n.n);
70898
70931
  await deliverOutboundPayloads({
70899
70932
  cfg: params.cfg,
70900
70933
  channel,
@@ -13,7 +13,7 @@ import "./client-DrK7aLru.js";
13
13
  import "./call-mR3kLwRx.js";
14
14
  import "./message-channel-CVHJDItx.js";
15
15
  import "./pairing-token-Byh6drgn.js";
16
- import "./subagent-registry-h0-RYRm3.js";
16
+ import "./subagent-registry-DoLtM6tb.js";
17
17
  import "./sessions-CPk6B4FT.js";
18
18
  import "./tokens-ANnYrShl.js";
19
19
  import "./plugins-Dhh2a3qc.js";
@@ -23,13 +23,13 @@ import "./logging-CFvkxgcX.js";
23
23
  import "./send-DbsXpgIK.js";
24
24
  import "./send-CLCtC8fi.js";
25
25
  import "./with-timeout-DQdIdIxJ.js";
26
- import "./deliver-DinEoESw.js";
26
+ import "./deliver-B9BKqp1a.js";
27
27
  import "./diagnostic-C6WTf4ZE.js";
28
28
  import "./diagnostic-session-state-CIjIGxEE.js";
29
29
  import "./accounts-1gFWxwAw.js";
30
30
  import "./send-D3hm8iCH.js";
31
31
  import "./image-ops-CKJNUuNW.js";
32
- import "./pi-embedded-helpers-uj4u33AJ.js";
32
+ import "./pi-embedded-helpers-B5E_Q6LM.js";
33
33
  import "./sandbox-YCVjAc5y.js";
34
34
  import "./chrome-BndumoMn.js";
35
35
  import "./tailscale-BxzsxqAY.js";
@@ -65,9 +65,9 @@ import "./ir-DwFJAkDs.js";
65
65
  import "./render-e7fENCYH.js";
66
66
  import "./commands-j9S9qRB6.js";
67
67
  import "./commands-registry-BDRoefkH.js";
68
- import "./image-n4RsTiL-.js";
68
+ import "./image-SjYLchaS.js";
69
69
  import "./tool-display-DixohEVL.js";
70
- import { u as installUnhandledRejectionHandler } from "./runner-CBXPibkx.js";
70
+ import { u as installUnhandledRejectionHandler } from "./runner-T-0k0N56.js";
71
71
  import "./model-catalog-BArXr_C_.js";
72
72
  import "./session-utils-C--HZhwu.js";
73
73
  import "./skill-commands-uwHRWdJn.js";
@@ -101,9 +101,9 @@ import { t as ensureOpenClawCliOnPath } from "./path-env-Co_fin1B.js";
101
101
  import "./catalog-Da8o-cxw.js";
102
102
  import "./note-DDecZomM.js";
103
103
  import "./plugin-auto-enable-Ccy8kRB0.js";
104
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-CD23llsm.js";
104
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-Bm3oXtZ_.js";
105
105
  import { t as assertSupportedRuntime } from "./runtime-guard-Cs_ClFhP.js";
106
- import { t as emitCliBanner } from "./banner-C_Srx2e4.js";
106
+ import { t as emitCliBanner } from "./banner-BrBNvO5B.js";
107
107
  import "./doctor-config-flow-DnW1UlVT.js";
108
108
  import { n as ensureConfigReady } from "./config-guard-BWUTKaUN.js";
109
109
  import process$1 from "node:process";
@@ -118,7 +118,7 @@ const routeHealth = {
118
118
  const verbose = getVerboseFlag(argv, { includeDebug: true });
119
119
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
120
120
  if (timeoutMs === null) return false;
121
- const { healthCommand } = await import("./health-DDZkmBZm.js").then((n) => n.i);
121
+ const { healthCommand } = await import("./health-CKF0OJ25.js").then((n) => n.i);
122
122
  await healthCommand({
123
123
  json,
124
124
  timeoutMs,
@@ -138,7 +138,7 @@ const routeStatus = {
138
138
  const verbose = getVerboseFlag(argv, { includeDebug: true });
139
139
  const timeoutMs = getPositiveIntFlagValue(argv, "--timeout");
140
140
  if (timeoutMs === null) return false;
141
- const { statusCommand } = await import("./status-t76977-D.js").then((n) => n.t);
141
+ const { statusCommand } = await import("./status-DlprmiLH.js").then((n) => n.t);
142
142
  await statusCommand({
143
143
  json,
144
144
  deep,
@@ -172,7 +172,7 @@ const routeAgentsList = {
172
172
  run: async (argv) => {
173
173
  const json = hasFlag(argv, "--json");
174
174
  const bindings = hasFlag(argv, "--bindings");
175
- const { agentsListCommand } = await import("./agents-DACIOY6e.js").then((n) => n.t);
175
+ const { agentsListCommand } = await import("./agents-CuMsK_DS.js").then((n) => n.t);
176
176
  await agentsListCommand({
177
177
  json,
178
178
  bindings
@@ -243,7 +243,7 @@ const routes = [
243
243
  const pathArg = getCommandPositionals(argv)[2];
244
244
  if (!pathArg) return false;
245
245
  const json = hasFlag(argv, "--json");
246
- const { runConfigGet } = await import("./config-cli-ClI7PyaS.js");
246
+ const { runConfigGet } = await import("./config-cli-Ci5S1iD4.js");
247
247
  await runConfigGet({
248
248
  path: pathArg,
249
249
  json
@@ -256,7 +256,7 @@ const routes = [
256
256
  run: async (argv) => {
257
257
  const pathArg = getCommandPositionals(argv)[2];
258
258
  if (!pathArg) return false;
259
- const { runConfigUnset } = await import("./config-cli-ClI7PyaS.js");
259
+ const { runConfigUnset } = await import("./config-cli-Ci5S1iD4.js");
260
260
  await runConfigUnset({ path: pathArg });
261
261
  return true;
262
262
  }
@@ -270,7 +270,7 @@ const routes = [
270
270
  const local = hasFlag(argv, "--local");
271
271
  const json = hasFlag(argv, "--json");
272
272
  const plain = hasFlag(argv, "--plain");
273
- const { modelsListCommand } = await import("./models-Blvv1jqt.js").then((n) => n.t);
273
+ const { modelsListCommand } = await import("./models-C08NQUuO.js").then((n) => n.t);
274
274
  await modelsListCommand({
275
275
  all,
276
276
  local,
@@ -301,7 +301,7 @@ const routes = [
301
301
  const plain = hasFlag(argv, "--plain");
302
302
  const check = hasFlag(argv, "--check");
303
303
  const probe = hasFlag(argv, "--probe");
304
- const { modelsStatusCommand } = await import("./models-Blvv1jqt.js").then((n) => n.t);
304
+ const { modelsStatusCommand } = await import("./models-C08NQUuO.js").then((n) => n.t);
305
305
  await modelsStatusCommand({
306
306
  json,
307
307
  plain,
@@ -379,7 +379,7 @@ async function runCli(argv = process$1.argv) {
379
379
  assertSupportedRuntime();
380
380
  if (await tryRouteCli(normalizedArgv)) return;
381
381
  enableConsoleCapture();
382
- const { buildProgram } = await import("./program-BpIff9DA.js");
382
+ const { buildProgram } = await import("./program-DnLmcYvI.js");
383
383
  const program = buildProgram();
384
384
  installUnhandledRejectionHandler();
385
385
  process$1.on("uncaughtException", (error) => {
@@ -392,10 +392,10 @@ async function runCli(argv = process$1.argv) {
392
392
  const { getProgramContext } = await import("./program-context-5q-A0wbP.js").then((n) => n.n);
393
393
  const ctx = getProgramContext(program);
394
394
  if (ctx) {
395
- const { registerCoreCliByName } = await import("./command-registry-D1UpBQsm.js").then((n) => n.t);
395
+ const { registerCoreCliByName } = await import("./command-registry-CuwwryVI.js").then((n) => n.t);
396
396
  await registerCoreCliByName(program, ctx, primary, parseArgv);
397
397
  }
398
- const { registerSubCliByName } = await import("./register.subclis-DFFLQ5_4.js").then((n) => n.a);
398
+ const { registerSubCliByName } = await import("./register.subclis-kiCDYnvk.js").then((n) => n.a);
399
399
  await registerSubCliByName(program, primary);
400
400
  }
401
401
  if (!shouldSkipPluginCommandRegistration({
@@ -403,7 +403,7 @@ async function runCli(argv = process$1.argv) {
403
403
  primary,
404
404
  hasBuiltinPrimary: primary !== null && program.commands.some((command) => command.name() === primary)
405
405
  })) {
406
- const { registerPluginCliCommands } = await import("./cli-DkGpOXdQ.js");
406
+ const { registerPluginCliCommands } = await import("./cli-DCtguEMl.js");
407
407
  const { loadConfig } = await import("./config-D-Tvm4yj.js").then((n) => n.t);
408
408
  registerPluginCliCommands(program, loadConfig());
409
409
  }
@@ -4,7 +4,7 @@ import { G as resolveOpenClawAgentDir, T as resolveApiKeyForProvider, c as norma
4
4
  import { t as normalizeChatType } from "./chat-type-DFDuk3FY.js";
5
5
  import { _ as kindFromMime, d as detectMime, h as isAudioFileName, p as getFileExtension } from "./image-ops-BeOUcAOd.js";
6
6
  import { d as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, f as isInboundPathAllowed, m as resolveIMessageAttachmentRoots, n as loadConfig, p as mergeInboundPathRoots } from "./config-C85nzIjh.js";
7
- import { S as ensureOpenClawModelsJson, t as describeImageWithModel } from "./image-CtZAwt5G.js";
7
+ import { S as ensureOpenClawModelsJson, t as describeImageWithModel } from "./image-CdTrSqaH.js";
8
8
  import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation, t as parseGeminiAuth } from "./gemini-auth-BBJ_ioKw.js";
9
9
  import { n as fetchWithTimeout } from "./fetch-timeout-BheTNyes.js";
10
10
  import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, r as MediaFetchError } from "./local-roots-DmU_g1NT.js";
@@ -3,7 +3,7 @@ import { n as runExec } from "./exec-BmMB8-Xs.js";
3
3
  import { E as normalizeGoogleModelId, K as requireApiKey, l as normalizeProviderId, q as resolveApiKeyForProvider } from "./model-selection-LsyfCl3e.js";
4
4
  import { _ as isInboundPathAllowed, g as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, v as mergeInboundPathRoots, y as resolveIMessageAttachmentRoots } from "./config-B-7OnHKY.js";
5
5
  import { t as normalizeChatType } from "./chat-type-DyovJwCt.js";
6
- import { t as describeImageWithModel } from "./image-VgmUXiDj.js";
6
+ import { t as describeImageWithModel } from "./image-Brqat-9-.js";
7
7
  import { r as formatUncaughtError, t as extractErrorCode } from "./errors-BF3TeRH2.js";
8
8
  import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-BGwGL0tP.js";
9
9
  import { n as fetchWithTimeout } from "./fetch-timeout-Db3da8yR.js";
@@ -4,7 +4,7 @@ import { t as normalizeChatType } from "./chat-type-C_KiWNAH.js";
4
4
  import { _ as kindFromMime, d as detectMime, h as isAudioFileName, p as getFileExtension } from "./image-ops-DSHe7MDO.js";
5
5
  import { A as normalizeProviderId, L as normalizeGoogleModelId, i as resolveApiKeyForProvider, r as requireApiKey, y as resolveOpenClawAgentDir } from "./model-auth-3yb_4VXX.js";
6
6
  import { d as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, f as isInboundPathAllowed, m as resolveIMessageAttachmentRoots, n as loadConfig, p as mergeInboundPathRoots } from "./config-CScuPNjn.js";
7
- import { S as ensureOpenClawModelsJson, t as describeImageWithModel } from "./image-BJOYFMbX.js";
7
+ import { S as ensureOpenClawModelsJson, t as describeImageWithModel } from "./image-B9TdLqUC.js";
8
8
  import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation, t as parseGeminiAuth } from "./gemini-auth-cD8BrH5d.js";
9
9
  import { n as fetchWithTimeout } from "./fetch-timeout-DL3f_O53.js";
10
10
  import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, r as MediaFetchError } from "./local-roots-DxIZcL-f.js";
@@ -9,7 +9,7 @@ import { n as collectProviderApiKeysForExecution, r as executeWithApiKeyRotation
9
9
  import { n as fetchWithTimeout } from "./fetch-timeout-L2NTusph.js";
10
10
  import { t as fetchWithSsrFGuard } from "./fetch-guard-Dp7VnmeK.js";
11
11
  import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-LE1f_G0M.js";
12
- import { t as describeImageWithModel } from "./image-n4RsTiL-.js";
12
+ import { t as describeImageWithModel } from "./image-SjYLchaS.js";
13
13
  import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BArXr_C_.js";
14
14
  import process$1 from "node:process";
15
15
  import os from "node:os";
@@ -14,7 +14,7 @@ import "./client-DrK7aLru.js";
14
14
  import "./call-mR3kLwRx.js";
15
15
  import "./message-channel-CVHJDItx.js";
16
16
  import "./pairing-token-Byh6drgn.js";
17
- import { C as agentCommand, D as createOutboundSendDeps, bn as enqueueSystemEvent, cn as requestHeartbeatNow, ct as resolveOutboundTarget } from "./subagent-registry-h0-RYRm3.js";
17
+ import { C as agentCommand, D as createOutboundSendDeps, bn as enqueueSystemEvent, cn as requestHeartbeatNow, ct as resolveOutboundTarget } from "./subagent-registry-DoLtM6tb.js";
18
18
  import { d as updateSessionStore } from "./sessions-CPk6B4FT.js";
19
19
  import "./tokens-ANnYrShl.js";
20
20
  import { r as normalizeChannelId } from "./plugins-Dhh2a3qc.js";
@@ -24,13 +24,13 @@ import "./logging-CFvkxgcX.js";
24
24
  import "./send-DbsXpgIK.js";
25
25
  import "./send-CLCtC8fi.js";
26
26
  import "./with-timeout-DQdIdIxJ.js";
27
- import { t as deliverOutboundPayloads } from "./deliver-DinEoESw.js";
27
+ import { t as deliverOutboundPayloads } from "./deliver-B9BKqp1a.js";
28
28
  import "./diagnostic-C6WTf4ZE.js";
29
29
  import "./diagnostic-session-state-CIjIGxEE.js";
30
30
  import "./accounts-1gFWxwAw.js";
31
31
  import "./send-D3hm8iCH.js";
32
32
  import "./image-ops-CKJNUuNW.js";
33
- import "./pi-embedded-helpers-uj4u33AJ.js";
33
+ import "./pi-embedded-helpers-B5E_Q6LM.js";
34
34
  import "./sandbox-YCVjAc5y.js";
35
35
  import "./chrome-BndumoMn.js";
36
36
  import "./tailscale-BxzsxqAY.js";
@@ -66,9 +66,9 @@ import "./ir-DwFJAkDs.js";
66
66
  import "./render-e7fENCYH.js";
67
67
  import "./commands-j9S9qRB6.js";
68
68
  import "./commands-registry-BDRoefkH.js";
69
- import "./image-n4RsTiL-.js";
69
+ import "./image-SjYLchaS.js";
70
70
  import "./tool-display-DixohEVL.js";
71
- import "./runner-CBXPibkx.js";
71
+ import "./runner-T-0k0N56.js";
72
72
  import "./model-catalog-BArXr_C_.js";
73
73
  import { c as resolveGatewaySessionStoreTarget, o as loadSessionEntry, s as pruneLegacyStoreKeys } from "./session-utils-C--HZhwu.js";
74
74
  import "./skill-commands-uwHRWdJn.js";
@@ -98,7 +98,7 @@ import "./onboard-helpers-BYflTvTz.js";
98
98
  import "./prompt-style-DwCXob2h.js";
99
99
  import "./pairing-labels-D5pZ7KsY.js";
100
100
  import "./pi-tools.policy-C4HlSnsO.js";
101
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-a74f8XqC.js";
101
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-DnQI6P_1.js";
102
102
  import { randomUUID } from "node:crypto";
103
103
 
104
104
  //#region src/gateway/server-node-events.ts
@@ -1,7 +1,7 @@
1
1
  import "./paths-B4BZAPZh.js";
2
2
  import "./utils-BlC2Fskb.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { At as agentCommand, C as loadSessionEntry, It as resolveOutboundTarget, Rt as createOutboundSendDeps, T as resolveGatewaySessionStoreTarget, dt as requestHeartbeatNow, vr as enqueueSystemEvent, w as pruneLegacyStoreKeys } from "./reply-BY9rD4Ht.js";
4
+ import { At as agentCommand, C as loadSessionEntry, It as resolveOutboundTarget, Rt as createOutboundSendDeps, T as resolveGatewaySessionStoreTarget, dt as requestHeartbeatNow, vr as enqueueSystemEvent, w as pruneLegacyStoreKeys } from "./reply-BLgYvx8K.js";
5
5
  import { c as normalizeMainKey } from "./session-key-DCt45XZa.js";
6
6
  import "./registry-Dygi7Azw.js";
7
7
  import { f as defaultRuntime } from "./subsystem-8bY95KEB.js";
@@ -15,11 +15,11 @@ import "./message-channel-v74IfRaS.js";
15
15
  import "./send-sVLxqtFb.js";
16
16
  import { i as loadConfig } from "./config-B-7OnHKY.js";
17
17
  import "./manifest-registry-YRUqEw3J.js";
18
- import "./runner-XECyLnFJ.js";
19
- import "./image-VgmUXiDj.js";
18
+ import "./runner-B1nTuveb.js";
19
+ import "./image-Brqat-9-.js";
20
20
  import "./models-config-olcwWBOV.js";
21
21
  import "./pi-model-discovery-4uUnLc3n.js";
22
- import "./pi-embedded-helpers-ZMDgzGB5.js";
22
+ import "./pi-embedded-helpers-oDqv-DiZ.js";
23
23
  import "./sandbox-STY6PUpe.js";
24
24
  import "./chrome-DGgRjC9g.js";
25
25
  import "./tailscale-pku0epOI.js";
@@ -56,7 +56,7 @@ import "./sqlite-Bbubvc33.js";
56
56
  import "./model-catalog-O8FG_tUO.js";
57
57
  import "./tokens-BDil8-Uk.js";
58
58
  import "./with-timeout-CramKm-w.js";
59
- import { t as deliverOutboundPayloads } from "./deliver-B3j471em.js";
59
+ import { t as deliverOutboundPayloads } from "./deliver-BQUkAN72.js";
60
60
  import "./diagnostic-BvpClNOn.js";
61
61
  import "./diagnostic-session-state-CUslJyKP.js";
62
62
  import "./send-BGnLghtC.js";
@@ -102,7 +102,7 @@ import "./control-service-FOBhD0N3.js";
102
102
  import "./stagger-B6VQyn1F.js";
103
103
  import "./channel-selection-C27fdBDC.js";
104
104
  import "./pi-tools.policy-B3nJHwWp.js";
105
- import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-BwifEO2b.js";
105
+ import { c as parseMessageWithAttachments, l as formatForLog, r as registerApnsToken, s as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-CIFN_ehC.js";
106
106
  import { randomUUID } from "node:crypto";
107
107
 
108
108
  //#region src/gateway/server-node-events.ts
@@ -1,5 +1,5 @@
1
1
  import { h as pathExists } from "./utils-BlC2Fskb.js";
2
- import { K as trimLogTail } from "./reply-BY9rD4Ht.js";
2
+ import { K as trimLogTail } from "./reply-BLgYvx8K.js";
3
3
  import { t as runCommandWithTimeout } from "./exec-BmMB8-Xs.js";
4
4
  import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-CjH2ywP0.js";
5
5
  import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-B-fJT8wY.js";
@@ -1,6 +1,6 @@
1
1
  import { nt as pathExists } from "./entry.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-CBKBIMpA.js";
3
- import { bt as trimLogTail } from "./subagent-registry-h0-RYRm3.js";
3
+ import { bt as trimLogTail } from "./subagent-registry-DoLtM6tb.js";
4
4
  import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-BC2GSxMJ.js";
5
5
  import { c as DEFAULT_PACKAGE_CHANNEL, f as isBetaTag, l as DEV_BRANCH, n as compareSemverStrings, o as detectPackageManager$1, p as isStableTag, u as channelToNpmTag } from "./update-check-DfBZVR4k.js";
6
6
  import os from "node:os";
@@ -1,7 +1,7 @@
1
1
  import { o as createSubsystemLogger } from "./entry.js";
2
2
  import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DhajVyRS.js";
3
3
  import { i as loadConfig } from "./config-D-Tvm4yj.js";
4
- import { g as loadOpenClawPlugins, h as createPluginLoaderLogger } from "./subagent-registry-h0-RYRm3.js";
4
+ import { g as loadOpenClawPlugins, h as createPluginLoaderLogger } from "./subagent-registry-DoLtM6tb.js";
5
5
 
6
6
  //#region src/plugins/status.ts
7
7
  const log = createSubsystemLogger("plugins");
@@ -1,4 +1,4 @@
1
- import { gt as loadOpenClawPlugins, ht as createPluginLoaderLogger } from "./reply-BY9rD4Ht.js";
1
+ import { gt as loadOpenClawPlugins, ht as createPluginLoaderLogger } from "./reply-BLgYvx8K.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-8bY95KEB.js";
3
3
  import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-CU-9CR31.js";
4
4
  import { i as loadConfig } from "./config-B-7OnHKY.js";
@@ -1,6 +1,6 @@
1
1
  import { u as resolveGatewayPort } from "./paths-B4BZAPZh.js";
2
2
  import { B as theme, k as info, z as isRich } from "./utils-BlC2Fskb.js";
3
- import { E as resolveSessionModelRef, G as summarizeRestartSentinel, W as readRestartSentinel, a as buildChannelSummary, b as listAgentsForGateway, bt as loadProviderUsageSummary, o as buildChannelAccountSnapshot, qt as sha256HexPrefix, s as formatChannelAllowFrom, ur as lookupContextTokens, xr as peekSystemEvents, xt as formatUsageReportLines, y as classifySessionKey } from "./reply-BY9rD4Ht.js";
3
+ import { E as resolveSessionModelRef, G as summarizeRestartSentinel, W as readRestartSentinel, a as buildChannelSummary, b as listAgentsForGateway, bt as loadProviderUsageSummary, o as buildChannelAccountSnapshot, qt as sha256HexPrefix, s as formatChannelAllowFrom, ur as lookupContextTokens, xr as peekSystemEvents, xt as formatUsageReportLines, y as classifySessionKey } from "./reply-BLgYvx8K.js";
4
4
  import { S as parseAgentSessionKey } from "./session-key-DCt45XZa.js";
5
5
  import { t as resolveOpenClawPackageRoot } from "./openclaw-root-BM-yQZH6.js";
6
6
  import { n as runExec } from "./exec-BmMB8-Xs.js";
@@ -28,7 +28,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-BHt4ST_m.j
28
28
  import { t as readLastGatewayErrorLine } from "./diagnostics-CSOaBA1c.js";
29
29
  import { t as renderTable } from "./table-i7J9YlN5.js";
30
30
  import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-Ds8DFz-h.js";
31
- import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CvOhkOry.js";
31
+ import { a as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-BTIp89si.js";
32
32
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-B-fJT8wY.js";
33
33
  import { t as resolveNodeService } from "./node-service-Da4wpz30.js";
34
34
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-DNqZrSx7.js";
@@ -9,7 +9,7 @@ import { c as resolveAgentWorkspaceDir } from "./agent-scope-DhajVyRS.js";
9
9
  import { t as buildWorkspaceSkillStatus } from "./skills-status-BECHKy03.js";
10
10
  import { H as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-D-Tvm4yj.js";
11
11
  import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-mR3kLwRx.js";
12
- import { $ as sha256HexPrefix, Cn as peekSystemEvents, an as buildChannelAccountSnapshot, en as loadProviderUsageSummary, in as buildChannelSummary, on as formatChannelAllowFrom, tn as formatUsageReportLines, vt as readRestartSentinel, yt as summarizeRestartSentinel } from "./subagent-registry-h0-RYRm3.js";
12
+ import { $ as sha256HexPrefix, Cn as peekSystemEvents, an as buildChannelAccountSnapshot, en as loadProviderUsageSummary, in as buildChannelSummary, on as formatChannelAllowFrom, tn as formatUsageReportLines, vt as readRestartSentinel, yt as summarizeRestartSentinel } from "./subagent-registry-DoLtM6tb.js";
13
13
  import { F as resolveMainSessionKey, j as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-CPk6B4FT.js";
14
14
  import { n as listChannelPlugins } from "./plugins-Dhh2a3qc.js";
15
15
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-BxzsxqAY.js";
@@ -29,7 +29,7 @@ import { t as formatRuntimeStatusWithDetails } from "./runtime-status-D6c3G7my.j
29
29
  import { t as readLastGatewayErrorLine } from "./diagnostics-CqEodocN.js";
30
30
  import { t as renderTable } from "./table-C9BoE_4p.js";
31
31
  import { a as resolveGatewayProbeAuth$1, c as probeGateway, t as runSecurityAudit } from "./audit-Ufqowicf.js";
32
- import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-DDZkmBZm.js";
32
+ import { o as resolveHeartbeatSummaryForAgent, t as formatHealthChannelLines } from "./health-CKF0OJ25.js";
33
33
  import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-DfBZVR4k.js";
34
34
  import { t as resolveNodeService } from "./node-service-B1F4gM4E.js";
35
35
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-B0yJsjEo.js";