@bitseek/claw 1.2.8 → 1.3.0

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 (176) hide show
  1. package/dist/{agents-BCJbDk2P.js → agents-Sp-v-_mR.js} +4 -4
  2. package/dist/{agents.config-DoxV5m9v.js → agents.config-C6zkqXkX.js} +1 -1
  3. package/dist/{agents.config-DQBEXhzA.js → agents.config-rRQ8xZUr.js} +1 -1
  4. package/dist/{auth-choice-CdsMUqKA.js → auth-choice-eimtfK0N.js} +1 -1
  5. package/dist/{auth-choice-CP6K5htW.js → auth-choice-lzACBXDv.js} +1 -1
  6. package/dist/{banner-V_1v329B.js → banner-CYVM4p3E.js} +1 -1
  7. package/dist/build-info.json +3 -3
  8. package/dist/bundled/boot-md/handler.js +1 -1
  9. package/dist/bundled/session-memory/handler.js +1 -1
  10. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  11. package/dist/{channel-options-Dsjb-V1F.js → channel-options-Cn6pNgzb.js} +1 -1
  12. package/dist/{channel-options-Bnnem_wD.js → channel-options-uEYF4WRA.js} +1 -1
  13. package/dist/{channel-web-KY6EP9HT.js → channel-web-BJJUEEKO.js} +1 -1
  14. package/dist/{channel-web-wuxrfEJh.js → channel-web-TsD9bdWt.js} +1 -1
  15. package/dist/{channels-cli-OZeQkPMG.js → channels-cli-DA8sLqQk.js} +7 -7
  16. package/dist/{channels-cli-tJkvzsqO.js → channels-cli-GwM8DZvP.js} +6 -6
  17. package/dist/{cli-DOS1lPNs.js → cli-BLZW83kS.js} +1 -1
  18. package/dist/{cli-YeYpjq2c.js → cli-DIs0fL3W.js} +2 -2
  19. package/dist/{command-registry-Keal8P25.js → command-registry-By6zKf98.js} +9 -9
  20. package/dist/{completion-cli-B_pSnPVY.js → completion-cli-BuLkcc9o.js} +1 -1
  21. package/dist/{completion-cli-BWcHEWr6.js → completion-cli-CV7dNv8l.js} +2 -2
  22. package/dist/{config-cli-DZpbwWvz.js → config-cli-D4EnfBqh.js} +1 -1
  23. package/dist/{config-cli-hwawfBlS.js → config-cli-Dh9rvUxe.js} +1 -1
  24. package/dist/{configure-l-lM74c1.js → configure-BYFIF9Sz.js} +3 -3
  25. package/dist/{configure-CLMtWGiL.js → configure-CBB1YbMN.js} +3 -3
  26. package/dist/control-ui/assets/{index-puDi2eTY.js → index-CBxamjSz.js} +80 -80
  27. package/dist/control-ui/assets/index-CBxamjSz.js.map +1 -0
  28. package/dist/control-ui/index.html +1 -1
  29. package/dist/{doctor-completion-sKCaOE5l.js → doctor-completion-BIt5xBwC.js} +1 -1
  30. package/dist/{doctor-completion-leOuoRMt.js → doctor-completion-T9CxDBUR.js} +1 -1
  31. package/dist/entry.js +2 -2
  32. package/dist/extensionAPI.js +1 -1
  33. package/dist/{gateway-cli-jL3MSRHB.js → gateway-cli-CanylfLh.js} +8 -8
  34. package/dist/{gateway-cli-BlVNebTw.js → gateway-cli-gzemofET.js} +9 -9
  35. package/dist/{health-Du8dO3vn.js → health-BX20asqJ.js} +1 -1
  36. package/dist/{health-CDEXWvnu.js → health-CWmeMvVp.js} +1 -1
  37. package/dist/{hooks-cli-DUIQuGjr.js → hooks-cli-Cs2Ovk-O.js} +2 -2
  38. package/dist/{hooks-cli-Deo01lF6.js → hooks-cli-DzvdmY1Z.js} +3 -3
  39. package/dist/index.js +6 -6
  40. package/dist/llm-slug-generator.js +1 -1
  41. package/dist/{models-CgguB_MH.js → models-C21qhHIB.js} +2 -2
  42. package/dist/{models-cli-CHUbcM_y.js → models-cli-C-FMLbe_.js} +2 -2
  43. package/dist/{models-cli-BEb0DHSP.js → models-cli-CMETQ9Wy.js} +4 -4
  44. package/dist/{npm-resolution-T8SphiP5.js → npm-resolution-BAwDXgj5.js} +1 -1
  45. package/dist/{npm-resolution-Dv7nYiaP.js → npm-resolution-oBSNTx2S.js} +1 -1
  46. package/dist/{onboard-KHObANUh.js → onboard-B-f5pmgG.js} +2 -2
  47. package/dist/{onboard-BCcjGKBR.js → onboard-CLUldVpr.js} +2 -2
  48. package/dist/{onboard-channels-BLZ8FdVP.js → onboard-channels-B59K9VZH.js} +1 -1
  49. package/dist/{onboard-channels-CRpmgX82.js → onboard-channels-Bbzz_NPd.js} +1 -1
  50. package/dist/{onboarding-BTXvw1Ro.js → onboarding-DHqNGWCb.js} +3 -3
  51. package/dist/{onboarding-DQNTd5J7.js → onboarding-Kp0zZunD.js} +3 -3
  52. package/dist/{onboarding.finalize-CHYENeNO.js → onboarding.finalize-CJ23anMx.js} +5 -5
  53. package/dist/{onboarding.finalize-D0qfP3rB.js → onboarding.finalize-D_n9fly-.js} +7 -7
  54. package/dist/{pi-embedded-Bacc2S0h.js → pi-embedded-BgVoy_Nm.js} +42 -6
  55. package/dist/{pi-embedded-Claxav22.js → pi-embedded-DdMbqfLM.js} +42 -6
  56. package/dist/{plugin-registry-CxFikiLF.js → plugin-registry-CA1t0UeN.js} +1 -1
  57. package/dist/{plugin-registry-TOEmbMc4.js → plugin-registry-pa6LjTdT.js} +1 -1
  58. package/dist/plugin-sdk/{accounts-AbI8uETR.js → accounts-BZrkOo6-.js} +1 -1
  59. package/dist/plugin-sdk/{accounts-4WE2wtsW.js → accounts-COLYAAOx.js} +1 -1
  60. package/dist/plugin-sdk/{accounts-BYcizTXn.js → accounts-D_pT5EjF.js} +3 -3
  61. package/dist/plugin-sdk/{active-listener-pnqLAUOh.js → active-listener-DxBXcWm_.js} +1 -1
  62. package/dist/plugin-sdk/{agent-scope-_j3fIYCK.js → agent-scope-DT5pxpJB.js} +3 -3
  63. package/dist/plugin-sdk/agents/context.d.ts +2 -0
  64. package/dist/plugin-sdk/{api-key-rotation-CYI51U_M.js → api-key-rotation-Dl6Ad7Nj.js} +2 -2
  65. package/dist/plugin-sdk/{audio-preflight-BTRRjPew.js → audio-preflight-CkPj4OVY.js} +33 -33
  66. package/dist/plugin-sdk/{audio-transcription-runner-DFZS7uCO.js → audio-transcription-runner-BBn9jEMg.js} +10 -10
  67. package/dist/plugin-sdk/{bindings-CxxzC7gn.js → bindings-BSfhEjKN.js} +2 -2
  68. package/dist/plugin-sdk/{channel-activity-B3yZ-f-m.js → channel-activity-DAEbma-o.js} +3 -3
  69. package/dist/plugin-sdk/{channel-web-D2q54sK-.js → channel-web-BaFUnG0F.js} +23 -23
  70. package/dist/plugin-sdk/{chrome-oPevdeh5.js → chrome-Dn0G4NoF.js} +7 -7
  71. package/dist/plugin-sdk/{chunk-BPyPeheZ.js → chunk-cvtXztAT.js} +1 -1
  72. package/dist/plugin-sdk/{command-format-DvyMEXQo.js → command-format-BOJz3y1v.js} +1 -1
  73. package/dist/plugin-sdk/{commands-registry-Dk8re8Lz.js → commands-registry-CZWv_JwZ.js} +5 -5
  74. package/dist/plugin-sdk/{config-D7I2_X4P.js → config-DAwOhnVF.js} +10 -10
  75. package/dist/plugin-sdk/{deliver-NrIHn0__.js → deliver-PdH-MCq8.js} +11 -11
  76. package/dist/plugin-sdk/{diagnostic-DL3k_wRi.js → diagnostic-BZvj-qNu.js} +2 -2
  77. package/dist/plugin-sdk/{dock-CjdkiLH7.js → dock-BdR3OYZn.js} +6 -6
  78. package/dist/plugin-sdk/{errors-DFTN4h2I.js → errors-jusxdu7M.js} +1 -1
  79. package/dist/plugin-sdk/{fetch-guard-BivEyA4v.js → fetch-guard-Dary6WwJ.js} +2 -2
  80. package/dist/plugin-sdk/{fs-safe-B256n7Ff.js → fs-safe-DMCE0ej9.js} +3 -3
  81. package/dist/plugin-sdk/{image-CkPzr3XN.js → image-B3A2l2ep.js} +6 -6
  82. package/dist/plugin-sdk/{image-ops-C9GXWF3o.js → image-ops-DulHE5Qc.js} +1 -1
  83. package/dist/plugin-sdk/index.js +64 -64
  84. package/dist/plugin-sdk/{ir-BIm-jvIK.js → ir-BFXiJrsN.js} +6 -6
  85. package/dist/plugin-sdk/{local-roots-2AOXGUXW.js → local-roots-DssN60r6.js} +4 -4
  86. package/dist/plugin-sdk/{logger-CNhs9eKJ.js → logger-Cr-x0vMf.js} +1 -1
  87. package/dist/plugin-sdk/{login-BcLiF9tC.js → login-D0ul3-6C.js} +6 -6
  88. package/dist/plugin-sdk/{login-qr-GyPUodKJ.js → login-qr-XWKTFBuI.js} +9 -9
  89. package/dist/plugin-sdk/{manager-DYLqNUb4.js → manager-DGx_cF54.js} +10 -10
  90. package/dist/plugin-sdk/{markdown-tables-D9mmqMKi.js → markdown-tables-CsQpDNU5.js} +1 -1
  91. package/dist/plugin-sdk/{message-channel-_CEZcqxE.js → message-channel-CvNq-esz.js} +1 -1
  92. package/dist/plugin-sdk/{outbound-DdTsUaXa.js → outbound-D29FHlQl.js} +7 -7
  93. package/dist/plugin-sdk/{outbound-attachment--hkuIDR1.js → outbound-attachment-DRHrZUOx.js} +2 -2
  94. package/dist/plugin-sdk/{path-alias-guards-BqUCBfUg.js → path-alias-guards-DpKV1B5p.js} +1 -1
  95. package/dist/plugin-sdk/{pi-embedded-helpers-CTfvZz83.js → pi-embedded-helpers-CKEUWckk.js} +17 -17
  96. package/dist/plugin-sdk/{pi-model-discovery-CK3Ih_kq.js → pi-model-discovery-BPeQq9XM.js} +1 -1
  97. package/dist/plugin-sdk/{plugins-BpHAMNJ1.js → plugins-DF_dKXTR.js} +6 -6
  98. package/dist/plugin-sdk/{proxy-BJdRZOnJ.js → proxy-BfmEDoun.js} +1 -1
  99. package/dist/plugin-sdk/{proxy-fetch-jmbopGcm.js → proxy-fetch-BpHIgvBk.js} +1 -1
  100. package/dist/plugin-sdk/{pw-ai-D0Kx7w1D.js → pw-ai-BmmXDjtm.js} +13 -13
  101. package/dist/plugin-sdk/{qmd-manager-BDcutPp9.js → qmd-manager-3hQbqkm5.js} +8 -8
  102. package/dist/plugin-sdk/{query-expansion-C_X8SyEA.js → query-expansion-BOGLUWB7.js} +2 -2
  103. package/dist/plugin-sdk/{redact-DH8u23pF.js → redact-BOuKZWXa.js} +1 -1
  104. package/dist/plugin-sdk/{registry-HF8_S7QO.js → registry-Cv-oHUj1.js} +2 -2
  105. package/dist/plugin-sdk/{replies-DbjvV4gf.js → replies-CddwWBTJ.js} +3 -3
  106. package/dist/plugin-sdk/{reply-Cs_Ks2Mr.js → reply-BCRC0yeW.js} +133 -97
  107. package/dist/plugin-sdk/{reply-prefix-KODsMNJ-.js → reply-prefix-DXthVxCx.js} +1 -1
  108. package/dist/plugin-sdk/{resolve-outbound-target-BPT4aNiD.js → resolve-outbound-target-D3Y4F2Le.js} +2 -2
  109. package/dist/plugin-sdk/{resolve-route-De2B5QY_.js → resolve-route-DuwYYn4a.js} +4 -4
  110. package/dist/plugin-sdk/{retry-pZ8iKytf.js → retry-BMcrIz7L.js} +1 -1
  111. package/dist/plugin-sdk/{send-C-Rd2stz.js → send-B0ztz6QC.js} +6 -6
  112. package/dist/plugin-sdk/{send-BoNw1Bki.js → send-C5USYGq7.js} +8 -8
  113. package/dist/plugin-sdk/{send-1uW-uqPf.js → send-D0AaWnIj.js} +7 -7
  114. package/dist/plugin-sdk/{send-wCqsQs_s.js → send-DEyQJTzd.js} +10 -10
  115. package/dist/plugin-sdk/{send-CZIN8SDx.js → send-DJzwu8kk.js} +15 -15
  116. package/dist/plugin-sdk/{session-ooYcB82T.js → session-BA7tVDpV.js} +5 -5
  117. package/dist/plugin-sdk/{session-meta-7J-uHiM_.js → session-meta-ChWvKVWj.js} +1 -1
  118. package/dist/plugin-sdk/{sessions-lAIo5l8W.js → sessions-BXps6YzJ.js} +6 -6
  119. package/dist/plugin-sdk/{skill-commands-D1Q6hGS4.js → skill-commands-B20uUsji.js} +5 -5
  120. package/dist/plugin-sdk/{skills-BWSDv2F_.js → skills-DXOTei42.js} +8 -8
  121. package/dist/plugin-sdk/{ssrf-JKDwTi8i.js → ssrf-Doxv9M7Q.js} +1 -1
  122. package/dist/plugin-sdk/{store-BMeqzQAf.js → store-BZbE1V-C.js} +2 -2
  123. package/dist/plugin-sdk/{subsystem-B0V8LFBA.js → subsystem-CM1s2lDT.js} +2 -2
  124. package/dist/plugin-sdk/{tables-DCSeBGBz.js → tables-BhH8EIqU.js} +1 -1
  125. package/dist/plugin-sdk/{target-errors-0u6pegQv.js → target-errors-QZay02Cv.js} +2 -2
  126. package/dist/plugin-sdk/{tokens-DF2_VTJy.js → tokens-DIE-Bf72.js} +1 -1
  127. package/dist/plugin-sdk/{tool-images-BbsgbHMZ.js → tool-images-heXfaJdb.js} +2 -2
  128. package/dist/plugin-sdk/{tool-loop-detection-JkCpGrfk.js → tool-loop-detection-CygMSQUK.js} +2 -2
  129. package/dist/plugin-sdk/{utils-BfVxx6bk.js → utils-BcL6KGZf.js} +1 -1
  130. package/dist/plugin-sdk/web-BDHHRoXS.js +72 -0
  131. package/dist/plugin-sdk/{whatsapp-actions-tVcrGNQc.js → whatsapp-actions-CRean1yN.js} +25 -25
  132. package/dist/{plugins-cli-bHHZzKd-.js → plugins-cli-Cidq7nJb.js} +3 -3
  133. package/dist/{plugins-cli-Clo_uyvq.js → plugins-cli-CqDquUh9.js} +2 -2
  134. package/dist/{program-BI6W1Gll.js → program-C0yxnClq.js} +8 -8
  135. package/dist/{program-context-D2D7wH7Q.js → program-context-D2U9PEv9.js} +17 -17
  136. package/dist/{prompt-select-styled-CdBJ0FWT.js → prompt-select-styled-Bir77erd.js} +4 -4
  137. package/dist/{prompt-select-styled-FGF3Su20.js → prompt-select-styled-Da_XCcz7.js} +4 -4
  138. package/dist/{provider-auth-helpers-BFsLtU8g.js → provider-auth-helpers-B4nCFlNS.js} +1 -1
  139. package/dist/{provider-auth-helpers-D_akOb8A.js → provider-auth-helpers-fK9RpOiF.js} +1 -1
  140. package/dist/{push-apns-BSlKJa83.js → push-apns-BSwx-wiI.js} +1 -1
  141. package/dist/{push-apns-DvNRo3EQ.js → push-apns-C7oC1J4F.js} +1 -1
  142. package/dist/{register.agent-DowGjvNc.js → register.agent-DVy4TdwU.js} +6 -6
  143. package/dist/{register.agent-C-OmdJMe.js → register.agent-kmdjftAP.js} +8 -8
  144. package/dist/{register.configure-BZLa_c3k.js → register.configure-BzG1EPPb.js} +7 -7
  145. package/dist/{register.configure-CaSRlI6h.js → register.configure-CZqcKxCG.js} +8 -8
  146. package/dist/{register.maintenance-f8NCHf6u.js → register.maintenance-CaDyvPmk.js} +9 -9
  147. package/dist/{register.maintenance-DTx6vUDv.js → register.maintenance-ClYMbiJl.js} +7 -7
  148. package/dist/{register.message-DE-eKss6.js → register.message-BkAe3KaX.js} +2 -2
  149. package/dist/{register.message-5hKmcWaB.js → register.message-DJc4mrgz.js} +3 -3
  150. package/dist/{register.onboard-DmymXZNT.js → register.onboard-BUBCEjZ_.js} +2 -2
  151. package/dist/{register.onboard-tT7keiju.js → register.onboard-a-TEy7gB.js} +2 -2
  152. package/dist/{register.setup-DjHaiqnA.js → register.setup-9Je9b17j.js} +2 -2
  153. package/dist/{register.setup-D9AvFexw.js → register.setup-Dlmt8cdD.js} +2 -2
  154. package/dist/{register.status-health-sessions-Cbva8fTK.js → register.status-health-sessions-BfIwzFQw.js} +3 -3
  155. package/dist/{register.status-health-sessions-lOM_lb6H.js → register.status-health-sessions-CxepWnj5.js} +5 -5
  156. package/dist/{register.subclis-pmPhNoRB.js → register.subclis-D2hfRpSx.js} +9 -9
  157. package/dist/{reply-D8Yu6-Ie.js → reply-BOAv4F33.js} +42 -6
  158. package/dist/{run-main-D5C2p24j.js → run-main-D9foK80m.js} +16 -16
  159. package/dist/{server-node-events-yFZiE04b.js → server-node-events-B3SyIWEd.js} +3 -3
  160. package/dist/{server-node-events-nakjzVDn.js → server-node-events-DAuQ0Pk2.js} +2 -2
  161. package/dist/{session-utils-BncMg1bn.js → session-utils-BUkGcYpv.js} +40 -4
  162. package/dist/{sessions-C2Xfck_9.js → sessions-DVvNhGXX.js} +1 -1
  163. package/dist/{status-mS4bWnIW.js → status-Bor8v_Ab.js} +3 -3
  164. package/dist/{status-CQYA6EJN.js → status-C6WYtjMU.js} +2 -2
  165. package/dist/{subagent-registry-CXBreqUP.js → subagent-registry-CukgiXMW.js} +3 -3
  166. package/dist/{update-cli-C2EagLTi.js → update-cli-BDRni489.js} +9 -9
  167. package/dist/{update-cli-DiT2fFEK.js → update-cli-CWNpH8nb.js} +7 -7
  168. package/dist/{update-runner-C9noXbfV.js → update-runner-BAPahND7.js} +1 -1
  169. package/dist/{update-runner-DO6RodZW.js → update-runner-CE9BNhOu.js} +1 -1
  170. package/dist/{web-CDHXvGxm.js → web-C1PpWeXj.js} +1 -1
  171. package/dist/{web-DbdjX4Hg.js → web-C_RqjNux.js} +2 -2
  172. package/dist/{web-DJKitOpu.js → web-DBuATjw6.js} +1 -1
  173. package/dist/{web-BKrNiKsU.js → web-D_nYCn4Q.js} +3 -3
  174. package/package.json +1 -1
  175. package/dist/control-ui/assets/index-puDi2eTY.js.map +0 -1
  176. package/dist/plugin-sdk/web-B35hdNQ-.js +0 -72
@@ -31,7 +31,7 @@ import "./accounts-DTfEeXyO.js";
31
31
  import "./bindings-Hx6KNJeg.js";
32
32
  import "./send-Cpaj_bKB.js";
33
33
  import "./send-BpXRh0BM.js";
34
- import "./subagent-registry-CXBreqUP.js";
34
+ import "./subagent-registry-CukgiXMW.js";
35
35
  import "./paths-CTtLmER4.js";
36
36
  import "./chat-envelope-D3RSz140.js";
37
37
  import "./client-BvL3EdiZ.js";
@@ -89,7 +89,7 @@ import "./pairing-store-BfzlN-z9.js";
89
89
  import "./exec-approvals-HRn5F9dF.js";
90
90
  import "./nodes-screen-DcxCMjOs.js";
91
91
  import "./system-run-command-GKGzGztn.js";
92
- import "./session-utils-BncMg1bn.js";
92
+ import "./session-utils-BUkGcYpv.js";
93
93
  import "./session-cost-usage-BCEcVVJ6.js";
94
94
  import "./skill-commands-CYucDd3C.js";
95
95
  import "./workspace-dirs-BOgNOBjy.js";
@@ -121,19 +121,19 @@ import "./progress-CwQKn0ae.js";
121
121
  import "./constants-SKxh9Cou.js";
122
122
  import "./context-window-guard-ejUBbmnW.js";
123
123
  import "./note-BuhsMSuP.js";
124
- import { r as installCompletion } from "./completion-cli-BWcHEWr6.js";
125
- import "./register.subclis-pmPhNoRB.js";
126
- import "./command-registry-Keal8P25.js";
124
+ import { r as installCompletion } from "./completion-cli-CV7dNv8l.js";
125
+ import "./register.subclis-D2hfRpSx.js";
126
+ import "./command-registry-By6zKf98.js";
127
127
  import "./program-context-Cy6hM1zR.js";
128
128
  import { n as gatewayInstallErrorHint, t as buildGatewayInstallPlan } from "./daemon-install-helpers-D28keNLu.js";
129
129
  import "./runtime-guard-lQH3Hjre.js";
130
130
  import { n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BPrEIqYI.js";
131
131
  import { r as isSystemdUserServiceAvailable } from "./systemd-HiU4Gzoc.js";
132
132
  import { t as resolveGatewayService } from "./service-Bjqlh_fF.js";
133
- import { r as healthCommand } from "./health-CDEXWvnu.js";
133
+ import { r as healthCommand } from "./health-CWmeMvVp.js";
134
134
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Dx8wiZQ_.js";
135
135
  import { t as formatHealthCheckFailure } from "./health-format-NGoowTz5.js";
136
- import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-leOuoRMt.js";
136
+ import { r as ensureCompletionCacheExists, t as checkShellCompletionStatus } from "./doctor-completion-T9CxDBUR.js";
137
137
  import { t as runTui } from "./tui-CLK0s6TM.js";
138
138
  import path from "node:path";
139
139
  import os from "node:os";
@@ -21870,16 +21870,38 @@ const handleBashCommand = async (params, allowTextCommands) => {
21870
21870
  //#region src/agents/context.ts
21871
21871
  const ANTHROPIC_1M_MODEL_PREFIXES$1 = ["claude-opus-4", "claude-sonnet-4"];
21872
21872
  const ANTHROPIC_CONTEXT_1M_TOKENS = 1048576;
21873
+ function resolveBareModelId(modelId) {
21874
+ const trimmed = modelId.trim();
21875
+ if (!trimmed) return "";
21876
+ const slash = trimmed.lastIndexOf("/");
21877
+ return slash >= 0 ? trimmed.slice(slash + 1).trim() : trimmed;
21878
+ }
21879
+ function cacheContextWindow(params) {
21880
+ const { cache, bareCache, modelId, contextWindow, preferSmaller } = params;
21881
+ const existing = cache.get(modelId);
21882
+ if (existing === void 0 || (preferSmaller ? contextWindow < existing : contextWindow !== existing)) cache.set(modelId, contextWindow);
21883
+ const bareModelId = resolveBareModelId(modelId);
21884
+ if (!bareModelId) return;
21885
+ const existingBare = bareCache.get(bareModelId);
21886
+ if (existingBare === void 0 || contextWindow < existingBare) bareCache.set(bareModelId, contextWindow);
21887
+ }
21873
21888
  function applyDiscoveredContextWindows(params) {
21889
+ const bareCache = params.bareCache ?? /* @__PURE__ */ new Map();
21874
21890
  for (const model of params.models) {
21875
21891
  if (!model?.id) continue;
21876
21892
  const contextWindow = typeof model.contextWindow === "number" ? Math.trunc(model.contextWindow) : void 0;
21877
21893
  if (!contextWindow || contextWindow <= 0) continue;
21878
- const existing = params.cache.get(model.id);
21879
- if (existing === void 0 || contextWindow < existing) params.cache.set(model.id, contextWindow);
21894
+ cacheContextWindow({
21895
+ cache: params.cache,
21896
+ bareCache,
21897
+ modelId: model.id,
21898
+ contextWindow,
21899
+ preferSmaller: true
21900
+ });
21880
21901
  }
21881
21902
  }
21882
21903
  function applyConfiguredContextWindows(params) {
21904
+ const bareCache = params.bareCache ?? /* @__PURE__ */ new Map();
21883
21905
  const providers = params.modelsConfig?.providers;
21884
21906
  if (!providers || typeof providers !== "object") return;
21885
21907
  for (const provider of Object.values(providers)) {
@@ -21888,11 +21910,18 @@ function applyConfiguredContextWindows(params) {
21888
21910
  const modelId = typeof model?.id === "string" ? model.id : void 0;
21889
21911
  const contextWindow = typeof model?.contextWindow === "number" ? model.contextWindow : void 0;
21890
21912
  if (!modelId || !contextWindow || contextWindow <= 0) continue;
21891
- params.cache.set(modelId, contextWindow);
21913
+ cacheContextWindow({
21914
+ cache: params.cache,
21915
+ bareCache,
21916
+ modelId,
21917
+ contextWindow,
21918
+ preferSmaller: false
21919
+ });
21892
21920
  }
21893
21921
  }
21894
21922
  }
21895
21923
  const MODEL_CACHE = /* @__PURE__ */ new Map();
21924
+ const BARE_MODEL_CACHE = /* @__PURE__ */ new Map();
21896
21925
  let loadPromise = null;
21897
21926
  let configuredWindowsPrimed = false;
21898
21927
  function getCommandPathFromArgv(argv) {
@@ -21923,6 +21952,7 @@ function primeConfiguredContextWindows() {
21923
21952
  const cfg = loadConfig();
21924
21953
  applyConfiguredContextWindows({
21925
21954
  cache: MODEL_CACHE,
21955
+ bareCache: BARE_MODEL_CACHE,
21926
21956
  modelsConfig: cfg.models
21927
21957
  });
21928
21958
  return cfg;
@@ -21944,11 +21974,13 @@ function ensureContextWindowCacheLoaded() {
21944
21974
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
21945
21975
  applyDiscoveredContextWindows({
21946
21976
  cache: MODEL_CACHE,
21977
+ bareCache: BARE_MODEL_CACHE,
21947
21978
  models: typeof modelRegistry.getAvailable === "function" ? modelRegistry.getAvailable() : modelRegistry.getAll()
21948
21979
  });
21949
21980
  } catch {}
21950
21981
  applyConfiguredContextWindows({
21951
21982
  cache: MODEL_CACHE,
21983
+ bareCache: BARE_MODEL_CACHE,
21952
21984
  modelsConfig: cfg.models
21953
21985
  });
21954
21986
  })().catch(() => {});
@@ -21957,7 +21989,11 @@ function ensureContextWindowCacheLoaded() {
21957
21989
  function lookupContextTokens(modelId) {
21958
21990
  if (!modelId) return;
21959
21991
  ensureContextWindowCacheLoaded();
21960
- return MODEL_CACHE.get(modelId);
21992
+ const direct = MODEL_CACHE.get(modelId);
21993
+ if (direct !== void 0) return direct;
21994
+ const bareModelId = resolveBareModelId(modelId);
21995
+ if (!bareModelId) return;
21996
+ return BARE_MODEL_CACHE.get(bareModelId);
21961
21997
  }
21962
21998
  if (!shouldSkipEagerContextWindowWarmup()) ensureContextWindowCacheLoaded();
21963
21999
  function resolveConfiguredModelParams(cfg, provider, model) {
@@ -60933,7 +60969,7 @@ function createOutboundSendDepsFromCliSource(deps) {
60933
60969
  function createDefaultDeps() {
60934
60970
  return {
60935
60971
  sendMessageWhatsApp: async (...args) => {
60936
- const { sendMessageWhatsApp } = await import("./web-CDHXvGxm.js");
60972
+ const { sendMessageWhatsApp } = await import("./web-C1PpWeXj.js");
60937
60973
  return await sendMessageWhatsApp(...args);
60938
60974
  },
60939
60975
  sendMessageTelegram: async (...args) => {
@@ -79197,7 +79233,7 @@ function loadWebLoginQr() {
79197
79233
  return webLoginQrPromise;
79198
79234
  }
79199
79235
  function loadWebChannel() {
79200
- webChannelPromise ??= import("./web-CDHXvGxm.js");
79236
+ webChannelPromise ??= import("./web-C1PpWeXj.js");
79201
79237
  return webChannelPromise;
79202
79238
  }
79203
79239
  function loadWhatsAppActions() {
@@ -21866,16 +21866,38 @@ const handleBashCommand = async (params, allowTextCommands) => {
21866
21866
  //#region src/agents/context.ts
21867
21867
  const ANTHROPIC_1M_MODEL_PREFIXES$1 = ["claude-opus-4", "claude-sonnet-4"];
21868
21868
  const ANTHROPIC_CONTEXT_1M_TOKENS = 1048576;
21869
+ function resolveBareModelId(modelId) {
21870
+ const trimmed = modelId.trim();
21871
+ if (!trimmed) return "";
21872
+ const slash = trimmed.lastIndexOf("/");
21873
+ return slash >= 0 ? trimmed.slice(slash + 1).trim() : trimmed;
21874
+ }
21875
+ function cacheContextWindow(params) {
21876
+ const { cache, bareCache, modelId, contextWindow, preferSmaller } = params;
21877
+ const existing = cache.get(modelId);
21878
+ if (existing === void 0 || (preferSmaller ? contextWindow < existing : contextWindow !== existing)) cache.set(modelId, contextWindow);
21879
+ const bareModelId = resolveBareModelId(modelId);
21880
+ if (!bareModelId) return;
21881
+ const existingBare = bareCache.get(bareModelId);
21882
+ if (existingBare === void 0 || contextWindow < existingBare) bareCache.set(bareModelId, contextWindow);
21883
+ }
21869
21884
  function applyDiscoveredContextWindows(params) {
21885
+ const bareCache = params.bareCache ?? /* @__PURE__ */ new Map();
21870
21886
  for (const model of params.models) {
21871
21887
  if (!model?.id) continue;
21872
21888
  const contextWindow = typeof model.contextWindow === "number" ? Math.trunc(model.contextWindow) : void 0;
21873
21889
  if (!contextWindow || contextWindow <= 0) continue;
21874
- const existing = params.cache.get(model.id);
21875
- if (existing === void 0 || contextWindow < existing) params.cache.set(model.id, contextWindow);
21890
+ cacheContextWindow({
21891
+ cache: params.cache,
21892
+ bareCache,
21893
+ modelId: model.id,
21894
+ contextWindow,
21895
+ preferSmaller: true
21896
+ });
21876
21897
  }
21877
21898
  }
21878
21899
  function applyConfiguredContextWindows(params) {
21900
+ const bareCache = params.bareCache ?? /* @__PURE__ */ new Map();
21879
21901
  const providers = params.modelsConfig?.providers;
21880
21902
  if (!providers || typeof providers !== "object") return;
21881
21903
  for (const provider of Object.values(providers)) {
@@ -21884,11 +21906,18 @@ function applyConfiguredContextWindows(params) {
21884
21906
  const modelId = typeof model?.id === "string" ? model.id : void 0;
21885
21907
  const contextWindow = typeof model?.contextWindow === "number" ? model.contextWindow : void 0;
21886
21908
  if (!modelId || !contextWindow || contextWindow <= 0) continue;
21887
- params.cache.set(modelId, contextWindow);
21909
+ cacheContextWindow({
21910
+ cache: params.cache,
21911
+ bareCache,
21912
+ modelId,
21913
+ contextWindow,
21914
+ preferSmaller: false
21915
+ });
21888
21916
  }
21889
21917
  }
21890
21918
  }
21891
21919
  const MODEL_CACHE = /* @__PURE__ */ new Map();
21920
+ const BARE_MODEL_CACHE = /* @__PURE__ */ new Map();
21892
21921
  let loadPromise = null;
21893
21922
  let configuredWindowsPrimed = false;
21894
21923
  function getCommandPathFromArgv(argv) {
@@ -21919,6 +21948,7 @@ function primeConfiguredContextWindows() {
21919
21948
  const cfg = loadConfig();
21920
21949
  applyConfiguredContextWindows({
21921
21950
  cache: MODEL_CACHE,
21951
+ bareCache: BARE_MODEL_CACHE,
21922
21952
  modelsConfig: cfg.models
21923
21953
  });
21924
21954
  return cfg;
@@ -21940,11 +21970,13 @@ function ensureContextWindowCacheLoaded() {
21940
21970
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
21941
21971
  applyDiscoveredContextWindows({
21942
21972
  cache: MODEL_CACHE,
21973
+ bareCache: BARE_MODEL_CACHE,
21943
21974
  models: typeof modelRegistry.getAvailable === "function" ? modelRegistry.getAvailable() : modelRegistry.getAll()
21944
21975
  });
21945
21976
  } catch {}
21946
21977
  applyConfiguredContextWindows({
21947
21978
  cache: MODEL_CACHE,
21979
+ bareCache: BARE_MODEL_CACHE,
21948
21980
  modelsConfig: cfg.models
21949
21981
  });
21950
21982
  })().catch(() => {});
@@ -21953,7 +21985,11 @@ function ensureContextWindowCacheLoaded() {
21953
21985
  function lookupContextTokens(modelId) {
21954
21986
  if (!modelId) return;
21955
21987
  ensureContextWindowCacheLoaded();
21956
- return MODEL_CACHE.get(modelId);
21988
+ const direct = MODEL_CACHE.get(modelId);
21989
+ if (direct !== void 0) return direct;
21990
+ const bareModelId = resolveBareModelId(modelId);
21991
+ if (!bareModelId) return;
21992
+ return BARE_MODEL_CACHE.get(bareModelId);
21957
21993
  }
21958
21994
  if (!shouldSkipEagerContextWindowWarmup()) ensureContextWindowCacheLoaded();
21959
21995
  function resolveConfiguredModelParams(cfg, provider, model) {
@@ -60929,7 +60965,7 @@ function createOutboundSendDepsFromCliSource(deps) {
60929
60965
  function createDefaultDeps() {
60930
60966
  return {
60931
60967
  sendMessageWhatsApp: async (...args) => {
60932
- const { sendMessageWhatsApp } = await import("./web-DJKitOpu.js");
60968
+ const { sendMessageWhatsApp } = await import("./web-DBuATjw6.js");
60933
60969
  return await sendMessageWhatsApp(...args);
60934
60970
  },
60935
60971
  sendMessageTelegram: async (...args) => {
@@ -79187,7 +79223,7 @@ function loadWebLoginQr() {
79187
79223
  return webLoginQrPromise;
79188
79224
  }
79189
79225
  function loadWebChannel() {
79190
- webChannelPromise ??= import("./web-DJKitOpu.js");
79226
+ webChannelPromise ??= import("./web-DBuATjw6.js");
79191
79227
  return webChannelPromise;
79192
79228
  }
79193
79229
  function loadWhatsAppActions() {
@@ -3,7 +3,7 @@ import { t as createSubsystemLogger } from "./subsystem-DjdBljTA.js";
3
3
  import { M as loadConfig } from "./auth-profiles-D_x1_5v_.js";
4
4
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-CJelRKYY.js";
5
5
  import { u as getActivePluginRegistry } from "./registry-7fg1BnMw.js";
6
- import { _ as loadOpenClawPlugins } from "./subagent-registry-CXBreqUP.js";
6
+ import { _ as loadOpenClawPlugins } from "./subagent-registry-CukgiXMW.js";
7
7
 
8
8
  //#region src/cli/plugin-registry.ts
9
9
  var plugin_registry_exports = /* @__PURE__ */ __exportAll({ ensurePluginRegistryLoaded: () => ensurePluginRegistryLoaded });
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { dt as loadOpenClawPlugins } from "./reply-D8Yu6-Ie.js";
2
+ import { dt as loadOpenClawPlugins } from "./reply-BOAv4F33.js";
3
3
  import { d as resolveDefaultAgentId, u as resolveAgentWorkspaceDir } from "./agent-scope-CiBV1K6b.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-BT74-yyS.js";
5
5
  import { Wt as loadConfig } from "./model-selection-xdfZxwgB.js";
@@ -1,5 +1,5 @@
1
1
  import { m as normalizeAccountId } from "./session-key-CVIXEtLx.js";
2
- import { v as createAccountListHelpers } from "./accounts-BYcizTXn.js";
2
+ import { v as createAccountListHelpers } from "./accounts-D_pT5EjF.js";
3
3
  import { t as resolveAccountEntry } from "./account-lookup-BCxEEOS8.js";
4
4
 
5
5
  //#region src/signal/accounts.ts
@@ -1,5 +1,5 @@
1
1
  import { m as normalizeAccountId } from "./session-key-CVIXEtLx.js";
2
- import { v as createAccountListHelpers } from "./accounts-BYcizTXn.js";
2
+ import { v as createAccountListHelpers } from "./accounts-D_pT5EjF.js";
3
3
  import { t as resolveAccountEntry } from "./account-lookup-BCxEEOS8.js";
4
4
 
5
5
  //#region src/imessage/accounts.ts
@@ -1,8 +1,8 @@
1
1
  import { h as normalizeOptionalAccountId, m as normalizeAccountId, p as DEFAULT_ACCOUNT_ID } from "./session-key-CVIXEtLx.js";
2
2
  import { o as resolveOAuthDir } from "./paths-C__vjTc0.js";
3
- import { i as defaultRuntime, l as info, m as success, y as getChildLogger } from "./subsystem-B0V8LFBA.js";
4
- import { h as resolveUserPath, u as jidToE164 } from "./utils-BfVxx6bk.js";
5
- import { t as formatCliCommand } from "./command-format-DvyMEXQo.js";
3
+ import { i as defaultRuntime, l as info, m as success, y as getChildLogger } from "./subsystem-CM1s2lDT.js";
4
+ import { h as resolveUserPath, u as jidToE164 } from "./utils-BcL6KGZf.js";
5
+ import { t as formatCliCommand } from "./command-format-BOJz3y1v.js";
6
6
  import { t as resolveAccountEntry } from "./account-lookup-BCxEEOS8.js";
7
7
  import fs from "node:fs";
8
8
  import path from "node:path";
@@ -1,5 +1,5 @@
1
1
  import { p as DEFAULT_ACCOUNT_ID } from "./session-key-CVIXEtLx.js";
2
- import { t as formatCliCommand } from "./command-format-DvyMEXQo.js";
2
+ import { t as formatCliCommand } from "./command-format-BOJz3y1v.js";
3
3
  import crypto from "node:crypto";
4
4
 
5
5
  //#region src/logging/redact-identifier.ts
@@ -1,8 +1,8 @@
1
1
  import { S as parseAgentSessionKey, b as isCronSessionKey, c as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, x as isSubagentSessionKey } from "./session-key-CVIXEtLx.js";
2
2
  import { c as resolveStateDir } from "./paths-C__vjTc0.js";
3
- import { c as danger, p as shouldLogVerbose, t as createSubsystemLogger } from "./subsystem-B0V8LFBA.js";
4
- import { f as pathExists$1, h as resolveUserPath } from "./utils-BfVxx6bk.js";
5
- import { n as logError, t as logDebug } from "./logger-CNhs9eKJ.js";
3
+ import { c as danger, p as shouldLogVerbose, t as createSubsystemLogger } from "./subsystem-CM1s2lDT.js";
4
+ import { f as pathExists$1, h as resolveUserPath } from "./utils-BcL6KGZf.js";
5
+ import { n as logError, t as logDebug } from "./logger-Cr-x0vMf.js";
6
6
  import fs from "node:fs";
7
7
  import path from "node:path";
8
8
  import os from "node:os";
@@ -16,10 +16,12 @@ type ModelsConfig = {
16
16
  export declare const ANTHROPIC_CONTEXT_1M_TOKENS = 1048576;
17
17
  export declare function applyDiscoveredContextWindows(params: {
18
18
  cache: Map<string, number>;
19
+ bareCache?: Map<string, number>;
19
20
  models: ModelEntry[];
20
21
  }): void;
21
22
  export declare function applyConfiguredContextWindows(params: {
22
23
  cache: Map<string, number>;
24
+ bareCache?: Map<string, number>;
23
25
  modelsConfig: ModelsConfig | undefined;
24
26
  }): void;
25
27
  export declare function lookupContextTokens(modelId?: string): number | undefined;
@@ -1,5 +1,5 @@
1
- import { ln as normalizeProviderId } from "./config-D7I2_X4P.js";
2
- import { r as formatErrorMessage } from "./errors-DFTN4h2I.js";
1
+ import { ln as normalizeProviderId } from "./config-DAwOhnVF.js";
2
+ import { r as formatErrorMessage } from "./errors-jusxdu7M.js";
3
3
 
4
4
  //#region src/infra/gemini-auth.ts
5
5
  /**
@@ -1,40 +1,40 @@
1
- import "./accounts-BYcizTXn.js";
1
+ import "./accounts-D_pT5EjF.js";
2
2
  import "./paths-C__vjTc0.js";
3
3
  import "./github-copilot-token-WHEJfZD4.js";
4
- import "./config-D7I2_X4P.js";
5
- import { p as shouldLogVerbose, u as logVerbose } from "./subsystem-B0V8LFBA.js";
6
- import "./utils-BfVxx6bk.js";
7
- import "./command-format-DvyMEXQo.js";
8
- import "./agent-scope-_j3fIYCK.js";
9
- import "./logger-CNhs9eKJ.js";
10
- import "./registry-HF8_S7QO.js";
11
- import "./dock-CjdkiLH7.js";
12
- import "./message-channel-_CEZcqxE.js";
13
- import "./sessions-lAIo5l8W.js";
14
- import "./plugins-BpHAMNJ1.js";
15
- import "./accounts-4WE2wtsW.js";
16
- import "./accounts-AbI8uETR.js";
17
- import "./bindings-CxxzC7gn.js";
4
+ import "./config-DAwOhnVF.js";
5
+ import { p as shouldLogVerbose, u as logVerbose } from "./subsystem-CM1s2lDT.js";
6
+ import "./utils-BcL6KGZf.js";
7
+ import "./command-format-BOJz3y1v.js";
8
+ import "./agent-scope-DT5pxpJB.js";
9
+ import "./logger-Cr-x0vMf.js";
10
+ import "./registry-Cv-oHUj1.js";
11
+ import "./dock-BdR3OYZn.js";
12
+ import "./message-channel-CvNq-esz.js";
13
+ import "./sessions-BXps6YzJ.js";
14
+ import "./plugins-DF_dKXTR.js";
15
+ import "./accounts-COLYAAOx.js";
16
+ import "./accounts-BZrkOo6-.js";
17
+ import "./bindings-BSfhEjKN.js";
18
18
  import "./paths-DlLOyPPw.js";
19
- import "./redact-DH8u23pF.js";
20
- import "./errors-DFTN4h2I.js";
21
- import "./path-alias-guards-BqUCBfUg.js";
22
- import "./fs-safe-B256n7Ff.js";
23
- import "./image-ops-C9GXWF3o.js";
24
- import "./ssrf-JKDwTi8i.js";
25
- import "./fetch-guard-BivEyA4v.js";
26
- import "./local-roots-2AOXGUXW.js";
27
- import "./tool-images-BbsgbHMZ.js";
28
- import { f as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-DFZS7uCO.js";
29
- import "./skills-BWSDv2F_.js";
30
- import "./chrome-oPevdeh5.js";
31
- import "./store-BMeqzQAf.js";
32
- import "./pi-embedded-helpers-CTfvZz83.js";
19
+ import "./redact-BOuKZWXa.js";
20
+ import "./errors-jusxdu7M.js";
21
+ import "./path-alias-guards-DpKV1B5p.js";
22
+ import "./fs-safe-DMCE0ej9.js";
23
+ import "./image-ops-DulHE5Qc.js";
24
+ import "./ssrf-Doxv9M7Q.js";
25
+ import "./fetch-guard-Dary6WwJ.js";
26
+ import "./local-roots-DssN60r6.js";
27
+ import "./tool-images-heXfaJdb.js";
28
+ import { f as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-BBn9jEMg.js";
29
+ import "./skills-DXOTei42.js";
30
+ import "./chrome-Dn0G4NoF.js";
31
+ import "./store-BZbE1V-C.js";
32
+ import "./pi-embedded-helpers-CKEUWckk.js";
33
33
  import "./thinking-DGaZRXAR.js";
34
- import "./image-CkPzr3XN.js";
35
- import "./pi-model-discovery-CK3Ih_kq.js";
36
- import "./api-key-rotation-CYI51U_M.js";
37
- import "./proxy-fetch-jmbopGcm.js";
34
+ import "./image-B3A2l2ep.js";
35
+ import "./pi-model-discovery-BPeQq9XM.js";
36
+ import "./api-key-rotation-Dl6Ad7Nj.js";
37
+ import "./proxy-fetch-BpHIgvBk.js";
38
38
 
39
39
  //#region src/media-understanding/audio-preflight.ts
40
40
  /**
@@ -1,14 +1,14 @@
1
- import { An as resolveApiKeyForProvider, S as resolveIMessageAttachmentRoots, b as isInboundPathAllowed, gn as normalizeGoogleModelId, kn as requireApiKey, ln as normalizeProviderId, n as loadConfig, qn as resolveOpenClawAgentDir, x as mergeInboundPathRoots, y as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS } from "./config-D7I2_X4P.js";
2
- import { T as resolvePreferredOpenClawTmpDir, p as shouldLogVerbose, t as createSubsystemLogger, u as logVerbose } from "./subsystem-B0V8LFBA.js";
3
- import { G as resolveAgentModelPrimaryValue, W as resolveAgentModelFallbackValues, k as runExec } from "./agent-scope-_j3fIYCK.js";
1
+ import { An as resolveApiKeyForProvider, S as resolveIMessageAttachmentRoots, b as isInboundPathAllowed, gn as normalizeGoogleModelId, kn as requireApiKey, ln as normalizeProviderId, n as loadConfig, qn as resolveOpenClawAgentDir, x as mergeInboundPathRoots, y as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS } from "./config-DAwOhnVF.js";
2
+ import { T as resolvePreferredOpenClawTmpDir, p as shouldLogVerbose, t as createSubsystemLogger, u as logVerbose } from "./subsystem-CM1s2lDT.js";
3
+ import { G as resolveAgentModelPrimaryValue, W as resolveAgentModelFallbackValues, k as runExec } from "./agent-scope-DT5pxpJB.js";
4
4
  import { t as normalizeChatType } from "./chat-type-C4pAlbsI.js";
5
5
  import { n as fetchWithTimeout } from "./fetch-timeout-C-qHqfzG.js";
6
- import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-C9GXWF3o.js";
7
- import { t as fetchWithSsrFGuard } from "./fetch-guard-BivEyA4v.js";
8
- import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-2AOXGUXW.js";
9
- import { t as describeImageWithModel, w as ensureOpenClawModelsJson } from "./image-CkPzr3XN.js";
10
- import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-CYI51U_M.js";
11
- import { n as resolveProxyFetchFromEnv } from "./proxy-fetch-jmbopGcm.js";
6
+ import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-DulHE5Qc.js";
7
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-Dary6WwJ.js";
8
+ import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-DssN60r6.js";
9
+ import { t as describeImageWithModel, w as ensureOpenClawModelsJson } from "./image-B3A2l2ep.js";
10
+ import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-Dl6Ad7Nj.js";
11
+ import { n as resolveProxyFetchFromEnv } from "./proxy-fetch-BpHIgvBk.js";
12
12
  import { constants } from "node:fs";
13
13
  import path from "node:path";
14
14
  import os from "node:os";
@@ -1014,7 +1014,7 @@ var MediaAttachmentCache = class {
1014
1014
  const log = createSubsystemLogger("model-catalog");
1015
1015
  let modelCatalogPromise = null;
1016
1016
  let hasLoggedModelCatalogError = false;
1017
- const defaultImportPiSdk = () => import("./pi-model-discovery-CK3Ih_kq.js").then((n) => n.r);
1017
+ const defaultImportPiSdk = () => import("./pi-model-discovery-BPeQq9XM.js").then((n) => n.r);
1018
1018
  let importPiSdk = defaultImportPiSdk;
1019
1019
  const CODEX_PROVIDER = "openai-codex";
1020
1020
  const OPENAI_CODEX_GPT53_MODEL_ID = "gpt-5.3-codex";
@@ -1,6 +1,6 @@
1
1
  import { c as normalizeAgentId, m as normalizeAccountId } from "./session-key-CVIXEtLx.js";
2
- import { c as resolveDefaultAgentId } from "./agent-scope-_j3fIYCK.js";
3
- import { s as normalizeChatChannelId } from "./registry-HF8_S7QO.js";
2
+ import { c as resolveDefaultAgentId } from "./agent-scope-DT5pxpJB.js";
3
+ import { s as normalizeChatChannelId } from "./registry-Cv-oHUj1.js";
4
4
 
5
5
  //#region src/routing/bindings.ts
6
6
  function normalizeBindingChannelId(raw) {
@@ -1,6 +1,6 @@
1
- import { t as createSubsystemLogger } from "./subsystem-B0V8LFBA.js";
2
- import { n as retryAsync, t as resolveRetryConfig } from "./retry-pZ8iKytf.js";
3
- import { r as formatErrorMessage } from "./errors-DFTN4h2I.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-CM1s2lDT.js";
2
+ import { n as retryAsync, t as resolveRetryConfig } from "./retry-BMcrIz7L.js";
3
+ import { r as formatErrorMessage } from "./errors-jusxdu7M.js";
4
4
  import { RateLimitError } from "@buape/carbon";
5
5
 
6
6
  //#region src/infra/retry-policy.ts
@@ -1,29 +1,29 @@
1
1
  import { a as buildGroupHistoryKey, c as normalizeAgentId, n as DEFAULT_MAIN_KEY, p as DEFAULT_ACCOUNT_ID, r as buildAgentMainSessionKey } from "./session-key-CVIXEtLx.js";
2
- import { i as resolveWhatsAppAccount, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-BYcizTXn.js";
3
- import { At as resolveDefaultGroupPolicy, C as formatDurationPrecise, Ct as resolveDmGroupAccessWithLists, J as DEFAULT_GROUP_HISTORY_LIMIT, Nt as warnMissingProviderGroupPolicyFallbackOnce, St as resolveDmGroupAccessWithCommandGate, Tt as resolvePinnedMainDmOwnerFromAllowlist, U as shouldAckReactionForWhatsApp, W as resolveMentionGating, Y as buildHistoryContextFromEntries, _t as buildPairingReply, ct as formatInboundEnvelope, d as dispatchReplyWithBufferedBlockDispatcher, g as shouldComputeCommandAuthorized, h as hasControlCommand, i as resolveInboundSessionEnvelopeContext, it as createDedupeCache, jt as resolveOpenProviderRuntimeGroupPolicy, l as computeBackoff, m as resolveInboundDebounceMs, n as normalizeGroupActivation, nt as buildMentionRegexes, p as createInboundDebouncer, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as sleepWithAbort, w as enqueueSystemEvent, yt as readStoreAllowFromForDmPolicy } from "./reply-Cs_Ks2Mr.js";
4
- import { n as loadConfig } from "./config-D7I2_X4P.js";
5
- import { i as defaultRuntime, p as shouldLogVerbose, t as createSubsystemLogger, u as logVerbose, y as getChildLogger } from "./subsystem-B0V8LFBA.js";
6
- import { d as normalizeE164, l as isSelfChatMode, m as resolveJidToE164, n as clamp, u as jidToE164, x as toWhatsappJid, y as sleep } from "./utils-BfVxx6bk.js";
7
- import { t as formatCliCommand } from "./command-format-DvyMEXQo.js";
8
- import { s as normalizeChatChannelId } from "./registry-HF8_S7QO.js";
9
- import { N as resolveChannelGroupPolicy, P as resolveChannelGroupRequireMention } from "./dock-CjdkiLH7.js";
10
- import { c as recordSessionMetaFromInbound, l as updateLastRoute, o as loadSessionStore, q as resolveGroupSessionKey } from "./sessions-lAIo5l8W.js";
2
+ import { i as resolveWhatsAppAccount, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-D_pT5EjF.js";
3
+ import { At as resolveDefaultGroupPolicy, C as formatDurationPrecise, Ct as resolveDmGroupAccessWithLists, J as DEFAULT_GROUP_HISTORY_LIMIT, Nt as warnMissingProviderGroupPolicyFallbackOnce, St as resolveDmGroupAccessWithCommandGate, Tt as resolvePinnedMainDmOwnerFromAllowlist, U as shouldAckReactionForWhatsApp, W as resolveMentionGating, Y as buildHistoryContextFromEntries, _t as buildPairingReply, ct as formatInboundEnvelope, d as dispatchReplyWithBufferedBlockDispatcher, g as shouldComputeCommandAuthorized, h as hasControlCommand, i as resolveInboundSessionEnvelopeContext, it as createDedupeCache, jt as resolveOpenProviderRuntimeGroupPolicy, l as computeBackoff, m as resolveInboundDebounceMs, n as normalizeGroupActivation, nt as buildMentionRegexes, p as createInboundDebouncer, r as parseActivationCommand, rt as normalizeMentionText, t as getReplyFromConfig, tt as recordPendingHistoryEntryIfEnabled, u as sleepWithAbort, w as enqueueSystemEvent, yt as readStoreAllowFromForDmPolicy } from "./reply-BCRC0yeW.js";
4
+ import { n as loadConfig } from "./config-DAwOhnVF.js";
5
+ import { i as defaultRuntime, p as shouldLogVerbose, t as createSubsystemLogger, u as logVerbose, y as getChildLogger } from "./subsystem-CM1s2lDT.js";
6
+ import { d as normalizeE164, l as isSelfChatMode, m as resolveJidToE164, n as clamp, u as jidToE164, x as toWhatsappJid, y as sleep } from "./utils-BcL6KGZf.js";
7
+ import { t as formatCliCommand } from "./command-format-BOJz3y1v.js";
8
+ import { s as normalizeChatChannelId } from "./registry-Cv-oHUj1.js";
9
+ import { N as resolveChannelGroupPolicy, P as resolveChannelGroupRequireMention } from "./dock-BdR3OYZn.js";
10
+ import { c as recordSessionMetaFromInbound, l as updateLastRoute, o as loadSessionStore, q as resolveGroupSessionKey } from "./sessions-BXps6YzJ.js";
11
11
  import { s as resolveStorePath } from "./paths-DlLOyPPw.js";
12
- import { n as recordChannelActivity } from "./channel-activity-B3yZ-f-m.js";
13
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-2AOXGUXW.js";
14
- import { a as loadWebMedia } from "./ir-BIm-jvIK.js";
15
- import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-BPyPeheZ.js";
16
- import { n as resolveMarkdownTableMode } from "./markdown-tables-D9mmqMKi.js";
17
- import { t as convertMarkdownTables } from "./tables-DCSeBGBz.js";
18
- import { X as formatLocationText, Z as toLocationContext, at as upsertChannelPairingRequest, rt as readChannelAllowFromStoreSync } from "./send-CZIN8SDx.js";
19
- import { d as registerUnhandledRejectionHandler } from "./audio-transcription-runner-DFZS7uCO.js";
20
- import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-KODsMNJ-.js";
21
- import { a as saveMediaBuffer } from "./store-BMeqzQAf.js";
12
+ import { n as recordChannelActivity } from "./channel-activity-DAEbma-o.js";
13
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-DssN60r6.js";
14
+ import { a as loadWebMedia } from "./ir-BFXiJrsN.js";
15
+ import { c as resolveChunkMode, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit } from "./chunk-cvtXztAT.js";
16
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-CsQpDNU5.js";
17
+ import { t as convertMarkdownTables } from "./tables-BhH8EIqU.js";
18
+ import { X as formatLocationText, Z as toLocationContext, at as upsertChannelPairingRequest, rt as readChannelAllowFromStoreSync } from "./send-DJzwu8kk.js";
19
+ import { d as registerUnhandledRejectionHandler } from "./audio-transcription-runner-BBn9jEMg.js";
20
+ import { l as resolveIdentityNamePrefix, n as createReplyPrefixOptions, u as resolveMessagePrefix } from "./reply-prefix-DXthVxCx.js";
21
+ import { a as saveMediaBuffer } from "./store-BZbE1V-C.js";
22
22
  import { t as finalizeInboundContext } from "./inbound-context-DZb6zIHq.js";
23
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-De2B5QY_.js";
24
- import { r as setActiveWebListener } from "./active-listener-pnqLAUOh.js";
25
- import { i as markdownToWhatsApp, r as sendReactionWhatsApp } from "./outbound-DdTsUaXa.js";
26
- import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-ooYcB82T.js";
23
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-DuwYYn4a.js";
24
+ import { r as setActiveWebListener } from "./active-listener-DxBXcWm_.js";
25
+ import { i as markdownToWhatsApp, r as sendReactionWhatsApp } from "./outbound-D29FHlQl.js";
26
+ import { i as waitForWaConnection, n as formatError, r as getStatusCode, t as createWaSocket } from "./session-BA7tVDpV.js";
27
27
  import { randomUUID } from "node:crypto";
28
28
  import { DisconnectReason, downloadMediaMessage, extractMessageContent, getContentType, isJidGroup, normalizeMessageContent } from "@whiskeysockets/baileys";
29
29
 
@@ -1,10 +1,10 @@
1
- import { X as isPrivateOrLoopbackIpAddress, Y as isLoopbackIpAddress, Z as normalizeIpAddress, n as loadConfig } from "./config-D7I2_X4P.js";
2
- import { T as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger } from "./subsystem-B0V8LFBA.js";
3
- import { t as CONFIG_DIR } from "./utils-BfVxx6bk.js";
4
- import { B as isPathInside, z as isNotFoundPathError } from "./agent-scope-_j3fIYCK.js";
5
- import { a as isErrno } from "./errors-DFTN4h2I.js";
6
- import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-B256n7Ff.js";
7
- import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, u as hasProxyEnvConfigured } from "./ssrf-JKDwTi8i.js";
1
+ import { X as isPrivateOrLoopbackIpAddress, Y as isLoopbackIpAddress, Z as normalizeIpAddress, n as loadConfig } from "./config-DAwOhnVF.js";
2
+ import { T as resolvePreferredOpenClawTmpDir, t as createSubsystemLogger } from "./subsystem-CM1s2lDT.js";
3
+ import { t as CONFIG_DIR } from "./utils-BcL6KGZf.js";
4
+ import { B as isPathInside, z as isNotFoundPathError } from "./agent-scope-DT5pxpJB.js";
5
+ import { a as isErrno } from "./errors-jusxdu7M.js";
6
+ import { i as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-DMCE0ej9.js";
7
+ import { c as resolvePinnedHostnameWithPolicy, s as isPrivateNetworkAllowedByPolicy, u as hasProxyEnvConfigured } from "./ssrf-Doxv9M7Q.js";
8
8
  import fs from "node:fs";
9
9
  import path from "node:path";
10
10
  import os from "node:os";
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { m as normalizeAccountId } from "./session-key-CVIXEtLx.js";
3
- import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-_CEZcqxE.js";
3
+ import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-CvNq-esz.js";
4
4
  import { t as resolveAccountEntry } from "./account-lookup-BCxEEOS8.js";
5
5
 
6
6
  //#region src/markdown/fences.ts
@@ -1,5 +1,5 @@
1
1
  import { f as replaceCliName, p as resolveCliName } from "./paths-C__vjTc0.js";
2
- import { t as createSubsystemLogger } from "./subsystem-B0V8LFBA.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-CM1s2lDT.js";
3
3
 
4
4
  //#region src/utils/boolean.ts
5
5
  const DEFAULT_TRUTHY = [
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { ar as DEFAULT_PROVIDER, ir as DEFAULT_MODEL, un as resolveConfiguredModelRef } from "./config-D7I2_X4P.js";
3
- import { C as isPlainObject, o as escapeRegExp } from "./utils-BfVxx6bk.js";
4
- import { c as getActivePluginRegistry } from "./registry-HF8_S7QO.js";
5
- import { n as listChannelDocks } from "./dock-CjdkiLH7.js";
6
- import { r as normalizeChannelId } from "./plugins-BpHAMNJ1.js";
2
+ import { ar as DEFAULT_PROVIDER, ir as DEFAULT_MODEL, un as resolveConfiguredModelRef } from "./config-DAwOhnVF.js";
3
+ import { C as isPlainObject, o as escapeRegExp } from "./utils-BcL6KGZf.js";
4
+ import { c as getActivePluginRegistry } from "./registry-Cv-oHUj1.js";
5
+ import { n as listChannelDocks } from "./dock-BdR3OYZn.js";
6
+ import { r as normalizeChannelId } from "./plugins-DF_dKXTR.js";
7
7
  import { r as listThinkingLevels } from "./thinking-DGaZRXAR.js";
8
8
 
9
9
  //#region src/config/commands.ts