@qqbrowser/openclaw-qbot 0.0.128 → 0.0.129

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 (1471) hide show
  1. package/dist/account-lookup-CW-_CL7y.js +1 -1
  2. package/dist/acp-cli-01SGjPGi.js +1 -1
  3. package/dist/acp-cli-uxN405XG.js +1 -1
  4. package/dist/active-listener-BZ6loNaF.js +1 -1
  5. package/dist/active-listener-D8VOdVx3.js +1 -1
  6. package/dist/active-listener-DB5mhDuO.js +1 -1
  7. package/dist/active-listener-DeKRt_UV.js +1 -1
  8. package/dist/agent-scope-DAWJwFfl.js +1 -1
  9. package/dist/agent-scope-DXZc3eNT.js +1 -1
  10. package/dist/agents-BMh3ZeoB.js +1 -1
  11. package/dist/agents.config-B-0lZSmb.js +1 -1
  12. package/dist/agents.config-BDEN2Eph.js +1 -1
  13. package/dist/allow-from-B6dI7oz8.js +1 -1
  14. package/dist/allow-from-DEeVIPKS.js +1 -1
  15. package/dist/api-BeG0ObSq.js +1 -1
  16. package/dist/api-Dx8x1KTs.js +1 -1
  17. package/dist/api-key-rotation-C_MG2y1D.js +1 -1
  18. package/dist/api-key-rotation-D8WsZ43x.js +1 -1
  19. package/dist/api-key-rotation-DYYvcqSG.js +1 -1
  20. package/dist/api-key-rotation-dNu0GxPN.js +1 -1
  21. package/dist/arg-split-BOqSMBuf.js +1 -1
  22. package/dist/arg-split-DE5RqDHq.js +1 -1
  23. package/dist/audio-preflight--K4-eUVY.js +1 -1
  24. package/dist/audio-preflight-BKIm58PG.js +1 -1
  25. package/dist/audio-preflight-CAfi10dl.js +1 -1
  26. package/dist/audio-preflight-Xm0NL5JA.js +1 -1
  27. package/dist/audio-transcription-runner-BJNP7vB8.js +1 -1
  28. package/dist/audio-transcription-runner-BUsb6cqv.js +1 -1
  29. package/dist/audio-transcription-runner-C_31Yoq0.js +1 -1
  30. package/dist/audio-transcription-runner-CjKLRVPo.js +1 -1
  31. package/dist/audit-7DFnKINd.js +1 -1
  32. package/dist/audit-B6LsW3Ai.js +1 -1
  33. package/dist/audit-membership-runtime-BpRsMj5-.js +1 -1
  34. package/dist/audit-membership-runtime-BsfLZNBj.js +1 -1
  35. package/dist/audit-membership-runtime-DRHirRmx.js +1 -1
  36. package/dist/audit-membership-runtime-g0dEWJTp.js +1 -1
  37. package/dist/audit-membership-runtime-kdyToskD.js +1 -1
  38. package/dist/auth-choice-BNd2SNjJ.js +1 -1
  39. package/dist/auth-choice-C3aUWXx9.js +1 -1
  40. package/dist/auth-choice-DViEjgMg.js +1 -1
  41. package/dist/auth-choice-edozMf7r.js +1 -1
  42. package/dist/auth-choice-options-B3WQyS7I.js +1 -1
  43. package/dist/auth-choice-options-Dw14noox.js +1 -1
  44. package/dist/auth-choice-prompt-uegl56cf.js +1 -1
  45. package/dist/auth-choice-prompt-xYj13czb.js +1 -1
  46. package/dist/auth-choice.apply-helpers-CNLYnRxx.js +1 -1
  47. package/dist/auth-choice.apply-helpers-DCe5nTyP.js +1 -1
  48. package/dist/auth-profiles-BhXA8Jy2.js +1 -1
  49. package/dist/auth-token-C75IOb_K.js +1 -1
  50. package/dist/auth-token-CzgZf-ta.js +1 -1
  51. package/dist/banner-mIDEloRy.js +1 -1
  52. package/dist/bonjour-discovery-CpvzLjyB.js +1 -1
  53. package/dist/bonjour-discovery-wsh3Si1Q.js +1 -1
  54. package/dist/boolean-Ch3DfXPy.js +1 -1
  55. package/dist/boolean-D15s2V33.js +1 -1
  56. package/dist/boolean-DypnRoRK.js +1 -1
  57. package/dist/brew-COcDl8CB.js +1 -1
  58. package/dist/brew-DDPm_HfE.js +1 -1
  59. package/dist/browser-cli-BjzNbvF9.js +1 -1
  60. package/dist/browser-cli-CgHkgtgV.js +1 -1
  61. package/dist/build-info.json +2 -2
  62. package/dist/bundled/boot-md/handler.js +1 -1
  63. package/dist/bundled/bootstrap-extra-files/handler.js +1 -1
  64. package/dist/bundled/command-logger/handler.js +1 -1
  65. package/dist/bundled/session-memory/handler.js +1 -1
  66. package/dist/call-BA3O_Qpl.js +1 -1
  67. package/dist/call-BQT0zCgv.js +1 -1
  68. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  69. package/dist/channel-account-context-BMPAMZEv.js +1 -1
  70. package/dist/channel-account-context-DAcarnqW.js +1 -1
  71. package/dist/channel-activity-B04WbrrK.js +1 -1
  72. package/dist/channel-activity-BPRCQpI6.js +1 -1
  73. package/dist/channel-activity-D2VTmenR.js +1 -1
  74. package/dist/channel-activity-DHY5wAyl.js +1 -1
  75. package/dist/channel-activity-DYpm-0Cz.js +1 -1
  76. package/dist/channel-options-BYmHreMn.js +1 -1
  77. package/dist/channel-options-Cbv7VETu.js +1 -1
  78. package/dist/channel-selection-Ddyykqxv.js +1 -1
  79. package/dist/channel-selection-oRONo9z3.js +1 -1
  80. package/dist/channel-web-CK4RqVCH.js +1 -1
  81. package/dist/channel-web-Xw89Exy3.js +1 -1
  82. package/dist/channels/plugins/actions/discord.js +1 -1
  83. package/dist/channels/plugins/actions/signal.js +1 -1
  84. package/dist/channels/plugins/actions/telegram.js +1 -1
  85. package/dist/channels/plugins/agent-tools/whatsapp-login.js +1 -1
  86. package/dist/channels-cli-D2y5Xk5i.js +1 -1
  87. package/dist/channels-cli-cwFjBXcP.js +1 -1
  88. package/dist/channels-status-issues-8eFrGKyf.js +1 -1
  89. package/dist/channels-status-issues-PRgOT90w.js +1 -1
  90. package/dist/chat-envelope-Bznn2SoS.js +1 -1
  91. package/dist/chat-envelope-HVpKusFc.js +1 -1
  92. package/dist/clack-prompter-DBPdGdqp.js +1 -1
  93. package/dist/clack-prompter-Dq0aY6iM.js +1 -1
  94. package/dist/clawbot-cli-BwG1-8A9.js +1 -1
  95. package/dist/clawbot-cli-CaNu5A0G.js +1 -1
  96. package/dist/cleanup-utils-BWm70DoD.js +1 -1
  97. package/dist/cleanup-utils-D-RhEX6F.js +1 -1
  98. package/dist/cli-CQKA38bc.js +1 -1
  99. package/dist/cli-i7P4bYBg.js +1 -1
  100. package/dist/cli-utils-BY7dLMFy.js +1 -1
  101. package/dist/cli-utils-BleB1eys.js +1 -1
  102. package/dist/clipboard-Bk8cviBt.js +1 -1
  103. package/dist/clipboard-CKT_VIkG.js +1 -1
  104. package/dist/cmd-argv-BBT5l8AV.js +1 -1
  105. package/dist/cmd-argv-Bh-KpaZ0.js +1 -1
  106. package/dist/command-format-BbDT1tlm.js +1 -1
  107. package/dist/command-format-CLxIPuLR.js +1 -1
  108. package/dist/command-options-BpOUDl2S.js +1 -1
  109. package/dist/command-options-Bq5nQxz6.js +1 -1
  110. package/dist/command-poll-backoff-BZLHYB2k.js +1 -1
  111. package/dist/command-poll-backoff-Cww_r-24.js +1 -1
  112. package/dist/command-poll-backoff-Df6cOQrX.js +1 -1
  113. package/dist/command-poll-backoff-endAPdwn.js +1 -1
  114. package/dist/command-registry-BYk36N_R.js +1 -1
  115. package/dist/command-secret-targets-BBTiqQKa.js +1 -1
  116. package/dist/command-secret-targets-KM3OecbM.js +1 -1
  117. package/dist/commands-CGpM84iR.js +1 -1
  118. package/dist/commands-Dy7duWlt.js +1 -1
  119. package/dist/commands-registry-B3FI6TSl.js +1 -1
  120. package/dist/commands-registry-CxDVU5s9.js +1 -1
  121. package/dist/commands-registry-Dn2uuNuy.js +1 -1
  122. package/dist/commands-registry-Du79fdAL.js +1 -1
  123. package/dist/compact-CuBCVnVS.js +1 -1
  124. package/dist/completion-cli-CRNTbZlR.js +1 -1
  125. package/dist/completion-cli-DbGDCoiM.js +1 -1
  126. package/dist/config-BqW5S1xL.js +1 -1
  127. package/dist/config-DAQjvwZw.js +1 -1
  128. package/dist/config-cli-D_coAWd9.js +1 -1
  129. package/dist/config-cli-EKXoNzLf.js +1 -1
  130. package/dist/config-guard-U0wlYLUN.js +1 -1
  131. package/dist/config-guard-XayIkveC.js +1 -1
  132. package/dist/config-validation-B0nN9egx.js +1 -1
  133. package/dist/config-validation-CAHnpjrk.js +1 -1
  134. package/dist/configure-DNnQRKy8.js +1 -1
  135. package/dist/configure-NCNskZPe.js +1 -1
  136. package/dist/connection-auth-BcPbGyxw.js +1 -1
  137. package/dist/connection-auth-DZ-3Svr_.js +1 -1
  138. package/dist/context-window-guard-7crlatf9.js +1 -1
  139. package/dist/context-window-guard-CPChk363.js +1 -1
  140. package/dist/control-ui/apple-touch-icon.png +0 -0
  141. package/dist/control-ui/assets/de-DuUYLvt1.js +1 -0
  142. package/dist/control-ui/assets/es-DHtyqUQZ.js +1 -0
  143. package/dist/control-ui/assets/index-CYbiPp9k.js +8383 -0
  144. package/dist/control-ui/assets/index-C_GaJ8wS.css +1 -0
  145. package/dist/control-ui/assets/pt-BR-D2dJb9G8.js +1 -0
  146. package/dist/control-ui/assets/zh-CN-BgJ8_lE3.js +1 -0
  147. package/dist/control-ui/assets/zh-TW-cW5xB87I.js +1 -0
  148. package/dist/control-ui/favicon-32.png +0 -0
  149. package/dist/control-ui/favicon.ico +0 -0
  150. package/dist/control-ui/favicon.svg +22 -0
  151. package/dist/control-ui/index.html +17 -0
  152. package/dist/control-ui-assets-BIa0GGDg.js +1 -1
  153. package/dist/control-ui-assets-CTHGGgaX.js +1 -1
  154. package/dist/cron-cli-Cro66JtU.js +1 -1
  155. package/dist/cron-cli-DIeBukvk.js +1 -1
  156. package/dist/daemon-cli-Cw_fxNgE.js +1 -1
  157. package/dist/daemon-cli-DQsKS3pT.js +1 -1
  158. package/dist/daemon-cli.js +1 -1
  159. package/dist/daemon-install-C_DmJEkV.js +1 -1
  160. package/dist/daemon-install-D1DacLbM.js +1 -1
  161. package/dist/daemon-install-plan.shared-BSDdwWjB.js +1 -1
  162. package/dist/daemon-install-plan.shared-Dx3DBXCG.js +1 -1
  163. package/dist/daemon-runtime-DHiDbRuC.js +1 -1
  164. package/dist/daemon-runtime-VcpeBRJV.js +1 -1
  165. package/dist/dangerous-name-matching-BOmvAibz.js +1 -1
  166. package/dist/dangerous-name-matching-DtllRqBD.js +1 -1
  167. package/dist/dangerous-tools-CFRYQJ6V.js +1 -1
  168. package/dist/dangerous-tools-oYCu5wfC.js +1 -1
  169. package/dist/deliver-2c-EsQ_W.js +1 -1
  170. package/dist/deliver-BudDnEIb.js +1 -1
  171. package/dist/deliver-COKdxPmA.js +1 -1
  172. package/dist/deliver-DHP2vHKB.js +1 -1
  173. package/dist/delivery-queue-CKbauSFq.js +1 -1
  174. package/dist/delivery-queue-nkPJu0fY.js +1 -1
  175. package/dist/device-pairing-4eDo43Kk.js +1 -1
  176. package/dist/device-pairing-B7ZXiXp3.js +1 -1
  177. package/dist/devices-cli-BXUIb_UN.js +1 -1
  178. package/dist/devices-cli-D7PkbnHO.js +1 -1
  179. package/dist/diagnostic-Bzd5vlKH.js +1 -1
  180. package/dist/diagnostic-CFmHdXHP.js +1 -1
  181. package/dist/diagnostic-CW_Jv5UM.js +1 -1
  182. package/dist/diagnostic-Dza7-pMC.js +1 -1
  183. package/dist/diagnostics-BgbeL9KE.js +1 -1
  184. package/dist/diagnostics-Cdctg9K_.js +1 -1
  185. package/dist/directory-cli-CxeuNJcC.js +1 -1
  186. package/dist/directory-cli-DFlYCB5L.js +1 -1
  187. package/dist/dns-cli-BDbHznhi.js +1 -1
  188. package/dist/dns-cli-OuwliJ60.js +1 -1
  189. package/dist/docs-cli-Cdw9Iz9a.js +1 -1
  190. package/dist/docs-cli-ClD2UyX1.js +1 -1
  191. package/dist/doctor-completion-BSOX-LSq.js +1 -1
  192. package/dist/doctor-completion-DXqdpdlo.js +1 -1
  193. package/dist/doctor-config-flow-DHB8N7tT.js +1 -1
  194. package/dist/doctor-config-flow-MjfHBDlw.js +1 -1
  195. package/dist/enable-DVuqWT2a.js +1 -1
  196. package/dist/enable-DWaSH1HY.js +1 -1
  197. package/dist/entry-status-CCwwKO43.js +1 -1
  198. package/dist/entry-status-CoXkbJcX.js +1 -1
  199. package/dist/entry.js +1 -1
  200. package/dist/env-D7wNuBx1.js +1 -1
  201. package/dist/env-overrides-DHtB4kK3.js +1 -1
  202. package/dist/env-overrides-DXJbFrwI.js +1 -1
  203. package/dist/errors-6SQWM9dj.js +1 -1
  204. package/dist/errors-Bunti32V.js +1 -1
  205. package/dist/exec-B3eleY5O.js +1 -1
  206. package/dist/exec-DHqLtFYt.js +1 -1
  207. package/dist/exec-approvals-BXO9Cezj.js +1 -1
  208. package/dist/exec-approvals-BpBNEy6i.js +1 -1
  209. package/dist/exec-approvals-allowlist-BKFaHvA5.js +1 -1
  210. package/dist/exec-approvals-allowlist-DBh9Pm77.js +1 -1
  211. package/dist/exec-approvals-cli-0neCwpk-.js +1 -1
  212. package/dist/exec-approvals-cli-BuHSw09B.js +1 -1
  213. package/dist/exec-safe-bin-runtime-policy-Ck3GO5AB.js +1 -1
  214. package/dist/exec-safe-bin-runtime-policy-D2WexijZ.js +1 -1
  215. package/dist/fetch-BI3CnKE3.js +1 -1
  216. package/dist/fetch-BJT3BrkJ.js +1 -1
  217. package/dist/fetch-Bn0mWg6a.js +1 -1
  218. package/dist/fetch-CY5G3PDq.js +1 -1
  219. package/dist/fetch-Ce-scEU-.js +1 -1
  220. package/dist/fetch-D0rZDHKO.js +1 -1
  221. package/dist/fetch-DHo17YmK.js +1 -1
  222. package/dist/fetch-Dh-apy46.js +1 -1
  223. package/dist/fetch-Dikjvc5M.js +1 -1
  224. package/dist/fetch-DsjPfQlp.js +1 -1
  225. package/dist/fetch-_g8lZ8K8.js +1 -1
  226. package/dist/fetch-guard-BaRbr_V6.js +1 -1
  227. package/dist/fetch-guard-BmNIhXP-.js +1 -1
  228. package/dist/fetch-guard-ChVqc0HF.js +1 -1
  229. package/dist/fetch-guard-Cji70DJW.js +1 -1
  230. package/dist/fetch-hy0JKSsm.js +1 -1
  231. package/dist/fetch-timeout-CdYxWG9w.js +1 -1
  232. package/dist/fetch-timeout-Cj8_oAls.js +1 -1
  233. package/dist/fetch-timeout-DoOI_izT.js +1 -1
  234. package/dist/fetch-timeout-u8g99Ax0.js +1 -1
  235. package/dist/fetch-xT2jRpqs.js +1 -1
  236. package/dist/format-Bn1bwJKX.js +1 -1
  237. package/dist/format-Ce7I7s-k.js +1 -1
  238. package/dist/format-duration-C8AzNqKh.js +1 -1
  239. package/dist/format-duration-D5AMtmHa.js +1 -1
  240. package/dist/format-relative-B9pSIdGe.js +1 -1
  241. package/dist/format-relative-DkMjYy7z.js +1 -1
  242. package/dist/frontmatter-BkZkwkVO.js +1 -1
  243. package/dist/frontmatter-C7mzDNxd.js +1 -1
  244. package/dist/frontmatter-CzpfPBFl.js +1 -1
  245. package/dist/gateway-cli-Bj-BYgGN.js +1 -1
  246. package/dist/gateway-cli-DP65otLl.js +1 -1
  247. package/dist/gateway-install-token-BIqlEgy0.js +1 -1
  248. package/dist/gateway-install-token-CtUJl3A3.js +1 -1
  249. package/dist/gateway-rpc-DJHjmEZz.js +1 -1
  250. package/dist/gateway-rpc-XRAMeV67.js +1 -1
  251. package/dist/github-copilot-token-C79yeDKS.js +1 -1
  252. package/dist/github-copilot-token-DGYAlOmV.js +1 -1
  253. package/dist/github-copilot-token-DePP-lIf.js +1 -1
  254. package/dist/github-copilot-token-wm6mbypz.js +1 -1
  255. package/dist/gmail-setup-utils-CYOH3zzx.js +1 -1
  256. package/dist/gmail-setup-utils-S-MyEGuj.js +1 -1
  257. package/dist/group-access-BHKVOhrj.js +1 -1
  258. package/dist/group-access-D2DOYMfr.js +1 -1
  259. package/dist/health-Bedsiigi.js +1 -1
  260. package/dist/health-Cy_CvKbX.js +1 -1
  261. package/dist/health-format-B1nj3Wfn.js +1 -1
  262. package/dist/health-format-VBr6LEpt.js +1 -1
  263. package/dist/heartbeat-visibility-BQ_esv2m.js +1 -1
  264. package/dist/heartbeat-visibility-q74UdY8O.js +1 -1
  265. package/dist/help-format-B4aEI7V9.js +1 -1
  266. package/dist/help-format-BRbF_INg.js +1 -1
  267. package/dist/helpers-COz1ghcB.js +1 -1
  268. package/dist/helpers-Cp8gcO6u.js +1 -1
  269. package/dist/hooks-cli-DrnH2iDk.js +1 -1
  270. package/dist/hooks-cli-DvfZKyZl.js +1 -1
  271. package/dist/hooks-status-BHt-Xvh4.js +1 -1
  272. package/dist/hooks-status-CRJ4J0ZW.js +1 -1
  273. package/dist/image-BJC11A7e.js +1 -1
  274. package/dist/image-BKPxWO_2.js +1 -1
  275. package/dist/image-Ba-mOMMV.js +1 -1
  276. package/dist/image-D-R3N1it.js +1 -1
  277. package/dist/index.js +1 -1
  278. package/dist/inspect-BKV-I1UE.js +1 -1
  279. package/dist/inspect-z59cgmYc.js +1 -1
  280. package/dist/install-safe-path-C6kc_8NW.js +1 -1
  281. package/dist/install-safe-path-iesxijn2.js +1 -1
  282. package/dist/installs-BNeI_oML.js +1 -1
  283. package/dist/installs-C1xQLuby.js +1 -1
  284. package/dist/ipv4-BXZDlz5C.js +1 -1
  285. package/dist/ipv4-BnPLbv6y.js +1 -1
  286. package/dist/ir-BYCrFFZ9.js +1 -1
  287. package/dist/ir-CH7YvSi9.js +1 -1
  288. package/dist/ir-CSysIkNU.js +1 -1
  289. package/dist/ir-CZdZsdnI.js +1 -1
  290. package/dist/is-main-DG5ueqhF.js +1 -1
  291. package/dist/issue-format-CpTuk_rQ.js +1 -1
  292. package/dist/issue-format-kj7FXHhi.js +1 -1
  293. package/dist/kill-tree-DBJW8_Q-.js +1 -1
  294. package/dist/lifecycle-core-B72WHNHV.js +1 -1
  295. package/dist/lifecycle-core-dhkH_Nux.js +1 -1
  296. package/dist/line/accounts.js +1 -1
  297. package/dist/line/send.js +1 -1
  298. package/dist/line/template-messages.js +1 -1
  299. package/dist/links-CBnmRP9D.js +1 -1
  300. package/dist/links-CySwdMcF.js +1 -1
  301. package/dist/llm-slug-generator.js +1 -1
  302. package/dist/load-options-BsOW74dp.js +1 -1
  303. package/dist/load-options-C7dLuybp.js +1 -1
  304. package/dist/load-options-DV4j6Aqb.js +1 -1
  305. package/dist/load-options-Dwt0CeEg.js +1 -1
  306. package/dist/local-roots-Dxioh0C2.js +1 -1
  307. package/dist/logger-5W0OocJW.js +1 -1
  308. package/dist/logger-Bl8URnrW.js +1 -1
  309. package/dist/logger-DwWqfo66.js +1 -1
  310. package/dist/logger-kQAOe3qp.js +1 -1
  311. package/dist/logging-Dz4Qg6th.js +1 -1
  312. package/dist/logging-KiJmOmw4.js +1 -1
  313. package/dist/login-BMZxDYaU.js +1 -1
  314. package/dist/login-BdzP8F8J.js +1 -1
  315. package/dist/login-BzU0cMck.js +1 -1
  316. package/dist/login-Cb1A6qwM.js +1 -1
  317. package/dist/login-qr-BgsmAwKm.js +1 -1
  318. package/dist/login-qr-Bux8gWTO.js +1 -1
  319. package/dist/login-qr-COr_25Hx.js +1 -1
  320. package/dist/login-qr-CxBPOOAK.js +1 -1
  321. package/dist/login-qr-DnQm7bM4.js +1 -1
  322. package/dist/logs-cli-BM2XCmrH.js +1 -1
  323. package/dist/logs-cli-HKhyxaUs.js +1 -1
  324. package/dist/manager-B6zZuJEB.js +1 -1
  325. package/dist/manager-BwrZfep3.js +1 -1
  326. package/dist/manager-C5SBozw4.js +1 -1
  327. package/dist/manager-CjihRbGa.js +1 -1
  328. package/dist/memory-cli-CnruTL1h.js +1 -1
  329. package/dist/memory-cli-DHvscp7X.js +1 -1
  330. package/dist/model-catalog-BLdaFmIo.js +1 -1
  331. package/dist/model-catalog-vNCcsy4h.js +1 -1
  332. package/dist/model-param-b-B0r2cPDw.js +1 -1
  333. package/dist/model-param-b-BqIr5rY5.js +1 -1
  334. package/dist/model-picker-BaeW3tiV.js +1 -1
  335. package/dist/model-picker-DN0czUYS.js +1 -1
  336. package/dist/model-selection-C2QwHmXT.js +1 -1
  337. package/dist/model-selection-I1ctjFOB.js +1 -1
  338. package/dist/model-selection-qkByRv5A.js +1 -1
  339. package/dist/models-UTdl0vXO.js +1 -1
  340. package/dist/models-cli-QRONP7EL.js +1 -1
  341. package/dist/models-cli-vRoB_gfX.js +1 -1
  342. package/dist/models-config-CWIlroKT.js +1 -1
  343. package/dist/models-config-DN2Q51fC.js +1 -1
  344. package/dist/mutable-allowlist-detectors-C4rNVag8.js +1 -1
  345. package/dist/mutable-allowlist-detectors-CL0qe54J.js +1 -1
  346. package/dist/node-cli-2-E4-83G.js +1 -1
  347. package/dist/node-cli-DUI7Zctj.js +1 -1
  348. package/dist/node-command-policy-Bbmnc16l.js +1 -1
  349. package/dist/node-command-policy-DgkwfoCs.js +1 -1
  350. package/dist/node-commands-8GBOiktk.js +1 -1
  351. package/dist/node-commands-DdkziOTx.js +1 -1
  352. package/dist/node-resolve-B3BJbmQX.js +1 -1
  353. package/dist/node-resolve-DLZf3-1V.js +1 -1
  354. package/dist/node-service-BRfrNp8l.js +1 -1
  355. package/dist/node-service-C0bl7jcZ.js +1 -1
  356. package/dist/node-shell-dXp4vk-i.js +1 -1
  357. package/dist/nodes-cli-DU13-dCL.js +1 -1
  358. package/dist/nodes-cli-rPeIRj_f.js +1 -1
  359. package/dist/nodes-screen-C7-5RrbN.js +1 -1
  360. package/dist/note-D4GAwgha.js +1 -1
  361. package/dist/note-Dp-d_utk.js +1 -1
  362. package/dist/npm-pack-install-B23L-AtF.js +1 -1
  363. package/dist/npm-pack-install-C0te3Oap.js +1 -1
  364. package/dist/npm-resolution-BCXCw93f.js +1 -1
  365. package/dist/npm-resolution-Cmm82lui.js +1 -1
  366. package/dist/oauth-env-DAamJ1oz.js +1 -1
  367. package/dist/oauth-env-DSLBTWb1.js +1 -1
  368. package/dist/oauth-tls-preflight-BSBRDIfC.js +1 -1
  369. package/dist/oauth-tls-preflight-ByNjbUR5.js +1 -1
  370. package/dist/ollama-setup-CKt3tF-S.js +1 -1
  371. package/dist/ollama-setup-I8lghdX1.js +1 -1
  372. package/dist/onboard-B3WSjKCu.js +1 -1
  373. package/dist/onboard-C65vdb94.js +1 -1
  374. package/dist/onboard-channels-9CmG3Jgn.js +1 -1
  375. package/dist/onboard-channels-CV1AK9jY.js +1 -1
  376. package/dist/onboard-config-B7U20YRw.js +1 -1
  377. package/dist/onboard-config-DS9dUv8M.js +1 -1
  378. package/dist/onboard-custom-CwHYUB0T.js +1 -1
  379. package/dist/onboard-custom-uwufXtQf.js +1 -1
  380. package/dist/onboard-helpers-CGJLUoxR.js +1 -1
  381. package/dist/onboard-helpers-DbpWQoiB.js +1 -1
  382. package/dist/onboard-hooks-CERzXObm.js +1 -1
  383. package/dist/onboard-hooks-gQ3sxBNi.js +1 -1
  384. package/dist/onboard-provider-auth-flags-CqbipO7D.js +1 -1
  385. package/dist/onboard-provider-auth-flags-Dvwzdz37.js +1 -1
  386. package/dist/onboard-remote-BeDZ_gbH.js +1 -1
  387. package/dist/onboard-remote-KTUx-3G1.js +1 -1
  388. package/dist/onboard-search-f2tJD4hg.js +1 -1
  389. package/dist/onboard-search-fslKKhyg.js +1 -1
  390. package/dist/onboard-skills-BoS_oVdm.js +1 -1
  391. package/dist/onboard-skills-C4omGWoD.js +1 -1
  392. package/dist/onboarding-B8icigkk.js +1 -1
  393. package/dist/onboarding-BJRqNsZ8.js +1 -1
  394. package/dist/onboarding.finalize-D0qISqn-.js +1 -1
  395. package/dist/onboarding.finalize-Ds9NwPBL.js +1 -1
  396. package/dist/onboarding.gateway-config-F8n_QFUR.js +1 -1
  397. package/dist/onboarding.gateway-config-eno73eHw.js +1 -1
  398. package/dist/onboarding.secret-input-B6fzeucQ.js +1 -1
  399. package/dist/onboarding.secret-input-CBuD3c32.js +1 -1
  400. package/dist/openai-codex-model-default-Df2T3foI.js +1 -1
  401. package/dist/openai-codex-model-default-DtIeKJm0.js +1 -1
  402. package/dist/openai-model-default-DIE55yBt.js +1 -1
  403. package/dist/openai-model-default-sqvWk4kB.js +1 -1
  404. package/dist/openclaw-exec-env-BWbOu_YC.js +1 -1
  405. package/dist/openclaw-root-CnsBf6ZU.js +1 -1
  406. package/dist/openclaw-root-D_0Q6--h.js +1 -1
  407. package/dist/outbound-B88MLJN3.js +1 -1
  408. package/dist/outbound-C-4qToKv.js +1 -1
  409. package/dist/outbound-CSk4oF0g.js +1 -1
  410. package/dist/outbound-DKMI_4xm.js +1 -1
  411. package/dist/outbound-attachment-BOax42-M.js +1 -1
  412. package/dist/outbound-attachment-DBNxdLYh.js +1 -1
  413. package/dist/outbound-attachment-DVjJQ3V6.js +1 -1
  414. package/dist/outbound-attachment-aZWcoZ-N.js +1 -1
  415. package/dist/pairing-cli-Cby6Ww8F.js +1 -1
  416. package/dist/pairing-cli-DiJb_a0V.js +1 -1
  417. package/dist/pairing-labels-BP1h0iHy.js +1 -1
  418. package/dist/pairing-labels-ryOnuOFA.js +1 -1
  419. package/dist/pairing-store-Bv4KSELv.js +1 -1
  420. package/dist/pairing-store-CjTPxq0X.js +1 -1
  421. package/dist/pairing-token-CKX1ds78.js +1 -1
  422. package/dist/pairing-token-CX0SUJsB.js +1 -1
  423. package/dist/parse-duration-XTjMKl8s.js +1 -1
  424. package/dist/parse-finite-number-DqzUM-_s.js +1 -1
  425. package/dist/parse-finite-number-dBmDLLKL.js +1 -1
  426. package/dist/parse-log-line-CsYLg7Qu.js +1 -1
  427. package/dist/parse-log-line-NV-cipB_.js +1 -1
  428. package/dist/parse-port-Bv1Y9Wk5.js +1 -1
  429. package/dist/parse-port-JVwkxcZ8.js +1 -1
  430. package/dist/parse-timeout-DWSGfCkQ.js +1 -1
  431. package/dist/parse-timeout-Dx4QnVzo.js +1 -1
  432. package/dist/path-alias-guards-kY_ZbWs-.js +1 -1
  433. package/dist/path-alias-guards-mvyLCPlN.js +1 -1
  434. package/dist/path-env-BPd1Yd-i.js +1 -1
  435. package/dist/path-env-emdAQejM.js +1 -1
  436. package/dist/path-safety-BukYK8Kd.js +1 -1
  437. package/dist/path-safety-DaaMJFdt.js +1 -1
  438. package/dist/paths-B4IRk3wi.js +1 -1
  439. package/dist/paths-BfjJY2VL.js +1 -1
  440. package/dist/paths-BjD3T_xq.js +1 -1
  441. package/dist/paths-BpQOWYiT.js +1 -1
  442. package/dist/paths-CChBdtE8.js +1 -1
  443. package/dist/paths-CrCoPIVK.js +1 -1
  444. package/dist/paths-piJASC5k.js +1 -1
  445. package/dist/paths-yLEk_25I.js +1 -1
  446. package/dist/pi-embedded-ZEWNj7P5.js +1 -1
  447. package/dist/pi-embedded-bqE4EmdD.js +1 -1
  448. package/dist/pi-model-discovery-6myCPEJE.js +1 -1
  449. package/dist/pi-model-discovery-AiV9h8k6.js +1 -1
  450. package/dist/pi-model-discovery-BzqdozHB.js +1 -1
  451. package/dist/pi-model-discovery-C8YBu6D4.js +1 -1
  452. package/dist/pi-tools.before-tool-call.runtime-CPAJMO7J.js +1 -1
  453. package/dist/pi-tools.before-tool-call.runtime-CYmLHod0.js +1 -1
  454. package/dist/pi-tools.before-tool-call.runtime-CfVqI0Ng.js +1 -1
  455. package/dist/pi-tools.before-tool-call.runtime-D9FlPJ_v.js +1 -1
  456. package/dist/pi-tools.policy-CeSKHaKa.js +1 -1
  457. package/dist/plugin-auto-enable-Cp7L8ko8.js +1 -1
  458. package/dist/plugin-auto-enable-DCOxqfDQ.js +1 -1
  459. package/dist/plugin-install-plan-BobX0y9S.js +1 -1
  460. package/dist/plugin-install-plan-NvDGp0d8.js +1 -1
  461. package/dist/plugin-registry-Fg000e4I.js +1 -1
  462. package/dist/plugin-registry-fm5tDUbE.js +1 -1
  463. package/dist/plugin-sdk/account-id.cjs +1 -1
  464. package/dist/plugin-sdk/account-id.js +1 -1
  465. package/dist/plugin-sdk/acpx.cjs +1 -1
  466. package/dist/plugin-sdk/acpx.js +1 -1
  467. package/dist/plugin-sdk/active-listener-BFeaYGID.js +1 -1
  468. package/dist/plugin-sdk/active-listener-BszCM2Au.cjs +1 -1
  469. package/dist/plugin-sdk/active-listener-CIcleJgU.cjs +1 -1
  470. package/dist/plugin-sdk/active-listener-Cqgd7xVh.cjs +1 -1
  471. package/dist/plugin-sdk/active-listener-D578zEtk.cjs +1 -1
  472. package/dist/plugin-sdk/active-listener-D6gGPLq-.js +1 -1
  473. package/dist/plugin-sdk/active-listener-DKSZRn4x.cjs +1 -1
  474. package/dist/plugin-sdk/active-listener-DNO10F1L.js +1 -1
  475. package/dist/plugin-sdk/active-listener-DQq07Aar.js +1 -1
  476. package/dist/plugin-sdk/active-listener-Dle_kYqb.js +1 -1
  477. package/dist/plugin-sdk/active-listener-DmJcHkMC.js +1 -1
  478. package/dist/plugin-sdk/active-listener-UmFpcYFY.cjs +1 -1
  479. package/dist/plugin-sdk/api-key-rotation-39TRXDEA.cjs +1 -1
  480. package/dist/plugin-sdk/api-key-rotation-7qlqJ_ou.js +1 -1
  481. package/dist/plugin-sdk/api-key-rotation-BY7fLi9z.js +1 -1
  482. package/dist/plugin-sdk/api-key-rotation-CF9_CKS-.cjs +1 -1
  483. package/dist/plugin-sdk/api-key-rotation-CWylhFOt.cjs +1 -1
  484. package/dist/plugin-sdk/api-key-rotation-ClZmonv2.js +1 -1
  485. package/dist/plugin-sdk/api-key-rotation-CmesQWXP.cjs +1 -1
  486. package/dist/plugin-sdk/api-key-rotation-Cs6II2__.js +1 -1
  487. package/dist/plugin-sdk/api-key-rotation-CxaiMcI1.js +1 -1
  488. package/dist/plugin-sdk/api-key-rotation-D5cfmg7E.cjs +1 -1
  489. package/dist/plugin-sdk/api-key-rotation-DkP7KnSm.cjs +1 -1
  490. package/dist/plugin-sdk/api-key-rotation-mDqgBFMG.js +1 -1
  491. package/dist/plugin-sdk/audio-preflight-B-HrF5Oc.js +1 -1
  492. package/dist/plugin-sdk/audio-preflight-B2MGeSoT.js +1 -1
  493. package/dist/plugin-sdk/audio-preflight-BVjiz_Qk.cjs +1 -1
  494. package/dist/plugin-sdk/audio-preflight-Behqe7F3.cjs +1 -1
  495. package/dist/plugin-sdk/audio-preflight-C0ncOCbK.cjs +1 -1
  496. package/dist/plugin-sdk/audio-preflight-C1o1n-KK.js +1 -1
  497. package/dist/plugin-sdk/audio-preflight-CzLYTZ5P.cjs +1 -1
  498. package/dist/plugin-sdk/audio-preflight-DDiBwIB9.js +1 -1
  499. package/dist/plugin-sdk/audio-preflight-DQyh-XSn.cjs +1 -1
  500. package/dist/plugin-sdk/audio-preflight-WH9WDR81.cjs +1 -1
  501. package/dist/plugin-sdk/audio-preflight-ZPLO3G1S.js +1 -1
  502. package/dist/plugin-sdk/audio-preflight-s3BAID12.js +1 -1
  503. package/dist/plugin-sdk/audio-transcription-runner-2-ZQ5Md-.cjs +1 -1
  504. package/dist/plugin-sdk/audio-transcription-runner-BO7T_SzP.cjs +1 -1
  505. package/dist/plugin-sdk/audio-transcription-runner-CRYJlAeP.js +1 -1
  506. package/dist/plugin-sdk/audio-transcription-runner-CmW24oVR.js +1 -1
  507. package/dist/plugin-sdk/audio-transcription-runner-CmYuWS0_.cjs +1 -1
  508. package/dist/plugin-sdk/audio-transcription-runner-CslXJs5c.js +1 -1
  509. package/dist/plugin-sdk/audio-transcription-runner-DE1tKTQV.cjs +1 -1
  510. package/dist/plugin-sdk/audio-transcription-runner-DZR84B28.js +1 -1
  511. package/dist/plugin-sdk/audio-transcription-runner-DoR-NOcV.cjs +1 -1
  512. package/dist/plugin-sdk/audio-transcription-runner-IE4olXkd.cjs +1 -1
  513. package/dist/plugin-sdk/audio-transcription-runner-YiDQM_Rb.js +1 -1
  514. package/dist/plugin-sdk/audio-transcription-runner-kAVM4YFR.js +1 -1
  515. package/dist/plugin-sdk/audit-membership-runtime-7LqcvqFo.js +1 -1
  516. package/dist/plugin-sdk/audit-membership-runtime-BQFUzFc0.cjs +1 -1
  517. package/dist/plugin-sdk/audit-membership-runtime-BYtdDX9G.cjs +1 -1
  518. package/dist/plugin-sdk/audit-membership-runtime-BzEtBUX6.cjs +1 -1
  519. package/dist/plugin-sdk/audit-membership-runtime-CBUmGrl4.js +1 -1
  520. package/dist/plugin-sdk/audit-membership-runtime-ChlVgt2y.js +1 -1
  521. package/dist/plugin-sdk/audit-membership-runtime-DLRX7LR0.js +1 -1
  522. package/dist/plugin-sdk/audit-membership-runtime-DbJW5X3L.cjs +1 -1
  523. package/dist/plugin-sdk/audit-membership-runtime-Du9LAxDa.cjs +1 -1
  524. package/dist/plugin-sdk/audit-membership-runtime-DylNnj1m.js +1 -1
  525. package/dist/plugin-sdk/audit-membership-runtime-voi5sPwF.js +1 -1
  526. package/dist/plugin-sdk/audit-membership-runtime-yWYvSpgZ.cjs +1 -1
  527. package/dist/plugin-sdk/bluebubbles.cjs +1 -1
  528. package/dist/plugin-sdk/bluebubbles.js +1 -1
  529. package/dist/plugin-sdk/channel-activity-Bed876M5.js +1 -1
  530. package/dist/plugin-sdk/channel-activity-Bu8tAmGa.cjs +1 -1
  531. package/dist/plugin-sdk/channel-activity-C01Im_o1.js +1 -1
  532. package/dist/plugin-sdk/channel-activity-CIycjzUC.js +1 -1
  533. package/dist/plugin-sdk/channel-activity-Cdkn3O_i.js +1 -1
  534. package/dist/plugin-sdk/channel-activity-Cia2G3v5.js +1 -1
  535. package/dist/plugin-sdk/channel-activity-D6d2wU8H.cjs +1 -1
  536. package/dist/plugin-sdk/channel-activity-DNv7JLBx.cjs +1 -1
  537. package/dist/plugin-sdk/channel-activity-Df3DfYyZ.cjs +1 -1
  538. package/dist/plugin-sdk/channel-activity-Rut-HCfT.cjs +1 -1
  539. package/dist/plugin-sdk/channel-activity-mffNSQrX.cjs +1 -1
  540. package/dist/plugin-sdk/channel-activity-qjwFifkE.js +1 -1
  541. package/dist/plugin-sdk/channel-web-Ces_xx2T.js +1 -1
  542. package/dist/plugin-sdk/channel-web-CsmEnYD8.cjs +1 -1
  543. package/dist/plugin-sdk/channel-web-DtzNv49H.cjs +1 -1
  544. package/dist/plugin-sdk/channel-web-VEZVrMYU.js +1 -1
  545. package/dist/plugin-sdk/command-poll-backoff-4910Mpwp.js +1 -1
  546. package/dist/plugin-sdk/command-poll-backoff-BLJZzV5W.cjs +1 -1
  547. package/dist/plugin-sdk/command-poll-backoff-CUNcN0dv.cjs +1 -1
  548. package/dist/plugin-sdk/command-poll-backoff-Cww_r-24.js +1 -1
  549. package/dist/plugin-sdk/command-poll-backoff-D0lJhquZ.js +1 -1
  550. package/dist/plugin-sdk/command-poll-backoff-Glwt3wHa.cjs +1 -1
  551. package/dist/plugin-sdk/commands-registry-33H8WYTk.cjs +1 -1
  552. package/dist/plugin-sdk/commands-registry-BGdm1KdC.js +1 -1
  553. package/dist/plugin-sdk/commands-registry-BgV9i-bj.cjs +1 -1
  554. package/dist/plugin-sdk/commands-registry-BifdCfty.cjs +1 -1
  555. package/dist/plugin-sdk/commands-registry-CJLBIIIp.js +1 -1
  556. package/dist/plugin-sdk/commands-registry-CWK9ARbc.js +1 -1
  557. package/dist/plugin-sdk/commands-registry-CfVD1h8L.cjs +1 -1
  558. package/dist/plugin-sdk/commands-registry-CpG4pxrA.js +1 -1
  559. package/dist/plugin-sdk/commands-registry-D-AnIQWz.cjs +1 -1
  560. package/dist/plugin-sdk/commands-registry-DBI4cPqT.cjs +1 -1
  561. package/dist/plugin-sdk/commands-registry-DOBe9cWq.js +1 -1
  562. package/dist/plugin-sdk/commands-registry-DqemUyiv.js +1 -1
  563. package/dist/plugin-sdk/common-CEe87dmX.js +1 -1
  564. package/dist/plugin-sdk/common-CjMKHm2Z.cjs +1 -1
  565. package/dist/plugin-sdk/compat.cjs +1 -1
  566. package/dist/plugin-sdk/compat.js +1 -1
  567. package/dist/plugin-sdk/config-DT_csBcZ.cjs +1 -1
  568. package/dist/plugin-sdk/config-LR8GH3Ws.js +1 -1
  569. package/dist/plugin-sdk/copilot-proxy.cjs +1 -1
  570. package/dist/plugin-sdk/copilot-proxy.js +1 -1
  571. package/dist/plugin-sdk/core.cjs +1 -1
  572. package/dist/plugin-sdk/core.js +1 -1
  573. package/dist/plugin-sdk/deliver-AORlkcbD.cjs +1 -1
  574. package/dist/plugin-sdk/deliver-BiBFW5fm.cjs +1 -1
  575. package/dist/plugin-sdk/deliver-BpqEPwLO.cjs +1 -1
  576. package/dist/plugin-sdk/deliver-BvC6aUKM.js +1 -1
  577. package/dist/plugin-sdk/deliver-CT0AIuK1.cjs +1 -1
  578. package/dist/plugin-sdk/deliver-CmddcjtG.cjs +1 -1
  579. package/dist/plugin-sdk/deliver-DFz5N1Eh.js +1 -1
  580. package/dist/plugin-sdk/deliver-DcJWpoqf.cjs +1 -1
  581. package/dist/plugin-sdk/deliver-ILim6ANU.js +1 -1
  582. package/dist/plugin-sdk/deliver-QgxW9IxV.js +1 -1
  583. package/dist/plugin-sdk/deliver-cT-Q8v0h.js +1 -1
  584. package/dist/plugin-sdk/deliver-cu_NQTmb.js +1 -1
  585. package/dist/plugin-sdk/device-pair.cjs +1 -1
  586. package/dist/plugin-sdk/device-pair.js +1 -1
  587. package/dist/plugin-sdk/diagnostic-BCyE1aYH.cjs +1 -1
  588. package/dist/plugin-sdk/diagnostic-BFea3l_a.js +1 -1
  589. package/dist/plugin-sdk/diagnostic-BvR96WdC.js +1 -1
  590. package/dist/plugin-sdk/diagnostic-C0xDsk89.cjs +1 -1
  591. package/dist/plugin-sdk/diagnostic-CEPhLgsW.cjs +1 -1
  592. package/dist/plugin-sdk/diagnostic-CbLwUqTE.cjs +1 -1
  593. package/dist/plugin-sdk/diagnostic-CbfxoqI_.cjs +1 -1
  594. package/dist/plugin-sdk/diagnostic-DDwUPG1m.js +1 -1
  595. package/dist/plugin-sdk/diagnostic-DS_mKKOu.js +1 -1
  596. package/dist/plugin-sdk/diagnostic-DYpehqHU.cjs +1 -1
  597. package/dist/plugin-sdk/diagnostic-DkncnZ3G.js +1 -1
  598. package/dist/plugin-sdk/diagnostic-Dz8HPEDe.js +1 -1
  599. package/dist/plugin-sdk/diagnostics-otel.cjs +1 -1
  600. package/dist/plugin-sdk/diagnostics-otel.js +1 -1
  601. package/dist/plugin-sdk/diffs.cjs +1 -1
  602. package/dist/plugin-sdk/diffs.js +1 -1
  603. package/dist/plugin-sdk/discord.cjs +1 -1
  604. package/dist/plugin-sdk/discord.js +1 -1
  605. package/dist/plugin-sdk/dispatch-6m3206FH.js +1 -1
  606. package/dist/plugin-sdk/dispatch-BYZNaz0n.cjs +1 -1
  607. package/dist/plugin-sdk/dispatch-BahZCe-D.js +1 -1
  608. package/dist/plugin-sdk/dispatch-Bi3yeWxb.cjs +1 -1
  609. package/dist/plugin-sdk/dispatch-BjB_TqWy.cjs +1 -1
  610. package/dist/plugin-sdk/dispatch-CNR186B3.js +1 -1
  611. package/dist/plugin-sdk/dispatch-CStT30wi.cjs +1 -1
  612. package/dist/plugin-sdk/dispatch-CdZAW9dg.cjs +1 -1
  613. package/dist/plugin-sdk/dispatch-Ewg2Jgw9.js +1 -1
  614. package/dist/plugin-sdk/dispatch-HRTsdeCV.js +1 -1
  615. package/dist/plugin-sdk/feishu.cjs +1 -1
  616. package/dist/plugin-sdk/feishu.js +1 -1
  617. package/dist/plugin-sdk/fetch-7Iq9POda.js +1 -1
  618. package/dist/plugin-sdk/fetch-B1GR6-u4.js +1 -1
  619. package/dist/plugin-sdk/fetch-B27H-XCf.js +1 -1
  620. package/dist/plugin-sdk/fetch-BMYDLRWo.js +1 -1
  621. package/dist/plugin-sdk/fetch-BN9y3kTg.cjs +1 -1
  622. package/dist/plugin-sdk/fetch-BVEVk5YF.js +1 -1
  623. package/dist/plugin-sdk/fetch-BY6lVRlY.cjs +1 -1
  624. package/dist/plugin-sdk/fetch-Bi8krAaT.cjs +1 -1
  625. package/dist/plugin-sdk/fetch-BjXhwqrE.cjs +1 -1
  626. package/dist/plugin-sdk/fetch-BtZY623f.js +1 -1
  627. package/dist/plugin-sdk/fetch-C-HRWp5R.js +1 -1
  628. package/dist/plugin-sdk/fetch-C3LEMysf.js +1 -1
  629. package/dist/plugin-sdk/fetch-CCLWsYaQ.js +1 -1
  630. package/dist/plugin-sdk/fetch-CZewCAvu.cjs +1 -1
  631. package/dist/plugin-sdk/fetch-ClKErpni.cjs +1 -1
  632. package/dist/plugin-sdk/fetch-DBRI0sKI.js +1 -1
  633. package/dist/plugin-sdk/fetch-DQxuOB8o.cjs +1 -1
  634. package/dist/plugin-sdk/fetch-DUMEaqum.cjs +1 -1
  635. package/dist/plugin-sdk/fetch-DpwR_cJU.cjs +1 -1
  636. package/dist/plugin-sdk/fetch-J0IzopiJ.js +1 -1
  637. package/dist/plugin-sdk/fetch-guard-D8TdhTHU.js +1 -1
  638. package/dist/plugin-sdk/fetch-guard-DC_pFJEy.js +1 -1
  639. package/dist/plugin-sdk/fetch-guard-DDkd30BG.js +1 -1
  640. package/dist/plugin-sdk/fetch-guard-DELiFG5g.js +1 -1
  641. package/dist/plugin-sdk/fetch-guard-DIYjBRpq.cjs +1 -1
  642. package/dist/plugin-sdk/fetch-guard-DPVfELS7.js +1 -1
  643. package/dist/plugin-sdk/fetch-guard-Dpz6CnJY.cjs +1 -1
  644. package/dist/plugin-sdk/fetch-guard-DqNKwgHP.cjs +1 -1
  645. package/dist/plugin-sdk/fetch-guard-DqTxZ3G8.cjs +1 -1
  646. package/dist/plugin-sdk/fetch-guard-EoAitPe9.cjs +1 -1
  647. package/dist/plugin-sdk/fetch-guard-qfU6iTvp.js +1 -1
  648. package/dist/plugin-sdk/fetch-guard-u2Dt6P9i.cjs +1 -1
  649. package/dist/plugin-sdk/fetch-lw-aF17e.cjs +1 -1
  650. package/dist/plugin-sdk/fetch-timeout-6oZsqWxA.js +1 -1
  651. package/dist/plugin-sdk/fetch-timeout-BygUD0rd.cjs +1 -1
  652. package/dist/plugin-sdk/fetch-timeout-CLw1U7VS.js +1 -1
  653. package/dist/plugin-sdk/fetch-timeout-CX1w-9p4.cjs +1 -1
  654. package/dist/plugin-sdk/fetch-timeout-Coc9xyC3.cjs +1 -1
  655. package/dist/plugin-sdk/fetch-timeout-Cz6GuU_c.js +1 -1
  656. package/dist/plugin-sdk/fetch-timeout-DC8T2JCr.js +1 -1
  657. package/dist/plugin-sdk/fetch-timeout-DFDmks9T.cjs +1 -1
  658. package/dist/plugin-sdk/fetch-timeout-DkYpp08Q.js +1 -1
  659. package/dist/plugin-sdk/github-copilot-token-BHdMLLqf.cjs +1 -1
  660. package/dist/plugin-sdk/github-copilot-token-Bt4PduRB.js +1 -1
  661. package/dist/plugin-sdk/github-copilot-token-C1O2cBqk.cjs +1 -1
  662. package/dist/plugin-sdk/github-copilot-token-C1hiDugd.js +1 -1
  663. package/dist/plugin-sdk/github-copilot-token-C8j8_NjX.js +1 -1
  664. package/dist/plugin-sdk/github-copilot-token-CCrgp2py.cjs +1 -1
  665. package/dist/plugin-sdk/github-copilot-token-DoHgkI2r.cjs +1 -1
  666. package/dist/plugin-sdk/github-copilot-token-N8vnLZPw.js +1 -1
  667. package/dist/plugin-sdk/github-copilot-token-TMkfxxD2.cjs +1 -1
  668. package/dist/plugin-sdk/github-copilot-token-vKAKX6iE.js +1 -1
  669. package/dist/plugin-sdk/github-copilot-token-ylX_gawo.js +1 -1
  670. package/dist/plugin-sdk/github-copilot-token-zskwAEpd.cjs +1 -1
  671. package/dist/plugin-sdk/google-gemini-cli-auth.cjs +1 -1
  672. package/dist/plugin-sdk/google-gemini-cli-auth.js +1 -1
  673. package/dist/plugin-sdk/googlechat.cjs +1 -1
  674. package/dist/plugin-sdk/googlechat.js +1 -1
  675. package/dist/plugin-sdk/image-0OHO98b9.cjs +1 -1
  676. package/dist/plugin-sdk/image-B9SLKAOs.cjs +1 -1
  677. package/dist/plugin-sdk/image-BVnZq5Y4.js +1 -1
  678. package/dist/plugin-sdk/image-CKLAyhco.js +1 -1
  679. package/dist/plugin-sdk/image-DUHEJeBF.js +1 -1
  680. package/dist/plugin-sdk/image-DngxW2Nh.cjs +1 -1
  681. package/dist/plugin-sdk/image-DrPh2689.cjs +1 -1
  682. package/dist/plugin-sdk/image-ISWO0Dwt.js +1 -1
  683. package/dist/plugin-sdk/image-KfZYW6Lh.cjs +1 -1
  684. package/dist/plugin-sdk/image-YVlw68CK.js +1 -1
  685. package/dist/plugin-sdk/image-gehqJnV6.js +1 -1
  686. package/dist/plugin-sdk/image-jUYo-0eT.cjs +1 -1
  687. package/dist/plugin-sdk/imessage.cjs +1 -1
  688. package/dist/plugin-sdk/imessage.js +1 -1
  689. package/dist/plugin-sdk/index.cjs +1 -1
  690. package/dist/plugin-sdk/index.js +1 -1
  691. package/dist/plugin-sdk/ir-78toXVqC.cjs +1 -1
  692. package/dist/plugin-sdk/ir-A_TqKaXP.cjs +1 -1
  693. package/dist/plugin-sdk/ir-B0_rUT7m.js +1 -1
  694. package/dist/plugin-sdk/ir-B7agH4cQ.cjs +1 -1
  695. package/dist/plugin-sdk/ir-B9ap_YNW.cjs +1 -1
  696. package/dist/plugin-sdk/ir-BxKSHYao.cjs +1 -1
  697. package/dist/plugin-sdk/ir-BzZArF6l.js +1 -1
  698. package/dist/plugin-sdk/ir-CpkEWZD6.js +1 -1
  699. package/dist/plugin-sdk/ir-D4Dz-giw.cjs +1 -1
  700. package/dist/plugin-sdk/ir-DJ08DSkk.js +1 -1
  701. package/dist/plugin-sdk/ir-L2vhtuGx.js +1 -1
  702. package/dist/plugin-sdk/ir-ntSck5Kp.js +1 -1
  703. package/dist/plugin-sdk/irc.cjs +1 -1
  704. package/dist/plugin-sdk/irc.js +1 -1
  705. package/dist/plugin-sdk/keyed-async-queue.cjs +1 -1
  706. package/dist/plugin-sdk/keyed-async-queue.js +1 -1
  707. package/dist/plugin-sdk/line.cjs +1 -1
  708. package/dist/plugin-sdk/line.js +1 -1
  709. package/dist/plugin-sdk/llm-task.cjs +1 -1
  710. package/dist/plugin-sdk/llm-task.js +1 -1
  711. package/dist/plugin-sdk/load-options-B9Ss5YOO.js +1 -1
  712. package/dist/plugin-sdk/load-options-BOfn6Zgo.cjs +1 -1
  713. package/dist/plugin-sdk/load-options-BXvm8HVv.js +1 -1
  714. package/dist/plugin-sdk/load-options-Bb7u8yZz.cjs +1 -1
  715. package/dist/plugin-sdk/load-options-BcSg1ODN.js +1 -1
  716. package/dist/plugin-sdk/load-options-NqnXJ-Nh.cjs +1 -1
  717. package/dist/plugin-sdk/lobster.cjs +1 -1
  718. package/dist/plugin-sdk/lobster.js +1 -1
  719. package/dist/plugin-sdk/local-roots-B0zm186S.js +1 -1
  720. package/dist/plugin-sdk/local-roots-B4Uy4kG3.cjs +1 -1
  721. package/dist/plugin-sdk/local-roots-CM1R1Ncr.cjs +1 -1
  722. package/dist/plugin-sdk/local-roots-CW78ZeZV.js +1 -1
  723. package/dist/plugin-sdk/local-roots-CnsaE7a_.js +1 -1
  724. package/dist/plugin-sdk/local-roots-D1k-fAlE.cjs +1 -1
  725. package/dist/plugin-sdk/local-roots-DQ_vfJPK.js +1 -1
  726. package/dist/plugin-sdk/local-roots-DYlB1au6.cjs +1 -1
  727. package/dist/plugin-sdk/local-roots-H4-t0qG_.js +1 -1
  728. package/dist/plugin-sdk/local-roots-SCyeUfM3.cjs +1 -1
  729. package/dist/plugin-sdk/local-roots-l4PqCmiU.js +1 -1
  730. package/dist/plugin-sdk/local-roots-xHoEq1Fq.cjs +1 -1
  731. package/dist/plugin-sdk/logger-6O6OsYBL.cjs +1 -1
  732. package/dist/plugin-sdk/logger-BlddiV_d.cjs +1 -1
  733. package/dist/plugin-sdk/logger-Bm93ZKOk.cjs +1 -1
  734. package/dist/plugin-sdk/logger-BtrWb0dj.js +1 -1
  735. package/dist/plugin-sdk/logger-C210xuWx.js +1 -1
  736. package/dist/plugin-sdk/logger-DJGHvDbX.js +1 -1
  737. package/dist/plugin-sdk/logger-DPlqYkRm.cjs +1 -1
  738. package/dist/plugin-sdk/logger-DUYnS-W3.cjs +1 -1
  739. package/dist/plugin-sdk/logger-DwWqfo66.js +1 -1
  740. package/dist/plugin-sdk/logger-vBDTZWl3.js +1 -1
  741. package/dist/plugin-sdk/login-BN1TsFp4.cjs +1 -1
  742. package/dist/plugin-sdk/login-BXUtcSnB.cjs +1 -1
  743. package/dist/plugin-sdk/login-BoMH2iJT.js +1 -1
  744. package/dist/plugin-sdk/login-BtT7yRJO.js +1 -1
  745. package/dist/plugin-sdk/login-COzybMRK.js +1 -1
  746. package/dist/plugin-sdk/login-Cw1jFbel.cjs +1 -1
  747. package/dist/plugin-sdk/login-DEmpr5YK.js +1 -1
  748. package/dist/plugin-sdk/login-Dln00cFs.cjs +1 -1
  749. package/dist/plugin-sdk/login-S2Fe5n5K.cjs +1 -1
  750. package/dist/plugin-sdk/login-TieaF0ts.cjs +1 -1
  751. package/dist/plugin-sdk/login-ZQK4uJLw.js +1 -1
  752. package/dist/plugin-sdk/login-fKxJv0_F.js +1 -1
  753. package/dist/plugin-sdk/login-qr-1ilmySGx.js +1 -1
  754. package/dist/plugin-sdk/login-qr-B0ZSZaNI.js +1 -1
  755. package/dist/plugin-sdk/login-qr-B2P2Ky4j.js +1 -1
  756. package/dist/plugin-sdk/login-qr-B2U87iU8.js +1 -1
  757. package/dist/plugin-sdk/login-qr-B4x_eWI_.js +1 -1
  758. package/dist/plugin-sdk/login-qr-BIaJB24t.cjs +1 -1
  759. package/dist/plugin-sdk/login-qr-BMl5Beq2.cjs +1 -1
  760. package/dist/plugin-sdk/login-qr-Bkm3QorK.cjs +1 -1
  761. package/dist/plugin-sdk/login-qr-ClL8FMAJ.cjs +1 -1
  762. package/dist/plugin-sdk/login-qr-DFVK1lg-.js +1 -1
  763. package/dist/plugin-sdk/login-qr-DhieI9fL.cjs +1 -1
  764. package/dist/plugin-sdk/login-qr-DyQT1QnE.cjs +1 -1
  765. package/dist/plugin-sdk/manager-0tvX3Z_N.cjs +1 -1
  766. package/dist/plugin-sdk/manager-8uylP7PH.cjs +1 -1
  767. package/dist/plugin-sdk/manager-B6hWglXe.js +1 -1
  768. package/dist/plugin-sdk/manager-BGoKN9ur.js +1 -1
  769. package/dist/plugin-sdk/manager-BRP1lzb6.js +1 -1
  770. package/dist/plugin-sdk/manager-BeLNhsXC.cjs +1 -1
  771. package/dist/plugin-sdk/manager-BnytMgmq.js +1 -1
  772. package/dist/plugin-sdk/manager-BoMQeM1I.cjs +1 -1
  773. package/dist/plugin-sdk/manager-CYZY9vcM.js +1 -1
  774. package/dist/plugin-sdk/manager-DCDy2V1U.cjs +1 -1
  775. package/dist/plugin-sdk/manager-DE7sDip8.cjs +1 -1
  776. package/dist/plugin-sdk/manager-PwgQZNK1.js +1 -1
  777. package/dist/plugin-sdk/matrix.cjs +1 -1
  778. package/dist/plugin-sdk/matrix.js +1 -1
  779. package/dist/plugin-sdk/mattermost.cjs +1 -1
  780. package/dist/plugin-sdk/mattermost.js +1 -1
  781. package/dist/plugin-sdk/memory-core.cjs +1 -1
  782. package/dist/plugin-sdk/memory-core.js +1 -1
  783. package/dist/plugin-sdk/minimax-portal-auth.cjs +1 -1
  784. package/dist/plugin-sdk/minimax-portal-auth.js +1 -1
  785. package/dist/plugin-sdk/model-auth-BgS7ynQw.cjs +1 -1
  786. package/dist/plugin-sdk/model-auth-CKlA2xRB.cjs +1 -1
  787. package/dist/plugin-sdk/model-auth-CLnFIqcf.cjs +1 -1
  788. package/dist/plugin-sdk/model-auth-D7YupJDS.js +1 -1
  789. package/dist/plugin-sdk/model-auth-eNVBeC-B.js +1 -1
  790. package/dist/plugin-sdk/model-auth-fJrNIbke.cjs +1 -1
  791. package/dist/plugin-sdk/model-auth-g6eGgTwR.js +1 -1
  792. package/dist/plugin-sdk/model-auth-wcxJptQX.js +1 -1
  793. package/dist/plugin-sdk/model-selection-4ExiFkaW.js +1 -1
  794. package/dist/plugin-sdk/model-selection-CZY_x2-a.cjs +1 -1
  795. package/dist/plugin-sdk/msteams.cjs +1 -1
  796. package/dist/plugin-sdk/msteams.js +1 -1
  797. package/dist/plugin-sdk/nextcloud-talk.cjs +1 -1
  798. package/dist/plugin-sdk/nextcloud-talk.js +1 -1
  799. package/dist/plugin-sdk/nostr.cjs +1 -1
  800. package/dist/plugin-sdk/nostr.js +1 -1
  801. package/dist/plugin-sdk/outbound-2VVSR_d4.js +1 -1
  802. package/dist/plugin-sdk/outbound-B03BQa7T.cjs +1 -1
  803. package/dist/plugin-sdk/outbound-BE8CJ9c_.js +1 -1
  804. package/dist/plugin-sdk/outbound-BWtGs0dn.cjs +1 -1
  805. package/dist/plugin-sdk/outbound-BrD0UsX0.js +1 -1
  806. package/dist/plugin-sdk/outbound-Bvu4LbQx.js +1 -1
  807. package/dist/plugin-sdk/outbound-C5rNt-8z.cjs +1 -1
  808. package/dist/plugin-sdk/outbound-C6BJCoYf.cjs +1 -1
  809. package/dist/plugin-sdk/outbound-Cgc0JJtB.js +1 -1
  810. package/dist/plugin-sdk/outbound-DAHIkpiA.cjs +1 -1
  811. package/dist/plugin-sdk/outbound-DnO_udAm.cjs +1 -1
  812. package/dist/plugin-sdk/outbound-UAHsCNyW.js +1 -1
  813. package/dist/plugin-sdk/outbound-attachment-0QahtSQB.cjs +1 -1
  814. package/dist/plugin-sdk/outbound-attachment-8qvAj1MK.js +1 -1
  815. package/dist/plugin-sdk/outbound-attachment-B6SJy_CG.js +1 -1
  816. package/dist/plugin-sdk/outbound-attachment-BVdSGifg.js +1 -1
  817. package/dist/plugin-sdk/outbound-attachment-C-QqSQ79.cjs +1 -1
  818. package/dist/plugin-sdk/outbound-attachment-CYGrnygD.cjs +1 -1
  819. package/dist/plugin-sdk/outbound-attachment-CtA5eBgj.cjs +1 -1
  820. package/dist/plugin-sdk/outbound-attachment-D8Ng5uVX.cjs +1 -1
  821. package/dist/plugin-sdk/outbound-attachment-DS0S0NLK.js +1 -1
  822. package/dist/plugin-sdk/outbound-attachment-Ds2XsjQl.js +1 -1
  823. package/dist/plugin-sdk/outbound-attachment-acB4qID1.js +1 -1
  824. package/dist/plugin-sdk/outbound-attachment-x4Q2SVIA.cjs +1 -1
  825. package/dist/plugin-sdk/paths-BPlgbwrb.cjs +1 -1
  826. package/dist/plugin-sdk/paths-Bcdg3ma0.cjs +1 -1
  827. package/dist/plugin-sdk/paths-BpQOWYiT.js +1 -1
  828. package/dist/plugin-sdk/paths-BvlJvmRS.cjs +1 -1
  829. package/dist/plugin-sdk/paths-CIcxeNL-.cjs +1 -1
  830. package/dist/plugin-sdk/paths-CXgWvWAM.js +1 -1
  831. package/dist/plugin-sdk/paths-Chp3zwtq.cjs +1 -1
  832. package/dist/plugin-sdk/paths-CnHSNSeR.js +1 -1
  833. package/dist/plugin-sdk/paths-Cqca1YmF.cjs +1 -1
  834. package/dist/plugin-sdk/paths-CtrEseGU.js +1 -1
  835. package/dist/plugin-sdk/paths-D55o_j8-.js +1 -1
  836. package/dist/plugin-sdk/paths-D90l3h_o.cjs +1 -1
  837. package/dist/plugin-sdk/paths-DaRoqzBQ.js +1 -1
  838. package/dist/plugin-sdk/paths-Dd7r1qlB.cjs +1 -1
  839. package/dist/plugin-sdk/paths-DhSjTRMz.js +1 -1
  840. package/dist/plugin-sdk/paths-Do0djuaj.js +1 -1
  841. package/dist/plugin-sdk/paths-J4JUiRsa.js +1 -1
  842. package/dist/plugin-sdk/paths-cBAF6Bj0.js +1 -1
  843. package/dist/plugin-sdk/paths-piJASC5k.js +1 -1
  844. package/dist/plugin-sdk/paths-rO4ehkyU.js +1 -1
  845. package/dist/plugin-sdk/pi-model-discovery--UcCzdQg.js +1 -1
  846. package/dist/plugin-sdk/pi-model-discovery-Bi4dKtW0.cjs +1 -1
  847. package/dist/plugin-sdk/pi-model-discovery-CCK2Ppj9.js +1 -1
  848. package/dist/plugin-sdk/pi-model-discovery-CRSZ0OFi.js +1 -1
  849. package/dist/plugin-sdk/pi-model-discovery-Cx_r4FGY.js +1 -1
  850. package/dist/plugin-sdk/pi-model-discovery-D3JQMjAa.cjs +1 -1
  851. package/dist/plugin-sdk/pi-model-discovery-DN1RHetG.cjs +1 -1
  852. package/dist/plugin-sdk/pi-model-discovery-DVFSU0-f.cjs +1 -1
  853. package/dist/plugin-sdk/pi-model-discovery-DWMAAhA-.cjs +1 -1
  854. package/dist/plugin-sdk/pi-model-discovery-DYOHzCjs.js +1 -1
  855. package/dist/plugin-sdk/pi-model-discovery-DdSVvbQ5.cjs +1 -1
  856. package/dist/plugin-sdk/pi-model-discovery-DejkxBol.js +1 -1
  857. package/dist/plugin-sdk/pi-model-discovery-SmVAFMj_.cjs +1 -1
  858. package/dist/plugin-sdk/pi-model-discovery-ma8st1Ek.js +1 -1
  859. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-B2WodYBY.cjs +1 -1
  860. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BC114tUb.js +1 -1
  861. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BF6jP1nM.js +1 -1
  862. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Beg-U7Z-.cjs +1 -1
  863. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-BkEYsSLL.js +1 -1
  864. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-C21sWtkh.js +1 -1
  865. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CKkgBGIj.cjs +1 -1
  866. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-CNun__L-.js +1 -1
  867. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Clulhv2X.cjs +1 -1
  868. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-DvwL5in9.cjs +1 -1
  869. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-FnzjmZqP.js +1 -1
  870. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-Rq5y0QJ2.cjs +1 -1
  871. package/dist/plugin-sdk/polls-BuaJuIpV.cjs +1 -1
  872. package/dist/plugin-sdk/polls-CBAGZuJ6.js +1 -1
  873. package/dist/plugin-sdk/polls-CSKMbBIS.js +1 -1
  874. package/dist/plugin-sdk/polls-D0wY0FvT.cjs +1 -1
  875. package/dist/plugin-sdk/polls-PGxiE05J.js +1 -1
  876. package/dist/plugin-sdk/polls-yWqSCEP0.cjs +1 -1
  877. package/dist/plugin-sdk/proxy-env-B765haXA.js +1 -1
  878. package/dist/plugin-sdk/proxy-env-Bcl14j2_.cjs +1 -1
  879. package/dist/plugin-sdk/proxy-env-BlrHtJWH.js +1 -1
  880. package/dist/plugin-sdk/proxy-env-D48qBPAr.cjs +1 -1
  881. package/dist/plugin-sdk/proxy-env-DGzNnnJh.js +1 -1
  882. package/dist/plugin-sdk/proxy-env-DQoJjkWE.cjs +1 -1
  883. package/dist/plugin-sdk/proxy-env-DWw9TnOj.cjs +1 -1
  884. package/dist/plugin-sdk/proxy-env-MEjSyzTr.js +1 -1
  885. package/dist/plugin-sdk/proxy-env-a590sPAz.cjs +1 -1
  886. package/dist/plugin-sdk/proxy-env-k93igu7v.cjs +1 -1
  887. package/dist/plugin-sdk/proxy-env-m9eG3uZN.js +1 -1
  888. package/dist/plugin-sdk/proxy-env-t6hcaFqC.js +1 -1
  889. package/dist/plugin-sdk/proxy-fetch-B9aXJVe-.js +1 -1
  890. package/dist/plugin-sdk/proxy-fetch-BaA3JYgW.cjs +1 -1
  891. package/dist/plugin-sdk/proxy-fetch-BwXFVsHE.cjs +1 -1
  892. package/dist/plugin-sdk/proxy-fetch-BzcKzknk.cjs +1 -1
  893. package/dist/plugin-sdk/proxy-fetch-CYVChsKE.js +1 -1
  894. package/dist/plugin-sdk/proxy-fetch-ClOb2LUH.js +1 -1
  895. package/dist/plugin-sdk/proxy-fetch-DH7VIiBH.cjs +1 -1
  896. package/dist/plugin-sdk/proxy-fetch-DPOhfrou.cjs +1 -1
  897. package/dist/plugin-sdk/proxy-fetch-DXt2R_Z5.js +1 -1
  898. package/dist/plugin-sdk/proxy-fetch-Del551nu.js +1 -1
  899. package/dist/plugin-sdk/proxy-fetch-YCVHz7Rl.js +1 -1
  900. package/dist/plugin-sdk/proxy-fetch-qbrYAz8k.cjs +1 -1
  901. package/dist/plugin-sdk/pw-ai-3piACPqP.cjs +1 -1
  902. package/dist/plugin-sdk/pw-ai-8dajXBkZ.js +1 -1
  903. package/dist/plugin-sdk/pw-ai-B7mrBDW5.js +1 -1
  904. package/dist/plugin-sdk/pw-ai-BLD7x-3a.js +1 -1
  905. package/dist/plugin-sdk/pw-ai-BYmANcaC.cjs +1 -1
  906. package/dist/plugin-sdk/pw-ai-C1rVW06B.cjs +1 -1
  907. package/dist/plugin-sdk/pw-ai-CCDvaBUm.cjs +1 -1
  908. package/dist/plugin-sdk/pw-ai-CVYUOcKM.js +1 -1
  909. package/dist/plugin-sdk/pw-ai-DBg5CCXp.cjs +1 -1
  910. package/dist/plugin-sdk/pw-ai-DY11CCd3.cjs +1 -1
  911. package/dist/plugin-sdk/pw-ai-Kf2RyA25.js +1 -1
  912. package/dist/plugin-sdk/pw-ai-f5yF3n3t.js +1 -1
  913. package/dist/plugin-sdk/qmd-manager-B3xNbdye.cjs +1 -1
  914. package/dist/plugin-sdk/qmd-manager-BMyDNBPi.js +1 -1
  915. package/dist/plugin-sdk/qmd-manager-BZhiv_zq.cjs +1 -1
  916. package/dist/plugin-sdk/qmd-manager-C3uVDbhW.js +1 -1
  917. package/dist/plugin-sdk/qmd-manager-CW46NrS-.cjs +1 -1
  918. package/dist/plugin-sdk/qmd-manager-C_e04BNg.js +1 -1
  919. package/dist/plugin-sdk/qmd-manager-CczVoslK.cjs +1 -1
  920. package/dist/plugin-sdk/qmd-manager-CzLKqPmR.js +1 -1
  921. package/dist/plugin-sdk/qmd-manager-DFh8b5N-.cjs +1 -1
  922. package/dist/plugin-sdk/qmd-manager-DXLfZZMI.js +1 -1
  923. package/dist/plugin-sdk/qmd-manager-FL9fAfNo.cjs +1 -1
  924. package/dist/plugin-sdk/qmd-manager-fWxbGqzk.js +1 -1
  925. package/dist/plugin-sdk/query-expansion-0zYzKrrd.cjs +1 -1
  926. package/dist/plugin-sdk/query-expansion-BYSjmpkV.cjs +1 -1
  927. package/dist/plugin-sdk/query-expansion-CAboqtWr.js +1 -1
  928. package/dist/plugin-sdk/query-expansion-C_DnhmUy.js +1 -1
  929. package/dist/plugin-sdk/query-expansion-Cb2vnF6y.js +1 -1
  930. package/dist/plugin-sdk/query-expansion-DCeqywxh.cjs +1 -1
  931. package/dist/plugin-sdk/query-expansion-DF4LMxRQ.js +1 -1
  932. package/dist/plugin-sdk/query-expansion-DKJkqmNM.cjs +1 -1
  933. package/dist/plugin-sdk/query-expansion-DO2CFW4z.cjs +1 -1
  934. package/dist/plugin-sdk/query-expansion-DyCDaZbL.js +1 -1
  935. package/dist/plugin-sdk/query-expansion-cpXCyoDy.cjs +1 -1
  936. package/dist/plugin-sdk/query-expansion-r_iXkNzt.js +1 -1
  937. package/dist/plugin-sdk/qwen-portal-auth.cjs +1 -1
  938. package/dist/plugin-sdk/qwen-portal-auth.js +1 -1
  939. package/dist/plugin-sdk/render-6fCdtAr6.cjs +1 -1
  940. package/dist/plugin-sdk/render-CBsnn-2A.js +1 -1
  941. package/dist/plugin-sdk/render-CzHaQB0d.cjs +1 -1
  942. package/dist/plugin-sdk/render-DGmfCIRG.js +1 -1
  943. package/dist/plugin-sdk/render-DhTJXP1U.js +1 -1
  944. package/dist/plugin-sdk/render-Djx15dPh.js +1 -1
  945. package/dist/plugin-sdk/render-DxBO2Blp.cjs +1 -1
  946. package/dist/plugin-sdk/render-g5VlmgpF.cjs +1 -1
  947. package/dist/plugin-sdk/reply-BrHB7v5V.cjs +1 -1
  948. package/dist/plugin-sdk/reply-Clex4c2R.js +1 -1
  949. package/dist/plugin-sdk/resolve-outbound-target-BHLQMMp-.cjs +1 -1
  950. package/dist/plugin-sdk/resolve-outbound-target-Cvz2WXAk.cjs +1 -1
  951. package/dist/plugin-sdk/resolve-outbound-target-DDqGniMw.js +1 -1
  952. package/dist/plugin-sdk/resolve-outbound-target-DEpmpEep.js +1 -1
  953. package/dist/plugin-sdk/send--HeMLLzj.js +1 -1
  954. package/dist/plugin-sdk/send-2IhtEEzb.js +1 -1
  955. package/dist/plugin-sdk/send-9tPLnqkc.js +1 -1
  956. package/dist/plugin-sdk/send-B-exJfkg.js +1 -1
  957. package/dist/plugin-sdk/send-B4kzPtcN.js +1 -1
  958. package/dist/plugin-sdk/send-BCSkdYN6.cjs +1 -1
  959. package/dist/plugin-sdk/send-BEmZxBcF.js +1 -1
  960. package/dist/plugin-sdk/send-BHvZIrbJ.cjs +1 -1
  961. package/dist/plugin-sdk/send-BLbCBxeF.js +1 -1
  962. package/dist/plugin-sdk/send-BOkABdQu.cjs +1 -1
  963. package/dist/plugin-sdk/send-BPNd63Qs.js +1 -1
  964. package/dist/plugin-sdk/send-BVAm6Zbr.cjs +1 -1
  965. package/dist/plugin-sdk/send-B_619b3s.js +1 -1
  966. package/dist/plugin-sdk/send-BcuylzbX.js +1 -1
  967. package/dist/plugin-sdk/send-BdFvK9Wc2.js +1 -1
  968. package/dist/plugin-sdk/send-Bh-J7XWZ.cjs +1 -1
  969. package/dist/plugin-sdk/send-BkREPc90.cjs +1 -1
  970. package/dist/plugin-sdk/send-Bp4f-KJu.cjs +1 -1
  971. package/dist/plugin-sdk/send-BtF36kYb.js +1 -1
  972. package/dist/plugin-sdk/send-C6S8tkTA.cjs +1 -1
  973. package/dist/plugin-sdk/send-CDQF_izk.js +1 -1
  974. package/dist/plugin-sdk/send-CF3qas-K.js +1 -1
  975. package/dist/plugin-sdk/send-CFKQX2Wo.js +1 -1
  976. package/dist/plugin-sdk/send-CIP1u5a-.js +1 -1
  977. package/dist/plugin-sdk/send-CIxh7PV0.cjs +1 -1
  978. package/dist/plugin-sdk/send-CJJdcDHX.js +1 -1
  979. package/dist/plugin-sdk/send-COtvydDt.cjs +1 -1
  980. package/dist/plugin-sdk/send-CPwh7tRu.js +1 -1
  981. package/dist/plugin-sdk/send-CRnIqXN9.cjs +1 -1
  982. package/dist/plugin-sdk/send-CSqipUeV.cjs +1 -1
  983. package/dist/plugin-sdk/send-Chfe8tPY.js +1 -1
  984. package/dist/plugin-sdk/send-ClMvdjfg.js +1 -1
  985. package/dist/plugin-sdk/send-CmoJSYhT.js +1 -1
  986. package/dist/plugin-sdk/send-Cs5jSTw0.cjs +1 -1
  987. package/dist/plugin-sdk/send-D-6Et_9H.js +1 -1
  988. package/dist/plugin-sdk/send-D13uFnzH.cjs +1 -1
  989. package/dist/plugin-sdk/send-D3eT0F4N.cjs +1 -1
  990. package/dist/plugin-sdk/send-DAtg_VHa.js +1 -1
  991. package/dist/plugin-sdk/send-DCF59ijQ.cjs +1 -1
  992. package/dist/plugin-sdk/send-DN2xic3w.cjs +1 -1
  993. package/dist/plugin-sdk/send-DOjSTB6D.cjs +1 -1
  994. package/dist/plugin-sdk/send-DavwL7cF.js +1 -1
  995. package/dist/plugin-sdk/send-Dbmn1rgD.cjs +1 -1
  996. package/dist/plugin-sdk/send-DhfDqcwc.cjs +1 -1
  997. package/dist/plugin-sdk/send-DsDCrJWq.js +1 -1
  998. package/dist/plugin-sdk/send-DyR5Lpl-.js +1 -1
  999. package/dist/plugin-sdk/send-DyzuwDjE.js +1 -1
  1000. package/dist/plugin-sdk/send-GtphEa1b.cjs +1 -1
  1001. package/dist/plugin-sdk/send-HZNY_u3L.cjs +1 -1
  1002. package/dist/plugin-sdk/send-IM-76QZu.js +1 -1
  1003. package/dist/plugin-sdk/send-IqcgAO8b.cjs +1 -1
  1004. package/dist/plugin-sdk/send-OQcuL9tP.js +1 -1
  1005. package/dist/plugin-sdk/send-_92aOzWU.cjs +1 -1
  1006. package/dist/plugin-sdk/send-h_kE-cAK.js +1 -1
  1007. package/dist/plugin-sdk/send-jOMdGt0L.cjs +1 -1
  1008. package/dist/plugin-sdk/send-mZ_d-t_3.cjs +1 -1
  1009. package/dist/plugin-sdk/send-puyUta4_.cjs +1 -1
  1010. package/dist/plugin-sdk/send-t5U34FhY.cjs +1 -1
  1011. package/dist/plugin-sdk/send-tvw8j-Se.cjs +1 -1
  1012. package/dist/plugin-sdk/send-z1vaCgF3.cjs +1 -1
  1013. package/dist/plugin-sdk/session--K1m5v7m.js +1 -1
  1014. package/dist/plugin-sdk/session-B1DJ45om.js +1 -1
  1015. package/dist/plugin-sdk/session-B80NWO1m.js +1 -1
  1016. package/dist/plugin-sdk/session-BKPBr445.js +1 -1
  1017. package/dist/plugin-sdk/session-BQLjsBwL.cjs +1 -1
  1018. package/dist/plugin-sdk/session-BZHltxdM.js +1 -1
  1019. package/dist/plugin-sdk/session-Bt5yI-VW.cjs +1 -1
  1020. package/dist/plugin-sdk/session-CC1GqwiM.cjs +1 -1
  1021. package/dist/plugin-sdk/session-C_yqyp3P.cjs +1 -1
  1022. package/dist/plugin-sdk/session-ClISxvtJ.js +1 -1
  1023. package/dist/plugin-sdk/session-D4nn-nXX.cjs +1 -1
  1024. package/dist/plugin-sdk/session-DOA4CJgj.cjs +1 -1
  1025. package/dist/plugin-sdk/sessions-BwTjGneU.js +1 -1
  1026. package/dist/plugin-sdk/sessions-CJbvfO6m.cjs +1 -1
  1027. package/dist/plugin-sdk/signal.cjs +1 -1
  1028. package/dist/plugin-sdk/signal.js +1 -1
  1029. package/dist/plugin-sdk/skill-commands-5WGHyr3h.cjs +1 -1
  1030. package/dist/plugin-sdk/skill-commands-BZlF3g3o.js +1 -1
  1031. package/dist/plugin-sdk/skill-commands-BmBQSmNH.js +1 -1
  1032. package/dist/plugin-sdk/skill-commands-CD4GQXTR.cjs +1 -1
  1033. package/dist/plugin-sdk/skill-commands-CGOPOT-r.js +1 -1
  1034. package/dist/plugin-sdk/skill-commands-CM9ziCQY.cjs +1 -1
  1035. package/dist/plugin-sdk/skill-commands-CVsU5rEy.js +1 -1
  1036. package/dist/plugin-sdk/skill-commands-DNPxE-kc.cjs +1 -1
  1037. package/dist/plugin-sdk/skill-commands-DcgKCVDt.js +1 -1
  1038. package/dist/plugin-sdk/skill-commands-IAwkVeOe.js +1 -1
  1039. package/dist/plugin-sdk/skill-commands-ZyLkXbR_.cjs +1 -1
  1040. package/dist/plugin-sdk/skill-commands-xJWQthd5.cjs +1 -1
  1041. package/dist/plugin-sdk/slack.cjs +1 -1
  1042. package/dist/plugin-sdk/slack.js +1 -1
  1043. package/dist/plugin-sdk/synology-chat.cjs +1 -1
  1044. package/dist/plugin-sdk/synology-chat.js +1 -1
  1045. package/dist/plugin-sdk/tables-BZUVdTR-.cjs +1 -1
  1046. package/dist/plugin-sdk/tables-Bbodvj_s.cjs +1 -1
  1047. package/dist/plugin-sdk/tables-C5b2CtNw.cjs +1 -1
  1048. package/dist/plugin-sdk/tables-C6TX2QvW.js +1 -1
  1049. package/dist/plugin-sdk/tables-Cz5osenc.js +1 -1
  1050. package/dist/plugin-sdk/tables-DBSeZ07-.cjs +1 -1
  1051. package/dist/plugin-sdk/tables-DLSXY2-Q.js +1 -1
  1052. package/dist/plugin-sdk/tables-DQad-z2Z.cjs +1 -1
  1053. package/dist/plugin-sdk/tables-DYuLwL1d.js +1 -1
  1054. package/dist/plugin-sdk/tables-D_J655yN.js +1 -1
  1055. package/dist/plugin-sdk/tables-_vqK8P0T.js +1 -1
  1056. package/dist/plugin-sdk/tables-bSgb8OzP.cjs +1 -1
  1057. package/dist/plugin-sdk/target-errors-B-mJ4s4b.cjs +1 -1
  1058. package/dist/plugin-sdk/target-errors-BAHAHc8f.js +1 -1
  1059. package/dist/plugin-sdk/target-errors-BKruhz8r.js +1 -1
  1060. package/dist/plugin-sdk/target-errors-BbQBR5da.js +1 -1
  1061. package/dist/plugin-sdk/target-errors-BjgLCOTm.cjs +1 -1
  1062. package/dist/plugin-sdk/target-errors-CQbFkOae.js +1 -1
  1063. package/dist/plugin-sdk/target-errors-C_HYvghh.cjs +1 -1
  1064. package/dist/plugin-sdk/target-errors-CaaKhU6m.js +1 -1
  1065. package/dist/plugin-sdk/target-errors-QWTCk98R.cjs +1 -1
  1066. package/dist/plugin-sdk/target-errors-oh0u5K2w.cjs +1 -1
  1067. package/dist/plugin-sdk/targets-BSc11Uk8.cjs +1 -1
  1068. package/dist/plugin-sdk/targets-BSkiizml.js +1 -1
  1069. package/dist/plugin-sdk/targets-CBI0xqve.cjs +1 -1
  1070. package/dist/plugin-sdk/targets-CL5fYQi7.js +1 -1
  1071. package/dist/plugin-sdk/targets-CUZWrFrm.cjs +1 -1
  1072. package/dist/plugin-sdk/targets-CVEYTFPQ.js +1 -1
  1073. package/dist/plugin-sdk/targets-Co2R6K14.cjs +1 -1
  1074. package/dist/plugin-sdk/targets-CrkJkzil.js +1 -1
  1075. package/dist/plugin-sdk/targets-D-m7SV9x.cjs +1 -1
  1076. package/dist/plugin-sdk/targets-D8HTxbo4.js +1 -1
  1077. package/dist/plugin-sdk/targets-DcGNB9nk.cjs +1 -1
  1078. package/dist/plugin-sdk/targets-Dn9gDiEw.js +1 -1
  1079. package/dist/plugin-sdk/targets-X28mff4s.cjs +1 -1
  1080. package/dist/plugin-sdk/targets-uycXZ8vQ.js +1 -1
  1081. package/dist/plugin-sdk/telegram.cjs +1 -1
  1082. package/dist/plugin-sdk/telegram.js +1 -1
  1083. package/dist/plugin-sdk/test-utils.cjs +1 -1
  1084. package/dist/plugin-sdk/test-utils.js +1 -1
  1085. package/dist/plugin-sdk/tlon.cjs +1 -1
  1086. package/dist/plugin-sdk/tlon.js +1 -1
  1087. package/dist/plugin-sdk/tokens-AAdZjj0M.js +1 -1
  1088. package/dist/plugin-sdk/tokens-B20KNIDD.js +1 -1
  1089. package/dist/plugin-sdk/tokens-B8ys7Q2e.js +1 -1
  1090. package/dist/plugin-sdk/tokens-BPc1fcZ3.js +1 -1
  1091. package/dist/plugin-sdk/tokens-BqABmXSe.js +1 -1
  1092. package/dist/plugin-sdk/tokens-CXsPDJTr.cjs +1 -1
  1093. package/dist/plugin-sdk/tokens-CnB4dJmp.cjs +1 -1
  1094. package/dist/plugin-sdk/tokens-CytSl1X8.cjs +1 -1
  1095. package/dist/plugin-sdk/tokens-DgPZk2Uu.js +1 -1
  1096. package/dist/plugin-sdk/tokens-Dq2wDF3_.cjs +1 -1
  1097. package/dist/plugin-sdk/tokens-DtrljGtQ.cjs +1 -1
  1098. package/dist/plugin-sdk/tokens-g5KWvWhD.cjs +1 -1
  1099. package/dist/plugin-sdk/twitch.cjs +1 -1
  1100. package/dist/plugin-sdk/twitch.js +1 -1
  1101. package/dist/plugin-sdk/utils-BJtJR72k.js +1 -1
  1102. package/dist/plugin-sdk/utils-PPIvU9qw.cjs +1 -1
  1103. package/dist/plugin-sdk/voice-call.cjs +1 -1
  1104. package/dist/plugin-sdk/voice-call.js +1 -1
  1105. package/dist/plugin-sdk/web-B4A8zBP9.cjs +1 -1
  1106. package/dist/plugin-sdk/web-BKKx3jqf.cjs +1 -1
  1107. package/dist/plugin-sdk/web-BTBgpaEi.js +1 -1
  1108. package/dist/plugin-sdk/web-BfjArU7g.js +1 -1
  1109. package/dist/plugin-sdk/web-C7KhecaH.cjs +1 -1
  1110. package/dist/plugin-sdk/web-CFMrBQv7.js +1 -1
  1111. package/dist/plugin-sdk/web-CS0AvKLx.js +1 -1
  1112. package/dist/plugin-sdk/web-EfgEjg15.cjs +1 -1
  1113. package/dist/plugin-sdk/weixin.cjs +1 -1
  1114. package/dist/plugin-sdk/weixin.js +1 -1
  1115. package/dist/plugin-sdk/whatsapp-actions-6N2LIWVD.js +1 -1
  1116. package/dist/plugin-sdk/whatsapp-actions-BGEghean.js +1 -1
  1117. package/dist/plugin-sdk/whatsapp-actions-BP_fSzB9.cjs +1 -1
  1118. package/dist/plugin-sdk/whatsapp-actions-BSx6-Onq.cjs +1 -1
  1119. package/dist/plugin-sdk/whatsapp-actions-BZAMGDn8.cjs +1 -1
  1120. package/dist/plugin-sdk/whatsapp-actions-BvZMduqd.js +1 -1
  1121. package/dist/plugin-sdk/whatsapp-actions-CDUbwNdp.cjs +1 -1
  1122. package/dist/plugin-sdk/whatsapp-actions-DNVIKnqz.cjs +1 -1
  1123. package/dist/plugin-sdk/whatsapp-actions-DTVbVkOo.js +1 -1
  1124. package/dist/plugin-sdk/whatsapp-actions-DjMYqpSS.js +1 -1
  1125. package/dist/plugin-sdk/whatsapp-actions-P1DVqKhD.cjs +1 -1
  1126. package/dist/plugin-sdk/whatsapp-actions-shElOKKX.js +1 -1
  1127. package/dist/plugin-sdk/whatsapp.cjs +1 -1
  1128. package/dist/plugin-sdk/whatsapp.js +1 -1
  1129. package/dist/plugin-sdk/zalo.cjs +1 -1
  1130. package/dist/plugin-sdk/zalo.js +1 -1
  1131. package/dist/plugin-sdk/zalouser.cjs +1 -1
  1132. package/dist/plugin-sdk/zalouser.js +1 -1
  1133. package/dist/plugins-CYLrFT4h.js +1 -1
  1134. package/dist/plugins-DNlgeTTc.js +1 -1
  1135. package/dist/plugins-cli-BiV4FaGs.js +1 -1
  1136. package/dist/plugins-cli-C0PLRxT0.js +1 -1
  1137. package/dist/polls-BIVz6a4F.js +1 -1
  1138. package/dist/polls-Bh5wc9-6.js +1 -1
  1139. package/dist/polls-C_XSFz3d.js +1 -1
  1140. package/dist/polls-DKJOFSzJ.js +1 -1
  1141. package/dist/ports-Bjc9q__g.js +1 -1
  1142. package/dist/ports-Di2_MOUb.js +1 -1
  1143. package/dist/probe-auth-9RrZOStc.js +1 -1
  1144. package/dist/probe-auth-Cg6SAov9.js +1 -1
  1145. package/dist/profile-utils-CWmra1aY.js +1 -1
  1146. package/dist/program-CI--7377.js +1 -1
  1147. package/dist/program-context-CH9p6anW.js +1 -1
  1148. package/dist/program-context-Cu8fVR-O.js +1 -1
  1149. package/dist/progress-LNttnI-y.js +1 -1
  1150. package/dist/progress-d1m2sqR1.js +1 -1
  1151. package/dist/prompt-select-styled-CbTtKeIC.js +1 -1
  1152. package/dist/prompt-select-styled-sYEl0gMg.js +1 -1
  1153. package/dist/prompt-style-BThRSQJR.js +1 -1
  1154. package/dist/prompt-style-CXKekIBY.js +1 -1
  1155. package/dist/prompts-CMzglboN.js +1 -1
  1156. package/dist/prompts-wv-lfVrJ.js +1 -1
  1157. package/dist/provider-auth-helpers-C3OaF218.js +1 -1
  1158. package/dist/provider-auth-helpers-CZyb7LUg.js +1 -1
  1159. package/dist/provider-env-vars-D8p6Ohpj.js +1 -1
  1160. package/dist/provider-env-vars-Dt0Q29Su.js +1 -1
  1161. package/dist/proxy-env-BNhTHkd_.js +1 -1
  1162. package/dist/proxy-env-DcmW_urA.js +1 -1
  1163. package/dist/proxy-env-DrC3TIGh.js +1 -1
  1164. package/dist/proxy-env-FJr5nlvs.js +1 -1
  1165. package/dist/proxy-fetch-BADsUK4d.js +1 -1
  1166. package/dist/proxy-fetch-BZ9O8Dvj.js +1 -1
  1167. package/dist/proxy-fetch-DnjU1fEB.js +1 -1
  1168. package/dist/proxy-fetch-gWETR3cl.js +1 -1
  1169. package/dist/push-apns-kySzOiJr.js +1 -1
  1170. package/dist/push-apns-tM6G9LLm.js +1 -1
  1171. package/dist/pw-ai-B7YMA_4Q.js +1 -1
  1172. package/dist/pw-ai-C7peCONw.js +1 -1
  1173. package/dist/pw-ai-CojtT9WR.js +1 -1
  1174. package/dist/pw-ai-DWJWFzTA.js +1 -1
  1175. package/dist/qmd-manager-C_e04BNg.js +1 -1
  1176. package/dist/qmd-manager-DSQ_mDCl.js +1 -1
  1177. package/dist/qmd-manager-DcBYbt_V.js +1 -1
  1178. package/dist/qmd-manager-NLI0R6kp.js +1 -1
  1179. package/dist/qr-cli-DUR7oW0_.js +1 -1
  1180. package/dist/qr-cli-kb3ygh9I.js +1 -1
  1181. package/dist/query-expansion-0OxEb1Io.js +1 -1
  1182. package/dist/query-expansion-BUUx_oWg.js +1 -1
  1183. package/dist/query-expansion-r_iXkNzt.js +1 -1
  1184. package/dist/reaction-level-DVPHL14p.js +1 -1
  1185. package/dist/reaction-message-id-BEEe7X3D.js +1 -1
  1186. package/dist/read-only-account-inspect-DEnPVHTo.js +1 -1
  1187. package/dist/redact-3_CiXMY6.js +1 -1
  1188. package/dist/redact-CnRxK70G.js +1 -1
  1189. package/dist/register.agent-BwmE1VD-.js +1 -1
  1190. package/dist/register.agent-D1hQi_68.js +1 -1
  1191. package/dist/register.backup-8s5jgnHQ.js +1 -1
  1192. package/dist/register.backup-CAiwLaIW.js +1 -1
  1193. package/dist/register.configure-BsTw4XfK.js +1 -1
  1194. package/dist/register.configure-DxR84Ot6.js +1 -1
  1195. package/dist/register.maintenance-3nzWAo_a.js +1 -1
  1196. package/dist/register.maintenance-DxKGQ9Jo.js +1 -1
  1197. package/dist/register.message-Bk1pHVSK.js +1 -1
  1198. package/dist/register.message-PcFtBR0-.js +1 -1
  1199. package/dist/register.onboard-AWxbhU7j.js +1 -1
  1200. package/dist/register.onboard-BTOZN8ro.js +1 -1
  1201. package/dist/register.setup-B-e1qIbc.js +1 -1
  1202. package/dist/register.setup-CweJJdt8.js +1 -1
  1203. package/dist/register.status-health-sessions-B1R_nl6P.js +1 -1
  1204. package/dist/register.status-health-sessions-CWNLXpAn.js +1 -1
  1205. package/dist/register.subclis-C0VQ_HfZ.js +1 -1
  1206. package/dist/registry-BptzrW8D.js +1 -1
  1207. package/dist/registry-hFAtCSWG.js +1 -1
  1208. package/dist/render-BXEUPIHe.js +1 -1
  1209. package/dist/render-CBsnn-2A.js +1 -1
  1210. package/dist/render-D8OWO2hT.js +1 -1
  1211. package/dist/render-DrrPmnMI.js +1 -1
  1212. package/dist/reply-r9KtzgpM.js +1 -1
  1213. package/dist/restart-CTfuVGfA.js +1 -1
  1214. package/dist/rpc-BQXfCyCw.js +1 -1
  1215. package/dist/rpc-CcrILVsV.js +1 -1
  1216. package/dist/run-main-CuQQyoU3.js +1 -1
  1217. package/dist/runtime-BlsMYeaw.js +1 -1
  1218. package/dist/runtime-DLxfCs7F.js +1 -1
  1219. package/dist/runtime-guard-DFYBaYZS.js +1 -1
  1220. package/dist/runtime-guard-DX2Ie4ri.js +1 -1
  1221. package/dist/runtime-status-CqFBmdRd.js +1 -1
  1222. package/dist/runtime-status-DszMjvJK.js +1 -1
  1223. package/dist/runtime-web-tools-BWv0X5qp.js +1 -1
  1224. package/dist/runtime-web-tools-CCIXUISf.js +1 -1
  1225. package/dist/sandbox-cli-CxluKLFV.js +1 -1
  1226. package/dist/sandbox-cli-xCX6FV4Z.js +1 -1
  1227. package/dist/scan-paths-C13EseXp.js +1 -1
  1228. package/dist/scan-paths-CWtvWW40.js +1 -1
  1229. package/dist/search-manager-KMRzwyPH.js +1 -1
  1230. package/dist/secret-file-C7JffiM_.js +1 -1
  1231. package/dist/secret-file-D60EFEOe.js +1 -1
  1232. package/dist/secret-file-DuWm26jS.js +1 -1
  1233. package/dist/secrets-cli-Be6OBr6Q.js +1 -1
  1234. package/dist/secrets-cli-DmDZiX17.js +1 -1
  1235. package/dist/secure-random-D7JQgiK-.js +1 -1
  1236. package/dist/security-cli-CllLwpQ-.js +1 -1
  1237. package/dist/security-cli-DcA9keUK.js +1 -1
  1238. package/dist/send-8rJCpsDu.js +1 -1
  1239. package/dist/send-BJjoLBo3.js +1 -1
  1240. package/dist/send-BOxuQt9L.js +1 -1
  1241. package/dist/send-BPfl_1It.js +1 -1
  1242. package/dist/send-BdS6jUBa.js +1 -1
  1243. package/dist/send-BeZJ1zbp.js +1 -1
  1244. package/dist/send-BkZ8dWQV2.js +1 -1
  1245. package/dist/send-CDAeI9xB2.js +1 -1
  1246. package/dist/send-CgeRzkWS.js +1 -1
  1247. package/dist/send-CiTZ4p2t.js +1 -1
  1248. package/dist/send-D0y-r_hg2.js +1 -1
  1249. package/dist/send-DIw8ExHc.js +1 -1
  1250. package/dist/send-DRm6AFp-.js +1 -1
  1251. package/dist/send-DS5Quwb7.js +1 -1
  1252. package/dist/send-DVmPgxm7.js +1 -1
  1253. package/dist/send-Ds5sy22D.js +1 -1
  1254. package/dist/send-DvGzdoKK.js +1 -1
  1255. package/dist/send-OVet2uKx.js +1 -1
  1256. package/dist/send-YPQFx-fV.js +1 -1
  1257. package/dist/send-e2ppdA_R.js +1 -1
  1258. package/dist/server-Dzqb5Tau.js +1 -1
  1259. package/dist/server-node-events-B2irOUJ_.js +1 -1
  1260. package/dist/server-node-events-DSr6P0VG.js +1 -1
  1261. package/dist/server-w7sUBJEA.js +1 -1
  1262. package/dist/service-BtB9epJk.js +1 -1
  1263. package/dist/service-DZ9EbS15.js +1 -1
  1264. package/dist/session-BYYOduc1.js +1 -1
  1265. package/dist/session-B_qrXLsR.js +1 -1
  1266. package/dist/session-Be0RV2V1.js +1 -1
  1267. package/dist/session-bk3gFwO4.js +1 -1
  1268. package/dist/session-cost-usage-BgqKixv0.js +1 -1
  1269. package/dist/session-cost-usage-CHtVgnE8.js +1 -1
  1270. package/dist/session-key-C7F_iqYg.js +1 -1
  1271. package/dist/session-key-D3P0tf5P.js +1 -1
  1272. package/dist/session-utils-CrR0wD3W.js +1 -1
  1273. package/dist/sessions-BvTGb3rW.js +1 -1
  1274. package/dist/shared-9x5sqYRb.js +1 -1
  1275. package/dist/shared-BKWhOp64.js +1 -1
  1276. package/dist/shared-BV-hfJ3h.js +1 -1
  1277. package/dist/skill-commands-C59b8Yso.js +1 -1
  1278. package/dist/skill-commands-CqIEajsA.js +1 -1
  1279. package/dist/skill-commands-F5NFH0NR.js +1 -1
  1280. package/dist/skill-commands-O39uSj-k.js +1 -1
  1281. package/dist/skill-scanner-CUUF3Fvo.js +1 -1
  1282. package/dist/skill-scanner-CkxXNioD.js +1 -1
  1283. package/dist/skills-CKTicUKS.js +1 -1
  1284. package/dist/skills-DHbOKEGc.js +1 -1
  1285. package/dist/skills-cli-CZD1Ng18.js +1 -1
  1286. package/dist/skills-cli-nj0w4fe0.js +1 -1
  1287. package/dist/skills-install-D0I6c17J.js +1 -1
  1288. package/dist/skills-install-XHpqMBWl.js +1 -1
  1289. package/dist/skills-status-BWIugRCz.js +1 -1
  1290. package/dist/skills-status-DswSl5aD.js +1 -1
  1291. package/dist/sqlite-CILF3z9U.js +1 -1
  1292. package/dist/stagger-DmFYysrJ.js +1 -1
  1293. package/dist/stagger-DxzgG2jd.js +1 -1
  1294. package/dist/status-DKB9gdSp.js +1 -1
  1295. package/dist/status-DgRrUxyg.js +1 -1
  1296. package/dist/status-YZD9V9xi.js +1 -1
  1297. package/dist/status-isxcm8Xz.js +1 -1
  1298. package/dist/status.update-B_8Gumuc.js +1 -1
  1299. package/dist/status.update-Cf2e-l9d.js +1 -1
  1300. package/dist/string-normalization-BrUPaXaM.js +1 -1
  1301. package/dist/string-normalization-DJT5zuUF.js +1 -1
  1302. package/dist/subsystem-BLbY429l.js +1 -1
  1303. package/dist/subsystem-Bc2XrjUz.js +1 -1
  1304. package/dist/subsystem-C5XF2Fy5.js +1 -1
  1305. package/dist/system-cli-CRs3TOTw.js +1 -1
  1306. package/dist/system-cli-GyoLZQpj.js +1 -1
  1307. package/dist/system-run-command-DCzdgYyb.js +1 -1
  1308. package/dist/system-run-command-FCk9hSMO.js +1 -1
  1309. package/dist/systemd-D7odsu4K.js +1 -1
  1310. package/dist/systemd-DbevZh65.js +1 -1
  1311. package/dist/systemd-hints-lXpMy-kY.js +1 -1
  1312. package/dist/systemd-hints-x1lJAOxS.js +1 -1
  1313. package/dist/systemd-linger-C2MJD6KG.js +1 -1
  1314. package/dist/systemd-linger-cWKbFNpu.js +1 -1
  1315. package/dist/table-CR7TFMew.js +1 -1
  1316. package/dist/table-CY440fI1.js +1 -1
  1317. package/dist/tables-3Rjt6nwZ.js +1 -1
  1318. package/dist/tables-B9wFKQvT.js +1 -1
  1319. package/dist/tables-D1pcaye7.js +1 -1
  1320. package/dist/tables-h7y1Jhf4.js +1 -1
  1321. package/dist/target-errors-CUQcIty1.js +1 -1
  1322. package/dist/target-errors-D55sWZ4E.js +1 -1
  1323. package/dist/target-errors-DH0aw-m5.js +1 -1
  1324. package/dist/target-errors-LuLROpta.js +1 -1
  1325. package/dist/targets-4EaxWBal.js +1 -1
  1326. package/dist/targets-BJTo7bqu.js +1 -1
  1327. package/dist/targets-BYVMrXDf.js +1 -1
  1328. package/dist/targets-Bq6rS6-Z.js +1 -1
  1329. package/dist/targets-CL5fYQi7.js +1 -1
  1330. package/dist/targets-fozeWOOg.js +1 -1
  1331. package/dist/targets-m_41k_Mv.js +1 -1
  1332. package/dist/telegram/audit.js +1 -1
  1333. package/dist/text-format-CvrvBBre.js +1 -1
  1334. package/dist/text-format-DEWK6oCT.js +1 -1
  1335. package/dist/token-DnTmiyJu.js +1 -1
  1336. package/dist/tokens-B2fq-rL6.js +1 -1
  1337. package/dist/tokens-CL2fSjGl.js +1 -1
  1338. package/dist/tokens-DRM8vzJx.js +1 -1
  1339. package/dist/tokens-XGbQGn67.js +1 -1
  1340. package/dist/tool-display-DJDtttQg.js +1 -1
  1341. package/dist/tool-display-DjuSUUbH.js +1 -1
  1342. package/dist/tui-CqEb9hrT.js +1 -1
  1343. package/dist/tui-DdZ8SpNW.js +1 -1
  1344. package/dist/tui-cli-Bj0okLCf.js +1 -1
  1345. package/dist/tui-cli-CYvBshyB.js +1 -1
  1346. package/dist/types.secrets-C-5U96pc.js +1 -1
  1347. package/dist/types.secrets-D4tbc3Wq.js +1 -1
  1348. package/dist/update-BGrxUIyz.js +1 -1
  1349. package/dist/update-CwTy5DPl.js +1 -1
  1350. package/dist/update-cli-lciKU8_L.js +1 -1
  1351. package/dist/update-cli-xb0jHjE8.js +1 -1
  1352. package/dist/update-runner-8Hto6X-M.js +1 -1
  1353. package/dist/update-runner-LVJcy569.js +1 -1
  1354. package/dist/usage-format-BWD8FJFL.js +1 -1
  1355. package/dist/usage-format-yPwal8Iz.js +1 -1
  1356. package/dist/utils-CGdo13HV.js +1 -1
  1357. package/dist/utils-D3t-vPka.js +1 -1
  1358. package/dist/utils-R-mFyVJi.js +1 -1
  1359. package/dist/utils-UGOV_184.js +1 -1
  1360. package/dist/version-q3SkUw2K.js +1 -1
  1361. package/dist/warning-filter.js +1 -1
  1362. package/dist/web-Bfz_qlYe.js +1 -1
  1363. package/dist/web-ClbIohhf.js +1 -1
  1364. package/dist/webhooks-cli-DKfKihmJ.js +1 -1
  1365. package/dist/webhooks-cli-LU2ADRQp.js +1 -1
  1366. package/dist/whatsapp-actions-1TJ8dlv0.js +1 -1
  1367. package/dist/whatsapp-actions-CuDiuPGa.js +1 -1
  1368. package/dist/whatsapp-actions-DkLDOIk1.js +1 -1
  1369. package/dist/whatsapp-actions-EnduXWui.js +1 -1
  1370. package/dist/widearea-dns-BDx7vkV2.js +1 -1
  1371. package/dist/widearea-dns-BFjqKXu_.js +1 -1
  1372. package/dist/windows-spawn-7oINn5ao.js +1 -1
  1373. package/dist/windows-spawn-AB7ItGAE.js +1 -1
  1374. package/dist/with-timeout-WveKxvFV.js +1 -1
  1375. package/dist/with-timeout-c1CzdShT.js +1 -1
  1376. package/dist/workspace-B0ZQeHXg.js +1 -1
  1377. package/dist/workspace-C45T1Cxg.js +1 -1
  1378. package/dist/workspace-dirs-A8Vib9_B.js +1 -1
  1379. package/dist/workspace-dirs-BhF1Dzxt.js +1 -1
  1380. package/dist/workspace-xNEpaJvu.js +1 -1
  1381. package/dist/wsl-DHxB2Ew_.js +1 -1
  1382. package/dist/wsl-Ok7GaSJ6.js +1 -1
  1383. package/extensions/memory-core/index.js +1 -0
  1384. package/extensions/memory-core/package.json +1 -1
  1385. package/extensions/openclaw-telemetry-galileo-embedded/index.js +4 -0
  1386. package/extensions/openclaw-telemetry-galileo-embedded/package.json +2 -2
  1387. package/extensions/openclaw-telemetry-galileo-embedded/src/service.js +13 -0
  1388. package/extensions/openclaw-weixin/index.js +1 -0
  1389. package/extensions/openclaw-weixin/package.json +3 -3
  1390. package/extensions/openclaw-weixin/src/api/api.js +1 -0
  1391. package/extensions/openclaw-weixin/src/api/config-cache.js +1 -0
  1392. package/extensions/openclaw-weixin/src/api/session-guard.js +1 -0
  1393. package/extensions/openclaw-weixin/src/api/types.js +1 -0
  1394. package/extensions/openclaw-weixin/src/auth/accounts.js +1 -0
  1395. package/extensions/openclaw-weixin/src/auth/login-qr.js +11 -0
  1396. package/extensions/openclaw-weixin/src/auth/pairing.js +1 -0
  1397. package/extensions/openclaw-weixin/src/cdn/aes-ecb.js +1 -0
  1398. package/extensions/openclaw-weixin/src/cdn/cdn-upload.js +1 -0
  1399. package/extensions/openclaw-weixin/src/cdn/cdn-url.js +1 -0
  1400. package/extensions/openclaw-weixin/src/cdn/pic-decrypt.js +1 -0
  1401. package/extensions/openclaw-weixin/src/cdn/upload.js +1 -0
  1402. package/extensions/openclaw-weixin/src/channel.js +6 -0
  1403. package/extensions/openclaw-weixin/src/config/config-schema.js +1 -0
  1404. package/extensions/openclaw-weixin/src/log-upload.js +4 -0
  1405. package/extensions/openclaw-weixin/src/media/media-download.js +1 -0
  1406. package/extensions/openclaw-weixin/src/media/mime.js +1 -0
  1407. package/extensions/openclaw-weixin/src/media/silk-transcode.js +1 -0
  1408. package/extensions/openclaw-weixin/src/messaging/debug-mode.js +1 -0
  1409. package/extensions/openclaw-weixin/src/messaging/error-notice.js +1 -0
  1410. package/extensions/openclaw-weixin/src/messaging/inbound.js +2 -0
  1411. package/extensions/openclaw-weixin/src/messaging/process-message.js +3 -0
  1412. package/extensions/openclaw-weixin/src/messaging/send-media.js +1 -0
  1413. package/extensions/openclaw-weixin/src/messaging/send.js +1 -0
  1414. package/extensions/openclaw-weixin/src/messaging/slash-commands.js +2 -0
  1415. package/extensions/openclaw-weixin/src/monitor/monitor.js +1 -0
  1416. package/extensions/openclaw-weixin/src/runtime.js +1 -0
  1417. package/extensions/openclaw-weixin/src/storage/state-dir.js +1 -0
  1418. package/extensions/openclaw-weixin/src/storage/sync-buf.js +1 -0
  1419. package/extensions/openclaw-weixin/src/util/logger.js +2 -0
  1420. package/extensions/openclaw-weixin/src/util/random.js +1 -0
  1421. package/extensions/openclaw-weixin/src/util/redact.js +1 -0
  1422. package/extensions/qbagent-mcp-server-x5uselocal-node/index.js +1 -0
  1423. package/extensions/qbagent-mcp-server-x5uselocal-node/package.json +1 -1
  1424. package/extensions/qbagent-mcp-server-x5uselocal-node/src/browser-use-tool.js +1 -0
  1425. package/extensions/qbagent-mcp-server-x5uselocal-node/src/server.js +1 -0
  1426. package/extensions/qbagent-mcp-server-x5uselocal-node/src/tools.js +1 -0
  1427. package/extensions/qbagent-mcp-server-x5uselocal-node/src/websocket-manager.js +1 -0
  1428. package/package.json +1 -1
  1429. package/preset-config.json +22 -0
  1430. package/extensions/memory-core/index.ts +0 -38
  1431. package/extensions/openclaw-telemetry-galileo-embedded/index.ts +0 -663
  1432. package/extensions/openclaw-telemetry-galileo-embedded/src/service.ts +0 -1590
  1433. package/extensions/openclaw-weixin/index.ts +0 -26
  1434. package/extensions/openclaw-weixin/src/api/api.ts +0 -238
  1435. package/extensions/openclaw-weixin/src/api/config-cache.ts +0 -79
  1436. package/extensions/openclaw-weixin/src/api/session-guard.ts +0 -58
  1437. package/extensions/openclaw-weixin/src/api/types.ts +0 -222
  1438. package/extensions/openclaw-weixin/src/auth/accounts.ts +0 -363
  1439. package/extensions/openclaw-weixin/src/auth/login-qr.ts +0 -344
  1440. package/extensions/openclaw-weixin/src/auth/pairing.ts +0 -120
  1441. package/extensions/openclaw-weixin/src/cdn/aes-ecb.ts +0 -21
  1442. package/extensions/openclaw-weixin/src/cdn/cdn-upload.ts +0 -75
  1443. package/extensions/openclaw-weixin/src/cdn/cdn-url.ts +0 -17
  1444. package/extensions/openclaw-weixin/src/cdn/pic-decrypt.ts +0 -85
  1445. package/extensions/openclaw-weixin/src/cdn/upload.ts +0 -154
  1446. package/extensions/openclaw-weixin/src/channel.ts +0 -483
  1447. package/extensions/openclaw-weixin/src/config/config-schema.ts +0 -21
  1448. package/extensions/openclaw-weixin/src/log-upload.ts +0 -129
  1449. package/extensions/openclaw-weixin/src/media/media-download.ts +0 -138
  1450. package/extensions/openclaw-weixin/src/media/mime.ts +0 -76
  1451. package/extensions/openclaw-weixin/src/media/silk-transcode.ts +0 -74
  1452. package/extensions/openclaw-weixin/src/messaging/debug-mode.ts +0 -68
  1453. package/extensions/openclaw-weixin/src/messaging/error-notice.ts +0 -36
  1454. package/extensions/openclaw-weixin/src/messaging/inbound.ts +0 -283
  1455. package/extensions/openclaw-weixin/src/messaging/process-message.ts +0 -488
  1456. package/extensions/openclaw-weixin/src/messaging/send-media.ts +0 -76
  1457. package/extensions/openclaw-weixin/src/messaging/send.ts +0 -267
  1458. package/extensions/openclaw-weixin/src/messaging/slash-commands.ts +0 -105
  1459. package/extensions/openclaw-weixin/src/monitor/monitor.ts +0 -225
  1460. package/extensions/openclaw-weixin/src/runtime.ts +0 -67
  1461. package/extensions/openclaw-weixin/src/storage/state-dir.ts +0 -11
  1462. package/extensions/openclaw-weixin/src/storage/sync-buf.ts +0 -79
  1463. package/extensions/openclaw-weixin/src/util/logger.ts +0 -146
  1464. package/extensions/openclaw-weixin/src/util/random.ts +0 -17
  1465. package/extensions/openclaw-weixin/src/util/redact.ts +0 -57
  1466. package/extensions/openclaw-weixin/src/vendor.d.ts +0 -21
  1467. package/extensions/qbagent-mcp-server-x5uselocal-node/index.ts +0 -140
  1468. package/extensions/qbagent-mcp-server-x5uselocal-node/src/browser-use-tool.ts +0 -157
  1469. package/extensions/qbagent-mcp-server-x5uselocal-node/src/server.ts +0 -135
  1470. package/extensions/qbagent-mcp-server-x5uselocal-node/src/tools.ts +0 -205
  1471. package/extensions/qbagent-mcp-server-x5uselocal-node/src/websocket-manager.ts +0 -351
@@ -63,4 +63,4 @@ stat -c "%F|%s|%Y" -- "$2"`,args:[t.canonicalParentPath,t.basename],allowFailure
63
63
  }`))return jU({[e]:t})-4;let r=n.slice(2,-2);return Buffer.byteLength(r,`utf-8`)}function NU(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,MU(n,r));return t}function PU(e){if(!e)return 0;let t=e.updatedAt;return Number.isFinite(t)?t:0}function FU(e){let t=new Map;for(let n of Object.values(e)){let e=n?.sessionId;e&&t.set(e,(t.get(e)??0)+1)}return t}function IU(e){if(!e.entry.sessionId)return null;try{let t=_e(e.entry.sessionId,e.entry,{sessionsDir:e.sessionsDir}),n=AU(e.sessionsDir),r=AU(t),i=k.relative(n,r);return!i||i.startsWith(`..`)||k.isAbsolute(i)?null:r}catch{return null}}function LU(e){let t=new Set;for(let n of Object.values(e.store)){let r=IU({sessionsDir:e.sessionsDir,entry:n});r&&t.add(AU(r))}return t}async function RU(e){let t=await A.promises.readdir(e,{withFileTypes:!0}).catch(()=>[]),n=[];for(let r of t){if(!r.isFile())continue;let t=k.join(e,r.name),i=await A.promises.stat(t).catch(()=>null);i?.isFile()&&n.push({path:t,canonicalPath:AU(t),name:r.name,size:i.size,mtimeMs:i.mtimeMs})}return n}async function zU(e){let t=await A.promises.stat(e).catch(()=>null);return t?.isFile()?(await A.promises.rm(e,{force:!0}).catch(()=>void 0),t.size):0}async function BU(e){let t=k.resolve(e.filePath),n=e.canonicalPath??AU(t);if(e.dryRun){if(e.simulatedRemovedPaths.has(n))return 0;let t=e.fileSizesByPath.get(n)??0;return t<=0?0:(e.simulatedRemovedPaths.add(n),t)}return zU(t)}async function VU(e){let t=e.maintenance.maxDiskBytes,n=e.maintenance.highWaterBytes;if(t==null||n==null)return null;let r=e.log??kU,i=e.dryRun===!0,a=k.dirname(e.storePath),o=await RU(a),s=new Map(o.map(e=>[e.canonicalPath,e.size])),c=new Set,l=AU(e.storePath),u=o.find(e=>e.canonicalPath===l),d=jU(e.store),f=o.reduce((e,t)=>e+t.size,0)-(u?.size??0)+d,p=f;if(f<=t)return{totalBytesBefore:p,totalBytesAfter:f,removedFiles:0,removedEntries:0,freedBytes:0,maxBytes:t,highWaterBytes:n,overBudget:!1};if(e.warnOnly)return r.warn(`session disk budget exceeded (warn-only mode)`,{sessionsDir:a,totalBytes:f,maxBytes:t,highWaterBytes:n}),{totalBytesBefore:p,totalBytesAfter:f,removedFiles:0,removedEntries:0,freedBytes:0,maxBytes:t,highWaterBytes:n,overBudget:!0};let m=0,h=0,g=0,_=LU({sessionsDir:a,store:e.store}),v=o.filter(e=>xR(e.name)||SR(e.name)&&!_.has(e.canonicalPath)).toSorted((e,t)=>e.mtimeMs-t.mtimeMs);for(let e of v){if(f<=n)break;let t=await BU({filePath:e.path,canonicalPath:e.canonicalPath,dryRun:i,fileSizesByPath:s,simulatedRemovedPaths:c});t<=0||(f-=t,g+=t,m+=1)}if(f>n){let t=e.activeSessionKey?.trim().toLowerCase(),r=FU(e.store),o=NU(e.store),l=Object.keys(e.store).toSorted((t,n)=>PU(e.store[t])-PU(e.store[n]));for(let u of l){if(f<=n)break;if(t&&u.trim().toLowerCase()===t)continue;let l=e.store[u];if(!l)continue;let p=d;delete e.store[u];let _=o.get(u);o.delete(u),d=typeof _==`number`&&Number.isFinite(_)&&_>=0?Math.max(2,d-(_+2)):jU(e.store),f+=d-p,h+=1;let v=l.sessionId;if(!v)continue;let y=(r.get(v)??1)-1;if(y>0){r.set(v,y);continue}r.delete(v);let b=IU({sessionsDir:a,entry:l});if(!b)continue;let x=await BU({filePath:b,dryRun:i,fileSizesByPath:s,simulatedRemovedPaths:c});x<=0||(f-=x,g+=x,m+=1)}}return i||(f>n?r.warn(`session disk budget still above high-water target after cleanup`,{sessionsDir:a,totalBytes:f,maxBytes:t,highWaterBytes:n,removedFiles:m,removedEntries:h}):(m>0||h>0)&&r.info(`applied session disk budget cleanup`,{sessionsDir:a,totalBytesBefore:p,totalBytesAfter:f,maxBytes:t,highWaterBytes:n,removedFiles:m,removedEntries:h})),{totalBytesBefore:p,totalBytesAfter:f,removedFiles:m,removedEntries:h,freedBytes:g,maxBytes:t,highWaterBytes:n,overBudget:!0}}const HU=new Map,UU=new Map;function WU(e){HU.delete(e),UU.delete(e)}function GU(e){return UU.get(e)}function KU(e,t){if(t===void 0){UU.delete(e);return}UU.set(e,t)}function qU(e){HU.delete(e)}function JU(e){let t=HU.get(e.storePath);return t?Date.now()-t.loadedAt>e.ttlMs||e.mtimeMs!==t.mtimeMs||e.sizeBytes!==t.sizeBytes?(WU(e.storePath),null):structuredClone(t.store):null}function YU(e){HU.set(e.storePath,{store:structuredClone(e.store),loadedAt:Date.now(),storePath:e.storePath,mtimeMs:e.mtimeMs,sizeBytes:e.sizeBytes,serialized:e.serialized}),e.serialized!==void 0&&UU.set(e.storePath,e.serialized)}const XU=T(`sessions/store`),ZU=720*60*60*1e3,QU=10485760;function $U(e){let t=e?.pruneAfter??e?.pruneDays;if(t==null||t===``)return ZU;try{return dv(String(t).trim(),{defaultUnit:`d`})}catch{return ZU}}function eW(e){let t=e?.rotateBytes;if(t==null||t===``)return QU;try{return lv(String(t).trim(),{defaultUnit:`b`})}catch{return QU}}function tW(e,t){let n=e?.resetArchiveRetention;if(n===!1)return null;if(n==null||n===``)return t;try{return dv(String(n).trim(),{defaultUnit:`d`})}catch{return t}}function nW(e){let t=e?.maxDiskBytes;if(t==null||t===``)return null;try{return lv(String(t).trim(),{defaultUnit:`b`})}catch{return null}}function rW(e,t){let n=()=>t==null?null:t<=0?0:Math.max(1,Math.min(t,Math.floor(t*.8)));if(t==null)return null;let r=e?.highWaterBytes;if(r==null||r===``)return n();try{let e=lv(String(r).trim(),{defaultUnit:`b`});return Math.min(e,t)}catch{return n()}}function iW(){let e;try{e=FS().session?.maintenance}catch{}let t=$U(e),n=nW(e);return{mode:e?.mode??`warn`,pruneAfterMs:t,maxEntries:e?.maxEntries??500,rotateBytes:eW(e),resetArchiveRetentionMs:tW(e,t),maxDiskBytes:n,highWaterBytes:rW(e,n)}}function aW(e,t,n={}){let r=t??iW().pruneAfterMs,i=Date.now()-r,a=0;for(let[t,r]of Object.entries(e))r?.updatedAt!=null&&r.updatedAt<i&&(n.onPruned?.({key:t,entry:r}),delete e[t],a++);return a>0&&n.log!==!1&&XU.info(`pruned stale session entries`,{pruned:a,maxAgeMs:r}),a}function oW(e){return e?.updatedAt??-1/0}function sW(e){let t=e.activeSessionKey.trim();if(!t)return null;let n=e.store[t];if(!n)return null;let r=(e.nowMs??Date.now())-e.pruneAfterMs,i=n.updatedAt==null?!1:n.updatedAt<r,a=Object.keys(e.store),o=a.length>e.maxEntries&&a.toSorted((t,n)=>oW(e.store[n])-oW(e.store[t])).slice(e.maxEntries).includes(t);return!i&&!o?null:{activeSessionKey:t,activeUpdatedAt:n.updatedAt,totalEntries:a.length,pruneAfterMs:e.pruneAfterMs,maxEntries:e.maxEntries,wouldPrune:i,wouldCap:o}}function cW(e,t,n={}){let r=t??iW().maxEntries,i=Object.keys(e);if(i.length<=r)return 0;let a=i.toSorted((t,n)=>{let r=oW(e[t]);return oW(e[n])-r}).slice(r);for(let t of a){let r=e[t];r&&n.onCapped?.({key:t,entry:r}),delete e[t]}return n.log!==!1&&XU.info(`capped session entry count`,{removed:a.length,maxEntries:r}),a.length}async function lW(e){try{return(await A.promises.stat(e)).size}catch{return null}}async function uW(e,t){let n=t??iW().rotateBytes,r=await lW(e);if(r==null||r<=n)return!1;let i=`${e}.bak.${Date.now()}`;try{await A.promises.rename(e,i),XU.info(`rotated session store file`,{backupPath:k.basename(i),sizeBytes:r})}catch{return!1}try{let t=k.dirname(e),n=k.basename(e),r=(await A.promises.readdir(t)).filter(e=>e.startsWith(`${n}.bak.`)).toSorted().toReversed();if(r.length>3){let e=r.slice(3);for(let n of e)await A.promises.unlink(k.join(t,n)).catch(()=>void 0);XU.info(`cleaned up old session store backups`,{deleted:e.length})}}catch{}return!0}function dW(e){for(let t of Object.values(e)){if(!t||typeof t!=`object`)continue;let e=t;typeof e.channel!=`string`&&typeof e.provider==`string`&&(e.channel=e.provider,delete e.provider),typeof e.lastChannel!=`string`&&typeof e.lastProvider==`string`&&(e.lastChannel=e.lastProvider,delete e.lastProvider),typeof e.groupChannel!=`string`&&typeof e.room==`string`?(e.groupChannel=e.room,delete e.room):`room`in e&&delete e.room}}const fW=T(`sessions/store`);function pW(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function mW(){return EU({envValue:process.env.OPENCLAW_SESSION_CACHE_TTL_MS,defaultTtlMs:45e3})}function hW(){return DU(mW())}function gW(e){let t=vU({channel:e.channel,lastChannel:e.lastChannel,lastTo:e.lastTo,lastAccountId:e.lastAccountId,lastThreadId:e.lastThreadId??e.deliveryContext?.threadId??e.origin?.threadId,deliveryContext:e.deliveryContext}),n=t.deliveryContext,r=(e.deliveryContext?.channel??void 0)===n?.channel&&(e.deliveryContext?.to??void 0)===n?.to&&(e.deliveryContext?.accountId??void 0)===n?.accountId&&(e.deliveryContext?.threadId??void 0)===n?.threadId,i=e.lastChannel===t.lastChannel&&e.lastTo===t.lastTo&&e.lastAccountId===t.lastAccountId&&e.lastThreadId===t.lastThreadId;return r&&i?e:{...e,deliveryContext:n,lastChannel:t.lastChannel,lastTo:t.lastTo,lastAccountId:t.lastAccountId,lastThreadId:t.lastThreadId}}function _W(e){if(!e||e.threadId==null)return e;let t={...e};return delete t.threadId,t}function vW(e){return e.trim().toLowerCase()}function yW(e){let t=e.sessionKey.trim(),n=vW(t),r=new Set;t!==n&&Object.prototype.hasOwnProperty.call(e.store,t)&&r.add(t);let i=e.store[n]??(r.size>0?e.store[t]:void 0),a=i?.updatedAt??0;for(let[t,o]of Object.entries(e.store)){if(t===n||t.toLowerCase()!==n)continue;r.add(t);let e=o?.updatedAt??0;(!i||e>a)&&(i=o,a=e)}return{normalizedKey:n,existing:i,legacyKeys:[...r]}}function bW(e){for(let[t,n]of Object.entries(e)){if(!n)continue;let r=gW(CH(n));r!==n&&(e[t]=r)}}function xW(e,t={}){if(!t.skipCache&&hW()){let t=OU(e),n=JU({storePath:e,ttlMs:mW(),mtimeMs:t?.mtimeMs,sizeBytes:t?.sizeBytes});if(n)return n}let n={},r=OU(e),i=r?.mtimeMs,a,o=process.platform===`win32`?3:1,s=o>1?new Int32Array(new SharedArrayBuffer(4)):void 0;for(let t=0;t<o;t++)try{let c=A.readFileSync(e,`utf-8`);if(c.length===0&&t<o-1){Atomics.wait(s,0,0,50);continue}let l=JSON.parse(c);pW(l)&&(n=l,a=c),r=OU(e)??r,i=r?.mtimeMs;break}catch{if(t<o-1){Atomics.wait(s,0,0,50);continue}}return a===void 0?KU(e,void 0):KU(e,a),dW(n),!t.skipCache&&hW()&&YU({storePath:e,store:n,mtimeMs:i,sizeBytes:r?.sizeBytes,serialized:a}),structuredClone(n)}function SW(e){try{return yW({store:xW(e.storePath),sessionKey:e.sessionKey}).existing?.updatedAt}catch{return}}function CW(e){let t=OU(e.storePath);if(KU(e.storePath,e.serialized),!hW()){qU(e.storePath);return}YU({storePath:e.storePath,store:e.store,mtimeMs:t?.mtimeMs,sizeBytes:t?.sizeBytes,serialized:e.serialized})}async function wW(e,t,n){if(bW(t),!n?.skipMaintenance){let r={...iW(),...n?.maintenanceOverride},i=r.mode===`warn`,a=Object.keys(t).length;if(i){let i=n?.activeSessionKey?.trim();if(i){let e=sW({store:t,activeSessionKey:i,pruneAfterMs:r.pruneAfterMs,maxEntries:r.maxEntries});e&&(fW.warn(`session maintenance would evict active session; skipping enforcement`,{activeSessionKey:e.activeSessionKey,wouldPrune:e.wouldPrune,wouldCap:e.wouldCap,pruneAfterMs:e.pruneAfterMs,maxEntries:e.maxEntries}),await n?.onWarn?.(e))}let o=await VU({store:t,storePath:e,activeSessionKey:n?.activeSessionKey,maintenance:r,warnOnly:!0,log:fW});await n?.onMaintenanceApplied?.({mode:r.mode,beforeCount:a,afterCount:Object.keys(t).length,pruned:0,capped:0,diskBudget:o})}else{let i=new Map,o=aW(t,r.pruneAfterMs,{onPruned:({entry:e})=>{OW(i,e)}}),s=cW(t,r.maxEntries,{onCapped:({entry:e})=>{OW(i,e)}}),c=new Set,l=kW({removedSessionFiles:i,referencedSessionIds:new Set(Object.values(t).map(e=>e?.sessionId).filter(e=>!!e)),storePath:e,reason:`deleted`,restrictToStoreDir:!0});for(let e of l)c.add(e);if(c.size>0||r.resetArchiveRetentionMs!=null){let t=c.size>0?[...c]:[k.dirname(k.resolve(e))];await mU({directories:t,olderThanMs:r.pruneAfterMs,reason:`deleted`}),r.resetArchiveRetentionMs!=null&&await mU({directories:t,olderThanMs:r.resetArchiveRetentionMs,reason:`reset`})}await uW(e,r.rotateBytes);let u=await VU({store:t,storePath:e,activeSessionKey:n?.activeSessionKey,maintenance:r,warnOnly:!1,log:fW});await n?.onMaintenanceApplied?.({mode:r.mode,beforeCount:a,afterCount:Object.keys(t).length,pruned:o,capped:s,diskBudget:u})}}await A.promises.mkdir(k.dirname(e),{recursive:!0});let r=JSON.stringify(t,null,2);if(GU(e)===r){CW({storePath:e,store:t,serialized:r});return}if(process.platform===`win32`){for(let n=0;n<5;n++)try{await AW({storePath:e,store:t,serialized:r});return}catch(t){if(DW(t)===`ENOENT`)return;if(n<4){await new Promise(e=>setTimeout(e,50*(n+1)));continue}fW.warn(`atomic write failed after 5 attempts: ${e}`)}return}try{await AW({storePath:e,store:t,serialized:r})}catch(n){if(DW(n)===`ENOENT`){try{await AW({storePath:e,store:t,serialized:r})}catch(e){if(DW(e)===`ENOENT`)return;throw e}return}throw n}}async function TW(e,t,n){return await FW(e,async()=>{let r=xW(e,{skipCache:!0}),i=await t(r);return await wW(e,r,n),i})}const EW=new Map;function DW(e){return!e||typeof e!=`object`||!(`code`in e)?null:String(e.code)}function OW(e,t){(!e.has(t.sessionId)||t.sessionFile)&&e.set(t.sessionId,t.sessionFile)}function kW(e){let t=new Set;for(let[n,r]of e.removedSessionFiles){if(e.referencedSessionIds.has(n))continue;let i=pU({sessionId:n,storePath:e.storePath,sessionFile:r,reason:e.reason,restrictToStoreDir:e.restrictToStoreDir});for(let e of i)t.add(k.dirname(e))}return t}async function AW(e){await VF(e.storePath,e.serialized,{mode:384}),CW({storePath:e.storePath,store:e.store,serialized:e.serialized})}async function jW(e){e.store[e.resolved.normalizedKey]=e.next;for(let t of e.resolved.legacyKeys)delete e.store[t];return await wW(e.storePath,e.store,{activeSessionKey:e.resolved.normalizedKey}),e.next}function MW(e){return Error(`timeout waiting for session store lock: ${e}`)}function NW(e){let t=EW.get(e);if(t)return t;let n={running:!1,pending:[]};return EW.set(e,n),n}async function PW(e){let t=EW.get(e);if(!(!t||t.running)){t.running=!0;try{for(;t.pending.length>0;){let n=t.pending.shift();if(!n)continue;let r=n.timeoutMs??1/0;if(n.timeoutMs!=null&&r<=0){n.reject(MW(e));continue}let i,a,o,s=!1;try{i=await pI({sessionFile:e,timeoutMs:r,staleMs:n.staleMs}),a=await n.fn()}catch(e){s=!0,o=e}finally{await i?.release().catch(()=>void 0)}if(s){n.reject(o);continue}n.resolve(a)}}finally{t.running=!1,t.pending.length===0?EW.delete(e):queueMicrotask(()=>{PW(e)})}}}async function FW(e,t,n={}){if(!e||typeof e!=`string`)throw Error(`withSessionStoreLock: storePath must be a non-empty string, got ${JSON.stringify(e)}`);let r=n.timeoutMs??1e4,i=n.staleMs??3e4;n.pollIntervalMs;let a=r>0&&Number.isFinite(r),o=NW(e);return await new Promise((n,s)=>{let c={fn:async()=>await t(),resolve:e=>n(e),reject:s,timeoutMs:a?r:void 0,staleMs:i};o.pending.push(c),PW(e)})}async function IW(e){let{storePath:t,sessionKey:n,update:r}=e;return await FW(t,async()=>{let e=xW(t,{skipCache:!0}),i=yW({store:e,sessionKey:n}),a=i.existing;if(!a)return null;let o=await r(a);return o?await jW({storePath:t,store:e,resolved:i,next:DH(a,o)}):a})}async function LW(e){let{storePath:t,sessionKey:n,ctx:r}=e,i=e.createIfMissing??!0;return await TW(t,t=>{let a=yW({store:t,sessionKey:n}),o=a.existing,s=_H({ctx:r,sessionKey:a.normalizedKey,existing:o,groupResolution:e.groupResolution});if(!s){if(o&&a.legacyKeys.length>0){t[a.normalizedKey]=o;for(let e of a.legacyKeys)delete t[e]}return o??null}if(!o&&!i)return null;let c=o?OH(o,s):DH(o,s);t[a.normalizedKey]=c;for(let e of a.legacyKeys)delete t[e];return c},{activeSessionKey:vW(n)})}async function RW(e){let{storePath:t,sessionKey:n,channel:r,to:i,accountId:a,threadId:o,ctx:s}=e;return await FW(t,async()=>{let c=xW(t),l=yW({store:c,sessionKey:n}),u=l.existing,d=Date.now(),f=_U(e.deliveryContext),p=_U({channel:r,to:i,accountId:a,threadId:o}),m=bU(f,p),h=e.deliveryContext,g=(h!=null&&Object.prototype.hasOwnProperty.call(h,`threadId`)?h.threadId:void 0)??(o!=null&&o!==``?o:void 0),_=bU(m,(f?.channel||f?.to||p?.channel||p?.to)&&g==null?_W(yU(u)):yU(u)),v=vU({deliveryContext:{channel:_?.channel,to:_?.to,accountId:_?.accountId,threadId:_?.threadId}}),y=s?_H({ctx:s,sessionKey:l.normalizedKey,existing:u,groupResolution:e.groupResolution}):null,b={updatedAt:Math.max(u?.updatedAt??0,d),deliveryContext:v.deliveryContext,lastChannel:v.lastChannel,lastTo:v.lastTo,lastAccountId:v.lastAccountId,lastThreadId:v.lastThreadId};return await jW({storePath:t,store:c,resolved:l,next:DH(u,y?{...b,...y}:b)})})}const zW=new Set;function BW(e){return zW.add(e),()=>{zW.delete(e)}}function VW(e){let t=e.trim();if(!t)return;let n={sessionFile:t};for(let e of zW)try{e(n)}catch{}}function HW(e){if(!e)return{baseSessionKey:void 0,threadId:void 0};let t=e.lastIndexOf(`:topic:`),n=e.lastIndexOf(`:thread:`),r=Math.max(t,n),i=t>n?`:topic:`:`:thread:`;return{baseSessionKey:r===-1?e:e.slice(0,r),threadId:(r===-1?void 0:e.slice(r+i.length))?.trim()||void 0}}function UW(e){let{baseSessionKey:t,threadId:n}=HW(e);if(!e||!t)return{deliveryContext:void 0,threadId:n};let r;try{let n=xW(Se(FS().session?.store)),i=n[e];!i?.deliveryContext&&t!==e&&(i=n[t]),i?.deliveryContext&&(r={channel:i.deliveryContext.channel,to:i.deliveryContext.to,accountId:i.deliveryContext.accountId})}catch{}return{deliveryContext:r,threadId:n}}async function WW(e){let{sessionId:t,sessionKey:n,sessionStore:r,storePath:i}=e,a=e.sessionEntry??r[n]??{sessionId:t,updatedAt:Date.now()},o=e.fallbackSessionFile?.trim(),s=_e(t,!a.sessionFile&&o?{...a,sessionFile:o}:a,{agentId:e.agentId,sessionsDir:e.sessionsDir}),c={...a,sessionId:t,updatedAt:Date.now(),sessionFile:s};return a.sessionId!==t||a.sessionFile!==s?(r[n]=c,await TW(i,e=>{e[n]={...e[n],...c}},e.activeSessionKey?{activeSessionKey:e.activeSessionKey}:void 0),{sessionFile:s,sessionEntry:c}):(r[n]=c,{sessionFile:s,sessionEntry:c})}function GW(e){let t=e.split(`#`)[0]??e;return t.split(`?`)[0]??t}function KW(e){let t=e.trim();if(!t)return null;let n=GW(t);try{let e=new URL(n),t=k.basename(e.pathname);if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}catch{let e=k.basename(n);return!e||e===`/`||e===`.`?null:e}}function qW(e){let t=e.mediaUrls?.filter(e=>e&&e.trim())??[];if(t.length>0){let e=t.map(e=>KW(e)).filter(e=>!!(e&&e.trim()));return e.length>0?e.join(`, `):`media`}return(e.text??``).trim()||null}async function JW(e){if(A.existsSync(e.sessionFile))return;await A.promises.mkdir(k.dirname(e.sessionFile),{recursive:!0});let t={type:`session`,version:Vt,id:e.sessionId,timestamp:new Date().toISOString(),cwd:process.cwd()};await A.promises.writeFile(e.sessionFile,`${JSON.stringify(t)}\n`,{encoding:`utf-8`,mode:384})}async function YW(e){let t=be({agentId:e.agentId,storePath:e.storePath}),n=_e(e.sessionId,e.sessionEntry,t),r=e.sessionEntry;if(e.sessionStore&&e.storePath){let i=HW(e.sessionKey).threadId,a=r?.sessionFile?void 0:de(e.sessionId,e.agentId,e.threadId??i),o=await WW({sessionId:e.sessionId,sessionKey:e.sessionKey,sessionStore:e.sessionStore,storePath:e.storePath,sessionEntry:r,agentId:t?.agentId,sessionsDir:t?.sessionsDir,fallbackSessionFile:a});n=o.sessionFile,r=o.sessionEntry}return{sessionFile:n,sessionEntry:r}}async function XW(e){let t=e.sessionKey.trim();if(!t)return{ok:!1,reason:`missing sessionKey`};let n=qW({text:e.text,mediaUrls:e.mediaUrls});if(!n)return{ok:!1,reason:`empty text`};let r=e.storePath??Ce(e.agentId),i=xW(r,{skipCache:!0}),a=i[t];if(!a?.sessionId)return{ok:!1,reason:`unknown sessionKey: ${t}`};let o;try{o=(await WW({sessionId:a.sessionId,sessionKey:t,sessionStore:i,storePath:r,sessionEntry:a,agentId:e.agentId,sessionsDir:k.dirname(r)})).sessionFile}catch(e){return{ok:!1,reason:e instanceof Error?e.message:String(e)}}return await JW({sessionFile:o,sessionId:a.sessionId}),Ht.open(o).appendMessage({role:`assistant`,content:[{type:`text`,text:n}],api:`openai-responses`,provider:`openclaw`,model:`delivery-mirror`,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`stop`,timestamp:Date.now()}),VW(o),{ok:!0,sessionFile:o}}function ZW(e,t,n){return e.mode===`off`?!1:e.mode===`all`?!0:t.trim()!==n.trim()}function QW(e){return e.cfg?.session?.scope===`global`?`global`:yH({cfg:e.cfg,agentId:e.agentId})}function $W(e){return xH({cfg:e.cfg,agentId:e.agentId,sessionKey:e.sessionKey})}function eG(e){let t=e.sessionKey?.trim()??``,n=l({sessionKey:t,config:e.cfg}),r=e.cfg,i=BT(r,n),a=QW({cfg:r,agentId:n}),o=t?ZW(i,$W({cfg:r,agentId:n,sessionKey:t}),a):!1;return{agentId:n,sessionKey:t,mainSessionKey:a,mode:i.mode,sandboxed:o,toolPolicy:MT(r,n)}}function tG(e){let t=e.toolName.trim().toLowerCase();if(!t)return;let n=eG({cfg:e.cfg,sessionKey:e.sessionKey});if(!n.sandboxed)return;let r=new Set(_T(n.toolPolicy.deny)),i=_T(n.toolPolicy.allow),a=i.length>0?new Set(i):null,o=r.has(t),s=a?!a.has(t):!1;if(!o&&!s)return;let c=[],l=[];o&&(c.push(`deny list`),l.push(`Remove "${t}" from ${n.toolPolicy.sources.deny.key}.`)),s&&(c.push(`allow list`),l.push(`Add "${t}" to ${n.toolPolicy.sources.allow.key} (or set it to [] to allow all).`));let u=[];u.push(`Tool "${t}" blocked by sandbox tool policy (mode=${n.mode}).`),u.push(`Session: ${n.sessionKey||`(unknown)`}`),u.push(`Reason: ${c.join(` + `)}`),u.push(`Fix:`),u.push(`- agents.defaults.sandbox.mode=off (disable sandbox)`);for(let e of l)u.push(`- ${e}`);return n.mode===`non-main`&&u.push(`- Use main session key (direct): ${n.mainSessionKey}`),u.push(`- See: ${oi(`openclaw sandbox explain --session ${n.sessionKey}`)}`),u.join(`
64
64
  `)}function nG(){try{if(bt(`which rg`,{encoding:`utf8`,stdio:[`ignore`,`pipe`,`ignore`],timeout:2e3}).trim())return}catch{}if(j.platform()===`darwin`)return{command:`/usr/bin/true`}}let rG=!1,iG=null;function aG(e,t){if(e===null)return!1;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return!1}}let oG=null;async function sG(){return oG||=(await import(`@anthropic-ai/sandbox-runtime`)).SandboxManager,oG}const cG={network:{allowedDomains:[`github.com`,`*.github.com`,`*.githubusercontent.com`,`npmjs.org`,`*.npmjs.org`,`registry.npmjs.org`,`pypi.org`,`*.pypi.org`,`api.anthropic.com`,`*.openai.com`,`*.qq.com`,`*.imtt.qq.com`],deniedDomains:[],allowLocalBinding:!0},filesystem:{denyRead:[`~/.ssh`,`~/.gnupg`,`~/.aws/credentials`],allowWrite:[`.`,`/tmp`,`/private/tmp`,`/var/tmp`,`/private/var/tmp`],denyWrite:[`.env`,`.env.local`,`.env.production`]}};function lG(e,t){return e.map(e=>e===`.`?t?k.resolve(t):process.cwd():e===`~`||e.startsWith(`~/`)?k.resolve(j.homedir(),e.slice(e.startsWith(`~/`)?2:1)):e)}function uG(e,t){let n=nG(),r=n?{ripgrep:n}:{};if(!e)return{...cG,filesystem:{...cG.filesystem,allowWrite:lG(cG.filesystem?.allowWrite??[],t)},...r};let i=e.allowWrite??cG.filesystem?.allowWrite??[],a=e.allowedDomains?.includes(`*`);return{network:{allowedDomains:a?void 0:e.allowedDomains??cG.network?.allowedDomains??[],deniedDomains:a?[]:e.deniedDomains??cG.network?.deniedDomains??[],allowLocalBinding:e.allowLocalBinding??cG.network?.allowLocalBinding??!0,allowUnixSockets:e.allowUnixSockets},filesystem:{denyRead:e.denyRead??cG.filesystem?.denyRead??[],allowWrite:lG(i,t),denyWrite:e.denyWrite??cG.filesystem?.denyWrite??[]},...r}}async function dG(e){let t=e??uG();if(!(rG&&aG(iG,t)))try{await(await sG()).initialize(t,void 0,!0),rG=!0,iG=t,console.log(`[QBotClaw:SRT:Init] ✅ sandbox-runtime 初始化成功 | config=${JSON.stringify(t,null,2)}`),_G()}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);throw console.log(`[QBotClaw:SRT:Init] ❌ sandbox-runtime 初始化失败: ${t}`),e}}async function fG(e){rG||await dG();try{return await(await sG()).wrapWithSandbox(e)}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);throw console.log(`[QBotClaw:SRT:Exec] ❌ wrapWithSandbox 失败: ${t}`),e}}async function pG(){if(rG)try{await(await sG()).reset(),rG=!1,iG=null}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);console.log(`[QBotClaw:SRT:Cleanup] ❌ sandbox-runtime 重置失败: ${t}`)}}async function mG(e){if(!rG)return[];try{return(await sG()).getSandboxViolationStore().getViolationsForCommand(e)}catch{return[]}}async function hG(){if(rG)try{(await sG()).cleanupAfterCommand()}catch{}}let gG=!1;function _G(){if(!gG){gG=!0,process.on(`exit`,()=>{rG&&(console.log(`[QBotClaw:SRT:Cleanup] 🧹 进程退出,执行 SRT 清理...`),pG())});for(let e of[`SIGTERM`,`SIGINT`])process.on(e,()=>{pG().finally(()=>{process.kill(process.pid,e)})})}}async function vG(e,n,r){if(await M.mkdir(e,{recursive:!0}),n){let r=D(n),i=[S,we,ve,ce,xe,g,t];for(let t of i){let n=k.join(r,t),i=k.join(e,t);try{await M.access(i)}catch{try{let e=await Ee({absolutePath:n,rootPath:r,boundaryLabel:`sandbox seed workspace`});if(!e.ok)continue;try{let t=A.readFileSync(e.fd,`utf-8`);await M.writeFile(i,t,{encoding:`utf-8`,flag:`wx`})}finally{A.closeSync(e.fd)}}catch{}}}}await fe({dir:e,ensureBootstrapFiles:!r})}async function yG(e){let{cfg:t,rawSessionKey:n}=e,r=D(e.workspaceDir?.trim()||ee),i=D(t.workspaceRoot),a=jI(t.scope,n),o=t.scope===`shared`?i:AI(i,a),s=t.workspaceAccess===`rw`?r:o;if(s===o){if(await vG(o,r,e.config?.agents?.defaults?.skipBootstrap),t.workspaceAccess!==`rw`)try{await JO({sourceWorkspaceDir:r,targetWorkspaceDir:o,config:e.config})}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);Re.error?.(`Sandbox skill sync failed: ${t}`)}}else await M.mkdir(s,{recursive:!0});return{agentWorkspaceDir:r,scopeKey:a,sandboxWorkspaceDir:o,workspaceDir:s}}async function bG(e){if(e.docker.user?.trim())return e.docker;let t=e.stat??(e=>M.stat(e));try{let n=await t(e.workspaceDir),r=Number.isInteger(n.uid)?n.uid:null,i=Number.isInteger(n.gid)?n.gid:null;return r===null||i===null||r<0||i<0?e.docker:{...e.docker,user:`${r}:${i}`}}catch{return e.docker}}function xG(e){let t=e.sessionKey?.trim();if(!t)return null;let n=eG({cfg:e.config,sessionKey:t});if(!n.sandboxed)return console.log(`[QBotClaw:Sandbox:Init] ❌ 沙箱未启用 | mode=${n.mode} | sessionKey=${t} | sandboxed=false`),null;let r=BT(e.config,n.agentId);return console.log(`[QBotClaw:Sandbox:Init] ✅ 沙箱已启用 | mode=${n.mode} | agentId=${n.agentId} | scope=${r.scope}`),{rawSessionKey:t,runtime:n,cfg:r}}async function SG(e){let t=xG(e);if(!t)return null;let{rawSessionKey:n,cfg:r}=t;if(r.runtime===`srt`){let t=D(e.workspaceDir?.trim()||ee);await M.mkdir(t,{recursive:!0});let i=e.config?.agents?.defaults?.sandbox?.srt,a=uG(i,t);try{await dG(a)}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);return console.log(`[QBotClaw:SRT:Init] ❌ SRT 初始化失败,回退到非沙箱模式: ${t}`),Re.error?.(`SRT sandbox initialization failed: ${t}`),null}let o={enabled:!0,runtime:`srt`,sessionKey:n,workspaceDir:t,agentWorkspaceDir:t,workspaceAccess:r.workspaceAccess===`none`?`rw`:r.workspaceAccess,containerName:`srt-sandbox-${n}`,containerWorkdir:t,docker:r.docker,tools:r.tools,browserAllowHostControl:r.browser.allowHostControl};if(i?.skillMounts!==!1){let n=[{hostRoot:t,containerRoot:t,writable:o.workspaceAccess===`rw`,source:`workspace`}];for(let e of r.docker.binds??[]){let t=e.split(`:`);if(t.length>=2&&t[0]&&t[1]){let e=D(t[0]);n.push({hostRoot:e,containerRoot:e,writable:!t[2]?.includes(`ro`),source:`bind`})}}let s=lG(i?.allowWrite??a.filesystem?.allowWrite??[],t),c=new Set(n.map(e=>e.hostRoot));for(let e of s){if(c.has(e))continue;let t=!1;for(let n of c)if(e.startsWith(n+k.sep)||e===n){t=!0;break}t||(c.add(e),n.push({hostRoot:e,containerRoot:e,writable:!0,source:`allowWrite`}))}try{let r=GO(t,{config:e.config}),i=new Set;i.add(k.resolve(t));for(let e of r){let t=k.resolve(k.dirname(e.skill.baseDir));if(i.has(t))continue;let r=!1;for(let e of i)if(t.startsWith(e+k.sep)||t===e){r=!0;break}r||(i.add(t),n.push({hostRoot:t,containerRoot:t,writable:!1,source:`bind`}))}}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);console.log(`[QBotClaw:SRT:Init] ⚠️ Skills 源目录收集失败(非致命): ${t}`),Re.error?.(`SRT sandbox skill mount collection failed: ${t}`)}o.fsBridge=vk({workspaceDir:t,containerWorkdir:t,mounts:n})}else o.fsBridge=_k(t);return o}await ZL(r);let{agentWorkspaceDir:i,scopeKey:a,workspaceDir:o}=await yG({cfg:r,rawSessionKey:n,config:e.config,workspaceDir:e.workspaceDir}),s=await bG({docker:r.docker,workspaceDir:o}),c=s===r.docker?r:{...r,docker:s},l=await xL({sessionKey:n,workspaceDir:o,agentWorkspaceDir:i,cfg:c});console.log(`[QBotClaw:Sandbox:Init] 🐳 沙箱容器就绪 | containerName=${l}`);let u=await NL({scopeKey:a,workspaceDir:o,agentWorkspaceDir:i,cfg:c,evaluateEnabled:e.config?.browser?.evaluateEnabled??!0,bridgeAuth:r.browser.enabled?await(async()=>{let t=e.config??FS(),n=ME(t);try{n=(await PE({cfg:t})).auth}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);Re.error?.(`Sandbox browser auth ensure failed: ${t}`)}return n})():void 0}),d={enabled:!0,runtime:`docker`,sessionKey:n,workspaceDir:o,agentWorkspaceDir:i,workspaceAccess:c.workspaceAccess,containerName:l,containerWorkdir:c.docker.workdir,docker:c.docker,tools:c.tools,browserAllowHostControl:c.browser.allowHostControl,browser:u??void 0};return d.fsBridge=HL({sandbox:d}),d}async function CG(e){let t=xG(e);if(!t)return null;let{rawSessionKey:n,cfg:r}=t,{workspaceDir:i}=await yG({cfg:r,rawSessionKey:n,config:e.config,workspaceDir:e.workspaceDir});return{workspaceDir:i,containerWorkdir:r.docker.workdir}}function wG(e){if(typeof e!=`object`||!e)return JSON.stringify(e)??`null`;if(Array.isArray(e))return`[${e.map(e=>wG(e)).join(`,`)}]`;let t=e;return`{${Object.keys(t).toSorted().map(e=>`${JSON.stringify(e)}:${wG(t[e])}`).join(`,`)}}`}const TG=/\b(?:daily|weekly|monthly)(?:\/(?:daily|weekly|monthly))* (?:usage )?limit(?:s)?(?: (?:exhausted|reached|exceeded))?\b/i,EG={rateLimit:[/rate[_ ]limit|too many requests|429/,`model_cooldown`,`exceeded your current quota`,`resource has been exhausted`,`quota exceeded`,`resource_exhausted`,`usage limit`,/\btpm\b/i,`tokens per minute`,`tokens per day`],overloaded:[/overloaded_error|"type"\s*:\s*"overloaded_error"/i,`overloaded`,/service[_ ]unavailable.*(?:overload|capacity|high[_ ]demand)|(?:overload|capacity|high[_ ]demand).*service[_ ]unavailable/i,`high demand`],timeout:[`timeout`,`timed out`,`service unavailable`,`deadline exceeded`,`context deadline exceeded`,`connection error`,`network error`,`network request failed`,`fetch failed`,`socket hang up`,/\beconn(?:refused|reset|aborted)\b/i,/\benotfound\b/i,/\beai_again\b/i,/without sending (?:any )?chunks?/i,/\bstop reason:\s*(?:abort|error|malformed_response)\b/i,/\breason:\s*(?:abort|error|malformed_response)\b/i,/\bunhandled stop reason:\s*(?:abort|error|malformed_response)\b/i],billing:[/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment/i,`payment required`,`insufficient credits`,/insufficient[_ ]quota/i,`credit balance`,`plans & billing`,`insufficient balance`,`insufficient usd or diem balance`],authPermanent:[/api[_ ]?key[_ ]?(?:revoked|invalid|deactivated|deleted)/i,`invalid_api_key`,`key has been disabled`,`key has been revoked`,`account has been deactivated`,/could not (?:authenticate|validate).*(?:api[_ ]?key|credentials)/i,`permission_error`,`not allowed for this organization`],auth:[/invalid[_ ]?api[_ ]?key/,`incorrect api key`,`invalid token`,`authentication`,`re-authenticate`,`oauth token refresh failed`,`unauthorized`,`forbidden`,`access denied`,`insufficient permissions`,`insufficient permission`,/missing scopes?:/i,`expired`,`token has expired`,/\b401\b/,/\b403\b/,`no credentials found`,`no api key found`],format:[`string should match pattern`,`tool_use.id`,`tool_use_id`,`messages.1.content.1.tool_use.id`,`invalid request format`,/tool call id was.*must be/i]},DG=/^(?:error[:\s-]+)?billing(?:\s+error)?(?:[:\s-]+|$)|^(?:error[:\s-]+)?(?:credit balance|insufficient credits?|payment required|http\s*402\b)/i,OG=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|^\s*402\s+payment/i;function kG(e,t){if(!e)return!1;let n=e.toLowerCase();return t.some(e=>e instanceof RegExp?e.test(n):n.includes(e))}function AG(e){return kG(e,EG.format)}function jG(e){return kG(e,EG.rateLimit)}function MG(e){return kG(e,EG.timeout)}function NG(e){return TG.test(e)}function PG(e){let t=e.toLowerCase();return t?e.length>512?OG.test(t):kG(t,EG.billing)?!0:DG.test(e)?t.includes(`upgrade`)||t.includes(`credits`)||t.includes(`payment`)||t.includes(`plan`):!1:!1}function FG(e){return kG(e,EG.authPermanent)}function IG(e){return kG(e,EG.auth)}function LG(e){return kG(e,EG.overloaded)}const RG=T(`errors`);function zG(e,t){let n=e?.trim(),r=t?.trim(),i=n&&r?`${n} (${r})`:n||void 0;return i?`⚠️ ${i} returned a billing error — your API key has run out of credits or has an insufficient balance. Check your ${n} billing dashboard and top up or switch to a different API key.`:`⚠️ API provider returned a billing error — your API key has run out of credits or has an insufficient balance. Check your provider's billing dashboard and top up or switch to a different API key.`}const BG=zG();function VG(e){if(jG(e))return`⚠️ API rate limit reached. Please try again later.`;if(LG(e))return`The AI service is temporarily overloaded. Please try again in a moment.`}function HG(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`reasoning is mandatory`)||t.includes(`reasoning is required`)||t.includes(`requires reasoning`)||t.includes(`reasoning`)&&t.includes(`cannot be disabled`)}function UG(e){let t=e.toLowerCase();return/\btpm\b/i.test(t)||t.includes(`tokens per minute`)}function WG(e){if(!e)return!1;let t=e.toLowerCase();if(UG(e)||HG(e))return!1;let n=t.includes(`request size exceeds`),r=t.includes(`context window`)||t.includes(`context length`)||t.includes(`maximum context length`);return t.includes(`request_too_large`)||t.includes(`request exceeds the maximum size`)||t.includes(`context length exceeded`)||t.includes(`maximum context length`)||t.includes(`prompt is too long`)||t.includes(`exceeds model context window`)||t.includes(`model token limit`)||n&&r||t.includes(`context overflow:`)||t.includes(`exceed context limit`)||t.includes(`exceeds the model's maximum context`)||t.includes(`max_tokens`)&&t.includes(`exceed`)&&t.includes(`context`)||t.includes(`input length`)&&t.includes(`exceed`)&&t.includes(`context`)||t.includes(`is longer than`)&&r||t.includes(`413`)&&t.includes(`too large`)||t.includes(`context_window_exceeded`)||e.includes(`上下文过长`)||e.includes(`上下文超出`)||e.includes(`上下文长度超`)||e.includes(`超出最大上下文`)||e.includes(`请压缩上下文`)}const GG=/context window.*(too small|minimum is)/i,KG=/context.*overflow|context window.*(too (?:large|long)|exceed|over|limit|max(?:imum)?|requested|sent|tokens)|prompt.*(too (?:large|long)|exceed|over|limit|max(?:imum)?)|(?:request|input).*(?:context|window|length|token).*(too (?:large|long)|exceed|over|limit|max(?:imum)?)|(?:input|request).*(?:is longer|longer than).*(?:context|window|length)/i,qG=/rate limit|too many requests|requests per (?:minute|hour|day)|quota|throttl|429\b|tokens per day/i;function JG(e){return!e||UG(e)||HG(e)||PG(e)||GG.test(e)||jG(e)?!1:WG(e)?!0:qG.test(e)?!1:KG.test(e)}function YG(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`summarization failed`)||t.includes(`auto-compaction`)||t.includes(`compaction failed`)||t.includes(`compaction`)?JG(e)?!0:t.includes(`context overflow`):!1}const XG=/^(?:error|api\s*error|apierror|openai\s*error|anthropic\s*error|gateway\s*error)[:\s-]+/i,ZG=/<\s*\/?\s*final\s*>/gi,QG=/^(?:error|api\s*error|openai\s*error|anthropic\s*error|gateway\s*error|request failed|failed|exception)[:\s-]+/i,$G=/^(?:context overflow:|request_too_large\b|request size exceeds\b|request exceeds the maximum size\b|context length exceeded\b|maximum context length\b|prompt is too long\b|exceeds model context window\b)/i,eK=/^(?:http\s*)?(\d{3})\s+(.+)$/i,tK=/^(?:http\s*)?(\d{3})(?:\s+([\s\S]+))?$/i,nK=/^\s*(?:<!doctype\s+html\b|<html\b)/i,rK=new Set([521,522,523,524,525,526,530]),iK=new Set([499,500,502,503,504,521,522,523,524,529]),aK=[`error`,`bad request`,`not found`,`unauthorized`,`forbidden`,`internal server`,`service unavailable`,`gateway`,`rate limit`,`overloaded`,`timeout`,`timed out`,`invalid`,`too many requests`,`permission`],oK=[`insufficient credits`,`insufficient quota`,`credit balance`,`insufficient balance`,`plans & billing`,`add more credits`,`top up`],sK=[`upgrade your plan`,`upgrade plan`,`current plan`,`subscription`],cK=[`daily`,`weekly`,`monthly`],lK=[`try again`,`retry`,`temporary`,`cooldown`],uK=[`usage limit`,`rate limit`,`organization usage`],dK=[`organization`,`workspace`],fK=[`billing period`,`exceeded`,`reached`,`exhausted`],pK=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment required\b|^\s*402\s+.*used up your points\b/i,mK=/^(?:error[:\s-]+)?(?:(?:http\s*)?402(?:\s+payment required)?|payment required)(?:[:\s-]+|$)/i;function hK(e,t){return t.some(t=>e.includes(t))}function gK(e){return hK(e,oK)||hK(e,sK)&&e.includes(`limit`)||e.includes(`billing hard limit`)||e.includes(`hard limit reached`)||e.includes(`maximum allowed`)&&e.includes(`limit`)}function _K(e){let t=hK(e,cK),n=e.includes(`spend limit`)||e.includes(`spending limit`),r=hK(e,dK);return hK(e,lK)&&hK(e,uK)||t&&(e.includes(`usage limit`)||n)||t&&e.includes(`limit`)&&e.includes(`reset`)||r&&e.includes(`limit`)&&(n||hK(e,fK))}function vK(e){return e.trim().toLowerCase().replace(mK,``).trim()}function yK(e){let t=vK(e);return!t||gK(t)?`billing`:jG(t)||_K(t)?`rate_limit`:`billing`}function bK(e){return pK.test(e)?yK(e):null}function xK(e){let t=e.match(tK);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?{code:n,rest:(t[2]??``).trim()}:null}function SK(e){let t=e.trim();if(!t)return!1;let n=xK(t);return!n||n.code<500?!1:rK.has(n.code)?!0:n.code<600&&nK.test(n.rest)&&/<\/html>/i.test(n.rest)}function CK(e){let t=e.trim();if(!t)return!1;let n=xK(t);return n?iK.has(n.code):!1}function wK(e,t){return typeof e!=`number`||!Number.isFinite(e)?null:e===402?t?yK(t):`billing`:e===429?`rate_limit`:e===401||e===403?t&&FG(t)?`auth_permanent`:`auth`:e===408?`timeout`:e===503||e===499?t&&LG(t)?`overloaded`:`timeout`:e===502||e===504?`timeout`:e===529?`overloaded`:e===400?t&&PG(t)?`billing`:`format`:null}function TK(e){return e&&e.replace(ZG,``)}function EK(e){let t=e.trim();if(!t)return e;let n=t.split(/\n{2,}/);if(n.length<2)return e;let r=e=>e.trim().replace(/\s+/g,` `),i=[],a=null;for(let e of n){let t=r(e);a&&t===a||(i.push(e.trim()),a=t)}return i.length===n.length?e:i.join(`
65
65
 
66
- `)}function DK(e){if(SK(e))return!0;let t=e.match(eK);if(!t)return!1;let n=Number(t[1]);if(!Number.isFinite(n)||n<400)return!1;let r=t[2].toLowerCase();return aK.some(e=>r.includes(e))}function OK(e){return WG(e)?MK(e)||DK(e)||QG.test(e)||$G.test(e):!1}function kK(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(t.type===`error`||typeof t.request_id==`string`||typeof t.requestId==`string`)return!0;if(`error`in t){let e=t.error;if(e&&typeof e==`object`&&!Array.isArray(e)){let t=e;if(typeof t.message==`string`||typeof t.type==`string`||typeof t.code==`string`)return!0}}return!1}function AK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n=[t];XG.test(t)&&n.push(t.replace(XG,``).trim());for(let e of n)if(!(!e.startsWith(`{`)||!e.endsWith(`}`)))try{let t=JSON.parse(e);if(kK(t))return t}catch{}return null}function jK(e){if(!e)return null;let t=AK(e);return t?wG(t):null}function MK(e){return jK(e)!==null}function NK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n,r=t,i=r.match(/^(\d{3})\s+(.+)$/s);i&&(n=i[1],r=i[2].trim());let a=AK(r);if(!a)return null;let o=typeof a.request_id==`string`?a.request_id:typeof a.requestId==`string`?a.requestId:void 0,s=typeof a.type==`string`?a.type:void 0,c=typeof a.message==`string`?a.message:void 0,l,u;if(a.error&&typeof a.error==`object`&&!Array.isArray(a.error)){let e=a.error;typeof e.type==`string`&&(l=e.type),typeof e.code==`string`&&!l&&(l=e.code),typeof e.message==`string`&&(u=e.message)}return{httpCode:n,type:l??s,message:u??c,requestId:o}}function PK(e){let t=(e??``).trim();if(!t)return`LLM request failed with an unknown error.`;let n=xK(t);if(n&&SK(t))return`The AI service is temporarily unavailable (HTTP ${n.code}). Please try again in a moment.`;let r=t.match(eK);if(r){let e=r[2].trim();if(!e.startsWith(`{`))return`HTTP ${r[1]}: ${e}`}let i=NK(t);if(i?.message){let e=i.httpCode?`HTTP ${i.httpCode}`:`LLM error`,t=i.type?` ${i.type}`:``,n=i.requestId?` (request_id: ${i.requestId})`:``;return`${e}${t}: ${i.message}${n}`}return t.length>600?`${t.slice(0,600)}…`:t}function FK(e,t){let n=(e.errorMessage??``).trim();if(e.stopReason!==`error`&&!n)return;if(!n)return`LLM request failed with an unknown error.`;let r=n.match(/unknown tool[:\s]+["']?([a-z0-9_-]+)["']?/i)??n.match(/tool\s+["']?([a-z0-9_-]+)["']?\s+(?:not found|is not available)/i);if(r?.[1]){let e=tG({cfg:t?.cfg,sessionKey:t?.sessionKey,toolName:r[1]});if(e)return e}if(WG(n))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(HG(n))return`Reasoning is required for this model endpoint. Use /think minimal (or any non-off level) and try again.`;if(/incorrect role information|roles must alternate|400.*role|"message".*role.*information/i.test(n))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(UK(n))return`Session history looks corrupted (tool call input missing). Use /new to start a fresh session. If this keeps happening, reset the session or delete the corrupted session transcript.`;let i=n.match(/"type":"invalid_request_error".*?"message":"([^"]+)"/);return i?.[1]?`LLM request rejected: ${i[1]}`:VG(n)||(MG(n)?`LLM request timed out.`:PG(n)?zG(t?.provider,t?.model??e.model):DK(n)||MK(n)?PK(n):(n.length>600&&RG.warn(`Long error truncated: ${n.slice(0,200)}`),n.length>600?`${n.slice(0,600)}…`:n))}function IK(e,t){if(!e)return e;let n=t?.errorContext??!1,r=TK(e),i=r.trim();if(!i)return``;if(n){if(/incorrect role information|roles must alternate/i.test(i))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(OK(i))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(PG(i))return BG;if(MK(i)||DK(i))return PK(i);if(QG.test(i))return VG(i)||(MG(i)?`LLM request timed out.`:PK(i))}return EK(r.replace(/^(?:[ \t]*\r?\n)+/,``))}function LK(e){return!e||e.stopReason!==`error`?!1:jG(e.errorMessage??``)}const RK=/tool_(?:use|call)\.(?:input|arguments).*?(?:field required|required)/i,zK=/messages\.\d+\.content\.\d+\.tool_(?:use|call)\.(?:input|arguments)/i,BK=/image dimensions exceed max allowed size for many-image requests:\s*(\d+)\s*pixels/i,VK=/messages\.(\d+)\.content\.(\d+)\.image/i,HK=/image exceeds\s*(\d+(?:\.\d+)?)\s*mb/i;function UK(e){return e?RK.test(e)||zK.test(e):!1}function WK(e){return!e||e.stopReason!==`error`?!1:PG(e.errorMessage??``)}function GK(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`"type":"api_error"`)&&t.includes(`internal server error`)}function KK(e){if(!e||!e.toLowerCase().includes(`image dimensions exceed max allowed size`))return null;let t=e.match(BK),n=e.match(VK);return{maxDimensionPx:t?.[1]?Number.parseInt(t[1],10):void 0,messageIndex:n?.[1]?Number.parseInt(n[1],10):void 0,contentIndex:n?.[2]?Number.parseInt(n[2],10):void 0,raw:e}}function qK(e){return!!KK(e)}function JK(e){if(!e)return null;let t=e.toLowerCase();if(!t.includes(`image exceeds`)||!t.includes(`mb`))return null;let n=e.match(HK);return{maxMb:n?.[1]?Number.parseFloat(n[1]):void 0,raw:e}}function YK(e){return e?!!JK(e):!1}function XK(e){return!qK(e)&&AG(e)}function ZK(e){return!e||e.stopReason!==`error`?!1:IG(e.errorMessage??``)}function QK(e){if(!e)return!1;let t=e.toLowerCase();return!!(t.includes(`unknown model`)||t.includes(`model not found`)||t.includes(`model_not_found`)||t.includes(`not_found_error`)||t.includes(`does not exist`)&&t.includes(`model`)||t.includes(`invalid model`)&&!t.includes(`invalid model reference`)||/models\/[^\s]+ is not found/i.test(e)||/\b404\b/.test(e)&&/not[-_ ]?found/i.test(e))}function $K(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`session not found`)||t.includes(`session does not exist`)||t.includes(`session expired`)||t.includes(`session invalid`)||t.includes(`conversation not found`)||t.includes(`conversation does not exist`)||t.includes(`conversation expired`)||t.includes(`conversation invalid`)||t.includes(`no such session`)||t.includes(`invalid session`)||t.includes(`session id not found`)||t.includes(`conversation id not found`)}function eq(e){return qK(e)||YK(e)?null:$K(e)?`session_expired`:QK(e)?`model_not_found`:bK(e)||(NG(e)?PG(e)?`billing`:`rate_limit`:jG(e)?`rate_limit`:LG(e)?`overloaded`:CK(e)?xK(e.trim())?.code===529?`overloaded`:`timeout`:GK(e)?`timeout`:XK(e)?`format`:PG(e)?`billing`:MG(e)?`timeout`:FG(e)?`auth_permanent`:IG(e)?`auth`:null)}function tq(e){return eq(e)!==null}function nq(e){return!e||e.stopReason!==`error`?!1:tq(e.errorMessage??``)}function rq(e){return e===`google-gemini-cli`||e===`google-generative-ai`}function iq(e){if(!e)return null;let t=null;if(typeof e==`string`){let n=e.trim();if(!n.startsWith(`{`)||!n.endsWith(`}`))return null;try{t=JSON.parse(n)}catch{return null}}else typeof e==`object`&&(t=e);if(!t)return null;let n=typeof t.id==`string`?t.id:``,r=typeof t.type==`string`?t.type:``;return n.startsWith(`rs_`)&&(r===`reasoning`||r.startsWith(`reasoning.`))?{id:n,type:r}:null}function aq(e,t){for(let n=t+1;n<e.length;n++){let t=e[n];if(!t||typeof t!=`object`||t.type!==`thinking`)return!0}return!1}function oq(e){let t=e.indexOf(`|`);return t<=0||t>=e.length-1?{callId:e}:{callId:e.slice(0,t),itemId:e.slice(t+1)}}function sq(e){return e===`toolCall`||e===`toolUse`||e===`functionCall`}function cq(e){let t=!1,n=[],r=null;for(let i of e){if(!i||typeof i!=`object`){r=null,n.push(i);continue}let e=i.role;if(e===`assistant`){let e=i;if(!Array.isArray(e.content)){r=null,n.push(i);continue}let a=new Map,o=!1,s=!1,c=e.content.map(e=>{if(!e||typeof e!=`object`)return e;let t=e;if(t.type===`thinking`&&iq(t.thinkingSignature))return o=!0,e;let n=e;if(!sq(n.type)||typeof n.id!=`string`)return e;let r=oq(n.id);return o||!r.itemId||!r.itemId.startsWith(`fc_`)?e:(s=!0,a.set(n.id,r.callId),{...e,id:r.callId})});if(r=a.size>0?a:null,!s){n.push(i);continue}t=!0,n.push({...e,content:c});continue}if(e===`toolResult`&&r&&r.size>0){let e=i,a=!1,o={};if(typeof e.toolCallId==`string`){let t=r.get(e.toolCallId);t&&t!==e.toolCallId&&(o.toolCallId=t,a=!0)}if(typeof e.toolUseId==`string`){let t=r.get(e.toolUseId);t&&t!==e.toolUseId&&(o.toolUseId=t,a=!0)}if(!a){n.push(i);continue}t=!0,n.push({...e,...o});continue}r=null,n.push(i)}return t?n:e}function lq(e){let t=[];for(let n of e){if(!n||typeof n!=`object`){t.push(n);continue}if(n.role!==`assistant`){t.push(n);continue}let e=n;if(!Array.isArray(e.content)){t.push(n);continue}let r=!1,i=[];for(let t=0;t<e.content.length;t++){let n=e.content[t];if(!n||typeof n!=`object`){i.push(n);continue}let a=n;if(a.type!==`thinking`){i.push(n);continue}if(!iq(a.thinkingSignature)){i.push(n);continue}if(aq(e.content,t)){i.push(n);continue}r=!0}if(!r){t.push(n);continue}i.length!==0&&t.push({...e,content:i})}return t}const uq=new Set([`toolCall`,`toolUse`,`functionCall`]);function dq(e,t=`strict`){if(!e||typeof e!=`string`)return t===`strict9`?`defaultid`:`defaulttoolid`;if(t===`strict9`){let t=e.replace(/[^a-zA-Z0-9]/g,``);return t.length>=9?t.slice(0,9):t.length>0?mq(t,9):mq(`sanitized`,9)}let n=e.replace(/[^a-zA-Z0-9]/g,``);return n.length>0?n:`sanitizedtoolid`}function fq(e){let t=e.content;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let t=e;typeof t.id!=`string`||!t.id||typeof t.type==`string`&&uq.has(t.type)&&n.push({id:t.id,name:typeof t.name==`string`?t.name:void 0})}return n}function pq(e){let t=e.toolCallId;if(typeof t==`string`&&t)return t;let n=e.toolUseId;return typeof n==`string`&&n?n:null}function mq(e,t=8){return kt(`sha256`).update(e).digest(`hex`).slice(0,t)}function hq(e){if(e.mode===`strict9`){let t=dq(e.id,e.mode),n=t.length>=9?t.slice(0,9):``;if(n&&!e.used.has(n))return n;for(let t=0;t<1e3;t+=1){let n=mq(`${e.id}:${t}`,9);if(!e.used.has(n))return n}return mq(`${e.id}:${Date.now()}`,9)}let t=dq(e.id,e.mode).slice(0,40);if(!e.used.has(t))return t;let n=mq(e.id),r=e.mode===`strict`?``:`_`,i=40-r.length-n.length,a=`${t.length>i?t.slice(0,i):t}${r}${n}`;if(!e.used.has(a))return a;for(let t=2;t<1e3;t+=1){let n=e.mode===`strict`?`x${t}`:`_${t}`,r=`${a.slice(0,40-n.length)}${n}`;if(!e.used.has(r))return r}let o=e.mode===`strict`?`t${Date.now()}`:`_${Date.now()}`;return`${a.slice(0,40-o.length)}${o}`}function gq(e){let t=e.message.content;if(!Array.isArray(t))return e.message;let n=!1,r=t.map(t=>{if(!t||typeof t!=`object`)return t;let r=t,i=r.type,a=r.id;if(i!==`functionCall`&&i!==`toolUse`&&i!==`toolCall`||typeof a!=`string`||!a)return t;let o=e.resolve(a);return o===a?t:(n=!0,{...t,id:o})});return n?{...e.message,content:r}:e.message}function _q(e){let t=typeof e.message.toolCallId==`string`&&e.message.toolCallId?e.message.toolCallId:void 0,n=e.message.toolUseId,r=typeof n==`string`&&n?n:void 0,i=t?e.resolve(t):void 0,a=r?e.resolve(r):void 0;return i===t&&a===r?e.message:{...e.message,...i&&{toolCallId:i},...a&&{toolUseId:a}}}function vq(e,t=`strict`){let n=new Map,r=new Set,i=e=>{let i=n.get(e);if(i)return i;let a=hq({id:e,used:r,mode:t});return n.set(e,a),r.add(a),a},a=!1,o=e.map(e=>{if(!e||typeof e!=`object`)return e;let t=e.role;if(t===`assistant`){let t=gq({message:e,resolve:i});return t!==e&&(a=!0),t}if(t===`toolResult`){let t=_q({message:e,resolve:i});return t!==e&&(a=!0),t}return e});return a?o:e}function yq(e){let t=0;for(let n=0;n<e.length;n+=1)e.charCodeAt(n)<=32||(t+=1);if(t===0)return 0;let n=0,r=e.length-1;for(;r>=0&&e.charCodeAt(r)<=32;)--r;if(r>=0&&e[r]===`=`){for(n=1,--r;r>=0&&e.charCodeAt(r)<=32;)--r;r>=0&&e[r]===`=`&&(n=2)}let i=Math.floor(t*3/4)-n;return Math.max(0,i)}const bq=/^[A-Za-z0-9+/]+={0,2}$/;function xq(e){let t=e.replace(/\s+/g,``);if(!(!t||t.length%4!=0||!bq.test(t)))return t}function Sq(e){let t=e?.agents?.defaults?.imageMaxDimensionPx;return typeof t!=`number`||!Number.isFinite(t)?{}:{maxDimensionPx:Math.max(1,Math.floor(t))}}const Cq=T(`agents/tool-images`);function wq(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.type===`image`&&typeof t.data==`string`&&typeof t.mimeType==`string`}function Tq(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.type===`text`&&typeof t.text==`string`}function Eq(e){let t=e.trim();if(t){if(t.startsWith(`/9j/`))return`image/jpeg`;if(t.startsWith(`iVBOR`))return`image/png`;if(t.startsWith(`R0lGOD`))return`image/gif`}}function Dq(e){return!Number.isFinite(e)||e<1024?`${Math.max(0,Math.round(e))}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/(1024*1024)).toFixed(2)}MB`}function Oq(e){for(let t of e.split(/\r?\n/u)){let e=t.trim();if(!e.startsWith(`MEDIA:`))continue;let n=e.slice(6).trim();if(n)return(n.match(/^`([^`]+)`$/u)?.[1]??n).trim()}}function kq(e){let t=e.trim();if(!t)return;try{let e=new URL(t).pathname.split(`/`).filter(Boolean).at(-1);return e&&e.length>0?e:void 0}catch{}let n=t.replaceAll(`\\`,`/`).split(`/`).filter(Boolean).at(-1);return n&&n.length>0?n:void 0}function Aq(e){let t=e.block;for(let e of[`fileName`,`filename`,`path`,`url`]){let n=t[e];if(typeof n!=`string`||n.trim().length===0)continue;let r=kq(n);if(r)return r}if(typeof t.name==`string`&&t.name.trim().length>0)return t.name.trim();if(e.mediaPathHint){let t=kq(e.mediaPathHint);if(t)return t}if(typeof e.label==`string`&&e.label.startsWith(`read:`)){let t=kq(e.label.slice(5));if(t)return t}}async function jq(e){let t=Buffer.from(e.base64,`base64`),n=await IP(t),r=n?.width,i=n?.height,a=t.byteLength>e.maxBytes,o=typeof r==`number`&&typeof i==`number`,s=o&&(r>e.maxDimensionPx||i>e.maxDimensionPx);if(o&&!a&&r<=e.maxDimensionPx&&i<=e.maxDimensionPx)return{base64:e.base64,mimeType:e.mimeType,resized:!1,width:r,height:i};let c=o?Math.max(r??0,i??0):e.maxDimensionPx,l=c>0?Math.min(e.maxDimensionPx,c):e.maxDimensionPx,u=DP(e.maxDimensionPx,l),d=null;for(let n of u)for(let o of EP){let c=await RP({buffer:t,maxSide:n,quality:o,withoutEnlargement:!0});if((!d||c.byteLength<d.size)&&(d={buffer:c,size:c.byteLength}),c.byteLength<=e.maxBytes){let l=typeof r==`number`&&typeof i==`number`?`${r}x${i}px`:`unknown`,u=e.fileName?`${e.fileName} ${l}`:l,d=t.byteLength>0?Number(((t.byteLength-c.byteLength)/t.byteLength*100).toFixed(1)):0;return Cq.info(`Image resized to fit limits: ${u} ${Dq(t.byteLength)} -> ${Dq(c.byteLength)} (-${d}%)`,{label:e.label,fileName:e.fileName,sourceMimeType:e.mimeType,sourceWidth:r,sourceHeight:i,sourceBytes:t.byteLength,maxBytes:e.maxBytes,maxDimensionPx:e.maxDimensionPx,triggerOverBytes:a,triggerOverDimensions:s,outputMimeType:`image/jpeg`,outputBytes:c.byteLength,outputQuality:o,outputMaxSide:n,byteReductionPct:d}),{base64:c.toString(`base64`),mimeType:`image/jpeg`,resized:!0,width:r,height:i}}}let f=d?.buffer??t,p=(e.maxBytes/(1024*1024)).toFixed(0),m=(f.byteLength/(1024*1024)).toFixed(2),h=typeof r==`number`&&typeof i==`number`?`${r}x${i}px`:`unknown`,g=e.fileName?`${e.fileName} ${h}`:h;throw Cq.warn(`Image resize failed to fit limits: ${g} best=${Dq(f.byteLength)} limit=${Dq(e.maxBytes)}`,{label:e.label,fileName:e.fileName,sourceMimeType:e.mimeType,sourceWidth:r,sourceHeight:i,sourceBytes:t.byteLength,maxDimensionPx:e.maxDimensionPx,maxBytes:e.maxBytes,smallestCandidateBytes:f.byteLength,triggerOverBytes:a,triggerOverDimensions:s}),Error(`Image could not be reduced below ${p}MB (got ${m}MB)`)}async function Mq(e,t,n={}){let r=Math.max(n.maxDimensionPx??1200,1),i=Math.max(n.maxBytes??5242880,1),a=[],o;for(let n of e){if(Tq(n)){let e=Oq(n.text);e&&(o=e)}if(!wq(n)){a.push(n);continue}let e=n.data.trim();if(!e){a.push({type:`text`,text:`[${t}] omitted empty image payload`});continue}let s=xq(e);if(!s){a.push({type:`text`,text:`[${t}] omitted image payload: invalid base64`});continue}try{let e=Eq(s)??n.mimeType,c=await jq({base64:s,mimeType:e,maxDimensionPx:r,maxBytes:i,label:t,fileName:Aq({block:n,label:t,mediaPathHint:o})});a.push({...n,data:c.base64,mimeType:c.resized?c.mimeType:e})}catch(e){a.push({type:`text`,text:`[${t}] omitted image payload: ${String(e)}`})}}return a}async function Nq(e,t,n={}){if(e.length===0)return{images:e,dropped:0};let r=(await Mq(e,t,n)).filter(wq);return{images:r,dropped:Math.max(0,e.length-r.length)}}async function Pq(e,t,n={}){let r=Array.isArray(e.content)?e.content:[];if(!r.some(e=>wq(e)||Tq(e)))return e;let i=await Mq(r,t,n);return{...e,content:i}}async function Fq(e,t,n){let r=(n?.sanitizeMode??`full`)===`full`,i={maxDimensionPx:n?.maxDimensionPx,maxBytes:n?.maxBytes},a=n?.sanitizeToolCallIds===!0?vq(e,n.toolCallIdMode):e,o=[];for(let e of a){if(!e||typeof e!=`object`){o.push(e);continue}let a=e.role;if(a===`toolResult`){let n=e,r=await Mq(Array.isArray(n.content)?n.content:[],t,i);o.push({...n,content:r});continue}if(a===`user`){let n=e,r=n.content;if(Array.isArray(r)){let e=await Mq(r,t,i);o.push({...n,content:e});continue}}if(a===`assistant`){let a=e;if(a.stopReason===`error`){let e=a.content;if(Array.isArray(e)){let n=await Mq(e,t,i);o.push({...a,content:n})}else o.push(a);continue}let s=a.content;if(Array.isArray(s)){if(!r){let e=await Mq(s,t,i);o.push({...a,content:e});continue}let e=await Mq((n?.preserveSignatures?s:Bw(s,n?.sanitizeThoughtSignatures)).filter(e=>{if(!e||typeof e!=`object`)return!0;let t=e;return t.type!==`text`||typeof t.text!=`string`?!0:t.text.trim().length>0}),t,i);if(e.length===0)continue;o.push({...a,content:e});continue}}o.push(e)}return o}function Iq(e){return e.trim().toLowerCase().replace(/\p{Emoji_Presentation}|\p{Extended_Pictographic}/gu,``).replace(/\s+/g,` `).trim()}function Lq(e,t){return t.length===0||!e||e.length<10?!1:t.some(t=>!t||t.length<10?!1:e.includes(t)||t.includes(e))}function Rq(e,t){if(t.length===0)return!1;let n=Iq(e);return!n||n.length<10?!1:Lq(n,t.map(Iq))}function zq(e){if(!e)return``;let t=e.trim().toLowerCase();return t===`z.ai`||t===`z-ai`?`zai`:t}function Bq(e){return zq(e)===`zai`}const Vq=[`openai/gpt-5.4`,`openai/gpt-5.4-pro`,`openai/gpt-5.2`,`openai-codex/gpt-5.4`,`openai-codex/gpt-5.3-codex`,`openai-codex/gpt-5.3-codex-spark`,`openai-codex/gpt-5.2-codex`,`openai-codex/gpt-5.1-codex`,`github-copilot/gpt-5.2-codex`,`github-copilot/gpt-5.2`],Hq=new Set(Vq.map(e=>e.toLowerCase())),Uq=new Set(Vq.map(e=>e.split(`/`)[1]?.toLowerCase()).filter(e=>!!e));function Wq(e){if(!e)return;let t=e.trim().toLowerCase(),n=t.replace(/[\s_-]+/g,``);if(n===`adaptive`||n===`auto`)return`adaptive`;if(n===`xhigh`||n===`extrahigh`)return`xhigh`;if([`off`].includes(t))return`off`;if([`on`,`enable`,`enabled`].includes(t))return`low`;if([`min`,`minimal`].includes(t))return`minimal`;if([`low`,`thinkhard`,`think-hard`,`think_hard`].includes(t))return`low`;if([`mid`,`med`,`medium`,`thinkharder`,`think-harder`,`harder`].includes(t))return`medium`;if([`high`,`ultra`,`ultrathink`,`think-hard`,`thinkhardest`,`highest`,`max`].includes(t))return`high`;if([`think`].includes(t))return`minimal`}function Gq(e,t){let n=t?.trim().toLowerCase();if(!n)return!1;let r=e?.trim().toLowerCase();return r?Hq.has(`${r}/${n}`):Uq.has(n)}function Kq(e,t){let n=[`off`,`minimal`,`low`,`medium`,`high`];return Gq(e,t)&&n.push(`xhigh`),n.push(`adaptive`),n}function qq(e,t){return Bq(e)?[`off`,`on`]:Kq(e,t)}function Jq(e,t,n=`, `){return qq(e,t).join(n)}function Yq(){let e=[...Vq];return e.length===0?`unknown model`:e.length===1?e[0]:e.length===2?`${e[0]} or ${e[1]}`:`${e.slice(0,-1).join(`, `)} or ${e[e.length-1]}`}function Xq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`all`,`everything`].includes(t))return`full`;if([`on`,`minimal`,`true`,`yes`,`1`].includes(t))return`on`}function Zq(e){return Xq(e)}function Qq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`enable`,`enabled`].includes(t)||[`tokens`,`token`,`tok`,`minimal`,`min`].includes(t))return`tokens`;if([`full`,`session`].includes(t))return`full`}function $q(e){return Qq(e)??`off`}function eJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`auto`,`auto-approve`,`autoapprove`].includes(t))return`full`;if([`ask`,`prompt`,`approval`,`approve`].includes(t))return`ask`;if([`on`,`true`,`yes`,`1`].includes(t))return`on`}function tJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`hide`,`hidden`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`show`,`visible`,`enable`,`enabled`].includes(t))return`on`;if([`stream`,`streaming`,`draft`,`live`].includes(t))return`stream`}function nJ(e){let t=e.match(/supported values are:\s*([^\n.]+)/i)??e.match(/supported values:\s*([^\n.]+)/i);if(!t?.[1])return[];let n=t[1],r=Array.from(n.matchAll(/['"]([^'"]+)['"]/g)).map(e=>e[1]?.trim());return r.length>0?r.filter(e=>!!e):n.split(/,|\band\b/gi).map(e=>e.replace(/^[^a-zA-Z]+|[^a-zA-Z]+$/g,``).trim()).filter(Boolean)}function rJ(e){let t=e.message?.trim();if(!t)return;let n=nJ(t);if(n.length===0)return/not supported/i.test(t)&&!e.attempted.has(`off`)?`off`:void 0;for(let t of n){let n=Wq(t);if(n&&!e.attempted.has(n))return n}}function iJ(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(!r||typeof r!=`object`){t.push(r);continue}if(r.role!==`assistant`){t.push(r);continue}let i=r,a=e[n+1];if((a&&typeof a==`object`?a.role:void 0)!==`user`){t.push(r);continue}let o=a,s=new Set;if(Array.isArray(o.content))for(let e of o.content)e&&e.type===`toolResult`&&e.toolUseId&&s.add(e.toolUseId);let c=Array.isArray(i.content)?i.content:[],l=c.filter(e=>e?e.type===`toolUse`?s.has(e.id||``):!0:!1);c.length>0&&l.length===0?t.push({...i,content:[{type:`text`,text:`[tool calls omitted]`}]}):t.push({...i,content:l})}return t}function aJ(e){let{messages:t,role:n,merge:r}=e;if(!Array.isArray(t)||t.length===0)return t;let i=[],a;for(let e of t){if(!e||typeof e!=`object`){i.push(e);continue}let t=e.role;if(!t){i.push(e);continue}if(t===a&&a===n){let t=i[i.length-1],n=e;if(t&&typeof t==`object`){let e=t;i[i.length-1]=r(e,n);continue}}i.push(e),a=t}return i}function oJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...e,content:n,...t.usage&&{usage:t.usage},...t.stopReason&&{stopReason:t.stopReason},...t.errorMessage&&{errorMessage:t.errorMessage}}}function sJ(e){return aJ({messages:e,role:`assistant`,merge:oJ})}function cJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...t,content:n,timestamp:t.timestamp??e.timestamp}}function lJ(e){return aJ({messages:iJ(e),role:`user`,merge:cJ})}const uJ=64e3,dJ=8e3,fJ=/\brequest[_ ]?id\b\s*[:=]\s*["'()]*([A-Za-z0-9._:-]+)/i,pJ=[String.raw`\b(?:x-)?api[-_]?key\b\s*[:=]\s*(["']?)([^\s"'\\;]+)\1`,String.raw`"(?:api[-_]?key|api_key)"\s*:\s*"([^"]+)"`,String.raw`(?:\bCookie\b\s*[:=]\s*[^;=\s]+=|;\s*[^;=\s]+=)([^;\s\r\n]+)`];function mJ(){let e=Ve()?.redactPatterns;return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function hJ(e,t){let n=e?.trim();if(n)return n.length>t?`${n.slice(0,t)}…`:n}function gJ(e){let t=e?.trim();if(t)return t.length>uJ?t.slice(0,uJ):t}function _J(e,t=200){let n=e?.trim();if(!n)return;let r=Array.from(n).filter(e=>{let t=e.charCodeAt(0);return!(t<=8||t===11||t===12||t>=14&&t<=31||t===127)}).join(``).replace(/[\r\n\t]+/g,` `).replace(/\s+/g,` `).trim();return r.length>t?`${r.slice(0,t)}…`:r}function vJ(e,t){return!e||!t?e:e.split(t).join(Rw(t,{len:12}))}function yJ(e){if(!e)return e;let t=mJ();return p(e,{mode:`tools`,patterns:[...d(),...t,...pJ]})}function bJ(e){if(e)return e.match(fJ)?.[1]?.trim()||void 0}function xJ(e){let t=e.message&&e.message.length>dJ?e.message.slice(0,dJ):e.message;return(e.httpCode||e.type||t?wG({httpCode:e.httpCode,type:e.type,message:t}):null)||(e.requestId?e.raw.split(e.requestId).join(`<request_id>`):jK(e.raw))}function SJ(e){let t=gJ(e);if(!t)return{};try{let e=NK(t),n=e?.requestId??bJ(t),r=n?Rw(n,{len:12}):void 0,i=xJ({raw:t,requestId:n,httpCode:e?.httpCode,type:e?.type,message:e?.message}),a=vJ(yJ(t),n),o=vJ(yJ(e?.message),n);return{rawErrorPreview:hJ(a,400),rawErrorHash:Rw(t,{len:12}),rawErrorFingerprint:i?Rw(i,{len:12}):void 0,httpCode:e?.httpCode,providerErrorType:e?.type,providerErrorMessagePreview:hJ(o,200),requestIdHash:r}}catch{return{}}}function CJ(e){let t=SJ(e);return{textPreview:t.rawErrorPreview,textHash:t.rawErrorHash,textFingerprint:t.rawErrorFingerprint,httpCode:t.httpCode,providerErrorType:t.providerErrorType,providerErrorMessagePreview:t.providerErrorMessagePreview,requestIdHash:t.requestIdHash}}const wJ=T(`agent/embedded`);function TJ(e){let t=e.reason===`billing`||e.reason===`auth_permanent`?`disabled`:`cooldown`,n=e.previous?.cooldownUntil,r=e.previous?.disabledUntil,i=t===`disabled`?typeof r==`number`&&Number.isFinite(r)&&r>e.now&&r===e.next.disabledUntil:typeof n==`number`&&Number.isFinite(n)&&n>e.now&&n===e.next.cooldownUntil,a=Rw(e.profileId,{len:12}),o=_J(e.runId)??`-`,s=_J(e.provider)??`-`;wJ.warn(`auth profile failure state updated`,{event:`auth_profile_failure_state_updated`,tags:[`error_handling`,`auth_profiles`,t],runId:e.runId,profileId:a,provider:e.provider,reason:e.reason,windowType:t,windowReused:i,previousErrorCount:e.previous?.errorCount,errorCount:e.next.errorCount,previousCooldownUntil:n,cooldownUntil:e.next.cooldownUntil,previousDisabledUntil:r,disabledUntil:e.next.disabledUntil,previousDisabledReason:e.previous?.disabledReason,disabledReason:e.next.disabledReason,failureCounts:e.next.failureCounts,consoleMessage:`auth profile failure state updated: runId=${o} profile=${a} provider=${s} reason=${e.reason} window=${t} reused=${String(i)}`})}const EJ=[`auth_permanent`,`auth`,`billing`,`format`,`model_not_found`,`overloaded`,`timeout`,`rate_limit`,`unknown`],DJ=new Set(EJ),OJ=new Map(EJ.map((e,t)=>[e,t]));function kJ(e){let t=z(e??``);return t===`openrouter`||t===`kilocode`}function AJ(e){let t=[e.cooldownUntil,e.disabledUntil].filter(e=>typeof e==`number`).filter(e=>Number.isFinite(e)&&e>0);return t.length===0?null:Math.max(...t)}function jJ(e,t,n){if(kJ(e.profiles[t]?.provider))return!1;let r=e.usageStats?.[t];if(!r)return!1;let i=AJ(r);return i?(n??Date.now())<i:!1}function MJ(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>0&&t<e}function NJ(e){let t=e.now??Date.now(),n=new Map,r=(e,t)=>{!DJ.has(e)||t<=0||!Number.isFinite(t)||n.set(e,(n.get(e)??0)+t)};for(let n of e.profileIds){let i=e.store.usageStats?.[n];if(!i)continue;if(MJ(i.disabledUntil,t)&&i.disabledReason&&DJ.has(i.disabledReason)){r(i.disabledReason,1e3);continue}if(!MJ(i.cooldownUntil,t))continue;let a=!1;for(let[e,t]of Object.entries(i.failureCounts??{})){let n=e,i=typeof t==`number`?t:0;!DJ.has(n)||i<=0||(r(n,i),a=!0)}a||r(`unknown`,1)}if(n.size===0)return null;let i=null,a=-1,o=2**53-1;for(let e of EJ){let t=n.get(e);if(typeof t!=`number`)continue;let r=OJ.get(e)??2**53-1;(t>a||t===a&&r<o)&&(i=e,a=t,o=r)}return i}function PJ(e,t){let n=null;for(let r of t){let t=e.usageStats?.[r];if(!t)continue;let i=AJ(t);typeof i!=`number`||!Number.isFinite(i)||i<=0||(n===null||i<n)&&(n=i)}return n}function FJ(e,t){let n=e.usageStats;if(!n)return!1;let r=t??Date.now(),i=!1;for(let[e,t]of Object.entries(n)){if(!t)continue;let a=!1,o=typeof t.cooldownUntil==`number`&&Number.isFinite(t.cooldownUntil)&&t.cooldownUntil>0&&r>=t.cooldownUntil,s=typeof t.disabledUntil==`number`&&Number.isFinite(t.disabledUntil)&&t.disabledUntil>0&&r>=t.disabledUntil;o&&(t.cooldownUntil=void 0,a=!0),s&&(t.disabledUntil=void 0,t.disabledReason=void 0,a=!0),a&&!AJ(t)&&(t.errorCount=0,t.failureCounts=void 0),a&&(n[e]=t,i=!0)}return i}async function IJ(e){let{store:t,profileId:n,agentDir:r}=e,i=await Ol({agentDir:r,updater:e=>e.profiles[n]?(VJ(e,n,e=>BJ(e,{lastUsed:Date.now()})),!0):!1});if(i){t.usageStats=i.usageStats;return}t.profiles[n]&&(VJ(t,n,e=>BJ(e,{lastUsed:Date.now()})),Vl(t,r))}function LJ(e){let t=Math.max(1,e);return Math.min(3600*1e3,60*1e3*5**Math.min(t-1,3))}function RJ(e){let t={billingBackoffHours:5,billingMaxHours:24,failureWindowHours:24},n=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>0?e:t,r=e.cfg?.auth?.cooldowns,i=n((()=>{let t=r?.billingBackoffHoursByProvider;if(t){for(let[n,r]of Object.entries(t))if(z(n)===e.providerId)return r}})()??r?.billingBackoffHours,t.billingBackoffHours),a=n(r?.billingMaxHours,t.billingMaxHours),o=n(r?.failureWindowHours,t.failureWindowHours);return{billingBackoffMs:i*60*60*1e3,billingMaxMs:a*60*60*1e3,failureWindowMs:o*60*60*1e3}}function zJ(e){let t=Math.max(1,e.errorCount),n=Math.max(6e4,e.baseMs),r=Math.max(n,e.maxMs),i=n*2**Math.min(t-1,10);return Math.min(r,i)}function BJ(e,t){return{...e,errorCount:0,cooldownUntil:void 0,disabledUntil:void 0,disabledReason:void 0,failureCounts:void 0,...t}}function VJ(e,t,n){e.usageStats=e.usageStats??{},e.usageStats[t]=n(e.usageStats[t])}function HJ(e){let{existingUntil:t,now:n,recomputedUntil:r}=e;return typeof t==`number`&&Number.isFinite(t)&&t>n?t:r}function UJ(e){let t=e.cfgResolved.failureWindowMs,n=typeof e.existing.lastFailureAt==`number`&&e.existing.lastFailureAt>0&&e.now-e.existing.lastFailureAt>t,r=AJ(e.existing),i=typeof r==`number`&&e.now>=r,a=n||i,o=(a?0:e.existing.errorCount??0)+1,s=a?{}:{...e.existing.failureCounts};s[e.reason]=(s[e.reason]??0)+1;let c={...e.existing,errorCount:o,failureCounts:s,lastFailureAt:e.now};if(e.reason===`billing`||e.reason===`auth_permanent`){let t=zJ({errorCount:s[e.reason]??1,baseMs:e.cfgResolved.billingBackoffMs,maxMs:e.cfgResolved.billingMaxMs});c.disabledUntil=HJ({existingUntil:e.existing.disabledUntil,now:e.now,recomputedUntil:e.now+t}),c.disabledReason=e.reason}else{let t=LJ(o);c.cooldownUntil=HJ({existingUntil:e.existing.cooldownUntil,now:e.now,recomputedUntil:e.now+t})}return c}async function WJ(e){let{store:t,profileId:n,reason:r,agentDir:i,cfg:a,runId:o}=e,s=t.profiles[n];if(!s||kJ(s.provider))return;let c,l,u=0,d=await Ol({agentDir:i,updater:e=>{let t=e.profiles[n];if(!t||kJ(t.provider))return!1;let i=Date.now(),o=RJ({cfg:a,providerId:z(t.provider)});l=e.usageStats?.[n],u=i;let s=UJ({existing:l??{},now:i,reason:r,cfgResolved:o});return c=s,VJ(e,n,()=>s),!0}});if(d){t.usageStats=d.usageStats,c&&TJ({runId:o,profileId:n,provider:s.provider,reason:r,previous:l,next:c,now:u});return}if(!t.profiles[n])return;let f=Date.now(),p=RJ({cfg:a,providerId:z(t.profiles[n]?.provider??``)});l=t.usageStats?.[n];let m=UJ({existing:l??{},now:f,reason:r,cfgResolved:p});c=m,VJ(t,n,()=>m),Vl(t,i),TJ({runId:o,profileId:n,provider:t.profiles[n]?.provider??s.provider,reason:r,previous:l,next:c,now:f})}function GJ(e){let t=Dc(e.provider),n=e.store.profiles[e.profileId];if(!n)return{eligible:!1,reasonCode:`profile_missing`};if(Dc(n.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};let r=e.cfg?.auth?.profiles?.[e.profileId];if(r){if(Dc(r.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};if(r.mode!==n.type&&!(r.mode===`oauth`&&n.type===`token`))return{eligible:!1,reasonCode:`mode_mismatch`}}let i=bw({credential:n,now:e.now});return{eligible:i.eligible,reasonCode:i.reasonCode}}function KJ(e){let{cfg:t,store:n,provider:r,preferredProfile:i}=e,a=z(r),o=Dc(r),s=Date.now();FJ(n,s);let c=Oc(n.order,a),l=Oc(t?.auth?.order,a),u=c??l,d=t?.auth?.profiles?Object.entries(t.auth.profiles).filter(([,e])=>Dc(e.provider)===o).map(([e])=>e):[],f=u??(d.length>0?d:Ul(n,r));if(f.length===0)return[];let p=e=>GJ({cfg:t,store:n,provider:o,profileId:e,now:s}).eligible,m=f.filter(p),h=f.every(e=>!n.profiles[e]);m.length===0&&d.length>0&&h&&(m=Ul(n,r).filter(p));let g=Hl(m);if(u&&u.length>0){let e=[],t=[];for(let r of g)if(jJ(n,r)){let e=AJ(n.usageStats?.[r]??{})??s;t.push({profileId:r,cooldownUntil:e})}else e.push(r);let r=t.toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId),a=[...e,...r];return i&&a.includes(i)?[i,...a.filter(e=>e!==i)]:a}let _=qJ(g,n);return i&&_.includes(i)?[i,..._.filter(e=>e!==i)]:_}function qJ(e,t){let n=Date.now(),r=[],i=[];for(let n of e)jJ(t,n)?i.push(n):r.push(n);let a=r.map(e=>{let n=t.profiles[e]?.type;return{profileId:e,typeScore:n===`oauth`?0:n===`token`?1:n===`api_key`?2:3,lastUsed:t.usageStats?.[e]?.lastUsed??0}}).toSorted((e,t)=>e.typeScore===t.typeScore?e.lastUsed-t.lastUsed:e.typeScore-t.typeScore).map(e=>e.profileId),o=i.map(e=>({profileId:e,cooldownUntil:AJ(t.usageStats?.[e]??{})??n})).toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId);return[...a,...o]}var JJ=e({CLAUDE_CLI_PROFILE_ID:()=>CLAUDE_CLI_PROFILE_ID,CODEX_CLI_PROFILE_ID:()=>CODEX_CLI_PROFILE_ID,ensureAuthProfileStore:()=>Bl});const YJ=T(`model-auth`),XJ=`AWS_BEARER_TOKEN_BEDROCK`,ZJ=`AWS_ACCESS_KEY_ID`,QJ=`AWS_SECRET_ACCESS_KEY`,$J=`AWS_PROFILE`;function eY(e,t){let n=e?.models?.providers??{},r=n[t];if(r)return r;let i=z(t);return i===t?Object.entries(n).find(([e])=>z(e)===i)?.[1]:n[i]??Object.entries(n).find(([e])=>z(e)===i)?.[1]}function tY(e,t){return Vi(eY(e,t)?.apiKey)}function nY(e){let t=tY(e.cfg,e.provider);if(!t)return null;if(!ga(t))return{apiKey:t,source:`models.json`};if(!da(t))return null;let n=Vi((e.env??process.env)[t]);return n?{apiKey:n,source:oY({applied:new Set(zi()),envVars:[t],label:`${t} (models.json marker)`})}:null}function rY(e,t,n){return!!nY({cfg:e,provider:t,env:n})}function iY(e,t){let n=eY(e,t)?.auth;if(n===`api-key`||n===`aws-sdk`||n===`oauth`||n===`token`)return n}function aY(e){if(z(e.provider)!==`ollama`)return null;let t=eY(e.cfg,e.provider);return!t||!(t.api?.trim()||t.baseUrl?.trim()||Array.isArray(t.models)&&t.models.length>0)?null:{apiKey:`ollama-local`,source:`models.providers.ollama (synthetic local key)`,mode:`api-key`}}function oY(e){return`${e.envVars.some(t=>e.applied.has(t))?`shell env: `:`env: `}${e.label}`}function sY(e=process.env){if(e[XJ]?.trim())return XJ;if(e[ZJ]?.trim()&&e[QJ]?.trim())return ZJ;if(e[$J]?.trim())return $J}function cY(){let e=new Set(zi());return process.env[XJ]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[XJ],label:XJ})}:process.env[ZJ]?.trim()&&process.env[QJ]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[ZJ,QJ],label:`${ZJ} + ${QJ}`})}:process.env[$J]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[$J],label:$J})}:{mode:`aws-sdk`,source:`aws-sdk default chain`}}async function lY(e){let{provider:t,cfg:n,profileId:r,preferredProfile:i}=e,a=e.store??Bl(e.agentDir);if(r){let t=await Iw({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(!t)throw Error(`No credentials found for profile "${r}".`);let i=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:i===`oauth`?`oauth`:i===`token`?`token`:`api-key`}}let o=iY(n,t);if(o===`aws-sdk`)return cY();let s=KJ({cfg:n,store:a,provider:t,preferredProfile:i});for(let r of s)try{let t=await Iw({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(t){let e=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:e===`oauth`?`oauth`:e===`token`?`token`:`api-key`}}}catch(e){YJ.debug?.(`auth profile "${r}" failed for provider "${t}": ${String(e)}`)}let c=uY(t);if(c)return{apiKey:c.apiKey,source:c.source,mode:c.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`};let l=nY({cfg:n,provider:t});if(l)return{apiKey:l.apiKey,source:l.source,mode:`api-key`};let u=aY({cfg:n,provider:t});if(u)return u;let d=z(t);if(o===void 0&&d===`amazon-bedrock`)return cY();if(t===`openai`&&Ul(a,`openai-codex`).length>0)throw Error(`No API key found for provider "openai". You are authenticated with OpenAI Codex OAuth. Use openai-codex/gpt-5.4 (OAuth) or set OPENAI_API_KEY to use openai/gpt-5.4.`);let f=xl(e.agentDir),p=k.dirname(f);throw Error([`No API key found for provider "${t}".`,`Auth store: ${f} (agentDir: ${p}).`,`Configure auth for this agent (${oi(`openclaw agents add <id>`)}) or copy auth-profiles.json from the main agentDir.`].join(` `))}function uY(e,t=process.env){let n=z(e),r=new Set(zi()),i=e=>{let n=Vi(t[e]);return n?{apiKey:n,source:r.has(e)?`shell env: ${e}`:`env: ${e}`}:null},a=ia[n];if(a)for(let e of a){let t=i(e);if(t)return t}if(n===`google-vertex`){let e=_t(n);return e?{apiKey:e,source:`gcloud adc`}:null}return null}function dY(e,t,n){let r=e?.trim();if(!r)return;let i=iY(t,r);if(i===`aws-sdk`)return`aws-sdk`;let a=n??Bl(),o=Ul(a,r);if(o.length>0){let e=new Set(o.map(e=>a.profiles[e]?.type).filter(e=>!!e));if([`oauth`,`token`,`api_key`].filter(t=>e.has(t)).length>=2)return`mixed`;if(e.has(`oauth`))return`oauth`;if(e.has(`token`))return`token`;if(e.has(`api_key`))return`api-key`}if(i===void 0&&z(r)===`amazon-bedrock`)return`aws-sdk`;let s=uY(r);return s?.apiKey?s.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`:rY(t,r)?`api-key`:`unknown`}async function fY(e){return lY({provider:e.model.provider,cfg:e.cfg,profileId:e.profileId,preferredProfile:e.preferredProfile,store:e.store,agentDir:e.agentDir})}function pY(e,t){let n=Bi(e.apiKey);if(n)return n;throw Error(`No API key resolved for provider "${t}" (auth mode: ${e.mode}).`)}export{ZK as $,_g as $a,vT as $i,jz as $n,Ad as $o,Yj as $r,or as $s,qH as $t,Gq as A,jx as Aa,bO as Ai,BB as An,km as Ao,eR as Ar,mo as As,LW as At,fq as B,Uv as Ba,QT as Bi,tB as Bn,Ip as Bo,RP as Br,Ji as Bs,bU as Bt,Kq as C,FS as Ca,Gk as Ci,iV as Cn,oh as Co,rR as Cr,Wc as Cs,YW as Ct,Qq as D,Yx as Da,VO as Di,aV as Dn,Nm as Do,uR as Dr,lc as Ds,BW as Dt,Wq as E,LS as Ea,YO as Ei,oV as En,eh as Eo,iR as Er,rc as Es,VW as Et,Nq as F,Oy as Fa,ZD as Fi,TB as Fn,pm as Fo,BF as Fr,xa as Fs,DU as Ft,rq as G,F_ as Ga,CT as Gi,zz as Gn,Of as Go,dP as Gr,Bi as Gs,hU as Gt,vq as H,dv as Ha,XT as Hi,$z as Hn,dp as Ho,bP as Hr,Ki as Hs,vU as Ht,Pq as I,Dy as Ia,QD as Ii,_B as In,Vp as Io,zP as Ir,va as Is,EU as It,wK as J,D_ as Ja,DT as Ji,Pz as Jn,Tf as Jo,lP as Jr,yi as Js,iU as Jt,BG as K,R_ as Ka,TT as Ki,Bz as Kn,yf as Ko,pP as Kr,Ri as Ks,lU as Kt,Sq as L,Ay as La,oE as Li,gB as Ln,Kp as Lo,IP as Lr,ga as Ls,CU as Lt,Lq as M,Ny as Ma,lO as Mi,AB as Mn,mm as Mo,pI as Mr,Ba as Ms,RW as Mt,Iq as N,Fy as Na,sO as Ni,DB as Nn,fm as No,tI as Nr,ya as Ns,TW as Nt,Zq as O,kS as Oa,GO as Oi,JB as On,Pm as Oo,dR as Or,yc as Os,xW as Ot,Fq as P,xy as Pa,dO as Pi,wB as Pn,im as Po,HF as Pr,ba as Ps,IW as Pt,jK as Q,kg as Qa,hT as Qi,Oz as Qn,jd as Qo,Zj as Qr,pr as Qs,ZH as Qt,xq as R,jy as Ra,fE as Ri,hB as Rn,Gp as Ro,BP as Rr,ha as Rs,yU as Rt,Yq as S,MS as Sa,Bk as Si,fV as Sn,mh as So,cR as Sr,Lc as Ss,qW as St,tJ as T,IS as Ta,Ck as Ti,$B as Tn,Qm as To,oR as Tr,Uc as Ts,UW as Tt,cq as U,O_ as Ua,UT as Ui,eB as Un,Ep as Uo,fP as Ur,Gi as Us,gU as Ut,pq as V,H as Va,W as Vi,qz as Vn,up as Vo,wP as Vr,qi as Vs,_U as Vt,lq as W,P_ as Wa,BT as Wi,kz as Wn,pp as Wo,hP as Wr,Vi as Ws,pU as Wt,zG as X,Zg as Xa,OT as Xi,Nz as Xn,Dd as Xo,TN as Xr,oi as Xs,QH as Xt,FK as Y,s_ as Ya,kT as Yi,Vz as Yn,ff as Yo,EN as Yr,si as Ys,JH as Yt,PK as Z,Dg as Za,_T as Zi,Rz as Zn,kd as Zo,HM as Zr,Qr as Zs,eU as Zt,_J as _,iC as _a,tn as _c,tA as _i,sH as _n,bh as _o,kR as _r,Ec as _s,hG as _t,dY as a,Uw as aa,On as ac,FA as ai,FH as an,Qh as ao,mz as ar,Hl as as,tq as at,rJ as b,KS as ba,qk as bi,mV as bn,yh as bo,tR as br,Rc as bs,eG as bt,KJ as c,Rw as ca,kn as cc,GA as ci,kH as cn,eg as co,lz as cr,Bl as cs,MK as ct,jJ as d,dw as da,Sn as dc,vA as di,bH as dn,Wh as do,cz as dr,il as ds,JK as dt,aT as ea,fr as ec,Sj as ei,KH as en,ug as eo,Az as er,Od as es,WK as et,WJ as f,uw as fa,yn as fc,yA as fi,vH as fn,Gh as fo,QR as fr,Hc as fs,IK as ft,CJ as g,VC as ga,nn as gc,nA as gi,pH as gn,kh as go,AR as gr,kc as gs,SG as gt,SJ as h,RC as ha,rn as hc,eA as hi,dH as hn,Rh as ho,XR as hr,Oc as hs,CG as ht,uY as i,Vw as ia,L as ic,fj as ii,PH as in,Kh as io,xz as ir,Xl as is,nq as it,Rq as j,My as ja,uO as ji,RB as jn,Tm as jo,$L as jr,Ha as js,yW as jt,$q as k,RS as ka,WO as ki,WB as kn,Fm as ko,QL as kr,fo as ks,SW as kt,FJ as l,Iw as la,fn as lc,gA as li,wH as ln,$h as lo,az as lr,xl as ls,CK as lt,NJ as m,zC as ma,un as mc,sA as mi,fH as mn,Vh as mo,YR as mr,Ic as ms,MG as mt,pY as n,qw as na,_r as nc,oj as ni,RH as nn,pg as no,Dz as nr,pu as ns,YG as nt,nY as o,Hw as oa,Dn as oc,LA as oi,AH as on,Zh as oo,dz as or,Ul as os,JG as ot,IJ as p,HC as pa,Cn as pc,hA as pi,_H as pn,Uh as po,JR as pr,Fc as ps,PG as pt,eq as q,z_ as qa,wT as qi,Lz as qn,wf as qo,yP as qr,Li as qs,cU as qt,lY as r,Kw as ra,mr as rc,cj as ri,LH as rn,mg as ro,vz as rr,nu as rs,WG as rt,JJ as s,Jw as sa,Tn as sc,WA as si,DH as sn,tg as so,oz as sr,Wl as ss,LK as st,fY as t,oT as ta,I as tc,pj as ti,zH as tn,og as to,Fz as tr,cd as ts,XK as tt,PJ as u,fw as ua,vn as uc,mA as ui,xH as un,Hh as uo,sz as ur,vl as us,KK as ut,lJ as v,nC as va,Qk as vi,oH as vn,ph as vo,ER as vr,Mc as vs,mG as vt,eJ as w,PS as wa,Ok as wi,sV as wn,ah as wo,fR as wr,Vc as ws,WW as wt,Jq as x,jS as xa,Kk as xi,_V as xn,_h as xo,lR as xr,zc as xs,XW as xt,sJ as y,qS as ya,kk as yi,HV as yn,gh as yo,_R as yr,z as ys,fG as yt,yq as z,_y as za,aE as zi,mB as zn,Wp as zo,WP as zr,Yi as zs,xU as zt};
66
+ `)}function DK(e){if(SK(e))return!0;let t=e.match(eK);if(!t)return!1;let n=Number(t[1]);if(!Number.isFinite(n)||n<400)return!1;let r=t[2].toLowerCase();return aK.some(e=>r.includes(e))}function OK(e){return WG(e)?MK(e)||DK(e)||QG.test(e)||$G.test(e):!1}function kK(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(t.type===`error`||typeof t.request_id==`string`||typeof t.requestId==`string`)return!0;if(`error`in t){let e=t.error;if(e&&typeof e==`object`&&!Array.isArray(e)){let t=e;if(typeof t.message==`string`||typeof t.type==`string`||typeof t.code==`string`)return!0}}return!1}function AK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n=[t];XG.test(t)&&n.push(t.replace(XG,``).trim());for(let e of n)if(!(!e.startsWith(`{`)||!e.endsWith(`}`)))try{let t=JSON.parse(e);if(kK(t))return t}catch{}return null}function jK(e){if(!e)return null;let t=AK(e);return t?wG(t):null}function MK(e){return jK(e)!==null}function NK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n,r=t,i=r.match(/^(\d{3})\s+(.+)$/s);i&&(n=i[1],r=i[2].trim());let a=AK(r);if(!a)return null;let o=typeof a.request_id==`string`?a.request_id:typeof a.requestId==`string`?a.requestId:void 0,s=typeof a.type==`string`?a.type:void 0,c=typeof a.message==`string`?a.message:void 0,l,u;if(a.error&&typeof a.error==`object`&&!Array.isArray(a.error)){let e=a.error;typeof e.type==`string`&&(l=e.type),typeof e.code==`string`&&!l&&(l=e.code),typeof e.message==`string`&&(u=e.message)}return{httpCode:n,type:l??s,message:u??c,requestId:o}}function PK(e){let t=(e??``).trim();if(!t)return`LLM request failed with an unknown error.`;let n=xK(t);if(n&&SK(t))return`The AI service is temporarily unavailable (HTTP ${n.code}). Please try again in a moment.`;let r=t.match(eK);if(r){let e=r[2].trim();if(!e.startsWith(`{`))return`HTTP ${r[1]}: ${e}`}let i=NK(t);if(i?.message){let e=i.httpCode?`HTTP ${i.httpCode}`:`LLM error`,t=i.type?` ${i.type}`:``,n=i.requestId?` (request_id: ${i.requestId})`:``;return`${e}${t}: ${i.message}${n}`}return t.length>600?`${t.slice(0,600)}…`:t}function FK(e,t){let n=(e.errorMessage??``).trim();if(e.stopReason!==`error`&&!n)return;if(!n)return`LLM request failed with an unknown error.`;let r=n.match(/unknown tool[:\s]+["']?([a-z0-9_-]+)["']?/i)??n.match(/tool\s+["']?([a-z0-9_-]+)["']?\s+(?:not found|is not available)/i);if(r?.[1]){let e=tG({cfg:t?.cfg,sessionKey:t?.sessionKey,toolName:r[1]});if(e)return e}if(WG(n))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(HG(n))return`Reasoning is required for this model endpoint. Use /think minimal (or any non-off level) and try again.`;if(/incorrect role information|roles must alternate|400.*role|"message".*role.*information/i.test(n))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(UK(n))return`Session history looks corrupted (tool call input missing). Use /new to start a fresh session. If this keeps happening, reset the session or delete the corrupted session transcript.`;let i=n.match(/"type":"invalid_request_error".*?"message":"([^"]+)"/);return i?.[1]?`LLM request rejected: ${i[1]}`:VG(n)||(MG(n)?`LLM request timed out.`:PG(n)?zG(t?.provider,t?.model??e.model):DK(n)||MK(n)?PK(n):(n.length>600&&RG.warn(`Long error truncated: ${n.slice(0,200)}`),n.length>600?`${n.slice(0,600)}…`:n))}function IK(e,t){if(!e)return e;let n=t?.errorContext??!1,r=TK(e),i=r.trim();if(!i)return``;if(n){if(/incorrect role information|roles must alternate/i.test(i))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(OK(i))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(PG(i))return BG;if(MK(i)||DK(i))return PK(i);if(QG.test(i))return VG(i)||(MG(i)?`LLM request timed out.`:PK(i))}return EK(r.replace(/^(?:[ \t]*\r?\n)+/,``))}function LK(e){return!e||e.stopReason!==`error`?!1:jG(e.errorMessage??``)}const RK=/tool_(?:use|call)\.(?:input|arguments).*?(?:field required|required)/i,zK=/messages\.\d+\.content\.\d+\.tool_(?:use|call)\.(?:input|arguments)/i,BK=/image dimensions exceed max allowed size for many-image requests:\s*(\d+)\s*pixels/i,VK=/messages\.(\d+)\.content\.(\d+)\.image/i,HK=/image exceeds\s*(\d+(?:\.\d+)?)\s*mb/i;function UK(e){return e?RK.test(e)||zK.test(e):!1}function WK(e){return!e||e.stopReason!==`error`?!1:PG(e.errorMessage??``)}function GK(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`"type":"api_error"`)&&t.includes(`internal server error`)}function KK(e){if(!e||!e.toLowerCase().includes(`image dimensions exceed max allowed size`))return null;let t=e.match(BK),n=e.match(VK);return{maxDimensionPx:t?.[1]?Number.parseInt(t[1],10):void 0,messageIndex:n?.[1]?Number.parseInt(n[1],10):void 0,contentIndex:n?.[2]?Number.parseInt(n[2],10):void 0,raw:e}}function qK(e){return!!KK(e)}function JK(e){if(!e)return null;let t=e.toLowerCase();if(!t.includes(`image exceeds`)||!t.includes(`mb`))return null;let n=e.match(HK);return{maxMb:n?.[1]?Number.parseFloat(n[1]):void 0,raw:e}}function YK(e){return e?!!JK(e):!1}function XK(e){return!qK(e)&&AG(e)}function ZK(e){return!e||e.stopReason!==`error`?!1:IG(e.errorMessage??``)}function QK(e){if(!e)return!1;let t=e.toLowerCase();return!!(t.includes(`unknown model`)||t.includes(`model not found`)||t.includes(`model_not_found`)||t.includes(`not_found_error`)||t.includes(`does not exist`)&&t.includes(`model`)||t.includes(`invalid model`)&&!t.includes(`invalid model reference`)||/models\/[^\s]+ is not found/i.test(e)||/\b404\b/.test(e)&&/not[-_ ]?found/i.test(e))}function $K(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`session not found`)||t.includes(`session does not exist`)||t.includes(`session expired`)||t.includes(`session invalid`)||t.includes(`conversation not found`)||t.includes(`conversation does not exist`)||t.includes(`conversation expired`)||t.includes(`conversation invalid`)||t.includes(`no such session`)||t.includes(`invalid session`)||t.includes(`session id not found`)||t.includes(`conversation id not found`)}function eq(e){return qK(e)||YK(e)?null:$K(e)?`session_expired`:QK(e)?`model_not_found`:bK(e)||(NG(e)?PG(e)?`billing`:`rate_limit`:jG(e)?`rate_limit`:LG(e)?`overloaded`:CK(e)?xK(e.trim())?.code===529?`overloaded`:`timeout`:GK(e)?`timeout`:XK(e)?`format`:PG(e)?`billing`:MG(e)?`timeout`:FG(e)?`auth_permanent`:IG(e)?`auth`:null)}function tq(e){return eq(e)!==null}function nq(e){return!e||e.stopReason!==`error`?!1:tq(e.errorMessage??``)}function rq(e){return e===`google-gemini-cli`||e===`google-generative-ai`}function iq(e){if(!e)return null;let t=null;if(typeof e==`string`){let n=e.trim();if(!n.startsWith(`{`)||!n.endsWith(`}`))return null;try{t=JSON.parse(n)}catch{return null}}else typeof e==`object`&&(t=e);if(!t)return null;let n=typeof t.id==`string`?t.id:``,r=typeof t.type==`string`?t.type:``;return n.startsWith(`rs_`)&&(r===`reasoning`||r.startsWith(`reasoning.`))?{id:n,type:r}:null}function aq(e,t){for(let n=t+1;n<e.length;n++){let t=e[n];if(!t||typeof t!=`object`||t.type!==`thinking`)return!0}return!1}function oq(e){let t=e.indexOf(`|`);return t<=0||t>=e.length-1?{callId:e}:{callId:e.slice(0,t),itemId:e.slice(t+1)}}function sq(e){return e===`toolCall`||e===`toolUse`||e===`functionCall`}function cq(e){let t=!1,n=[],r=null;for(let i of e){if(!i||typeof i!=`object`){r=null,n.push(i);continue}let e=i.role;if(e===`assistant`){let e=i;if(!Array.isArray(e.content)){r=null,n.push(i);continue}let a=new Map,o=!1,s=!1,c=e.content.map(e=>{if(!e||typeof e!=`object`)return e;let t=e;if(t.type===`thinking`&&iq(t.thinkingSignature))return o=!0,e;let n=e;if(!sq(n.type)||typeof n.id!=`string`)return e;let r=oq(n.id);return o||!r.itemId||!r.itemId.startsWith(`fc_`)?e:(s=!0,a.set(n.id,r.callId),{...e,id:r.callId})});if(r=a.size>0?a:null,!s){n.push(i);continue}t=!0,n.push({...e,content:c});continue}if(e===`toolResult`&&r&&r.size>0){let e=i,a=!1,o={};if(typeof e.toolCallId==`string`){let t=r.get(e.toolCallId);t&&t!==e.toolCallId&&(o.toolCallId=t,a=!0)}if(typeof e.toolUseId==`string`){let t=r.get(e.toolUseId);t&&t!==e.toolUseId&&(o.toolUseId=t,a=!0)}if(!a){n.push(i);continue}t=!0,n.push({...e,...o});continue}r=null,n.push(i)}return t?n:e}function lq(e){let t=[];for(let n of e){if(!n||typeof n!=`object`){t.push(n);continue}if(n.role!==`assistant`){t.push(n);continue}let e=n;if(!Array.isArray(e.content)){t.push(n);continue}let r=!1,i=[];for(let t=0;t<e.content.length;t++){let n=e.content[t];if(!n||typeof n!=`object`){i.push(n);continue}let a=n;if(a.type!==`thinking`){i.push(n);continue}if(!iq(a.thinkingSignature)){i.push(n);continue}if(aq(e.content,t)){i.push(n);continue}r=!0}if(!r){t.push(n);continue}i.length!==0&&t.push({...e,content:i})}return t}const uq=new Set([`toolCall`,`toolUse`,`functionCall`]);function dq(e,t=`strict`){if(!e||typeof e!=`string`)return t===`strict9`?`defaultid`:`defaulttoolid`;if(t===`strict9`){let t=e.replace(/[^a-zA-Z0-9]/g,``);return t.length>=9?t.slice(0,9):t.length>0?mq(t,9):mq(`sanitized`,9)}let n=e.replace(/[^a-zA-Z0-9]/g,``);return n.length>0?n:`sanitizedtoolid`}function fq(e){let t=e.content;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let t=e;typeof t.id!=`string`||!t.id||typeof t.type==`string`&&uq.has(t.type)&&n.push({id:t.id,name:typeof t.name==`string`?t.name:void 0})}return n}function pq(e){let t=e.toolCallId;if(typeof t==`string`&&t)return t;let n=e.toolUseId;return typeof n==`string`&&n?n:null}function mq(e,t=8){return kt(`sha256`).update(e).digest(`hex`).slice(0,t)}function hq(e){if(e.mode===`strict9`){let t=dq(e.id,e.mode),n=t.length>=9?t.slice(0,9):``;if(n&&!e.used.has(n))return n;for(let t=0;t<1e3;t+=1){let n=mq(`${e.id}:${t}`,9);if(!e.used.has(n))return n}return mq(`${e.id}:${Date.now()}`,9)}let t=dq(e.id,e.mode).slice(0,40);if(!e.used.has(t))return t;let n=mq(e.id),r=e.mode===`strict`?``:`_`,i=40-r.length-n.length,a=`${t.length>i?t.slice(0,i):t}${r}${n}`;if(!e.used.has(a))return a;for(let t=2;t<1e3;t+=1){let n=e.mode===`strict`?`x${t}`:`_${t}`,r=`${a.slice(0,40-n.length)}${n}`;if(!e.used.has(r))return r}let o=e.mode===`strict`?`t${Date.now()}`:`_${Date.now()}`;return`${a.slice(0,40-o.length)}${o}`}function gq(e){let t=e.message.content;if(!Array.isArray(t))return e.message;let n=!1,r=t.map(t=>{if(!t||typeof t!=`object`)return t;let r=t,i=r.type,a=r.id;if(i!==`functionCall`&&i!==`toolUse`&&i!==`toolCall`||typeof a!=`string`||!a)return t;let o=e.resolve(a);return o===a?t:(n=!0,{...t,id:o})});return n?{...e.message,content:r}:e.message}function _q(e){let t=typeof e.message.toolCallId==`string`&&e.message.toolCallId?e.message.toolCallId:void 0,n=e.message.toolUseId,r=typeof n==`string`&&n?n:void 0,i=t?e.resolve(t):void 0,a=r?e.resolve(r):void 0;return i===t&&a===r?e.message:{...e.message,...i&&{toolCallId:i},...a&&{toolUseId:a}}}function vq(e,t=`strict`){let n=new Map,r=new Set,i=e=>{let i=n.get(e);if(i)return i;let a=hq({id:e,used:r,mode:t});return n.set(e,a),r.add(a),a},a=!1,o=e.map(e=>{if(!e||typeof e!=`object`)return e;let t=e.role;if(t===`assistant`){let t=gq({message:e,resolve:i});return t!==e&&(a=!0),t}if(t===`toolResult`){let t=_q({message:e,resolve:i});return t!==e&&(a=!0),t}return e});return a?o:e}function yq(e){let t=0;for(let n=0;n<e.length;n+=1)e.charCodeAt(n)<=32||(t+=1);if(t===0)return 0;let n=0,r=e.length-1;for(;r>=0&&e.charCodeAt(r)<=32;)--r;if(r>=0&&e[r]===`=`){for(n=1,--r;r>=0&&e.charCodeAt(r)<=32;)--r;r>=0&&e[r]===`=`&&(n=2)}let i=Math.floor(t*3/4)-n;return Math.max(0,i)}const bq=/^[A-Za-z0-9+/]+={0,2}$/;function xq(e){let t=e.replace(/\s+/g,``);if(!(!t||t.length%4!=0||!bq.test(t)))return t}function Sq(e){let t=e?.agents?.defaults?.imageMaxDimensionPx;return typeof t!=`number`||!Number.isFinite(t)?{}:{maxDimensionPx:Math.max(1,Math.floor(t))}}const Cq=T(`agents/tool-images`);function wq(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.type===`image`&&typeof t.data==`string`&&typeof t.mimeType==`string`}function Tq(e){if(!e||typeof e!=`object`)return!1;let t=e;return t.type===`text`&&typeof t.text==`string`}function Eq(e){let t=e.trim();if(t){if(t.startsWith(`/9j/`))return`image/jpeg`;if(t.startsWith(`iVBOR`))return`image/png`;if(t.startsWith(`R0lGOD`))return`image/gif`}}function Dq(e){return!Number.isFinite(e)||e<1024?`${Math.max(0,Math.round(e))}B`:e<1024*1024?`${(e/1024).toFixed(1)}KB`:`${(e/(1024*1024)).toFixed(2)}MB`}function Oq(e){for(let t of e.split(/\r?\n/u)){let e=t.trim();if(!e.startsWith(`MEDIA:`))continue;let n=e.slice(6).trim();if(n)return(n.match(/^`([^`]+)`$/u)?.[1]??n).trim()}}function kq(e){let t=e.trim();if(!t)return;try{let e=new URL(t).pathname.split(`/`).filter(Boolean).at(-1);return e&&e.length>0?e:void 0}catch{}let n=t.replaceAll(`\\`,`/`).split(`/`).filter(Boolean).at(-1);return n&&n.length>0?n:void 0}function Aq(e){let t=e.block;for(let e of[`fileName`,`filename`,`path`,`url`]){let n=t[e];if(typeof n!=`string`||n.trim().length===0)continue;let r=kq(n);if(r)return r}if(typeof t.name==`string`&&t.name.trim().length>0)return t.name.trim();if(e.mediaPathHint){let t=kq(e.mediaPathHint);if(t)return t}if(typeof e.label==`string`&&e.label.startsWith(`read:`)){let t=kq(e.label.slice(5));if(t)return t}}async function jq(e){let t=Buffer.from(e.base64,`base64`),n=await IP(t),r=n?.width,i=n?.height,a=t.byteLength>e.maxBytes,o=typeof r==`number`&&typeof i==`number`,s=o&&(r>e.maxDimensionPx||i>e.maxDimensionPx);if(o&&!a&&r<=e.maxDimensionPx&&i<=e.maxDimensionPx)return{base64:e.base64,mimeType:e.mimeType,resized:!1,width:r,height:i};let c=o?Math.max(r??0,i??0):e.maxDimensionPx,l=c>0?Math.min(e.maxDimensionPx,c):e.maxDimensionPx,u=DP(e.maxDimensionPx,l),d=null;for(let n of u)for(let o of EP){let c=await RP({buffer:t,maxSide:n,quality:o,withoutEnlargement:!0});if((!d||c.byteLength<d.size)&&(d={buffer:c,size:c.byteLength}),c.byteLength<=e.maxBytes){let l=typeof r==`number`&&typeof i==`number`?`${r}x${i}px`:`unknown`,u=e.fileName?`${e.fileName} ${l}`:l,d=t.byteLength>0?Number(((t.byteLength-c.byteLength)/t.byteLength*100).toFixed(1)):0;return Cq.info(`Image resized to fit limits: ${u} ${Dq(t.byteLength)} -> ${Dq(c.byteLength)} (-${d}%)`,{label:e.label,fileName:e.fileName,sourceMimeType:e.mimeType,sourceWidth:r,sourceHeight:i,sourceBytes:t.byteLength,maxBytes:e.maxBytes,maxDimensionPx:e.maxDimensionPx,triggerOverBytes:a,triggerOverDimensions:s,outputMimeType:`image/jpeg`,outputBytes:c.byteLength,outputQuality:o,outputMaxSide:n,byteReductionPct:d}),{base64:c.toString(`base64`),mimeType:`image/jpeg`,resized:!0,width:r,height:i}}}let f=d?.buffer??t,p=(e.maxBytes/(1024*1024)).toFixed(0),m=(f.byteLength/(1024*1024)).toFixed(2),h=typeof r==`number`&&typeof i==`number`?`${r}x${i}px`:`unknown`,g=e.fileName?`${e.fileName} ${h}`:h;throw Cq.warn(`Image resize failed to fit limits: ${g} best=${Dq(f.byteLength)} limit=${Dq(e.maxBytes)}`,{label:e.label,fileName:e.fileName,sourceMimeType:e.mimeType,sourceWidth:r,sourceHeight:i,sourceBytes:t.byteLength,maxDimensionPx:e.maxDimensionPx,maxBytes:e.maxBytes,smallestCandidateBytes:f.byteLength,triggerOverBytes:a,triggerOverDimensions:s}),Error(`Image could not be reduced below ${p}MB (got ${m}MB)`)}async function Mq(e,t,n={}){let r=Math.max(n.maxDimensionPx??1200,1),i=Math.max(n.maxBytes??5242880,1),a=[],o;for(let n of e){if(Tq(n)){let e=Oq(n.text);e&&(o=e)}if(!wq(n)){a.push(n);continue}let e=n.data.trim();if(!e){a.push({type:`text`,text:`[${t}] omitted empty image payload`});continue}let s=xq(e);if(!s){a.push({type:`text`,text:`[${t}] omitted image payload: invalid base64`});continue}try{let e=Eq(s)??n.mimeType,c=await jq({base64:s,mimeType:e,maxDimensionPx:r,maxBytes:i,label:t,fileName:Aq({block:n,label:t,mediaPathHint:o})});a.push({...n,data:c.base64,mimeType:c.resized?c.mimeType:e})}catch(e){a.push({type:`text`,text:`[${t}] omitted image payload: ${String(e)}`})}}return a}async function Nq(e,t,n={}){if(e.length===0)return{images:e,dropped:0};let r=(await Mq(e,t,n)).filter(wq);return{images:r,dropped:Math.max(0,e.length-r.length)}}async function Pq(e,t,n={}){let r=Array.isArray(e.content)?e.content:[];if(!r.some(e=>wq(e)||Tq(e)))return e;let i=await Mq(r,t,n);return{...e,content:i}}async function Fq(e,t,n){let r=(n?.sanitizeMode??`full`)===`full`,i={maxDimensionPx:n?.maxDimensionPx,maxBytes:n?.maxBytes},a=n?.sanitizeToolCallIds===!0?vq(e,n.toolCallIdMode):e,o=[];for(let e of a){if(!e||typeof e!=`object`){o.push(e);continue}let a=e.role;if(a===`toolResult`){let n=e,r=await Mq(Array.isArray(n.content)?n.content:[],t,i);o.push({...n,content:r});continue}if(a===`user`){let n=e,r=n.content;if(Array.isArray(r)){let e=await Mq(r,t,i);o.push({...n,content:e});continue}}if(a===`assistant`){let a=e;if(a.stopReason===`error`){let e=a.content;if(Array.isArray(e)){let n=await Mq(e,t,i);o.push({...a,content:n})}else o.push(a);continue}let s=a.content;if(Array.isArray(s)){if(!r){let e=await Mq(s,t,i);o.push({...a,content:e});continue}let e=await Mq((n?.preserveSignatures?s:Bw(s,n?.sanitizeThoughtSignatures)).filter(e=>{if(!e||typeof e!=`object`)return!0;let t=e;return t.type!==`text`||typeof t.text!=`string`?!0:t.text.trim().length>0}),t,i);if(e.length===0)continue;o.push({...a,content:e});continue}}o.push(e)}return o}function Iq(e){return e.trim().toLowerCase().replace(/\p{Emoji_Presentation}|\p{Extended_Pictographic}/gu,``).replace(/\s+/g,` `).trim()}function Lq(e,t){return t.length===0||!e||e.length<10?!1:t.some(t=>!t||t.length<10?!1:e.includes(t)||t.includes(e))}function Rq(e,t){if(t.length===0)return!1;let n=Iq(e);return!n||n.length<10?!1:Lq(n,t.map(Iq))}function zq(e){if(!e)return``;let t=e.trim().toLowerCase();return t===`z.ai`||t===`z-ai`?`zai`:t}function Bq(e){return zq(e)===`zai`}const Vq=[`openai/gpt-5.4`,`openai/gpt-5.4-pro`,`openai/gpt-5.2`,`openai-codex/gpt-5.4`,`openai-codex/gpt-5.3-codex`,`openai-codex/gpt-5.3-codex-spark`,`openai-codex/gpt-5.2-codex`,`openai-codex/gpt-5.1-codex`,`github-copilot/gpt-5.2-codex`,`github-copilot/gpt-5.2`],Hq=new Set(Vq.map(e=>e.toLowerCase())),Uq=new Set(Vq.map(e=>e.split(`/`)[1]?.toLowerCase()).filter(e=>!!e));function Wq(e){if(!e)return;let t=e.trim().toLowerCase(),n=t.replace(/[\s_-]+/g,``);if(n===`adaptive`||n===`auto`)return`adaptive`;if(n===`xhigh`||n===`extrahigh`)return`xhigh`;if([`off`].includes(t))return`off`;if([`on`,`enable`,`enabled`].includes(t))return`low`;if([`min`,`minimal`].includes(t))return`minimal`;if([`low`,`thinkhard`,`think-hard`,`think_hard`].includes(t))return`low`;if([`mid`,`med`,`medium`,`thinkharder`,`think-harder`,`harder`].includes(t))return`medium`;if([`high`,`ultra`,`ultrathink`,`think-hard`,`thinkhardest`,`highest`,`max`].includes(t))return`high`;if([`think`].includes(t))return`minimal`}function Gq(e,t){let n=t?.trim().toLowerCase();if(!n)return!1;let r=e?.trim().toLowerCase();return r?Hq.has(`${r}/${n}`):Uq.has(n)}function Kq(e,t){let n=[`off`,`minimal`,`low`,`medium`,`high`];return Gq(e,t)&&n.push(`xhigh`),n.push(`adaptive`),n}function qq(e,t){return Bq(e)?[`off`,`on`]:Kq(e,t)}function Jq(e,t,n=`, `){return qq(e,t).join(n)}function Yq(){let e=[...Vq];return e.length===0?`unknown model`:e.length===1?e[0]:e.length===2?`${e[0]} or ${e[1]}`:`${e.slice(0,-1).join(`, `)} or ${e[e.length-1]}`}function Xq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`all`,`everything`].includes(t))return`full`;if([`on`,`minimal`,`true`,`yes`,`1`].includes(t))return`on`}function Zq(e){return Xq(e)}function Qq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`enable`,`enabled`].includes(t)||[`tokens`,`token`,`tok`,`minimal`,`min`].includes(t))return`tokens`;if([`full`,`session`].includes(t))return`full`}function $q(e){return Qq(e)??`off`}function eJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`auto`,`auto-approve`,`autoapprove`].includes(t))return`full`;if([`ask`,`prompt`,`approval`,`approve`].includes(t))return`ask`;if([`on`,`true`,`yes`,`1`].includes(t))return`on`}function tJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`hide`,`hidden`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`show`,`visible`,`enable`,`enabled`].includes(t))return`on`;if([`stream`,`streaming`,`draft`,`live`].includes(t))return`stream`}function nJ(e){let t=e.match(/supported values are:\s*([^\n.]+)/i)??e.match(/supported values:\s*([^\n.]+)/i);if(!t?.[1])return[];let n=t[1],r=Array.from(n.matchAll(/['"]([^'"]+)['"]/g)).map(e=>e[1]?.trim());return r.length>0?r.filter(e=>!!e):n.split(/,|\band\b/gi).map(e=>e.replace(/^[^a-zA-Z]+|[^a-zA-Z]+$/g,``).trim()).filter(Boolean)}function rJ(e){let t=e.message?.trim();if(!t)return;let n=nJ(t);if(n.length===0)return/not supported/i.test(t)&&!e.attempted.has(`off`)?`off`:void 0;for(let t of n){let n=Wq(t);if(n&&!e.attempted.has(n))return n}}function iJ(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(!r||typeof r!=`object`){t.push(r);continue}if(r.role!==`assistant`){t.push(r);continue}let i=r,a=e[n+1];if((a&&typeof a==`object`?a.role:void 0)!==`user`){t.push(r);continue}let o=a,s=new Set;if(Array.isArray(o.content))for(let e of o.content)e&&e.type===`toolResult`&&e.toolUseId&&s.add(e.toolUseId);let c=Array.isArray(i.content)?i.content:[],l=c.filter(e=>e?e.type===`toolUse`?s.has(e.id||``):!0:!1);c.length>0&&l.length===0?t.push({...i,content:[{type:`text`,text:`[tool calls omitted]`}]}):t.push({...i,content:l})}return t}function aJ(e){let{messages:t,role:n,merge:r}=e;if(!Array.isArray(t)||t.length===0)return t;let i=[],a;for(let e of t){if(!e||typeof e!=`object`){i.push(e);continue}let t=e.role;if(!t){i.push(e);continue}if(t===a&&a===n){let t=i[i.length-1],n=e;if(t&&typeof t==`object`){let e=t;i[i.length-1]=r(e,n);continue}}i.push(e),a=t}return i}function oJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...e,content:n,...t.usage&&{usage:t.usage},...t.stopReason&&{stopReason:t.stopReason},...t.errorMessage&&{errorMessage:t.errorMessage}}}function sJ(e){return aJ({messages:e,role:`assistant`,merge:oJ})}function cJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...t,content:n,timestamp:t.timestamp??e.timestamp}}function lJ(e){return aJ({messages:iJ(e),role:`user`,merge:cJ})}const uJ=64e3,dJ=8e3,fJ=/\brequest[_ ]?id\b\s*[:=]\s*["'()]*([A-Za-z0-9._:-]+)/i,pJ=[String.raw`\b(?:x-)?api[-_]?key\b\s*[:=]\s*(["']?)([^\s"'\\;]+)\1`,String.raw`"(?:api[-_]?key|api_key)"\s*:\s*"([^"]+)"`,String.raw`(?:\bCookie\b\s*[:=]\s*[^;=\s]+=|;\s*[^;=\s]+=)([^;\s\r\n]+)`];function mJ(){let e=Ve()?.redactPatterns;return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function hJ(e,t){let n=e?.trim();if(n)return n.length>t?`${n.slice(0,t)}…`:n}function gJ(e){let t=e?.trim();if(t)return t.length>uJ?t.slice(0,uJ):t}function _J(e,t=200){let n=e?.trim();if(!n)return;let r=Array.from(n).filter(e=>{let t=e.charCodeAt(0);return!(t<=8||t===11||t===12||t>=14&&t<=31||t===127)}).join(``).replace(/[\r\n\t]+/g,` `).replace(/\s+/g,` `).trim();return r.length>t?`${r.slice(0,t)}…`:r}function vJ(e,t){return!e||!t?e:e.split(t).join(Rw(t,{len:12}))}function yJ(e){if(!e)return e;let t=mJ();return p(e,{mode:`tools`,patterns:[...d(),...t,...pJ]})}function bJ(e){if(e)return e.match(fJ)?.[1]?.trim()||void 0}function xJ(e){let t=e.message&&e.message.length>dJ?e.message.slice(0,dJ):e.message;return(e.httpCode||e.type||t?wG({httpCode:e.httpCode,type:e.type,message:t}):null)||(e.requestId?e.raw.split(e.requestId).join(`<request_id>`):jK(e.raw))}function SJ(e){let t=gJ(e);if(!t)return{};try{let e=NK(t),n=e?.requestId??bJ(t),r=n?Rw(n,{len:12}):void 0,i=xJ({raw:t,requestId:n,httpCode:e?.httpCode,type:e?.type,message:e?.message}),a=vJ(yJ(t),n),o=vJ(yJ(e?.message),n);return{rawErrorPreview:hJ(a,400),rawErrorHash:Rw(t,{len:12}),rawErrorFingerprint:i?Rw(i,{len:12}):void 0,httpCode:e?.httpCode,providerErrorType:e?.type,providerErrorMessagePreview:hJ(o,200),requestIdHash:r}}catch{return{}}}function CJ(e){let t=SJ(e);return{textPreview:t.rawErrorPreview,textHash:t.rawErrorHash,textFingerprint:t.rawErrorFingerprint,httpCode:t.httpCode,providerErrorType:t.providerErrorType,providerErrorMessagePreview:t.providerErrorMessagePreview,requestIdHash:t.requestIdHash}}const wJ=T(`agent/embedded`);function TJ(e){let t=e.reason===`billing`||e.reason===`auth_permanent`?`disabled`:`cooldown`,n=e.previous?.cooldownUntil,r=e.previous?.disabledUntil,i=t===`disabled`?typeof r==`number`&&Number.isFinite(r)&&r>e.now&&r===e.next.disabledUntil:typeof n==`number`&&Number.isFinite(n)&&n>e.now&&n===e.next.cooldownUntil,a=Rw(e.profileId,{len:12}),o=_J(e.runId)??`-`,s=_J(e.provider)??`-`;wJ.warn(`auth profile failure state updated`,{event:`auth_profile_failure_state_updated`,tags:[`error_handling`,`auth_profiles`,t],runId:e.runId,profileId:a,provider:e.provider,reason:e.reason,windowType:t,windowReused:i,previousErrorCount:e.previous?.errorCount,errorCount:e.next.errorCount,previousCooldownUntil:n,cooldownUntil:e.next.cooldownUntil,previousDisabledUntil:r,disabledUntil:e.next.disabledUntil,previousDisabledReason:e.previous?.disabledReason,disabledReason:e.next.disabledReason,failureCounts:e.next.failureCounts,consoleMessage:`auth profile failure state updated: runId=${o} profile=${a} provider=${s} reason=${e.reason} window=${t} reused=${String(i)}`})}const EJ=[`auth_permanent`,`auth`,`billing`,`format`,`model_not_found`,`overloaded`,`timeout`,`rate_limit`,`unknown`],DJ=new Set(EJ),OJ=new Map(EJ.map((e,t)=>[e,t]));function kJ(e){let t=z(e??``);return t===`openrouter`||t===`kilocode`}function AJ(e){let t=[e.cooldownUntil,e.disabledUntil].filter(e=>typeof e==`number`).filter(e=>Number.isFinite(e)&&e>0);return t.length===0?null:Math.max(...t)}function jJ(e,t,n){if(kJ(e.profiles[t]?.provider))return!1;let r=e.usageStats?.[t];if(!r)return!1;let i=AJ(r);return i?(n??Date.now())<i:!1}function MJ(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>0&&t<e}function NJ(e){let t=e.now??Date.now(),n=new Map,r=(e,t)=>{!DJ.has(e)||t<=0||!Number.isFinite(t)||n.set(e,(n.get(e)??0)+t)};for(let n of e.profileIds){let i=e.store.usageStats?.[n];if(!i)continue;if(MJ(i.disabledUntil,t)&&i.disabledReason&&DJ.has(i.disabledReason)){r(i.disabledReason,1e3);continue}if(!MJ(i.cooldownUntil,t))continue;let a=!1;for(let[e,t]of Object.entries(i.failureCounts??{})){let n=e,i=typeof t==`number`?t:0;!DJ.has(n)||i<=0||(r(n,i),a=!0)}a||r(`unknown`,1)}if(n.size===0)return null;let i=null,a=-1,o=2**53-1;for(let e of EJ){let t=n.get(e);if(typeof t!=`number`)continue;let r=OJ.get(e)??2**53-1;(t>a||t===a&&r<o)&&(i=e,a=t,o=r)}return i}function PJ(e,t){let n=null;for(let r of t){let t=e.usageStats?.[r];if(!t)continue;let i=AJ(t);typeof i!=`number`||!Number.isFinite(i)||i<=0||(n===null||i<n)&&(n=i)}return n}function FJ(e,t){let n=e.usageStats;if(!n)return!1;let r=t??Date.now(),i=!1;for(let[e,t]of Object.entries(n)){if(!t)continue;let a=!1,o=typeof t.cooldownUntil==`number`&&Number.isFinite(t.cooldownUntil)&&t.cooldownUntil>0&&r>=t.cooldownUntil,s=typeof t.disabledUntil==`number`&&Number.isFinite(t.disabledUntil)&&t.disabledUntil>0&&r>=t.disabledUntil;o&&(t.cooldownUntil=void 0,a=!0),s&&(t.disabledUntil=void 0,t.disabledReason=void 0,a=!0),a&&!AJ(t)&&(t.errorCount=0,t.failureCounts=void 0),a&&(n[e]=t,i=!0)}return i}async function IJ(e){let{store:t,profileId:n,agentDir:r}=e,i=await Ol({agentDir:r,updater:e=>e.profiles[n]?(VJ(e,n,e=>BJ(e,{lastUsed:Date.now()})),!0):!1});if(i){t.usageStats=i.usageStats;return}t.profiles[n]&&(VJ(t,n,e=>BJ(e,{lastUsed:Date.now()})),Vl(t,r))}function LJ(e){let t=Math.max(1,e);return Math.min(3600*1e3,60*1e3*5**Math.min(t-1,3))}function RJ(e){let t={billingBackoffHours:5,billingMaxHours:24,failureWindowHours:24},n=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>0?e:t,r=e.cfg?.auth?.cooldowns,i=n((()=>{let t=r?.billingBackoffHoursByProvider;if(t){for(let[n,r]of Object.entries(t))if(z(n)===e.providerId)return r}})()??r?.billingBackoffHours,t.billingBackoffHours),a=n(r?.billingMaxHours,t.billingMaxHours),o=n(r?.failureWindowHours,t.failureWindowHours);return{billingBackoffMs:i*60*60*1e3,billingMaxMs:a*60*60*1e3,failureWindowMs:o*60*60*1e3}}function zJ(e){let t=Math.max(1,e.errorCount),n=Math.max(6e4,e.baseMs),r=Math.max(n,e.maxMs),i=n*2**Math.min(t-1,10);return Math.min(r,i)}function BJ(e,t){return{...e,errorCount:0,cooldownUntil:void 0,disabledUntil:void 0,disabledReason:void 0,failureCounts:void 0,...t}}function VJ(e,t,n){e.usageStats=e.usageStats??{},e.usageStats[t]=n(e.usageStats[t])}function HJ(e){let{existingUntil:t,now:n,recomputedUntil:r}=e;return typeof t==`number`&&Number.isFinite(t)&&t>n?t:r}function UJ(e){let t=e.cfgResolved.failureWindowMs,n=typeof e.existing.lastFailureAt==`number`&&e.existing.lastFailureAt>0&&e.now-e.existing.lastFailureAt>t,r=AJ(e.existing),i=typeof r==`number`&&e.now>=r,a=n||i,o=(a?0:e.existing.errorCount??0)+1,s=a?{}:{...e.existing.failureCounts};s[e.reason]=(s[e.reason]??0)+1;let c={...e.existing,errorCount:o,failureCounts:s,lastFailureAt:e.now};if(e.reason===`billing`||e.reason===`auth_permanent`){let t=zJ({errorCount:s[e.reason]??1,baseMs:e.cfgResolved.billingBackoffMs,maxMs:e.cfgResolved.billingMaxMs});c.disabledUntil=HJ({existingUntil:e.existing.disabledUntil,now:e.now,recomputedUntil:e.now+t}),c.disabledReason=e.reason}else{let t=LJ(o);c.cooldownUntil=HJ({existingUntil:e.existing.cooldownUntil,now:e.now,recomputedUntil:e.now+t})}return c}async function WJ(e){let{store:t,profileId:n,reason:r,agentDir:i,cfg:a,runId:o}=e,s=t.profiles[n];if(!s||kJ(s.provider))return;let c,l,u=0,d=await Ol({agentDir:i,updater:e=>{let t=e.profiles[n];if(!t||kJ(t.provider))return!1;let i=Date.now(),o=RJ({cfg:a,providerId:z(t.provider)});l=e.usageStats?.[n],u=i;let s=UJ({existing:l??{},now:i,reason:r,cfgResolved:o});return c=s,VJ(e,n,()=>s),!0}});if(d){t.usageStats=d.usageStats,c&&TJ({runId:o,profileId:n,provider:s.provider,reason:r,previous:l,next:c,now:u});return}if(!t.profiles[n])return;let f=Date.now(),p=RJ({cfg:a,providerId:z(t.profiles[n]?.provider??``)});l=t.usageStats?.[n];let m=UJ({existing:l??{},now:f,reason:r,cfgResolved:p});c=m,VJ(t,n,()=>m),Vl(t,i),TJ({runId:o,profileId:n,provider:t.profiles[n]?.provider??s.provider,reason:r,previous:l,next:c,now:f})}function GJ(e){let t=Dc(e.provider),n=e.store.profiles[e.profileId];if(!n)return{eligible:!1,reasonCode:`profile_missing`};if(Dc(n.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};let r=e.cfg?.auth?.profiles?.[e.profileId];if(r){if(Dc(r.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};if(r.mode!==n.type&&!(r.mode===`oauth`&&n.type===`token`))return{eligible:!1,reasonCode:`mode_mismatch`}}let i=bw({credential:n,now:e.now});return{eligible:i.eligible,reasonCode:i.reasonCode}}function KJ(e){let{cfg:t,store:n,provider:r,preferredProfile:i}=e,a=z(r),o=Dc(r),s=Date.now();FJ(n,s);let c=Oc(n.order,a),l=Oc(t?.auth?.order,a),u=c??l,d=t?.auth?.profiles?Object.entries(t.auth.profiles).filter(([,e])=>Dc(e.provider)===o).map(([e])=>e):[],f=u??(d.length>0?d:Ul(n,r));if(f.length===0)return[];let p=e=>GJ({cfg:t,store:n,provider:o,profileId:e,now:s}).eligible,m=f.filter(p),h=f.every(e=>!n.profiles[e]);m.length===0&&d.length>0&&h&&(m=Ul(n,r).filter(p));let g=Hl(m);if(u&&u.length>0){let e=[],t=[];for(let r of g)if(jJ(n,r)){let e=AJ(n.usageStats?.[r]??{})??s;t.push({profileId:r,cooldownUntil:e})}else e.push(r);let r=t.toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId),a=[...e,...r];return i&&a.includes(i)?[i,...a.filter(e=>e!==i)]:a}let _=qJ(g,n);return i&&_.includes(i)?[i,..._.filter(e=>e!==i)]:_}function qJ(e,t){let n=Date.now(),r=[],i=[];for(let n of e)jJ(t,n)?i.push(n):r.push(n);let a=r.map(e=>{let n=t.profiles[e]?.type;return{profileId:e,typeScore:n===`oauth`?0:n===`token`?1:n===`api_key`?2:3,lastUsed:t.usageStats?.[e]?.lastUsed??0}}).toSorted((e,t)=>e.typeScore===t.typeScore?e.lastUsed-t.lastUsed:e.typeScore-t.typeScore).map(e=>e.profileId),o=i.map(e=>({profileId:e,cooldownUntil:AJ(t.usageStats?.[e]??{})??n})).toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId);return[...a,...o]}var JJ=e({CLAUDE_CLI_PROFILE_ID:()=>CLAUDE_CLI_PROFILE_ID,CODEX_CLI_PROFILE_ID:()=>CODEX_CLI_PROFILE_ID,ensureAuthProfileStore:()=>Bl});const YJ=T(`model-auth`),XJ=`AWS_BEARER_TOKEN_BEDROCK`,ZJ=`AWS_ACCESS_KEY_ID`,QJ=`AWS_SECRET_ACCESS_KEY`,$J=`AWS_PROFILE`;function eY(e,t){let n=e?.models?.providers??{},r=n[t];if(r)return r;let i=z(t);return i===t?Object.entries(n).find(([e])=>z(e)===i)?.[1]:n[i]??Object.entries(n).find(([e])=>z(e)===i)?.[1]}function tY(e,t){return Vi(eY(e,t)?.apiKey)}function nY(e){let t=tY(e.cfg,e.provider);if(!t)return null;if(!ga(t))return{apiKey:t,source:`models.json`};if(!da(t))return null;let n=Vi((e.env??process.env)[t]);return n?{apiKey:n,source:oY({applied:new Set(zi()),envVars:[t],label:`${t} (models.json marker)`})}:null}function rY(e,t,n){return!!nY({cfg:e,provider:t,env:n})}function iY(e,t){let n=eY(e,t)?.auth;if(n===`api-key`||n===`aws-sdk`||n===`oauth`||n===`token`)return n}function aY(e){if(z(e.provider)!==`ollama`)return null;let t=eY(e.cfg,e.provider);return!t||!(t.api?.trim()||t.baseUrl?.trim()||Array.isArray(t.models)&&t.models.length>0)?null:{apiKey:`ollama-local`,source:`models.providers.ollama (synthetic local key)`,mode:`api-key`}}function oY(e){return`${e.envVars.some(t=>e.applied.has(t))?`shell env: `:`env: `}${e.label}`}function sY(e=process.env){if(e[XJ]?.trim())return XJ;if(e[ZJ]?.trim()&&e[QJ]?.trim())return ZJ;if(e[$J]?.trim())return $J}function cY(){let e=new Set(zi());return process.env[XJ]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[XJ],label:XJ})}:process.env[ZJ]?.trim()&&process.env[QJ]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[ZJ,QJ],label:`${ZJ} + ${QJ}`})}:process.env[$J]?.trim()?{mode:`aws-sdk`,source:oY({applied:e,envVars:[$J],label:$J})}:{mode:`aws-sdk`,source:`aws-sdk default chain`}}async function lY(e){let{provider:t,cfg:n,profileId:r,preferredProfile:i}=e,a=e.store??Bl(e.agentDir);if(r){let t=await Iw({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(!t)throw Error(`No credentials found for profile "${r}".`);let i=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:i===`oauth`?`oauth`:i===`token`?`token`:`api-key`}}let o=iY(n,t);if(o===`aws-sdk`)return cY();let s=KJ({cfg:n,store:a,provider:t,preferredProfile:i});for(let r of s)try{let t=await Iw({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(t){let e=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:e===`oauth`?`oauth`:e===`token`?`token`:`api-key`}}}catch(e){YJ.debug?.(`auth profile "${r}" failed for provider "${t}": ${String(e)}`)}let c=uY(t);if(c)return{apiKey:c.apiKey,source:c.source,mode:c.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`};let l=nY({cfg:n,provider:t});if(l)return{apiKey:l.apiKey,source:l.source,mode:`api-key`};let u=aY({cfg:n,provider:t});if(u)return u;let d=z(t);if(o===void 0&&d===`amazon-bedrock`)return cY();if(t===`openai`&&Ul(a,`openai-codex`).length>0)throw Error(`No API key found for provider "openai". You are authenticated with OpenAI Codex OAuth. Use openai-codex/gpt-5.4 (OAuth) or set OPENAI_API_KEY to use openai/gpt-5.4.`);let f=xl(e.agentDir),p=k.dirname(f);throw Error([`No API key found for provider "${t}".`,`Auth store: ${f} (agentDir: ${p}).`,`Configure auth for this agent (${oi(`openclaw agents add <id>`)}) or copy auth-profiles.json from the main agentDir.`].join(` `))}function uY(e,t=process.env){let n=z(e),r=new Set(zi()),i=e=>{let n=Vi(t[e]);return n?{apiKey:n,source:r.has(e)?`shell env: ${e}`:`env: ${e}`}:null},a=ia[n];if(a)for(let e of a){let t=i(e);if(t)return t}if(n===`google-vertex`){let e=_t(n);return e?{apiKey:e,source:`gcloud adc`}:null}return null}function dY(e,t,n){let r=e?.trim();if(!r)return;let i=iY(t,r);if(i===`aws-sdk`)return`aws-sdk`;let a=n??Bl(),o=Ul(a,r);if(o.length>0){let e=new Set(o.map(e=>a.profiles[e]?.type).filter(e=>!!e));if([`oauth`,`token`,`api_key`].filter(t=>e.has(t)).length>=2)return`mixed`;if(e.has(`oauth`))return`oauth`;if(e.has(`token`))return`token`;if(e.has(`api_key`))return`api-key`}if(i===void 0&&z(r)===`amazon-bedrock`)return`aws-sdk`;let s=uY(r);return s?.apiKey?s.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`:rY(t,r)?`api-key`:`unknown`}async function fY(e){return lY({provider:e.model.provider,cfg:e.cfg,profileId:e.profileId,preferredProfile:e.preferredProfile,store:e.store,agentDir:e.agentDir})}function pY(e,t){let n=Bi(e.apiKey);if(n)return n;throw Error(`No API key resolved for provider "${t}" (auth mode: ${e.mode}).`)}export{ZK as $,_g as $a,vT as $i,jz as $n,Ad as $o,Yj as $r,or as $s,qH as $t,Gq as A,jx as Aa,bO as Ai,BB as An,km as Ao,eR as Ar,mo as As,LW as At,fq as B,Uv as Ba,QT as Bi,tB as Bn,Ip as Bo,RP as Br,Ji as Bs,bU as Bt,Kq as C,FS as Ca,Gk as Ci,iV as Cn,oh as Co,rR as Cr,Wc as Cs,YW as Ct,Qq as D,Yx as Da,VO as Di,aV as Dn,Nm as Do,uR as Dr,lc as Ds,BW as Dt,Wq as E,LS as Ea,YO as Ei,oV as En,eh as Eo,iR as Er,rc as Es,VW as Et,Nq as F,Oy as Fa,ZD as Fi,TB as Fn,pm as Fo,BF as Fr,xa as Fs,DU as Ft,rq as G,F_ as Ga,CT as Gi,zz as Gn,Of as Go,dP as Gr,Bi as Gs,hU as Gt,vq as H,dv as Ha,XT as Hi,$z as Hn,dp as Ho,bP as Hr,Ki as Hs,vU as Ht,Pq as I,Dy as Ia,QD as Ii,_B as In,Vp as Io,zP as Ir,va as Is,EU as It,wK as J,D_ as Ja,DT as Ji,Pz as Jn,Tf as Jo,lP as Jr,yi as Js,iU as Jt,BG as K,R_ as Ka,TT as Ki,Bz as Kn,yf as Ko,pP as Kr,Ri as Ks,lU as Kt,Sq as L,Ay as La,oE as Li,gB as Ln,Kp as Lo,IP as Lr,ga as Ls,CU as Lt,Lq as M,Ny as Ma,lO as Mi,AB as Mn,mm as Mo,pI as Mr,Ba as Ms,RW as Mt,Iq as N,Fy as Na,sO as Ni,DB as Nn,fm as No,tI as Nr,ya as Ns,TW as Nt,Zq as O,kS as Oa,GO as Oi,JB as On,Pm as Oo,dR as Or,yc as Os,xW as Ot,Fq as P,xy as Pa,dO as Pi,wB as Pn,im as Po,HF as Pr,ba as Ps,IW as Pt,jK as Q,kg as Qa,hT as Qi,Oz as Qn,jd as Qo,Zj as Qr,pr as Qs,ZH as Qt,xq as R,jy as Ra,fE as Ri,hB as Rn,Gp as Ro,BP as Rr,ha as Rs,yU as Rt,Yq as S,MS as Sa,Bk as Si,fV as Sn,mh as So,cR as Sr,Lc as Ss,qW as St,tJ as T,IS as Ta,Ck as Ti,$B as Tn,Qm as To,oR as Tr,Uc as Ts,UW as Tt,cq as U,O_ as Ua,UT as Ui,eB as Un,Ep as Uo,fP as Ur,Gi as Us,gU as Ut,pq as V,H as Va,W as Vi,qz as Vn,up as Vo,wP as Vr,qi as Vs,_U as Vt,lq as W,P_ as Wa,BT as Wi,kz as Wn,pp as Wo,hP as Wr,Vi as Ws,pU as Wt,zG as X,Zg as Xa,OT as Xi,Nz as Xn,Dd as Xo,TN as Xr,oi as Xs,QH as Xt,FK as Y,s_ as Ya,kT as Yi,Vz as Yn,ff as Yo,EN as Yr,si as Ys,JH as Yt,PK as Z,Dg as Za,_T as Zi,Rz as Zn,kd as Zo,HM as Zr,Qr as Zs,eU as Zt,_J as _,iC as _a,tn as _c,tA as _i,sH as _n,bh as _o,kR as _r,Ec as _s,hG as _t,dY as a,Uw as aa,On as ac,FA as ai,FH as an,Qh as ao,mz as ar,Hl as as,tq as at,rJ as b,KS as ba,qk as bi,mV as bn,yh as bo,tR as br,Rc as bs,eG as bt,KJ as c,Rw as ca,kn as cc,GA as ci,kH as cn,eg as co,lz as cr,Bl as cs,MK as ct,jJ as d,dw as da,Sn as dc,vA as di,bH as dn,Wh as do,cz as dr,il as ds,JK as dt,aT as ea,fr as ec,Sj as ei,KH as en,ug as eo,Az as er,Od as es,WK as et,WJ as f,uw as fa,yn as fc,yA as fi,vH as fn,Gh as fo,QR as fr,Hc as fs,IK as ft,CJ as g,VC as ga,nn as gc,nA as gi,pH as gn,kh as go,AR as gr,kc as gs,SG as gt,SJ as h,RC as ha,rn as hc,eA as hi,dH as hn,Rh as ho,XR as hr,Oc as hs,CG as ht,uY as i,Vw as ia,L as ic,fj as ii,PH as in,Kh as io,xz as ir,Xl as is,nq as it,Rq as j,My as ja,uO as ji,RB as jn,Tm as jo,$L as jr,Ha as js,yW as jt,$q as k,RS as ka,WO as ki,WB as kn,Fm as ko,QL as kr,fo as ks,SW as kt,FJ as l,Iw as la,fn as lc,gA as li,wH as ln,$h as lo,az as lr,xl as ls,CK as lt,NJ as m,zC as ma,un as mc,sA as mi,fH as mn,Vh as mo,YR as mr,Ic as ms,MG as mt,pY as n,qw as na,_r as nc,oj as ni,RH as nn,pg as no,Dz as nr,pu as ns,YG as nt,nY as o,Hw as oa,Dn as oc,LA as oi,AH as on,Zh as oo,dz as or,Ul as os,JG as ot,IJ as p,HC as pa,Cn as pc,hA as pi,_H as pn,Uh as po,JR as pr,Fc as ps,PG as pt,eq as q,z_ as qa,wT as qi,Lz as qn,wf as qo,yP as qr,Li as qs,cU as qt,lY as r,Kw as ra,mr as rc,cj as ri,LH as rn,mg as ro,vz as rr,nu as rs,WG as rt,JJ as s,Jw as sa,Tn as sc,WA as si,DH as sn,tg as so,oz as sr,Wl as ss,LK as st,fY as t,oT as ta,I as tc,pj as ti,zH as tn,og as to,Fz as tr,cd as ts,XK as tt,PJ as u,fw as ua,vn as uc,mA as ui,xH as un,Hh as uo,sz as ur,vl as us,KK as ut,lJ as v,nC as va,Qk as vi,oH as vn,ph as vo,ER as vr,Mc as vs,mG as vt,eJ as w,PS as wa,Ok as wi,sV as wn,ah as wo,fR as wr,Vc as ws,WW as wt,Jq as x,jS as xa,Kk as xi,_V as xn,_h as xo,lR as xr,zc as xs,XW as xt,sJ as y,qS as ya,kk as yi,HV as yn,gh as yo,_R as yr,z as ys,fG as yt,yq as z,_y as za,aE as zi,mB as zn,Wp as zo,WP as zr,Yi as zs,xU as zt};
@@ -63,4 +63,4 @@ stat -c "%F|%s|%Y" -- "$2"`,args:[t.canonicalParentPath,t.basename],allowFailure
63
63
  }`))return JU({[e]:t})-4;let r=n.slice(2,-2);return Buffer.byteLength(r,`utf-8`)}function XU(e){let t=new Map;for(let[n,r]of Object.entries(e))t.set(n,YU(n,r));return t}function ZU(e){if(!e)return 0;let t=e.updatedAt;return Number.isFinite(t)?t:0}function QU(e){let t=new Map;for(let n of Object.values(e)){let e=n?.sessionId;e&&t.set(e,(t.get(e)??0)+1)}return t}function $U(e){if(!e.entry.sessionId)return null;try{let t=ge(e.entry.sessionId,e.entry,{sessionsDir:e.sessionsDir}),n=qU(e.sessionsDir),r=qU(t),i=O.relative(n,r);return!i||i.startsWith(`..`)||O.isAbsolute(i)?null:r}catch{return null}}function eW(e){let t=new Set;for(let n of Object.values(e.store)){let r=$U({sessionsDir:e.sessionsDir,entry:n});r&&t.add(qU(r))}return t}async function tW(e){let t=await k.promises.readdir(e,{withFileTypes:!0}).catch(()=>[]),n=[];for(let r of t){if(!r.isFile())continue;let t=O.join(e,r.name),i=await k.promises.stat(t).catch(()=>null);i?.isFile()&&n.push({path:t,canonicalPath:qU(t),name:r.name,size:i.size,mtimeMs:i.mtimeMs})}return n}async function nW(e){let t=await k.promises.stat(e).catch(()=>null);return t?.isFile()?(await k.promises.rm(e,{force:!0}).catch(()=>void 0),t.size):0}async function rW(e){let t=O.resolve(e.filePath),n=e.canonicalPath??qU(t);if(e.dryRun){if(e.simulatedRemovedPaths.has(n))return 0;let t=e.fileSizesByPath.get(n)??0;return t<=0?0:(e.simulatedRemovedPaths.add(n),t)}return nW(t)}async function iW(e){let t=e.maintenance.maxDiskBytes,n=e.maintenance.highWaterBytes;if(t==null||n==null)return null;let r=e.log??KU,i=e.dryRun===!0,a=O.dirname(e.storePath),o=await tW(a),s=new Map(o.map(e=>[e.canonicalPath,e.size])),c=new Set,l=qU(e.storePath),u=o.find(e=>e.canonicalPath===l),d=JU(e.store),f=o.reduce((e,t)=>e+t.size,0)-(u?.size??0)+d,p=f;if(f<=t)return{totalBytesBefore:p,totalBytesAfter:f,removedFiles:0,removedEntries:0,freedBytes:0,maxBytes:t,highWaterBytes:n,overBudget:!1};if(e.warnOnly)return r.warn(`session disk budget exceeded (warn-only mode)`,{sessionsDir:a,totalBytes:f,maxBytes:t,highWaterBytes:n}),{totalBytesBefore:p,totalBytesAfter:f,removedFiles:0,removedEntries:0,freedBytes:0,maxBytes:t,highWaterBytes:n,overBudget:!0};let m=0,h=0,g=0,_=eW({sessionsDir:a,store:e.store}),v=o.filter(e=>Nz(e.name)||Pz(e.name)&&!_.has(e.canonicalPath)).toSorted((e,t)=>e.mtimeMs-t.mtimeMs);for(let e of v){if(f<=n)break;let t=await rW({filePath:e.path,canonicalPath:e.canonicalPath,dryRun:i,fileSizesByPath:s,simulatedRemovedPaths:c});t<=0||(f-=t,g+=t,m+=1)}if(f>n){let t=e.activeSessionKey?.trim().toLowerCase(),r=QU(e.store),o=XU(e.store),l=Object.keys(e.store).toSorted((t,n)=>ZU(e.store[t])-ZU(e.store[n]));for(let u of l){if(f<=n)break;if(t&&u.trim().toLowerCase()===t)continue;let l=e.store[u];if(!l)continue;let p=d;delete e.store[u];let _=o.get(u);o.delete(u),d=typeof _==`number`&&Number.isFinite(_)&&_>=0?Math.max(2,d-(_+2)):JU(e.store),f+=d-p,h+=1;let v=l.sessionId;if(!v)continue;let y=(r.get(v)??1)-1;if(y>0){r.set(v,y);continue}r.delete(v);let b=$U({sessionsDir:a,entry:l});if(!b)continue;let x=await rW({filePath:b,dryRun:i,fileSizesByPath:s,simulatedRemovedPaths:c});x<=0||(f-=x,g+=x,m+=1)}}return i||(f>n?r.warn(`session disk budget still above high-water target after cleanup`,{sessionsDir:a,totalBytes:f,maxBytes:t,highWaterBytes:n,removedFiles:m,removedEntries:h}):(m>0||h>0)&&r.info(`applied session disk budget cleanup`,{sessionsDir:a,totalBytesBefore:p,totalBytesAfter:f,maxBytes:t,highWaterBytes:n,removedFiles:m,removedEntries:h})),{totalBytesBefore:p,totalBytesAfter:f,removedFiles:m,removedEntries:h,freedBytes:g,maxBytes:t,highWaterBytes:n,overBudget:!0}}const aW=new Map,oW=new Map;function sW(e){aW.delete(e),oW.delete(e)}function cW(e){return oW.get(e)}function lW(e,t){if(t===void 0){oW.delete(e);return}oW.set(e,t)}function uW(e){aW.delete(e)}function dW(e){let t=aW.get(e.storePath);return t?Date.now()-t.loadedAt>e.ttlMs||e.mtimeMs!==t.mtimeMs||e.sizeBytes!==t.sizeBytes?(sW(e.storePath),null):structuredClone(t.store):null}function fW(e){aW.set(e.storePath,{store:structuredClone(e.store),loadedAt:Date.now(),storePath:e.storePath,mtimeMs:e.mtimeMs,sizeBytes:e.sizeBytes,serialized:e.serialized}),e.serialized!==void 0&&oW.set(e.storePath,e.serialized)}const pW=w(`sessions/store`),mW=720*60*60*1e3,hW=10485760;function gW(e){let t=e?.pruneAfter??e?.pruneDays;if(t==null||t===``)return mW;try{return ab(String(t).trim(),{defaultUnit:`d`})}catch{return mW}}function _W(e){let t=e?.rotateBytes;if(t==null||t===``)return hW;try{return rb(String(t).trim(),{defaultUnit:`b`})}catch{return hW}}function vW(e,t){let n=e?.resetArchiveRetention;if(n===!1)return null;if(n==null||n===``)return t;try{return ab(String(n).trim(),{defaultUnit:`d`})}catch{return t}}function yW(e){let t=e?.maxDiskBytes;if(t==null||t===``)return null;try{return rb(String(t).trim(),{defaultUnit:`b`})}catch{return null}}function bW(e,t){let n=()=>t==null?null:t<=0?0:Math.max(1,Math.min(t,Math.floor(t*.8)));if(t==null)return null;let r=e?.highWaterBytes;if(r==null||r===``)return n();try{let e=rb(String(r).trim(),{defaultUnit:`b`});return Math.min(e,t)}catch{return n()}}function xW(){let e;try{e=kw().session?.maintenance}catch{}let t=gW(e),n=yW(e);return{mode:e?.mode??`warn`,pruneAfterMs:t,maxEntries:e?.maxEntries??500,rotateBytes:_W(e),resetArchiveRetentionMs:vW(e,t),maxDiskBytes:n,highWaterBytes:bW(e,n)}}function SW(e,t,n={}){let r=t??xW().pruneAfterMs,i=Date.now()-r,a=0;for(let[t,r]of Object.entries(e))r?.updatedAt!=null&&r.updatedAt<i&&(n.onPruned?.({key:t,entry:r}),delete e[t],a++);return a>0&&n.log!==!1&&pW.info(`pruned stale session entries`,{pruned:a,maxAgeMs:r}),a}function CW(e){return e?.updatedAt??-1/0}function wW(e){let t=e.activeSessionKey.trim();if(!t)return null;let n=e.store[t];if(!n)return null;let r=(e.nowMs??Date.now())-e.pruneAfterMs,i=n.updatedAt==null?!1:n.updatedAt<r,a=Object.keys(e.store),o=a.length>e.maxEntries&&a.toSorted((t,n)=>CW(e.store[n])-CW(e.store[t])).slice(e.maxEntries).includes(t);return!i&&!o?null:{activeSessionKey:t,activeUpdatedAt:n.updatedAt,totalEntries:a.length,pruneAfterMs:e.pruneAfterMs,maxEntries:e.maxEntries,wouldPrune:i,wouldCap:o}}function TW(e,t,n={}){let r=t??xW().maxEntries,i=Object.keys(e);if(i.length<=r)return 0;let a=i.toSorted((t,n)=>{let r=CW(e[t]);return CW(e[n])-r}).slice(r);for(let t of a){let r=e[t];r&&n.onCapped?.({key:t,entry:r}),delete e[t]}return n.log!==!1&&pW.info(`capped session entry count`,{removed:a.length,maxEntries:r}),a.length}async function EW(e){try{return(await k.promises.stat(e)).size}catch{return null}}async function DW(e,t){let n=t??xW().rotateBytes,r=await EW(e);if(r==null||r<=n)return!1;let i=`${e}.bak.${Date.now()}`;try{await k.promises.rename(e,i),pW.info(`rotated session store file`,{backupPath:O.basename(i),sizeBytes:r})}catch{return!1}try{let t=O.dirname(e),n=O.basename(e),r=(await k.promises.readdir(t)).filter(e=>e.startsWith(`${n}.bak.`)).toSorted().toReversed();if(r.length>3){let e=r.slice(3);for(let n of e)await k.promises.unlink(O.join(t,n)).catch(()=>void 0);pW.info(`cleaned up old session store backups`,{deleted:e.length})}}catch{}return!0}function OW(e){for(let t of Object.values(e)){if(!t||typeof t!=`object`)continue;let e=t;typeof e.channel!=`string`&&typeof e.provider==`string`&&(e.channel=e.provider,delete e.provider),typeof e.lastChannel!=`string`&&typeof e.lastProvider==`string`&&(e.lastChannel=e.lastProvider,delete e.lastProvider),typeof e.groupChannel!=`string`&&typeof e.room==`string`?(e.groupChannel=e.room,delete e.room):`room`in e&&delete e.room}}const kW=w(`sessions/store`);function AW(e){return!!e&&typeof e==`object`&&!Array.isArray(e)}function jW(){return UU({envValue:process.env.OPENCLAW_SESSION_CACHE_TTL_MS,defaultTtlMs:45e3})}function MW(){return WU(jW())}function NW(e){let t=FU({channel:e.channel,lastChannel:e.lastChannel,lastTo:e.lastTo,lastAccountId:e.lastAccountId,lastThreadId:e.lastThreadId??e.deliveryContext?.threadId??e.origin?.threadId,deliveryContext:e.deliveryContext}),n=t.deliveryContext,r=(e.deliveryContext?.channel??void 0)===n?.channel&&(e.deliveryContext?.to??void 0)===n?.to&&(e.deliveryContext?.accountId??void 0)===n?.accountId&&(e.deliveryContext?.threadId??void 0)===n?.threadId,i=e.lastChannel===t.lastChannel&&e.lastTo===t.lastTo&&e.lastAccountId===t.lastAccountId&&e.lastThreadId===t.lastThreadId;return r&&i?e:{...e,deliveryContext:n,lastChannel:t.lastChannel,lastTo:t.lastTo,lastAccountId:t.lastAccountId,lastThreadId:t.lastThreadId}}function PW(e){if(!e||e.threadId==null)return e;let t={...e};return delete t.threadId,t}function FW(e){return e.trim().toLowerCase()}function IW(e){let t=e.sessionKey.trim(),n=FW(t),r=new Set;t!==n&&Object.prototype.hasOwnProperty.call(e.store,t)&&r.add(t);let i=e.store[n]??(r.size>0?e.store[t]:void 0),a=i?.updatedAt??0;for(let[t,o]of Object.entries(e.store)){if(t===n||t.toLowerCase()!==n)continue;r.add(t);let e=o?.updatedAt??0;(!i||e>a)&&(i=o,a=e)}return{normalizedKey:n,existing:i,legacyKeys:[...r]}}function LW(e){for(let[t,n]of Object.entries(e)){if(!n)continue;let r=NW(BH(n));r!==n&&(e[t]=r)}}function RW(e,t={}){if(!t.skipCache&&MW()){let t=GU(e),n=dW({storePath:e,ttlMs:jW(),mtimeMs:t?.mtimeMs,sizeBytes:t?.sizeBytes});if(n)return n}let n={},r=GU(e),i=r?.mtimeMs,a,o=process.platform===`win32`?3:1,s=o>1?new Int32Array(new SharedArrayBuffer(4)):void 0;for(let t=0;t<o;t++)try{let c=k.readFileSync(e,`utf-8`);if(c.length===0&&t<o-1){Atomics.wait(s,0,0,50);continue}let l=JSON.parse(c);AW(l)&&(n=l,a=c),r=GU(e)??r,i=r?.mtimeMs;break}catch{if(t<o-1){Atomics.wait(s,0,0,50);continue}}return a===void 0?lW(e,void 0):lW(e,a),OW(n),!t.skipCache&&MW()&&fW({storePath:e,store:n,mtimeMs:i,sizeBytes:r?.sizeBytes,serialized:a}),structuredClone(n)}function zW(e){try{return IW({store:RW(e.storePath),sessionKey:e.sessionKey}).existing?.updatedAt}catch{return}}function BW(e){let t=GU(e.storePath);if(lW(e.storePath,e.serialized),!MW()){uW(e.storePath);return}fW({storePath:e.storePath,store:e.store,mtimeMs:t?.mtimeMs,sizeBytes:t?.sizeBytes,serialized:e.serialized})}async function VW(e,t,n){if(LW(t),!n?.skipMaintenance){let r={...xW(),...n?.maintenanceOverride},i=r.mode===`warn`,a=Object.keys(t).length;if(i){let i=n?.activeSessionKey?.trim();if(i){let e=wW({store:t,activeSessionKey:i,pruneAfterMs:r.pruneAfterMs,maxEntries:r.maxEntries});e&&(kW.warn(`session maintenance would evict active session; skipping enforcement`,{activeSessionKey:e.activeSessionKey,wouldPrune:e.wouldPrune,wouldCap:e.wouldCap,pruneAfterMs:e.pruneAfterMs,maxEntries:e.maxEntries}),await n?.onWarn?.(e))}let o=await iW({store:t,storePath:e,activeSessionKey:n?.activeSessionKey,maintenance:r,warnOnly:!0,log:kW});await n?.onMaintenanceApplied?.({mode:r.mode,beforeCount:a,afterCount:Object.keys(t).length,pruned:0,capped:0,diskBudget:o})}else{let i=new Map,o=SW(t,r.pruneAfterMs,{onPruned:({entry:e})=>{GW(i,e)}}),s=TW(t,r.maxEntries,{onCapped:({entry:e})=>{GW(i,e)}}),c=new Set,l=KW({removedSessionFiles:i,referencedSessionIds:new Set(Object.values(t).map(e=>e?.sessionId).filter(e=>!!e)),storePath:e,reason:`deleted`,restrictToStoreDir:!0});for(let e of l)c.add(e);if(c.size>0||r.resetArchiveRetentionMs!=null){let t=c.size>0?[...c]:[O.dirname(O.resolve(e))];await jU({directories:t,olderThanMs:r.pruneAfterMs,reason:`deleted`}),r.resetArchiveRetentionMs!=null&&await jU({directories:t,olderThanMs:r.resetArchiveRetentionMs,reason:`reset`})}await DW(e,r.rotateBytes);let u=await iW({store:t,storePath:e,activeSessionKey:n?.activeSessionKey,maintenance:r,warnOnly:!1,log:kW});await n?.onMaintenanceApplied?.({mode:r.mode,beforeCount:a,afterCount:Object.keys(t).length,pruned:o,capped:s,diskBudget:u})}}await k.promises.mkdir(O.dirname(e),{recursive:!0});let r=JSON.stringify(t,null,2);if(cW(e)===r){BW({storePath:e,store:t,serialized:r});return}if(process.platform===`win32`){for(let n=0;n<5;n++)try{await qW({storePath:e,store:t,serialized:r});return}catch(t){if(WW(t)===`ENOENT`)return;if(n<4){await new Promise(e=>setTimeout(e,50*(n+1)));continue}kW.warn(`atomic write failed after 5 attempts: ${e}`)}return}try{await qW({storePath:e,store:t,serialized:r})}catch(n){if(WW(n)===`ENOENT`){try{await qW({storePath:e,store:t,serialized:r})}catch(e){if(WW(e)===`ENOENT`)return;throw e}return}throw n}}async function HW(e,t,n){return await QW(e,async()=>{let r=RW(e,{skipCache:!0}),i=await t(r);return await VW(e,r,n),i})}const UW=new Map;function WW(e){return!e||typeof e!=`object`||!(`code`in e)?null:String(e.code)}function GW(e,t){(!e.has(t.sessionId)||t.sessionFile)&&e.set(t.sessionId,t.sessionFile)}function KW(e){let t=new Set;for(let[n,r]of e.removedSessionFiles){if(e.referencedSessionIds.has(n))continue;let i=AU({sessionId:n,storePath:e.storePath,sessionFile:r,reason:e.reason,restrictToStoreDir:e.restrictToStoreDir});for(let e of i)t.add(O.dirname(e))}return t}async function qW(e){await $I(e.storePath,e.serialized,{mode:384}),BW({storePath:e.storePath,store:e.store,serialized:e.serialized})}async function JW(e){e.store[e.resolved.normalizedKey]=e.next;for(let t of e.resolved.legacyKeys)delete e.store[t];return await VW(e.storePath,e.store,{activeSessionKey:e.resolved.normalizedKey}),e.next}function YW(e){return Error(`timeout waiting for session store lock: ${e}`)}function XW(e){let t=UW.get(e);if(t)return t;let n={running:!1,pending:[]};return UW.set(e,n),n}async function ZW(e){let t=UW.get(e);if(!(!t||t.running)){t.running=!0;try{for(;t.pending.length>0;){let n=t.pending.shift();if(!n)continue;let r=n.timeoutMs??1/0;if(n.timeoutMs!=null&&r<=0){n.reject(YW(e));continue}let i,a,o,s=!1;try{i=await TL({sessionFile:e,timeoutMs:r,staleMs:n.staleMs}),a=await n.fn()}catch(e){s=!0,o=e}finally{await i?.release().catch(()=>void 0)}if(s){n.reject(o);continue}n.resolve(a)}}finally{t.running=!1,t.pending.length===0?UW.delete(e):queueMicrotask(()=>{ZW(e)})}}}async function QW(e,t,n={}){if(!e||typeof e!=`string`)throw Error(`withSessionStoreLock: storePath must be a non-empty string, got ${JSON.stringify(e)}`);let r=n.timeoutMs??1e4,i=n.staleMs??3e4;n.pollIntervalMs;let a=r>0&&Number.isFinite(r),o=XW(e);return await new Promise((n,s)=>{let c={fn:async()=>await t(),resolve:e=>n(e),reject:s,timeoutMs:a?r:void 0,staleMs:i};o.pending.push(c),ZW(e)})}async function $W(e){let{storePath:t,sessionKey:n,update:r}=e;return await QW(t,async()=>{let e=RW(t,{skipCache:!0}),i=IW({store:e,sessionKey:n}),a=i.existing;if(!a)return null;let o=await r(a);return o?await JW({storePath:t,store:e,resolved:i,next:WH(a,o)}):a})}async function eG(e){let{storePath:t,sessionKey:n,ctx:r}=e,i=e.createIfMissing??!0;return await HW(t,t=>{let a=IW({store:t,sessionKey:n}),o=a.existing,s=PH({ctx:r,sessionKey:a.normalizedKey,existing:o,groupResolution:e.groupResolution});if(!s){if(o&&a.legacyKeys.length>0){t[a.normalizedKey]=o;for(let e of a.legacyKeys)delete t[e]}return o??null}if(!o&&!i)return null;let c=o?GH(o,s):WH(o,s);t[a.normalizedKey]=c;for(let e of a.legacyKeys)delete t[e];return c},{activeSessionKey:FW(n)})}async function tG(e){let{storePath:t,sessionKey:n,channel:r,to:i,accountId:a,threadId:o,ctx:s}=e;return await QW(t,async()=>{let c=RW(t),l=IW({store:c,sessionKey:n}),u=l.existing,d=Date.now(),f=PU(e.deliveryContext),p=PU({channel:r,to:i,accountId:a,threadId:o}),m=LU(f,p),h=e.deliveryContext,g=(h!=null&&Object.prototype.hasOwnProperty.call(h,`threadId`)?h.threadId:void 0)??(o!=null&&o!==``?o:void 0),_=LU(m,(f?.channel||f?.to||p?.channel||p?.to)&&g==null?PW(IU(u)):IU(u)),v=FU({deliveryContext:{channel:_?.channel,to:_?.to,accountId:_?.accountId,threadId:_?.threadId}}),y=s?PH({ctx:s,sessionKey:l.normalizedKey,existing:u,groupResolution:e.groupResolution}):null,b={updatedAt:Math.max(u?.updatedAt??0,d),deliveryContext:v.deliveryContext,lastChannel:v.lastChannel,lastTo:v.lastTo,lastAccountId:v.lastAccountId,lastThreadId:v.lastThreadId};return await JW({storePath:t,store:c,resolved:l,next:WH(u,y?{...b,...y}:b)})})}const nG=new Set;function rG(e){return nG.add(e),()=>{nG.delete(e)}}function iG(e){let t=e.trim();if(!t)return;let n={sessionFile:t};for(let e of nG)try{e(n)}catch{}}function aG(e){if(!e)return{baseSessionKey:void 0,threadId:void 0};let t=e.lastIndexOf(`:topic:`),n=e.lastIndexOf(`:thread:`),r=Math.max(t,n),i=t>n?`:topic:`:`:thread:`;return{baseSessionKey:r===-1?e:e.slice(0,r),threadId:(r===-1?void 0:e.slice(r+i.length))?.trim()||void 0}}function oG(e){let{baseSessionKey:t,threadId:n}=aG(e);if(!e||!t)return{deliveryContext:void 0,threadId:n};let r;try{let n=RW(Se(kw().session?.store)),i=n[e];!i?.deliveryContext&&t!==e&&(i=n[t]),i?.deliveryContext&&(r={channel:i.deliveryContext.channel,to:i.deliveryContext.to,accountId:i.deliveryContext.accountId})}catch{}return{deliveryContext:r,threadId:n}}async function sG(e){let{sessionId:t,sessionKey:n,sessionStore:r,storePath:i}=e,a=e.sessionEntry??r[n]??{sessionId:t,updatedAt:Date.now()},o=e.fallbackSessionFile?.trim(),s=ge(t,!a.sessionFile&&o?{...a,sessionFile:o}:a,{agentId:e.agentId,sessionsDir:e.sessionsDir}),c={...a,sessionId:t,updatedAt:Date.now(),sessionFile:s};return a.sessionId!==t||a.sessionFile!==s?(r[n]=c,await HW(i,e=>{e[n]={...e[n],...c}},e.activeSessionKey?{activeSessionKey:e.activeSessionKey}:void 0),{sessionFile:s,sessionEntry:c}):(r[n]=c,{sessionFile:s,sessionEntry:c})}function cG(e){let t=e.split(`#`)[0]??e;return t.split(`?`)[0]??t}function lG(e){let t=e.trim();if(!t)return null;let n=cG(t);try{let e=new URL(n),t=O.basename(e.pathname);if(!t)return null;try{return decodeURIComponent(t)}catch{return t}}catch{let e=O.basename(n);return!e||e===`/`||e===`.`?null:e}}function uG(e){let t=e.mediaUrls?.filter(e=>e&&e.trim())??[];if(t.length>0){let e=t.map(e=>lG(e)).filter(e=>!!(e&&e.trim()));return e.length>0?e.join(`, `):`media`}return(e.text??``).trim()||null}async function dG(e){if(k.existsSync(e.sessionFile))return;await k.promises.mkdir(O.dirname(e.sessionFile),{recursive:!0});let t={type:`session`,version:Ht,id:e.sessionId,timestamp:new Date().toISOString(),cwd:process.cwd()};await k.promises.writeFile(e.sessionFile,`${JSON.stringify(t)}\n`,{encoding:`utf-8`,mode:384})}async function fG(e){let t=be({agentId:e.agentId,storePath:e.storePath}),n=ge(e.sessionId,e.sessionEntry,t),r=e.sessionEntry;if(e.sessionStore&&e.storePath){let i=aG(e.sessionKey).threadId,a=r?.sessionFile?void 0:se(e.sessionId,e.agentId,e.threadId??i),o=await sG({sessionId:e.sessionId,sessionKey:e.sessionKey,sessionStore:e.sessionStore,storePath:e.storePath,sessionEntry:r,agentId:t?.agentId,sessionsDir:t?.sessionsDir,fallbackSessionFile:a});n=o.sessionFile,r=o.sessionEntry}return{sessionFile:n,sessionEntry:r}}async function pG(e){let t=e.sessionKey.trim();if(!t)return{ok:!1,reason:`missing sessionKey`};let n=uG({text:e.text,mediaUrls:e.mediaUrls});if(!n)return{ok:!1,reason:`empty text`};let r=e.storePath??Ce(e.agentId),i=RW(r,{skipCache:!0}),a=i[t];if(!a?.sessionId)return{ok:!1,reason:`unknown sessionKey: ${t}`};let o;try{o=(await sG({sessionId:a.sessionId,sessionKey:t,sessionStore:i,storePath:r,sessionEntry:a,agentId:e.agentId,sessionsDir:O.dirname(r)})).sessionFile}catch(e){return{ok:!1,reason:e instanceof Error?e.message:String(e)}}return await dG({sessionFile:o,sessionId:a.sessionId}),Ut.open(o).appendMessage({role:`assistant`,content:[{type:`text`,text:n}],api:`openai-responses`,provider:`openclaw`,model:`delivery-mirror`,usage:{input:0,output:0,cacheRead:0,cacheWrite:0,totalTokens:0,cost:{input:0,output:0,cacheRead:0,cacheWrite:0,total:0}},stopReason:`stop`,timestamp:Date.now()}),iG(o),{ok:!0,sessionFile:o}}function mG(e,t,n){return e.mode===`off`?!1:e.mode===`all`?!0:t.trim()!==n.trim()}function hG(e){return e.cfg?.session?.scope===`global`?`global`:IH({cfg:e.cfg,agentId:e.agentId})}function gG(e){return RH({cfg:e.cfg,agentId:e.agentId,sessionKey:e.sessionKey})}function _G(e){let t=e.sessionKey?.trim()??``,n=u({sessionKey:t,config:e.cfg}),r=e.cfg,i=vD(r,n),a=hG({cfg:r,agentId:n}),o=t?mG(i,gG({cfg:r,agentId:n,sessionKey:t}),a):!1;return{agentId:n,sessionKey:t,mainSessionKey:a,mode:i.mode,sandboxed:o,toolPolicy:uD(r,n)}}function vG(e){let t=e.toolName.trim().toLowerCase();if(!t)return;let n=_G({cfg:e.cfg,sessionKey:e.sessionKey});if(!n.sandboxed)return;let r=new Set(YE(n.toolPolicy.deny)),i=YE(n.toolPolicy.allow),a=i.length>0?new Set(i):null,o=r.has(t),s=a?!a.has(t):!1;if(!o&&!s)return;let c=[],l=[];o&&(c.push(`deny list`),l.push(`Remove "${t}" from ${n.toolPolicy.sources.deny.key}.`)),s&&(c.push(`allow list`),l.push(`Add "${t}" to ${n.toolPolicy.sources.allow.key} (or set it to [] to allow all).`));let u=[];u.push(`Tool "${t}" blocked by sandbox tool policy (mode=${n.mode}).`),u.push(`Session: ${n.sessionKey||`(unknown)`}`),u.push(`Reason: ${c.join(` + `)}`),u.push(`Fix:`),u.push(`- agents.defaults.sandbox.mode=off (disable sandbox)`);for(let e of l)u.push(`- ${e}`);return n.mode===`non-main`&&u.push(`- Use main session key (direct): ${n.mainSessionKey}`),u.push(`- See: ${gr(`openclaw sandbox explain --session ${n.sessionKey}`)}`),u.join(`
64
64
  `)}function yG(){try{if(Ct(`which rg`,{encoding:`utf8`,stdio:[`ignore`,`pipe`,`ignore`],timeout:2e3}).trim())return}catch{}if(A.platform()===`darwin`)return{command:`/usr/bin/true`}}let bG=!1,xG=null;function SG(e,t){if(e===null)return!1;try{return JSON.stringify(e)===JSON.stringify(t)}catch{return!1}}let CG=null;async function wG(){return CG||=(await import(`@anthropic-ai/sandbox-runtime`)).SandboxManager,CG}const TG={network:{allowedDomains:[`github.com`,`*.github.com`,`*.githubusercontent.com`,`npmjs.org`,`*.npmjs.org`,`registry.npmjs.org`,`pypi.org`,`*.pypi.org`,`api.anthropic.com`,`*.openai.com`,`*.qq.com`,`*.imtt.qq.com`],deniedDomains:[],allowLocalBinding:!0},filesystem:{denyRead:[`~/.ssh`,`~/.gnupg`,`~/.aws/credentials`],allowWrite:[`.`,`/tmp`,`/private/tmp`,`/var/tmp`,`/private/var/tmp`],denyWrite:[`.env`,`.env.local`,`.env.production`]}};function EG(e,t){return e.map(e=>e===`.`?t?O.resolve(t):process.cwd():e===`~`||e.startsWith(`~/`)?O.resolve(A.homedir(),e.slice(e.startsWith(`~/`)?2:1)):e)}function DG(e,t){let n=yG(),r=n?{ripgrep:n}:{};if(!e)return{...TG,filesystem:{...TG.filesystem,allowWrite:EG(TG.filesystem?.allowWrite??[],t)},...r};let i=e.allowWrite??TG.filesystem?.allowWrite??[],a=e.allowedDomains?.includes(`*`);return{network:{allowedDomains:a?void 0:e.allowedDomains??TG.network?.allowedDomains??[],deniedDomains:a?[]:e.deniedDomains??TG.network?.deniedDomains??[],allowLocalBinding:e.allowLocalBinding??TG.network?.allowLocalBinding??!0,allowUnixSockets:e.allowUnixSockets},filesystem:{denyRead:e.denyRead??TG.filesystem?.denyRead??[],allowWrite:EG(i,t),denyWrite:e.denyWrite??TG.filesystem?.denyWrite??[]},...r}}async function OG(e){let t=e??DG();if(!(bG&&SG(xG,t)))try{await(await wG()).initialize(t,void 0,!0),bG=!0,xG=t,console.log(`[QBotClaw:SRT:Init] ✅ sandbox-runtime 初始化成功 | config=${JSON.stringify(t,null,2)}`),PG()}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);throw console.log(`[QBotClaw:SRT:Init] ❌ sandbox-runtime 初始化失败: ${t}`),e}}async function kG(e){bG||await OG();try{return await(await wG()).wrapWithSandbox(e)}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);throw console.log(`[QBotClaw:SRT:Exec] ❌ wrapWithSandbox 失败: ${t}`),e}}async function AG(){if(bG)try{await(await wG()).reset(),bG=!1,xG=null}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);console.log(`[QBotClaw:SRT:Cleanup] ❌ sandbox-runtime 重置失败: ${t}`)}}async function jG(e){if(!bG)return[];try{return(await wG()).getSandboxViolationStore().getViolationsForCommand(e)}catch{return[]}}async function MG(){if(bG)try{(await wG()).cleanupAfterCommand()}catch{}}let NG=!1;function PG(){if(!NG){NG=!0,process.on(`exit`,()=>{bG&&(console.log(`[QBotClaw:SRT:Cleanup] 🧹 进程退出,执行 SRT 清理...`),AG())});for(let e of[`SIGTERM`,`SIGINT`])process.on(e,()=>{AG().finally(()=>{process.kill(process.pid,e)})})}}async function FG(e,n,r){if(await D.mkdir(e,{recursive:!0}),n){let r=E(n),i=[Ae,b,s,v,l,y,c];for(let n of i){let i=O.join(r,n),a=O.join(e,n);try{await D.access(a)}catch{try{let e=await t({absolutePath:i,rootPath:r,boundaryLabel:`sandbox seed workspace`});if(!e.ok)continue;try{let t=k.readFileSync(e.fd,`utf-8`);await D.writeFile(a,t,{encoding:`utf-8`,flag:`wx`})}finally{k.closeSync(e.fd)}}catch{}}}}await ye({dir:e,ensureBootstrapFiles:!r})}async function IG(e){let{cfg:t,rawSessionKey:n}=e,i=E(e.workspaceDir?.trim()||r),a=E(t.workspaceRoot),o=UL(t.scope,n),s=t.scope===`shared`?a:HL(a,o),c=t.workspaceAccess===`rw`?i:s;if(c===s){if(await FG(s,i,e.config?.agents?.defaults?.skipBootstrap),t.workspaceAccess!==`rw`)try{await EA({sourceWorkspaceDir:i,targetWorkspaceDir:s,config:e.config})}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);Le.error?.(`Sandbox skill sync failed: ${t}`)}}else await D.mkdir(c,{recursive:!0});return{agentWorkspaceDir:i,scopeKey:o,sandboxWorkspaceDir:s,workspaceDir:c}}async function LG(e){if(e.docker.user?.trim())return e.docker;let t=e.stat??(e=>D.stat(e));try{let n=await t(e.workspaceDir),r=Number.isInteger(n.uid)?n.uid:null,i=Number.isInteger(n.gid)?n.gid:null;return r===null||i===null||r<0||i<0?e.docker:{...e.docker,user:`${r}:${i}`}}catch{return e.docker}}function RG(e){let t=e.sessionKey?.trim();if(!t)return null;let n=_G({cfg:e.config,sessionKey:t});if(!n.sandboxed)return console.log(`[QBotClaw:Sandbox:Init] ❌ 沙箱未启用 | mode=${n.mode} | sessionKey=${t} | sandboxed=false`),null;let r=vD(e.config,n.agentId);return console.log(`[QBotClaw:Sandbox:Init] ✅ 沙箱已启用 | mode=${n.mode} | agentId=${n.agentId} | scope=${r.scope}`),{rawSessionKey:t,runtime:n,cfg:r}}async function zG(e){let t=RG(e);if(!t)return null;let{rawSessionKey:n,cfg:i}=t;if(i.runtime===`srt`){let t=E(e.workspaceDir?.trim()||r);await D.mkdir(t,{recursive:!0});let a=e.config?.agents?.defaults?.sandbox?.srt,o=DG(a,t);try{await OG(o)}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);return console.log(`[QBotClaw:SRT:Init] ❌ SRT 初始化失败,回退到非沙箱模式: ${t}`),Le.error?.(`SRT sandbox initialization failed: ${t}`),null}let s={enabled:!0,runtime:`srt`,sessionKey:n,workspaceDir:t,agentWorkspaceDir:t,workspaceAccess:i.workspaceAccess===`none`?`rw`:i.workspaceAccess,containerName:`srt-sandbox-${n}`,containerWorkdir:t,docker:i.docker,tools:i.tools,browserAllowHostControl:i.browser.allowHostControl};if(a?.skillMounts!==!1){let n=[{hostRoot:t,containerRoot:t,writable:s.workspaceAccess===`rw`,source:`workspace`}];for(let e of i.docker.binds??[]){let t=e.split(`:`);if(t.length>=2&&t[0]&&t[1]){let e=E(t[0]);n.push({hostRoot:e,containerRoot:e,writable:!t[2]?.includes(`ro`),source:`bind`})}}let r=EG(a?.allowWrite??o.filesystem?.allowWrite??[],t),c=new Set(n.map(e=>e.hostRoot));for(let e of r){if(c.has(e))continue;let t=!1;for(let n of c)if(e.startsWith(n+O.sep)||e===n){t=!0;break}t||(c.add(e),n.push({hostRoot:e,containerRoot:e,writable:!0,source:`allowWrite`}))}try{let r=CA(t,{config:e.config}),i=new Set;i.add(O.resolve(t));for(let e of r){let t=O.resolve(O.dirname(e.skill.baseDir));if(i.has(t))continue;let r=!1;for(let e of i)if(t.startsWith(e+O.sep)||t===e){r=!0;break}r||(i.add(t),n.push({hostRoot:t,containerRoot:t,writable:!1,source:`bind`}))}}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);console.log(`[QBotClaw:SRT:Init] ⚠️ Skills 源目录收集失败(非致命): ${t}`),Le.error?.(`SRT sandbox skill mount collection failed: ${t}`)}s.fsBridge=XA({workspaceDir:t,containerWorkdir:t,mounts:n})}else s.fsBridge=YA(t);return s}await lz(i);let{agentWorkspaceDir:a,scopeKey:o,workspaceDir:s}=await IG({cfg:i,rawSessionKey:n,config:e.config,workspaceDir:e.workspaceDir}),c=await LG({docker:i.docker,workspaceDir:s}),l=c===i.docker?i:{...i,docker:c},u=await NR({sessionKey:n,workspaceDir:s,agentWorkspaceDir:a,cfg:l});console.log(`[QBotClaw:Sandbox:Init] 🐳 沙箱容器就绪 | containerName=${u}`);let d=await GR({scopeKey:o,workspaceDir:s,agentWorkspaceDir:a,cfg:l,evaluateEnabled:e.config?.browser?.evaluateEnabled??!0,bridgeAuth:i.browser.enabled?await(async()=>{let t=e.config??kw(),n=uO(t);try{n=(await fO({cfg:t})).auth}catch(e){let t=e instanceof Error?e.message:JSON.stringify(e);Le.error?.(`Sandbox browser auth ensure failed: ${t}`)}return n})():void 0}),f={enabled:!0,runtime:`docker`,sessionKey:n,workspaceDir:s,agentWorkspaceDir:a,workspaceAccess:l.workspaceAccess,containerName:u,containerWorkdir:l.docker.workdir,docker:l.docker,tools:l.tools,browserAllowHostControl:l.browser.allowHostControl,browser:d??void 0};return f.fsBridge=ez({sandbox:f}),f}async function BG(e){let t=RG(e);if(!t)return null;let{rawSessionKey:n,cfg:r}=t,{workspaceDir:i}=await IG({cfg:r,rawSessionKey:n,config:e.config,workspaceDir:e.workspaceDir});return{workspaceDir:i,containerWorkdir:r.docker.workdir}}function VG(e){if(typeof e!=`object`||!e)return JSON.stringify(e)??`null`;if(Array.isArray(e))return`[${e.map(e=>VG(e)).join(`,`)}]`;let t=e;return`{${Object.keys(t).toSorted().map(e=>`${JSON.stringify(e)}:${VG(t[e])}`).join(`,`)}}`}const HG=/\b(?:daily|weekly|monthly)(?:\/(?:daily|weekly|monthly))* (?:usage )?limit(?:s)?(?: (?:exhausted|reached|exceeded))?\b/i,UG={rateLimit:[/rate[_ ]limit|too many requests|429/,`model_cooldown`,`exceeded your current quota`,`resource has been exhausted`,`quota exceeded`,`resource_exhausted`,`usage limit`,/\btpm\b/i,`tokens per minute`,`tokens per day`],overloaded:[/overloaded_error|"type"\s*:\s*"overloaded_error"/i,`overloaded`,/service[_ ]unavailable.*(?:overload|capacity|high[_ ]demand)|(?:overload|capacity|high[_ ]demand).*service[_ ]unavailable/i,`high demand`],timeout:[`timeout`,`timed out`,`service unavailable`,`deadline exceeded`,`context deadline exceeded`,`connection error`,`network error`,`network request failed`,`fetch failed`,`socket hang up`,/\beconn(?:refused|reset|aborted)\b/i,/\benotfound\b/i,/\beai_again\b/i,/without sending (?:any )?chunks?/i,/\bstop reason:\s*(?:abort|error|malformed_response)\b/i,/\breason:\s*(?:abort|error|malformed_response)\b/i,/\bunhandled stop reason:\s*(?:abort|error|malformed_response)\b/i],billing:[/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment/i,`payment required`,`insufficient credits`,/insufficient[_ ]quota/i,`credit balance`,`plans & billing`,`insufficient balance`,`insufficient usd or diem balance`],authPermanent:[/api[_ ]?key[_ ]?(?:revoked|invalid|deactivated|deleted)/i,`invalid_api_key`,`key has been disabled`,`key has been revoked`,`account has been deactivated`,/could not (?:authenticate|validate).*(?:api[_ ]?key|credentials)/i,`permission_error`,`not allowed for this organization`],auth:[/invalid[_ ]?api[_ ]?key/,`incorrect api key`,`invalid token`,`authentication`,`re-authenticate`,`oauth token refresh failed`,`unauthorized`,`forbidden`,`access denied`,`insufficient permissions`,`insufficient permission`,/missing scopes?:/i,`expired`,`token has expired`,/\b401\b/,/\b403\b/,`no credentials found`,`no api key found`],format:[`string should match pattern`,`tool_use.id`,`tool_use_id`,`messages.1.content.1.tool_use.id`,`invalid request format`,/tool call id was.*must be/i]},WG=/^(?:error[:\s-]+)?billing(?:\s+error)?(?:[:\s-]+|$)|^(?:error[:\s-]+)?(?:credit balance|insufficient credits?|payment required|http\s*402\b)/i,GG=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|^\s*402\s+payment/i;function KG(e,t){if(!e)return!1;let n=e.toLowerCase();return t.some(e=>e instanceof RegExp?e.test(n):n.includes(e))}function qG(e){return KG(e,UG.format)}function JG(e){return KG(e,UG.rateLimit)}function YG(e){return KG(e,UG.timeout)}function XG(e){return HG.test(e)}function ZG(e){let t=e.toLowerCase();return t?e.length>512?GG.test(t):KG(t,UG.billing)?!0:WG.test(e)?t.includes(`upgrade`)||t.includes(`credits`)||t.includes(`payment`)||t.includes(`plan`):!1:!1}function QG(e){return KG(e,UG.authPermanent)}function $G(e){return KG(e,UG.auth)}function eK(e){return KG(e,UG.overloaded)}const tK=w(`errors`);function nK(e,t){let n=e?.trim(),r=t?.trim(),i=n&&r?`${n} (${r})`:n||void 0;return i?`⚠️ ${i} returned a billing error — your API key has run out of credits or has an insufficient balance. Check your ${n} billing dashboard and top up or switch to a different API key.`:`⚠️ API provider returned a billing error — your API key has run out of credits or has an insufficient balance. Check your provider's billing dashboard and top up or switch to a different API key.`}const rK=nK();function iK(e){if(JG(e))return`⚠️ API rate limit reached. Please try again later.`;if(eK(e))return`The AI service is temporarily overloaded. Please try again in a moment.`}function aK(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`reasoning is mandatory`)||t.includes(`reasoning is required`)||t.includes(`requires reasoning`)||t.includes(`reasoning`)&&t.includes(`cannot be disabled`)}function oK(e){let t=e.toLowerCase();return/\btpm\b/i.test(t)||t.includes(`tokens per minute`)}function sK(e){if(!e)return!1;let t=e.toLowerCase();if(oK(e)||aK(e))return!1;let n=t.includes(`request size exceeds`),r=t.includes(`context window`)||t.includes(`context length`)||t.includes(`maximum context length`);return t.includes(`request_too_large`)||t.includes(`request exceeds the maximum size`)||t.includes(`context length exceeded`)||t.includes(`maximum context length`)||t.includes(`prompt is too long`)||t.includes(`exceeds model context window`)||t.includes(`model token limit`)||n&&r||t.includes(`context overflow:`)||t.includes(`exceed context limit`)||t.includes(`exceeds the model's maximum context`)||t.includes(`max_tokens`)&&t.includes(`exceed`)&&t.includes(`context`)||t.includes(`input length`)&&t.includes(`exceed`)&&t.includes(`context`)||t.includes(`is longer than`)&&r||t.includes(`413`)&&t.includes(`too large`)||t.includes(`context_window_exceeded`)||e.includes(`上下文过长`)||e.includes(`上下文超出`)||e.includes(`上下文长度超`)||e.includes(`超出最大上下文`)||e.includes(`请压缩上下文`)}const cK=/context window.*(too small|minimum is)/i,lK=/context.*overflow|context window.*(too (?:large|long)|exceed|over|limit|max(?:imum)?|requested|sent|tokens)|prompt.*(too (?:large|long)|exceed|over|limit|max(?:imum)?)|(?:request|input).*(?:context|window|length|token).*(too (?:large|long)|exceed|over|limit|max(?:imum)?)|(?:input|request).*(?:is longer|longer than).*(?:context|window|length)/i,uK=/rate limit|too many requests|requests per (?:minute|hour|day)|quota|throttl|429\b|tokens per day/i;function dK(e){return!e||oK(e)||aK(e)||ZG(e)||cK.test(e)||JG(e)?!1:sK(e)?!0:uK.test(e)?!1:lK.test(e)}function fK(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`summarization failed`)||t.includes(`auto-compaction`)||t.includes(`compaction failed`)||t.includes(`compaction`)?dK(e)?!0:t.includes(`context overflow`):!1}const pK=/^(?:error|api\s*error|apierror|openai\s*error|anthropic\s*error|gateway\s*error)[:\s-]+/i,mK=/<\s*\/?\s*final\s*>/gi,hK=/^(?:error|api\s*error|openai\s*error|anthropic\s*error|gateway\s*error|request failed|failed|exception)[:\s-]+/i,gK=/^(?:context overflow:|request_too_large\b|request size exceeds\b|request exceeds the maximum size\b|context length exceeded\b|maximum context length\b|prompt is too long\b|exceeds model context window\b)/i,_K=/^(?:http\s*)?(\d{3})\s+(.+)$/i,vK=/^(?:http\s*)?(\d{3})(?:\s+([\s\S]+))?$/i,yK=/^\s*(?:<!doctype\s+html\b|<html\b)/i,bK=new Set([521,522,523,524,525,526,530]),xK=new Set([499,500,502,503,504,521,522,523,524,529]),SK=[`error`,`bad request`,`not found`,`unauthorized`,`forbidden`,`internal server`,`service unavailable`,`gateway`,`rate limit`,`overloaded`,`timeout`,`timed out`,`invalid`,`too many requests`,`permission`],CK=[`insufficient credits`,`insufficient quota`,`credit balance`,`insufficient balance`,`plans & billing`,`add more credits`,`top up`],wK=[`upgrade your plan`,`upgrade plan`,`current plan`,`subscription`],TK=[`daily`,`weekly`,`monthly`],EK=[`try again`,`retry`,`temporary`,`cooldown`],DK=[`usage limit`,`rate limit`,`organization usage`],OK=[`organization`,`workspace`],kK=[`billing period`,`exceeded`,`reached`,`exhausted`],AK=/["']?(?:status|code)["']?\s*[:=]\s*402\b|\bhttp\s*402\b|\berror(?:\s+code)?\s*[:=]?\s*402\b|\b(?:got|returned|received)\s+(?:a\s+)?402\b|^\s*402\s+payment required\b|^\s*402\s+.*used up your points\b/i,jK=/^(?:error[:\s-]+)?(?:(?:http\s*)?402(?:\s+payment required)?|payment required)(?:[:\s-]+|$)/i;function MK(e,t){return t.some(t=>e.includes(t))}function NK(e){return MK(e,CK)||MK(e,wK)&&e.includes(`limit`)||e.includes(`billing hard limit`)||e.includes(`hard limit reached`)||e.includes(`maximum allowed`)&&e.includes(`limit`)}function PK(e){let t=MK(e,TK),n=e.includes(`spend limit`)||e.includes(`spending limit`),r=MK(e,OK);return MK(e,EK)&&MK(e,DK)||t&&(e.includes(`usage limit`)||n)||t&&e.includes(`limit`)&&e.includes(`reset`)||r&&e.includes(`limit`)&&(n||MK(e,kK))}function FK(e){return e.trim().toLowerCase().replace(jK,``).trim()}function IK(e){let t=FK(e);return!t||NK(t)?`billing`:JG(t)||PK(t)?`rate_limit`:`billing`}function LK(e){return AK.test(e)?IK(e):null}function RK(e){let t=e.match(vK);if(!t)return null;let n=Number(t[1]);return Number.isFinite(n)?{code:n,rest:(t[2]??``).trim()}:null}function zK(e){let t=e.trim();if(!t)return!1;let n=RK(t);return!n||n.code<500?!1:bK.has(n.code)?!0:n.code<600&&yK.test(n.rest)&&/<\/html>/i.test(n.rest)}function BK(e){let t=e.trim();if(!t)return!1;let n=RK(t);return n?xK.has(n.code):!1}function VK(e,t){return typeof e!=`number`||!Number.isFinite(e)?null:e===402?t?IK(t):`billing`:e===429?`rate_limit`:e===401||e===403?t&&QG(t)?`auth_permanent`:`auth`:e===408?`timeout`:e===503||e===499?t&&eK(t)?`overloaded`:`timeout`:e===502||e===504?`timeout`:e===529?`overloaded`:e===400?t&&ZG(t)?`billing`:`format`:null}function HK(e){return e&&e.replace(mK,``)}function UK(e){let t=e.trim();if(!t)return e;let n=t.split(/\n{2,}/);if(n.length<2)return e;let r=e=>e.trim().replace(/\s+/g,` `),i=[],a=null;for(let e of n){let t=r(e);a&&t===a||(i.push(e.trim()),a=t)}return i.length===n.length?e:i.join(`
65
65
 
66
- `)}function WK(e){if(zK(e))return!0;let t=e.match(_K);if(!t)return!1;let n=Number(t[1]);if(!Number.isFinite(n)||n<400)return!1;let r=t[2].toLowerCase();return SK.some(e=>r.includes(e))}function GK(e){return sK(e)?YK(e)||WK(e)||hK.test(e)||gK.test(e):!1}function KK(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(t.type===`error`||typeof t.request_id==`string`||typeof t.requestId==`string`)return!0;if(`error`in t){let e=t.error;if(e&&typeof e==`object`&&!Array.isArray(e)){let t=e;if(typeof t.message==`string`||typeof t.type==`string`||typeof t.code==`string`)return!0}}return!1}function qK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n=[t];pK.test(t)&&n.push(t.replace(pK,``).trim());for(let e of n)if(!(!e.startsWith(`{`)||!e.endsWith(`}`)))try{let t=JSON.parse(e);if(KK(t))return t}catch{}return null}function JK(e){if(!e)return null;let t=qK(e);return t?VG(t):null}function YK(e){return JK(e)!==null}function XK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n,r=t,i=r.match(/^(\d{3})\s+(.+)$/s);i&&(n=i[1],r=i[2].trim());let a=qK(r);if(!a)return null;let o=typeof a.request_id==`string`?a.request_id:typeof a.requestId==`string`?a.requestId:void 0,s=typeof a.type==`string`?a.type:void 0,c=typeof a.message==`string`?a.message:void 0,l,u;if(a.error&&typeof a.error==`object`&&!Array.isArray(a.error)){let e=a.error;typeof e.type==`string`&&(l=e.type),typeof e.code==`string`&&!l&&(l=e.code),typeof e.message==`string`&&(u=e.message)}return{httpCode:n,type:l??s,message:u??c,requestId:o}}function ZK(e){let t=(e??``).trim();if(!t)return`LLM request failed with an unknown error.`;let n=RK(t);if(n&&zK(t))return`The AI service is temporarily unavailable (HTTP ${n.code}). Please try again in a moment.`;let r=t.match(_K);if(r){let e=r[2].trim();if(!e.startsWith(`{`))return`HTTP ${r[1]}: ${e}`}let i=XK(t);if(i?.message){let e=i.httpCode?`HTTP ${i.httpCode}`:`LLM error`,t=i.type?` ${i.type}`:``,n=i.requestId?` (request_id: ${i.requestId})`:``;return`${e}${t}: ${i.message}${n}`}return t.length>600?`${t.slice(0,600)}…`:t}function QK(e,t){let n=(e.errorMessage??``).trim();if(e.stopReason!==`error`&&!n)return;if(!n)return`LLM request failed with an unknown error.`;let r=n.match(/unknown tool[:\s]+["']?([a-z0-9_-]+)["']?/i)??n.match(/tool\s+["']?([a-z0-9_-]+)["']?\s+(?:not found|is not available)/i);if(r?.[1]){let e=vG({cfg:t?.cfg,sessionKey:t?.sessionKey,toolName:r[1]});if(e)return e}if(sK(n))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(aK(n))return`Reasoning is required for this model endpoint. Use /think minimal (or any non-off level) and try again.`;if(/incorrect role information|roles must alternate|400.*role|"message".*role.*information/i.test(n))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(oq(n))return`Session history looks corrupted (tool call input missing). Use /new to start a fresh session. If this keeps happening, reset the session or delete the corrupted session transcript.`;let i=n.match(/"type":"invalid_request_error".*?"message":"([^"]+)"/);return i?.[1]?`LLM request rejected: ${i[1]}`:iK(n)||(YG(n)?`LLM request timed out.`:ZG(n)?nK(t?.provider,t?.model??e.model):WK(n)||YK(n)?ZK(n):(n.length>600&&tK.warn(`Long error truncated: ${n.slice(0,200)}`),n.length>600?`${n.slice(0,600)}…`:n))}function $K(e,t){if(!e)return e;let n=t?.errorContext??!1,r=HK(e),i=r.trim();if(!i)return``;if(n){if(/incorrect role information|roles must alternate/i.test(i))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(GK(i))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(ZG(i))return rK;if(YK(i)||WK(i))return ZK(i);if(hK.test(i))return iK(i)||(YG(i)?`LLM request timed out.`:ZK(i))}return UK(r.replace(/^(?:[ \t]*\r?\n)+/,``))}function eq(e){return!e||e.stopReason!==`error`?!1:JG(e.errorMessage??``)}const tq=/tool_(?:use|call)\.(?:input|arguments).*?(?:field required|required)/i,nq=/messages\.\d+\.content\.\d+\.tool_(?:use|call)\.(?:input|arguments)/i,rq=/image dimensions exceed max allowed size for many-image requests:\s*(\d+)\s*pixels/i,iq=/messages\.(\d+)\.content\.(\d+)\.image/i,aq=/image exceeds\s*(\d+(?:\.\d+)?)\s*mb/i;function oq(e){return e?tq.test(e)||nq.test(e):!1}function sq(e){return!e||e.stopReason!==`error`?!1:ZG(e.errorMessage??``)}function cq(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`"type":"api_error"`)&&t.includes(`internal server error`)}function lq(e){if(!e||!e.toLowerCase().includes(`image dimensions exceed max allowed size`))return null;let t=e.match(rq),n=e.match(iq);return{maxDimensionPx:t?.[1]?Number.parseInt(t[1],10):void 0,messageIndex:n?.[1]?Number.parseInt(n[1],10):void 0,contentIndex:n?.[2]?Number.parseInt(n[2],10):void 0,raw:e}}function uq(e){return!!lq(e)}function dq(e){if(!e)return null;let t=e.toLowerCase();if(!t.includes(`image exceeds`)||!t.includes(`mb`))return null;let n=e.match(aq);return{maxMb:n?.[1]?Number.parseFloat(n[1]):void 0,raw:e}}function fq(e){return e?!!dq(e):!1}function pq(e){return!uq(e)&&qG(e)}function mq(e){return!e||e.stopReason!==`error`?!1:$G(e.errorMessage??``)}function hq(e){if(!e)return!1;let t=e.toLowerCase();return!!(t.includes(`unknown model`)||t.includes(`model not found`)||t.includes(`model_not_found`)||t.includes(`not_found_error`)||t.includes(`does not exist`)&&t.includes(`model`)||t.includes(`invalid model`)&&!t.includes(`invalid model reference`)||/models\/[^\s]+ is not found/i.test(e)||/\b404\b/.test(e)&&/not[-_ ]?found/i.test(e))}function gq(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`session not found`)||t.includes(`session does not exist`)||t.includes(`session expired`)||t.includes(`session invalid`)||t.includes(`conversation not found`)||t.includes(`conversation does not exist`)||t.includes(`conversation expired`)||t.includes(`conversation invalid`)||t.includes(`no such session`)||t.includes(`invalid session`)||t.includes(`session id not found`)||t.includes(`conversation id not found`)}function _q(e){return uq(e)||fq(e)?null:gq(e)?`session_expired`:hq(e)?`model_not_found`:LK(e)||(XG(e)?ZG(e)?`billing`:`rate_limit`:JG(e)?`rate_limit`:eK(e)?`overloaded`:BK(e)?RK(e.trim())?.code===529?`overloaded`:`timeout`:cq(e)?`timeout`:pq(e)?`format`:ZG(e)?`billing`:YG(e)?`timeout`:QG(e)?`auth_permanent`:$G(e)?`auth`:null)}function vq(e){return _q(e)!==null}function yq(e){return!e||e.stopReason!==`error`?!1:vq(e.errorMessage??``)}function bq(e){return e===`google-gemini-cli`||e===`google-generative-ai`}function xq(e){if(!e)return null;let t=null;if(typeof e==`string`){let n=e.trim();if(!n.startsWith(`{`)||!n.endsWith(`}`))return null;try{t=JSON.parse(n)}catch{return null}}else typeof e==`object`&&(t=e);if(!t)return null;let n=typeof t.id==`string`?t.id:``,r=typeof t.type==`string`?t.type:``;return n.startsWith(`rs_`)&&(r===`reasoning`||r.startsWith(`reasoning.`))?{id:n,type:r}:null}function Sq(e,t){for(let n=t+1;n<e.length;n++){let t=e[n];if(!t||typeof t!=`object`||t.type!==`thinking`)return!0}return!1}function Cq(e){let t=e.indexOf(`|`);return t<=0||t>=e.length-1?{callId:e}:{callId:e.slice(0,t),itemId:e.slice(t+1)}}function wq(e){return e===`toolCall`||e===`toolUse`||e===`functionCall`}function Tq(e){let t=!1,n=[],r=null;for(let i of e){if(!i||typeof i!=`object`){r=null,n.push(i);continue}let e=i.role;if(e===`assistant`){let e=i;if(!Array.isArray(e.content)){r=null,n.push(i);continue}let a=new Map,o=!1,s=!1,c=e.content.map(e=>{if(!e||typeof e!=`object`)return e;let t=e;if(t.type===`thinking`&&xq(t.thinkingSignature))return o=!0,e;let n=e;if(!wq(n.type)||typeof n.id!=`string`)return e;let r=Cq(n.id);return o||!r.itemId||!r.itemId.startsWith(`fc_`)?e:(s=!0,a.set(n.id,r.callId),{...e,id:r.callId})});if(r=a.size>0?a:null,!s){n.push(i);continue}t=!0,n.push({...e,content:c});continue}if(e===`toolResult`&&r&&r.size>0){let e=i,a=!1,o={};if(typeof e.toolCallId==`string`){let t=r.get(e.toolCallId);t&&t!==e.toolCallId&&(o.toolCallId=t,a=!0)}if(typeof e.toolUseId==`string`){let t=r.get(e.toolUseId);t&&t!==e.toolUseId&&(o.toolUseId=t,a=!0)}if(!a){n.push(i);continue}t=!0,n.push({...e,...o});continue}r=null,n.push(i)}return t?n:e}function Eq(e){let t=[];for(let n of e){if(!n||typeof n!=`object`){t.push(n);continue}if(n.role!==`assistant`){t.push(n);continue}let e=n;if(!Array.isArray(e.content)){t.push(n);continue}let r=!1,i=[];for(let t=0;t<e.content.length;t++){let n=e.content[t];if(!n||typeof n!=`object`){i.push(n);continue}let a=n;if(a.type!==`thinking`){i.push(n);continue}if(!xq(a.thinkingSignature)){i.push(n);continue}if(Sq(e.content,t)){i.push(n);continue}r=!0}if(!r){t.push(n);continue}i.length!==0&&t.push({...e,content:i})}return t}const Dq=new Set([`toolCall`,`toolUse`,`functionCall`]);function Oq(e,t=`strict`){if(!e||typeof e!=`string`)return t===`strict9`?`defaultid`:`defaulttoolid`;if(t===`strict9`){let t=e.replace(/[^a-zA-Z0-9]/g,``);return t.length>=9?t.slice(0,9):t.length>0?jq(t,9):jq(`sanitized`,9)}let n=e.replace(/[^a-zA-Z0-9]/g,``);return n.length>0?n:`sanitizedtoolid`}function kq(e){let t=e.content;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let t=e;typeof t.id!=`string`||!t.id||typeof t.type==`string`&&Dq.has(t.type)&&n.push({id:t.id,name:typeof t.name==`string`?t.name:void 0})}return n}function Aq(e){let t=e.toolCallId;if(typeof t==`string`&&t)return t;let n=e.toolUseId;return typeof n==`string`&&n?n:null}function jq(e,t=8){return jt(`sha256`).update(e).digest(`hex`).slice(0,t)}function Mq(e){if(e.mode===`strict9`){let t=Oq(e.id,e.mode),n=t.length>=9?t.slice(0,9):``;if(n&&!e.used.has(n))return n;for(let t=0;t<1e3;t+=1){let n=jq(`${e.id}:${t}`,9);if(!e.used.has(n))return n}return jq(`${e.id}:${Date.now()}`,9)}let t=Oq(e.id,e.mode).slice(0,40);if(!e.used.has(t))return t;let n=jq(e.id),r=e.mode===`strict`?``:`_`,i=40-r.length-n.length,a=`${t.length>i?t.slice(0,i):t}${r}${n}`;if(!e.used.has(a))return a;for(let t=2;t<1e3;t+=1){let n=e.mode===`strict`?`x${t}`:`_${t}`,r=`${a.slice(0,40-n.length)}${n}`;if(!e.used.has(r))return r}let o=e.mode===`strict`?`t${Date.now()}`:`_${Date.now()}`;return`${a.slice(0,40-o.length)}${o}`}function Nq(e){let t=e.message.content;if(!Array.isArray(t))return e.message;let n=!1,r=t.map(t=>{if(!t||typeof t!=`object`)return t;let r=t,i=r.type,a=r.id;if(i!==`functionCall`&&i!==`toolUse`&&i!==`toolCall`||typeof a!=`string`||!a)return t;let o=e.resolve(a);return o===a?t:(n=!0,{...t,id:o})});return n?{...e.message,content:r}:e.message}function Pq(e){let t=typeof e.message.toolCallId==`string`&&e.message.toolCallId?e.message.toolCallId:void 0,n=e.message.toolUseId,r=typeof n==`string`&&n?n:void 0,i=t?e.resolve(t):void 0,a=r?e.resolve(r):void 0;return i===t&&a===r?e.message:{...e.message,...i&&{toolCallId:i},...a&&{toolUseId:a}}}function Fq(e,t=`strict`){let n=new Map,r=new Set,i=e=>{let i=n.get(e);if(i)return i;let a=Mq({id:e,used:r,mode:t});return n.set(e,a),r.add(a),a},a=!1,o=e.map(e=>{if(!e||typeof e!=`object`)return e;let t=e.role;if(t===`assistant`){let t=Nq({message:e,resolve:i});return t!==e&&(a=!0),t}if(t===`toolResult`){let t=Pq({message:e,resolve:i});return t!==e&&(a=!0),t}return e});return a?o:e}async function Iq(e,t,n){let r=(n?.sanitizeMode??`full`)===`full`,i={maxDimensionPx:n?.maxDimensionPx,maxBytes:n?.maxBytes},a=n?.sanitizeToolCallIds===!0?Fq(e,n.toolCallIdMode):e,o=[];for(let e of a){if(!e||typeof e!=`object`){o.push(e);continue}let a=e.role;if(a===`toolResult`){let n=e,r=await er(Array.isArray(n.content)?n.content:[],t,i);o.push({...n,content:r});continue}if(a===`user`){let n=e,r=n.content;if(Array.isArray(r)){let e=await er(r,t,i);o.push({...n,content:e});continue}}if(a===`assistant`){let a=e;if(a.stopReason===`error`){let e=a.content;if(Array.isArray(e)){let n=await er(e,t,i);o.push({...a,content:n})}else o.push(a);continue}let s=a.content;if(Array.isArray(s)){if(!r){let e=await er(s,t,i);o.push({...a,content:e});continue}let e=await er((n?.preserveSignatures?s:vE(s,n?.sanitizeThoughtSignatures)).filter(e=>{if(!e||typeof e!=`object`)return!0;let t=e;return t.type!==`text`||typeof t.text!=`string`?!0:t.text.trim().length>0}),t,i);if(e.length===0)continue;o.push({...a,content:e});continue}}o.push(e)}return o}function Lq(e){return e.trim().toLowerCase().replace(/\p{Emoji_Presentation}|\p{Extended_Pictographic}/gu,``).replace(/\s+/g,` `).trim()}function Rq(e,t){return t.length===0||!e||e.length<10?!1:t.some(t=>!t||t.length<10?!1:e.includes(t)||t.includes(e))}function zq(e,t){if(t.length===0)return!1;let n=Lq(e);return!n||n.length<10?!1:Rq(n,t.map(Lq))}function Bq(e){if(!e)return``;let t=e.trim().toLowerCase();return t===`z.ai`||t===`z-ai`?`zai`:t}function Vq(e){return Bq(e)===`zai`}const Hq=[`openai/gpt-5.4`,`openai/gpt-5.4-pro`,`openai/gpt-5.2`,`openai-codex/gpt-5.4`,`openai-codex/gpt-5.3-codex`,`openai-codex/gpt-5.3-codex-spark`,`openai-codex/gpt-5.2-codex`,`openai-codex/gpt-5.1-codex`,`github-copilot/gpt-5.2-codex`,`github-copilot/gpt-5.2`],Uq=new Set(Hq.map(e=>e.toLowerCase())),Wq=new Set(Hq.map(e=>e.split(`/`)[1]?.toLowerCase()).filter(e=>!!e));function Gq(e){if(!e)return;let t=e.trim().toLowerCase(),n=t.replace(/[\s_-]+/g,``);if(n===`adaptive`||n===`auto`)return`adaptive`;if(n===`xhigh`||n===`extrahigh`)return`xhigh`;if([`off`].includes(t))return`off`;if([`on`,`enable`,`enabled`].includes(t))return`low`;if([`min`,`minimal`].includes(t))return`minimal`;if([`low`,`thinkhard`,`think-hard`,`think_hard`].includes(t))return`low`;if([`mid`,`med`,`medium`,`thinkharder`,`think-harder`,`harder`].includes(t))return`medium`;if([`high`,`ultra`,`ultrathink`,`think-hard`,`thinkhardest`,`highest`,`max`].includes(t))return`high`;if([`think`].includes(t))return`minimal`}function Kq(e,t){let n=t?.trim().toLowerCase();if(!n)return!1;let r=e?.trim().toLowerCase();return r?Uq.has(`${r}/${n}`):Wq.has(n)}function qq(e,t){let n=[`off`,`minimal`,`low`,`medium`,`high`];return Kq(e,t)&&n.push(`xhigh`),n.push(`adaptive`),n}function Jq(e,t){return Vq(e)?[`off`,`on`]:qq(e,t)}function Yq(e,t,n=`, `){return Jq(e,t).join(n)}function Xq(){let e=[...Hq];return e.length===0?`unknown model`:e.length===1?e[0]:e.length===2?`${e[0]} or ${e[1]}`:`${e.slice(0,-1).join(`, `)} or ${e[e.length-1]}`}function Zq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`all`,`everything`].includes(t))return`full`;if([`on`,`minimal`,`true`,`yes`,`1`].includes(t))return`on`}function Qq(e){return Zq(e)}function $q(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`enable`,`enabled`].includes(t)||[`tokens`,`token`,`tok`,`minimal`,`min`].includes(t))return`tokens`;if([`full`,`session`].includes(t))return`full`}function eJ(e){return $q(e)??`off`}function tJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`auto`,`auto-approve`,`autoapprove`].includes(t))return`full`;if([`ask`,`prompt`,`approval`,`approve`].includes(t))return`ask`;if([`on`,`true`,`yes`,`1`].includes(t))return`on`}function nJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`hide`,`hidden`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`show`,`visible`,`enable`,`enabled`].includes(t))return`on`;if([`stream`,`streaming`,`draft`,`live`].includes(t))return`stream`}function rJ(e){let t=e.match(/supported values are:\s*([^\n.]+)/i)??e.match(/supported values:\s*([^\n.]+)/i);if(!t?.[1])return[];let n=t[1],r=Array.from(n.matchAll(/['"]([^'"]+)['"]/g)).map(e=>e[1]?.trim());return r.length>0?r.filter(e=>!!e):n.split(/,|\band\b/gi).map(e=>e.replace(/^[^a-zA-Z]+|[^a-zA-Z]+$/g,``).trim()).filter(Boolean)}function iJ(e){let t=e.message?.trim();if(!t)return;let n=rJ(t);if(n.length===0)return/not supported/i.test(t)&&!e.attempted.has(`off`)?`off`:void 0;for(let t of n){let n=Gq(t);if(n&&!e.attempted.has(n))return n}}function aJ(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(!r||typeof r!=`object`){t.push(r);continue}if(r.role!==`assistant`){t.push(r);continue}let i=r,a=e[n+1];if((a&&typeof a==`object`?a.role:void 0)!==`user`){t.push(r);continue}let o=a,s=new Set;if(Array.isArray(o.content))for(let e of o.content)e&&e.type===`toolResult`&&e.toolUseId&&s.add(e.toolUseId);let c=Array.isArray(i.content)?i.content:[],l=c.filter(e=>e?e.type===`toolUse`?s.has(e.id||``):!0:!1);c.length>0&&l.length===0?t.push({...i,content:[{type:`text`,text:`[tool calls omitted]`}]}):t.push({...i,content:l})}return t}function oJ(e){let{messages:t,role:n,merge:r}=e;if(!Array.isArray(t)||t.length===0)return t;let i=[],a;for(let e of t){if(!e||typeof e!=`object`){i.push(e);continue}let t=e.role;if(!t){i.push(e);continue}if(t===a&&a===n){let t=i[i.length-1],n=e;if(t&&typeof t==`object`){let e=t;i[i.length-1]=r(e,n);continue}}i.push(e),a=t}return i}function sJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...e,content:n,...t.usage&&{usage:t.usage},...t.stopReason&&{stopReason:t.stopReason},...t.errorMessage&&{errorMessage:t.errorMessage}}}function cJ(e){return oJ({messages:e,role:`assistant`,merge:sJ})}function lJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...t,content:n,timestamp:t.timestamp??e.timestamp}}function uJ(e){return oJ({messages:aJ(e),role:`user`,merge:lJ})}const dJ=64e3,fJ=8e3,pJ=/\brequest[_ ]?id\b\s*[:=]\s*["'()]*([A-Za-z0-9._:-]+)/i,mJ=[String.raw`\b(?:x-)?api[-_]?key\b\s*[:=]\s*(["']?)([^\s"'\\;]+)\1`,String.raw`"(?:api[-_]?key|api_key)"\s*:\s*"([^"]+)"`,String.raw`(?:\bCookie\b\s*[:=]\s*[^;=\s]+=|;\s*[^;=\s]+=)([^;\s\r\n]+)`];function hJ(){let e=He()?.redactPatterns;return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function gJ(e,t){let n=e?.trim();if(n)return n.length>t?`${n.slice(0,t)}…`:n}function _J(e){let t=e?.trim();if(t)return t.length>dJ?t.slice(0,dJ):t}function vJ(e,t=200){let n=e?.trim();if(!n)return;let r=Array.from(n).filter(e=>{let t=e.charCodeAt(0);return!(t<=8||t===11||t===12||t>=14&&t<=31||t===127)}).join(``).replace(/[\r\n\t]+/g,` `).replace(/\s+/g,` `).trim();return r.length>t?`${r.slice(0,t)}…`:r}function yJ(e,t){return!e||!t?e:e.split(t).join(gE(t,{len:12}))}function bJ(e){if(!e)return e;let t=hJ();return g(e,{mode:`tools`,patterns:[...De(),...t,...mJ]})}function xJ(e){if(e)return e.match(pJ)?.[1]?.trim()||void 0}function SJ(e){let t=e.message&&e.message.length>fJ?e.message.slice(0,fJ):e.message;return(e.httpCode||e.type||t?VG({httpCode:e.httpCode,type:e.type,message:t}):null)||(e.requestId?e.raw.split(e.requestId).join(`<request_id>`):JK(e.raw))}function CJ(e){let t=_J(e);if(!t)return{};try{let e=XK(t),n=e?.requestId??xJ(t),r=n?gE(n,{len:12}):void 0,i=SJ({raw:t,requestId:n,httpCode:e?.httpCode,type:e?.type,message:e?.message}),a=yJ(bJ(t),n),o=yJ(bJ(e?.message),n);return{rawErrorPreview:gJ(a,400),rawErrorHash:gE(t,{len:12}),rawErrorFingerprint:i?gE(i,{len:12}):void 0,httpCode:e?.httpCode,providerErrorType:e?.type,providerErrorMessagePreview:gJ(o,200),requestIdHash:r}}catch{return{}}}function wJ(e){let t=CJ(e);return{textPreview:t.rawErrorPreview,textHash:t.rawErrorHash,textFingerprint:t.rawErrorFingerprint,httpCode:t.httpCode,providerErrorType:t.providerErrorType,providerErrorMessagePreview:t.providerErrorMessagePreview,requestIdHash:t.requestIdHash}}const TJ=w(`agent/embedded`);function EJ(e){let t=e.reason===`billing`||e.reason===`auth_permanent`?`disabled`:`cooldown`,n=e.previous?.cooldownUntil,r=e.previous?.disabledUntil,i=t===`disabled`?typeof r==`number`&&Number.isFinite(r)&&r>e.now&&r===e.next.disabledUntil:typeof n==`number`&&Number.isFinite(n)&&n>e.now&&n===e.next.cooldownUntil,a=gE(e.profileId,{len:12}),o=vJ(e.runId)??`-`,s=vJ(e.provider)??`-`;TJ.warn(`auth profile failure state updated`,{event:`auth_profile_failure_state_updated`,tags:[`error_handling`,`auth_profiles`,t],runId:e.runId,profileId:a,provider:e.provider,reason:e.reason,windowType:t,windowReused:i,previousErrorCount:e.previous?.errorCount,errorCount:e.next.errorCount,previousCooldownUntil:n,cooldownUntil:e.next.cooldownUntil,previousDisabledUntil:r,disabledUntil:e.next.disabledUntil,previousDisabledReason:e.previous?.disabledReason,disabledReason:e.next.disabledReason,failureCounts:e.next.failureCounts,consoleMessage:`auth profile failure state updated: runId=${o} profile=${a} provider=${s} reason=${e.reason} window=${t} reused=${String(i)}`})}const DJ=[`auth_permanent`,`auth`,`billing`,`format`,`model_not_found`,`overloaded`,`timeout`,`rate_limit`,`unknown`],OJ=new Set(DJ),kJ=new Map(DJ.map((e,t)=>[e,t]));function AJ(e){let t=z(e??``);return t===`openrouter`||t===`kilocode`}function jJ(e){let t=[e.cooldownUntil,e.disabledUntil].filter(e=>typeof e==`number`).filter(e=>Number.isFinite(e)&&e>0);return t.length===0?null:Math.max(...t)}function MJ(e,t,n){if(AJ(e.profiles[t]?.provider))return!1;let r=e.usageStats?.[t];if(!r)return!1;let i=jJ(r);return i?(n??Date.now())<i:!1}function NJ(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>0&&t<e}function PJ(e){let t=e.now??Date.now(),n=new Map,r=(e,t)=>{!OJ.has(e)||t<=0||!Number.isFinite(t)||n.set(e,(n.get(e)??0)+t)};for(let n of e.profileIds){let i=e.store.usageStats?.[n];if(!i)continue;if(NJ(i.disabledUntil,t)&&i.disabledReason&&OJ.has(i.disabledReason)){r(i.disabledReason,1e3);continue}if(!NJ(i.cooldownUntil,t))continue;let a=!1;for(let[e,t]of Object.entries(i.failureCounts??{})){let n=e,i=typeof t==`number`?t:0;!OJ.has(n)||i<=0||(r(n,i),a=!0)}a||r(`unknown`,1)}if(n.size===0)return null;let i=null,a=-1,o=2**53-1;for(let e of DJ){let t=n.get(e);if(typeof t!=`number`)continue;let r=kJ.get(e)??2**53-1;(t>a||t===a&&r<o)&&(i=e,a=t,o=r)}return i}function FJ(e,t){let n=null;for(let r of t){let t=e.usageStats?.[r];if(!t)continue;let i=jJ(t);typeof i!=`number`||!Number.isFinite(i)||i<=0||(n===null||i<n)&&(n=i)}return n}function IJ(e,t){let n=e.usageStats;if(!n)return!1;let r=t??Date.now(),i=!1;for(let[e,t]of Object.entries(n)){if(!t)continue;let a=!1,o=typeof t.cooldownUntil==`number`&&Number.isFinite(t.cooldownUntil)&&t.cooldownUntil>0&&r>=t.cooldownUntil,s=typeof t.disabledUntil==`number`&&Number.isFinite(t.disabledUntil)&&t.disabledUntil>0&&r>=t.disabledUntil;o&&(t.cooldownUntil=void 0,a=!0),s&&(t.disabledUntil=void 0,t.disabledReason=void 0,a=!0),a&&!jJ(t)&&(t.errorCount=0,t.failureCounts=void 0),a&&(n[e]=t,i=!0)}return i}async function LJ(e){let{store:t,profileId:n,agentDir:r}=e,i=await Sd({agentDir:r,updater:e=>e.profiles[n]?(HJ(e,n,e=>VJ(e,{lastUsed:Date.now()})),!0):!1});if(i){t.usageStats=i.usageStats;return}t.profiles[n]&&(HJ(t,n,e=>VJ(e,{lastUsed:Date.now()})),Fd(t,r))}function RJ(e){let t=Math.max(1,e);return Math.min(3600*1e3,60*1e3*5**Math.min(t-1,3))}function zJ(e){let t={billingBackoffHours:5,billingMaxHours:24,failureWindowHours:24},n=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>0?e:t,r=e.cfg?.auth?.cooldowns,i=n((()=>{let t=r?.billingBackoffHoursByProvider;if(t){for(let[n,r]of Object.entries(t))if(z(n)===e.providerId)return r}})()??r?.billingBackoffHours,t.billingBackoffHours),a=n(r?.billingMaxHours,t.billingMaxHours),o=n(r?.failureWindowHours,t.failureWindowHours);return{billingBackoffMs:i*60*60*1e3,billingMaxMs:a*60*60*1e3,failureWindowMs:o*60*60*1e3}}function BJ(e){let t=Math.max(1,e.errorCount),n=Math.max(6e4,e.baseMs),r=Math.max(n,e.maxMs),i=n*2**Math.min(t-1,10);return Math.min(r,i)}function VJ(e,t){return{...e,errorCount:0,cooldownUntil:void 0,disabledUntil:void 0,disabledReason:void 0,failureCounts:void 0,...t}}function HJ(e,t,n){e.usageStats=e.usageStats??{},e.usageStats[t]=n(e.usageStats[t])}function UJ(e){let{existingUntil:t,now:n,recomputedUntil:r}=e;return typeof t==`number`&&Number.isFinite(t)&&t>n?t:r}function WJ(e){let t=e.cfgResolved.failureWindowMs,n=typeof e.existing.lastFailureAt==`number`&&e.existing.lastFailureAt>0&&e.now-e.existing.lastFailureAt>t,r=jJ(e.existing),i=typeof r==`number`&&e.now>=r,a=n||i,o=(a?0:e.existing.errorCount??0)+1,s=a?{}:{...e.existing.failureCounts};s[e.reason]=(s[e.reason]??0)+1;let c={...e.existing,errorCount:o,failureCounts:s,lastFailureAt:e.now};if(e.reason===`billing`||e.reason===`auth_permanent`){let t=BJ({errorCount:s[e.reason]??1,baseMs:e.cfgResolved.billingBackoffMs,maxMs:e.cfgResolved.billingMaxMs});c.disabledUntil=UJ({existingUntil:e.existing.disabledUntil,now:e.now,recomputedUntil:e.now+t}),c.disabledReason=e.reason}else{let t=RJ(o);c.cooldownUntil=UJ({existingUntil:e.existing.cooldownUntil,now:e.now,recomputedUntil:e.now+t})}return c}async function GJ(e){let{store:t,profileId:n,reason:r,agentDir:i,cfg:a,runId:o}=e,s=t.profiles[n];if(!s||AJ(s.provider))return;let c,l,u=0,d=await Sd({agentDir:i,updater:e=>{let t=e.profiles[n];if(!t||AJ(t.provider))return!1;let i=Date.now(),o=zJ({cfg:a,providerId:z(t.provider)});l=e.usageStats?.[n],u=i;let s=WJ({existing:l??{},now:i,reason:r,cfgResolved:o});return c=s,HJ(e,n,()=>s),!0}});if(d){t.usageStats=d.usageStats,c&&EJ({runId:o,profileId:n,provider:s.provider,reason:r,previous:l,next:c,now:u});return}if(!t.profiles[n])return;let f=Date.now(),p=zJ({cfg:a,providerId:z(t.profiles[n]?.provider??``)});l=t.usageStats?.[n];let m=WJ({existing:l??{},now:f,reason:r,cfgResolved:p});c=m,HJ(t,n,()=>m),Fd(t,i),EJ({runId:o,profileId:n,provider:t.profiles[n]?.provider??s.provider,reason:r,previous:l,next:c,now:f})}function KJ(e){let t=xu(e.provider),n=e.store.profiles[e.profileId];if(!n)return{eligible:!1,reasonCode:`profile_missing`};if(xu(n.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};let r=e.cfg?.auth?.profiles?.[e.profileId];if(r){if(xu(r.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};if(r.mode!==n.type&&!(r.mode===`oauth`&&n.type===`token`))return{eligible:!1,reasonCode:`mode_mismatch`}}let i=QT({credential:n,now:e.now});return{eligible:i.eligible,reasonCode:i.reasonCode}}function qJ(e){let{cfg:t,store:n,provider:r,preferredProfile:i}=e,a=z(r),o=xu(r),s=Date.now();IJ(n,s);let c=Su(n.order,a),l=Su(t?.auth?.order,a),u=c??l,d=t?.auth?.profiles?Object.entries(t.auth.profiles).filter(([,e])=>xu(e.provider)===o).map(([e])=>e):[],f=u??(d.length>0?d:Ld(n,r));if(f.length===0)return[];let p=e=>KJ({cfg:t,store:n,provider:o,profileId:e,now:s}).eligible,m=f.filter(p),h=f.every(e=>!n.profiles[e]);m.length===0&&d.length>0&&h&&(m=Ld(n,r).filter(p));let g=Id(m);if(u&&u.length>0){let e=[],t=[];for(let r of g)if(MJ(n,r)){let e=jJ(n.usageStats?.[r]??{})??s;t.push({profileId:r,cooldownUntil:e})}else e.push(r);let r=t.toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId),a=[...e,...r];return i&&a.includes(i)?[i,...a.filter(e=>e!==i)]:a}let _=JJ(g,n);return i&&_.includes(i)?[i,..._.filter(e=>e!==i)]:_}function JJ(e,t){let n=Date.now(),r=[],i=[];for(let n of e)MJ(t,n)?i.push(n):r.push(n);let a=r.map(e=>{let n=t.profiles[e]?.type;return{profileId:e,typeScore:n===`oauth`?0:n===`token`?1:n===`api_key`?2:3,lastUsed:t.usageStats?.[e]?.lastUsed??0}}).toSorted((e,t)=>e.typeScore===t.typeScore?e.lastUsed-t.lastUsed:e.typeScore-t.typeScore).map(e=>e.profileId),o=i.map(e=>({profileId:e,cooldownUntil:jJ(t.usageStats?.[e]??{})??n})).toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId);return[...a,...o]}var YJ=e({CLAUDE_CLI_PROFILE_ID:()=>CLAUDE_CLI_PROFILE_ID,CODEX_CLI_PROFILE_ID:()=>CODEX_CLI_PROFILE_ID,ensureAuthProfileStore:()=>Pd});const XJ=w(`model-auth`),ZJ=`AWS_BEARER_TOKEN_BEDROCK`,QJ=`AWS_ACCESS_KEY_ID`,$J=`AWS_SECRET_ACCESS_KEY`,eY=`AWS_PROFILE`;function tY(e,t){let n=e?.models?.providers??{},r=n[t];if(r)return r;let i=z(t);return i===t?Object.entries(n).find(([e])=>z(e)===i)?.[1]:n[i]??Object.entries(n).find(([e])=>z(e)===i)?.[1]}function nY(e,t){return Io(tY(e,t)?.apiKey)}function rY(e){let t=nY(e.cfg,e.provider);if(!t)return null;if(!ds(t))return{apiKey:t,source:`models.json`};if(!os(t))return null;let n=Io((e.env??process.env)[t]);return n?{apiKey:n,source:sY({applied:new Set(Po()),envVars:[t],label:`${t} (models.json marker)`})}:null}function iY(e,t,n){return!!rY({cfg:e,provider:t,env:n})}function aY(e,t){let n=tY(e,t)?.auth;if(n===`api-key`||n===`aws-sdk`||n===`oauth`||n===`token`)return n}function oY(e){if(z(e.provider)!==`ollama`)return null;let t=tY(e.cfg,e.provider);return!t||!(t.api?.trim()||t.baseUrl?.trim()||Array.isArray(t.models)&&t.models.length>0)?null:{apiKey:`ollama-local`,source:`models.providers.ollama (synthetic local key)`,mode:`api-key`}}function sY(e){return`${e.envVars.some(t=>e.applied.has(t))?`shell env: `:`env: `}${e.label}`}function cY(e=process.env){if(e[ZJ]?.trim())return ZJ;if(e[QJ]?.trim()&&e[$J]?.trim())return QJ;if(e[eY]?.trim())return eY}function lY(){let e=new Set(Po());return process.env[ZJ]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[ZJ],label:ZJ})}:process.env[QJ]?.trim()&&process.env[$J]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[QJ,$J],label:`${QJ} + ${$J}`})}:process.env[eY]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[eY],label:eY})}:{mode:`aws-sdk`,source:`aws-sdk default chain`}}async function uY(e){let{provider:t,cfg:n,profileId:r,preferredProfile:i}=e,a=e.store??Pd(e.agentDir);if(r){let t=await mE({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(!t)throw Error(`No credentials found for profile "${r}".`);let i=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:i===`oauth`?`oauth`:i===`token`?`token`:`api-key`}}let o=aY(n,t);if(o===`aws-sdk`)return lY();let s=qJ({cfg:n,store:a,provider:t,preferredProfile:i});for(let r of s)try{let t=await mE({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(t){let e=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:e===`oauth`?`oauth`:e===`token`?`token`:`api-key`}}}catch(e){XJ.debug?.(`auth profile "${r}" failed for provider "${t}": ${String(e)}`)}let c=dY(t);if(c)return{apiKey:c.apiKey,source:c.source,mode:c.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`};let l=rY({cfg:n,provider:t});if(l)return{apiKey:l.apiKey,source:l.source,mode:`api-key`};let u=oY({cfg:n,provider:t});if(u)return u;let d=z(t);if(o===void 0&&d===`amazon-bedrock`)return lY();if(t===`openai`&&Ld(a,`openai-codex`).length>0)throw Error(`No API key found for provider "openai". You are authenticated with OpenAI Codex OAuth. Use openai-codex/gpt-5.4 (OAuth) or set OPENAI_API_KEY to use openai/gpt-5.4.`);let f=hd(e.agentDir),p=O.dirname(f);throw Error([`No API key found for provider "${t}".`,`Auth store: ${f} (agentDir: ${p}).`,`Configure auth for this agent (${gr(`openclaw agents add <id>`)}) or copy auth-profiles.json from the main agentDir.`].join(` `))}function dY(e,t=process.env){let n=z(e),r=new Set(Po()),i=e=>{let n=Io(t[e]);return n?{apiKey:n,source:r.has(e)?`shell env: ${e}`:`env: ${e}`}:null},a=$o[n];if(a)for(let e of a){let t=i(e);if(t)return t}if(n===`google-vertex`){let e=Dt(n);return e?{apiKey:e,source:`gcloud adc`}:null}return null}function fY(e,t,n){let r=e?.trim();if(!r)return;let i=aY(t,r);if(i===`aws-sdk`)return`aws-sdk`;let a=n??Pd(),o=Ld(a,r);if(o.length>0){let e=new Set(o.map(e=>a.profiles[e]?.type).filter(e=>!!e));if([`oauth`,`token`,`api_key`].filter(t=>e.has(t)).length>=2)return`mixed`;if(e.has(`oauth`))return`oauth`;if(e.has(`token`))return`token`;if(e.has(`api_key`))return`api-key`}if(i===void 0&&z(r)===`amazon-bedrock`)return`aws-sdk`;let s=dY(r);return s?.apiKey?s.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`:iY(t,r)?`api-key`:`unknown`}async function pY(e){return uY({provider:e.model.provider,cfg:e.cfg,profileId:e.profileId,preferredProfile:e.preferredProfile,store:e.store,agentDir:e.agentDir})}function mY(e,t){let n=Fo(e.apiKey);if(n)return n;throw Error(`No API key resolved for provider "${t}" (auth mode: ${e.mode}).`)}export{yq as $,cg as $a,Dx as $i,wz as $n,Fs as $o,SA as $r,wr as $s,ZH as $t,Kq as A,q_ as Aa,bE as Ai,HB as An,hd as Ao,hM as Ar,N as As,WU as At,bq as B,u_ as Ba,yT as Bi,vB as Bn,z as Bo,Pj as Br,Hr as Bs,MU as Bt,qq as C,sv as Ca,XE as Ci,dV as Cn,cf as Co,DN as Cr,zi as Cs,RW as Ct,$q as D,G_ as Da,wE as Di,qB as Dn,Ld as Do,BM as Dr,M as Ds,tG as Dt,Gq as E,K_ as Ea,TE as Ei,tV as En,Id as Eo,RM as Er,Oi as Es,IW as Et,kq as F,F_ as Fa,UT as Fi,TB as Fn,Au as Fo,Xj as Fr,ii as Fs,LU as Ft,nK as G,$g as Ga,Ow as Gi,sB as Gn,Fu as Go,wj as Gr,Nr as Gs,hU as Gt,_q as H,d_ as Ha,Tw as Hi,lB as Hn,Nu as Ho,Aj as Hr,Kr as Hs,TU as Ht,Aq as I,M_ as Ia,HT as Ii,SB as In,Su as Io,Zj as Ir,ai as Is,PU as It,mq as J,Dg as Ja,UC as Ji,kz as Jn,ru as Jo,oj as Jr,Br as Js,uU as Jt,ZK as K,Kg as Ka,Aw as Ki,Vz as Kn,Lu as Ko,vj as Kr,Ir as Ks,_U as Kt,Fq as L,C_ as La,bT as Li,_B as Ln,Cu as Lo,qj as Lr,Pr as Ls,FU as Lt,Rq as M,R_ as Ma,gE as Mi,NB as Mn,Qu as Mo,CM as Mr,yi as Ms,BU as Mt,Lq as N,z_ as Na,mE as Ni,MB as Nn,Iu as No,Jj as Nr,oi as Ns,IU as Nt,Qq as O,Y_ as Oa,yE as Oi,WB as On,Rd as Oo,WM as Or,Ci as Os,HW as Ot,Iq as P,L_ as Pa,WT as Pi,jB as Pn,ku as Po,Kj as Pr,Qr as Ps,RU as Pt,sK as Q,yg as Qa,Ex as Qi,hz as Qn,Ls as Qo,CA as Qr,xr as Qs,eU as Qt,Tq as R,m_ as Ra,_T as Ri,bB as Rn,bu as Ro,zj as Rr,Wr as Rs,NU as Rt,Xq as S,ev as Sa,qE as Si,SV as Sn,rp as So,kN as Sr,Bi as Ss,rG as St,nJ as T,B_ as Ta,RE as Ti,rV as Tn,Wd as To,GM as Tr,xi as Ts,eG as Tt,VK as U,c_ as Ua,Ew as Ui,aB as Un,ju as Uo,sj as Ur,Rr as Us,xU as Ut,rK as V,p_ as Va,mT as Vi,yB as Vn,Mu as Vo,Nj as Vr,zr as Vs,EU as Vt,QK as W,e_ as Wa,kw as Wi,oB as Wn,Ru as Wo,Tj as Wr,Ur as Ws,dU as Wt,pq as X,kg as Xa,Mw as Xi,xz as Xn,oc as Xo,DA as Xr,Dr as Xs,nU as Xt,sq as Y,Og as Ya,Cw as Yi,pz as Yn,pu as Yo,tj as Yr,Mr as Ys,lU as Yt,fK as Z,Cg as Za,TC as Zi,bz as Zn,cc as Zo,yA as Zr,Er as Zs,tU as Zt,vJ as _,Gv as _a,an as _c,nD as _i,kV as _n,Sp as _o,ZF as _r,Li as _s,uG as _t,fY as a,Tx as aa,tr as ac,kk as ai,RH as an,zh as ao,fz as ar,us as as,lq as at,iJ as b,dv as ba,oD as bi,gV as bn,Tp as bo,rF as br,Ui as bs,oG as bt,qJ as c,H as ca,Ln as cc,WD as ci,PH as cn,ih as co,pL as cr,Ho as cs,ZG as ct,MJ as d,Oy as da,Hn as dc,W as di,AH as dn,sh as do,nI as dr,Io as ds,zG as dt,kx as ea,_r as ec,Qk as ei,QH as en,og as eo,vz as er,ms as es,vq as et,GJ as f,ky as fa,In as fc,OD as fi,wH as fn,Sm as fo,QF as fr,Fo as fs,MG as ft,wJ as g,ty as ga,dn as gc,rD as gi,PV as gn,om as go,GF as gr,Ta as gs,pG as gt,CJ as h,xy as ha,fn as hc,tD as hi,jV as hn,ym as ho,UF as hr,mo as hs,_G as ht,dY as i,wx as ia,rr as ic,Uk as ii,VH as in,Bh as io,uz as ir,ds as is,BK as it,zq as j,I_ as ja,EE as ji,PB as jn,fd as jo,SM as jr,Mi as js,UU as jt,eJ as k,J_ as ka,xE as ki,VB as kn,Pd as ko,pM as kr,ji as ks,$W as kt,IJ as l,ab as la,Pn as lc,LD as li,kH as ln,ah as lo,eL as lr,Vo as ls,YG as lt,PJ as m,Ny as ma,xn as mc,vD as mi,aH as mn,vm as mo,qF as mr,Mo as ms,kG as mt,mY as n,Sx as na,cr as nc,Vk as ni,WH as nn,sg as no,Sz as nr,gs as ns,eq as nt,rY as o,dx as oa,nr as oc,Ak as oi,LH as on,Rh as oo,dz as or,Wo as os,dq as ot,LJ as p,My as pa,Cn as pc,xD as pi,CH as pn,pm as po,WF as pr,No as ps,jG as pt,JK as q,Jg as qa,jw as qi,Rz as qn,Zl as qo,Cj as qr,Fr as qs,mU as qt,uY as r,xx as ra,ir as rc,zk as ri,KH as rn,Fh as ro,Cz as rr,ps as rs,YK as rt,YJ as s,Lb as sa,Wn as sc,RD as si,FH as sn,Ah as so,TL as sr,Uo as ss,$K as st,pY as t,hx as ta,gr as tc,Hk as ti,qH as tn,Qh as to,gz as tr,hs as ts,dK as tt,FJ as u,Sy as ua,Rn as uc,AD as ui,OH as un,bh as uo,QI as ur,Bo as us,BG as ut,uJ as v,xv as va,nn as vc,aD as vi,xV as vn,wp as vo,VF as vr,Ii as vs,fG as vt,tJ as w,cv as wa,LE as wi,sV as wn,Xd as wo,eN as wr,Ri as ws,zW as wt,Yq as x,iv as xa,YE as xi,CV as xn,Cp as xo,bP as xr,Hi as xs,iG as xt,cJ as y,Cv as ya,sD as yi,wV as yn,Ep as yo,iF as yr,Pi as ys,sG as yt,Eq as z,s_ as za,gT as zi,gB as zn,Eu as zo,Mj as zr,Gr as zs,AU as zt};
66
+ `)}function WK(e){if(zK(e))return!0;let t=e.match(_K);if(!t)return!1;let n=Number(t[1]);if(!Number.isFinite(n)||n<400)return!1;let r=t[2].toLowerCase();return SK.some(e=>r.includes(e))}function GK(e){return sK(e)?YK(e)||WK(e)||hK.test(e)||gK.test(e):!1}function KK(e){if(!e||typeof e!=`object`||Array.isArray(e))return!1;let t=e;if(t.type===`error`||typeof t.request_id==`string`||typeof t.requestId==`string`)return!0;if(`error`in t){let e=t.error;if(e&&typeof e==`object`&&!Array.isArray(e)){let t=e;if(typeof t.message==`string`||typeof t.type==`string`||typeof t.code==`string`)return!0}}return!1}function qK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n=[t];pK.test(t)&&n.push(t.replace(pK,``).trim());for(let e of n)if(!(!e.startsWith(`{`)||!e.endsWith(`}`)))try{let t=JSON.parse(e);if(KK(t))return t}catch{}return null}function JK(e){if(!e)return null;let t=qK(e);return t?VG(t):null}function YK(e){return JK(e)!==null}function XK(e){if(!e)return null;let t=e.trim();if(!t)return null;let n,r=t,i=r.match(/^(\d{3})\s+(.+)$/s);i&&(n=i[1],r=i[2].trim());let a=qK(r);if(!a)return null;let o=typeof a.request_id==`string`?a.request_id:typeof a.requestId==`string`?a.requestId:void 0,s=typeof a.type==`string`?a.type:void 0,c=typeof a.message==`string`?a.message:void 0,l,u;if(a.error&&typeof a.error==`object`&&!Array.isArray(a.error)){let e=a.error;typeof e.type==`string`&&(l=e.type),typeof e.code==`string`&&!l&&(l=e.code),typeof e.message==`string`&&(u=e.message)}return{httpCode:n,type:l??s,message:u??c,requestId:o}}function ZK(e){let t=(e??``).trim();if(!t)return`LLM request failed with an unknown error.`;let n=RK(t);if(n&&zK(t))return`The AI service is temporarily unavailable (HTTP ${n.code}). Please try again in a moment.`;let r=t.match(_K);if(r){let e=r[2].trim();if(!e.startsWith(`{`))return`HTTP ${r[1]}: ${e}`}let i=XK(t);if(i?.message){let e=i.httpCode?`HTTP ${i.httpCode}`:`LLM error`,t=i.type?` ${i.type}`:``,n=i.requestId?` (request_id: ${i.requestId})`:``;return`${e}${t}: ${i.message}${n}`}return t.length>600?`${t.slice(0,600)}…`:t}function QK(e,t){let n=(e.errorMessage??``).trim();if(e.stopReason!==`error`&&!n)return;if(!n)return`LLM request failed with an unknown error.`;let r=n.match(/unknown tool[:\s]+["']?([a-z0-9_-]+)["']?/i)??n.match(/tool\s+["']?([a-z0-9_-]+)["']?\s+(?:not found|is not available)/i);if(r?.[1]){let e=vG({cfg:t?.cfg,sessionKey:t?.sessionKey,toolName:r[1]});if(e)return e}if(sK(n))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(aK(n))return`Reasoning is required for this model endpoint. Use /think minimal (or any non-off level) and try again.`;if(/incorrect role information|roles must alternate|400.*role|"message".*role.*information/i.test(n))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(oq(n))return`Session history looks corrupted (tool call input missing). Use /new to start a fresh session. If this keeps happening, reset the session or delete the corrupted session transcript.`;let i=n.match(/"type":"invalid_request_error".*?"message":"([^"]+)"/);return i?.[1]?`LLM request rejected: ${i[1]}`:iK(n)||(YG(n)?`LLM request timed out.`:ZG(n)?nK(t?.provider,t?.model??e.model):WK(n)||YK(n)?ZK(n):(n.length>600&&tK.warn(`Long error truncated: ${n.slice(0,200)}`),n.length>600?`${n.slice(0,600)}…`:n))}function $K(e,t){if(!e)return e;let n=t?.errorContext??!1,r=HK(e),i=r.trim();if(!i)return``;if(n){if(/incorrect role information|roles must alternate/i.test(i))return`Message ordering conflict - please try again. If this persists, use /new to start a fresh session.`;if(GK(i))return`Context overflow: prompt too large for the model. Try /reset (or /new) to start a fresh session, or use a larger-context model.`;if(ZG(i))return rK;if(YK(i)||WK(i))return ZK(i);if(hK.test(i))return iK(i)||(YG(i)?`LLM request timed out.`:ZK(i))}return UK(r.replace(/^(?:[ \t]*\r?\n)+/,``))}function eq(e){return!e||e.stopReason!==`error`?!1:JG(e.errorMessage??``)}const tq=/tool_(?:use|call)\.(?:input|arguments).*?(?:field required|required)/i,nq=/messages\.\d+\.content\.\d+\.tool_(?:use|call)\.(?:input|arguments)/i,rq=/image dimensions exceed max allowed size for many-image requests:\s*(\d+)\s*pixels/i,iq=/messages\.(\d+)\.content\.(\d+)\.image/i,aq=/image exceeds\s*(\d+(?:\.\d+)?)\s*mb/i;function oq(e){return e?tq.test(e)||nq.test(e):!1}function sq(e){return!e||e.stopReason!==`error`?!1:ZG(e.errorMessage??``)}function cq(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`"type":"api_error"`)&&t.includes(`internal server error`)}function lq(e){if(!e||!e.toLowerCase().includes(`image dimensions exceed max allowed size`))return null;let t=e.match(rq),n=e.match(iq);return{maxDimensionPx:t?.[1]?Number.parseInt(t[1],10):void 0,messageIndex:n?.[1]?Number.parseInt(n[1],10):void 0,contentIndex:n?.[2]?Number.parseInt(n[2],10):void 0,raw:e}}function uq(e){return!!lq(e)}function dq(e){if(!e)return null;let t=e.toLowerCase();if(!t.includes(`image exceeds`)||!t.includes(`mb`))return null;let n=e.match(aq);return{maxMb:n?.[1]?Number.parseFloat(n[1]):void 0,raw:e}}function fq(e){return e?!!dq(e):!1}function pq(e){return!uq(e)&&qG(e)}function mq(e){return!e||e.stopReason!==`error`?!1:$G(e.errorMessage??``)}function hq(e){if(!e)return!1;let t=e.toLowerCase();return!!(t.includes(`unknown model`)||t.includes(`model not found`)||t.includes(`model_not_found`)||t.includes(`not_found_error`)||t.includes(`does not exist`)&&t.includes(`model`)||t.includes(`invalid model`)&&!t.includes(`invalid model reference`)||/models\/[^\s]+ is not found/i.test(e)||/\b404\b/.test(e)&&/not[-_ ]?found/i.test(e))}function gq(e){if(!e)return!1;let t=e.toLowerCase();return t.includes(`session not found`)||t.includes(`session does not exist`)||t.includes(`session expired`)||t.includes(`session invalid`)||t.includes(`conversation not found`)||t.includes(`conversation does not exist`)||t.includes(`conversation expired`)||t.includes(`conversation invalid`)||t.includes(`no such session`)||t.includes(`invalid session`)||t.includes(`session id not found`)||t.includes(`conversation id not found`)}function _q(e){return uq(e)||fq(e)?null:gq(e)?`session_expired`:hq(e)?`model_not_found`:LK(e)||(XG(e)?ZG(e)?`billing`:`rate_limit`:JG(e)?`rate_limit`:eK(e)?`overloaded`:BK(e)?RK(e.trim())?.code===529?`overloaded`:`timeout`:cq(e)?`timeout`:pq(e)?`format`:ZG(e)?`billing`:YG(e)?`timeout`:QG(e)?`auth_permanent`:$G(e)?`auth`:null)}function vq(e){return _q(e)!==null}function yq(e){return!e||e.stopReason!==`error`?!1:vq(e.errorMessage??``)}function bq(e){return e===`google-gemini-cli`||e===`google-generative-ai`}function xq(e){if(!e)return null;let t=null;if(typeof e==`string`){let n=e.trim();if(!n.startsWith(`{`)||!n.endsWith(`}`))return null;try{t=JSON.parse(n)}catch{return null}}else typeof e==`object`&&(t=e);if(!t)return null;let n=typeof t.id==`string`?t.id:``,r=typeof t.type==`string`?t.type:``;return n.startsWith(`rs_`)&&(r===`reasoning`||r.startsWith(`reasoning.`))?{id:n,type:r}:null}function Sq(e,t){for(let n=t+1;n<e.length;n++){let t=e[n];if(!t||typeof t!=`object`||t.type!==`thinking`)return!0}return!1}function Cq(e){let t=e.indexOf(`|`);return t<=0||t>=e.length-1?{callId:e}:{callId:e.slice(0,t),itemId:e.slice(t+1)}}function wq(e){return e===`toolCall`||e===`toolUse`||e===`functionCall`}function Tq(e){let t=!1,n=[],r=null;for(let i of e){if(!i||typeof i!=`object`){r=null,n.push(i);continue}let e=i.role;if(e===`assistant`){let e=i;if(!Array.isArray(e.content)){r=null,n.push(i);continue}let a=new Map,o=!1,s=!1,c=e.content.map(e=>{if(!e||typeof e!=`object`)return e;let t=e;if(t.type===`thinking`&&xq(t.thinkingSignature))return o=!0,e;let n=e;if(!wq(n.type)||typeof n.id!=`string`)return e;let r=Cq(n.id);return o||!r.itemId||!r.itemId.startsWith(`fc_`)?e:(s=!0,a.set(n.id,r.callId),{...e,id:r.callId})});if(r=a.size>0?a:null,!s){n.push(i);continue}t=!0,n.push({...e,content:c});continue}if(e===`toolResult`&&r&&r.size>0){let e=i,a=!1,o={};if(typeof e.toolCallId==`string`){let t=r.get(e.toolCallId);t&&t!==e.toolCallId&&(o.toolCallId=t,a=!0)}if(typeof e.toolUseId==`string`){let t=r.get(e.toolUseId);t&&t!==e.toolUseId&&(o.toolUseId=t,a=!0)}if(!a){n.push(i);continue}t=!0,n.push({...e,...o});continue}r=null,n.push(i)}return t?n:e}function Eq(e){let t=[];for(let n of e){if(!n||typeof n!=`object`){t.push(n);continue}if(n.role!==`assistant`){t.push(n);continue}let e=n;if(!Array.isArray(e.content)){t.push(n);continue}let r=!1,i=[];for(let t=0;t<e.content.length;t++){let n=e.content[t];if(!n||typeof n!=`object`){i.push(n);continue}let a=n;if(a.type!==`thinking`){i.push(n);continue}if(!xq(a.thinkingSignature)){i.push(n);continue}if(Sq(e.content,t)){i.push(n);continue}r=!0}if(!r){t.push(n);continue}i.length!==0&&t.push({...e,content:i})}return t}const Dq=new Set([`toolCall`,`toolUse`,`functionCall`]);function Oq(e,t=`strict`){if(!e||typeof e!=`string`)return t===`strict9`?`defaultid`:`defaulttoolid`;if(t===`strict9`){let t=e.replace(/[^a-zA-Z0-9]/g,``);return t.length>=9?t.slice(0,9):t.length>0?jq(t,9):jq(`sanitized`,9)}let n=e.replace(/[^a-zA-Z0-9]/g,``);return n.length>0?n:`sanitizedtoolid`}function kq(e){let t=e.content;if(!Array.isArray(t))return[];let n=[];for(let e of t){if(!e||typeof e!=`object`)continue;let t=e;typeof t.id!=`string`||!t.id||typeof t.type==`string`&&Dq.has(t.type)&&n.push({id:t.id,name:typeof t.name==`string`?t.name:void 0})}return n}function Aq(e){let t=e.toolCallId;if(typeof t==`string`&&t)return t;let n=e.toolUseId;return typeof n==`string`&&n?n:null}function jq(e,t=8){return jt(`sha256`).update(e).digest(`hex`).slice(0,t)}function Mq(e){if(e.mode===`strict9`){let t=Oq(e.id,e.mode),n=t.length>=9?t.slice(0,9):``;if(n&&!e.used.has(n))return n;for(let t=0;t<1e3;t+=1){let n=jq(`${e.id}:${t}`,9);if(!e.used.has(n))return n}return jq(`${e.id}:${Date.now()}`,9)}let t=Oq(e.id,e.mode).slice(0,40);if(!e.used.has(t))return t;let n=jq(e.id),r=e.mode===`strict`?``:`_`,i=40-r.length-n.length,a=`${t.length>i?t.slice(0,i):t}${r}${n}`;if(!e.used.has(a))return a;for(let t=2;t<1e3;t+=1){let n=e.mode===`strict`?`x${t}`:`_${t}`,r=`${a.slice(0,40-n.length)}${n}`;if(!e.used.has(r))return r}let o=e.mode===`strict`?`t${Date.now()}`:`_${Date.now()}`;return`${a.slice(0,40-o.length)}${o}`}function Nq(e){let t=e.message.content;if(!Array.isArray(t))return e.message;let n=!1,r=t.map(t=>{if(!t||typeof t!=`object`)return t;let r=t,i=r.type,a=r.id;if(i!==`functionCall`&&i!==`toolUse`&&i!==`toolCall`||typeof a!=`string`||!a)return t;let o=e.resolve(a);return o===a?t:(n=!0,{...t,id:o})});return n?{...e.message,content:r}:e.message}function Pq(e){let t=typeof e.message.toolCallId==`string`&&e.message.toolCallId?e.message.toolCallId:void 0,n=e.message.toolUseId,r=typeof n==`string`&&n?n:void 0,i=t?e.resolve(t):void 0,a=r?e.resolve(r):void 0;return i===t&&a===r?e.message:{...e.message,...i&&{toolCallId:i},...a&&{toolUseId:a}}}function Fq(e,t=`strict`){let n=new Map,r=new Set,i=e=>{let i=n.get(e);if(i)return i;let a=Mq({id:e,used:r,mode:t});return n.set(e,a),r.add(a),a},a=!1,o=e.map(e=>{if(!e||typeof e!=`object`)return e;let t=e.role;if(t===`assistant`){let t=Nq({message:e,resolve:i});return t!==e&&(a=!0),t}if(t===`toolResult`){let t=Pq({message:e,resolve:i});return t!==e&&(a=!0),t}return e});return a?o:e}async function Iq(e,t,n){let r=(n?.sanitizeMode??`full`)===`full`,i={maxDimensionPx:n?.maxDimensionPx,maxBytes:n?.maxBytes},a=n?.sanitizeToolCallIds===!0?Fq(e,n.toolCallIdMode):e,o=[];for(let e of a){if(!e||typeof e!=`object`){o.push(e);continue}let a=e.role;if(a===`toolResult`){let n=e,r=await er(Array.isArray(n.content)?n.content:[],t,i);o.push({...n,content:r});continue}if(a===`user`){let n=e,r=n.content;if(Array.isArray(r)){let e=await er(r,t,i);o.push({...n,content:e});continue}}if(a===`assistant`){let a=e;if(a.stopReason===`error`){let e=a.content;if(Array.isArray(e)){let n=await er(e,t,i);o.push({...a,content:n})}else o.push(a);continue}let s=a.content;if(Array.isArray(s)){if(!r){let e=await er(s,t,i);o.push({...a,content:e});continue}let e=await er((n?.preserveSignatures?s:vE(s,n?.sanitizeThoughtSignatures)).filter(e=>{if(!e||typeof e!=`object`)return!0;let t=e;return t.type!==`text`||typeof t.text!=`string`?!0:t.text.trim().length>0}),t,i);if(e.length===0)continue;o.push({...a,content:e});continue}}o.push(e)}return o}function Lq(e){return e.trim().toLowerCase().replace(/\p{Emoji_Presentation}|\p{Extended_Pictographic}/gu,``).replace(/\s+/g,` `).trim()}function Rq(e,t){return t.length===0||!e||e.length<10?!1:t.some(t=>!t||t.length<10?!1:e.includes(t)||t.includes(e))}function zq(e,t){if(t.length===0)return!1;let n=Lq(e);return!n||n.length<10?!1:Rq(n,t.map(Lq))}function Bq(e){if(!e)return``;let t=e.trim().toLowerCase();return t===`z.ai`||t===`z-ai`?`zai`:t}function Vq(e){return Bq(e)===`zai`}const Hq=[`openai/gpt-5.4`,`openai/gpt-5.4-pro`,`openai/gpt-5.2`,`openai-codex/gpt-5.4`,`openai-codex/gpt-5.3-codex`,`openai-codex/gpt-5.3-codex-spark`,`openai-codex/gpt-5.2-codex`,`openai-codex/gpt-5.1-codex`,`github-copilot/gpt-5.2-codex`,`github-copilot/gpt-5.2`],Uq=new Set(Hq.map(e=>e.toLowerCase())),Wq=new Set(Hq.map(e=>e.split(`/`)[1]?.toLowerCase()).filter(e=>!!e));function Gq(e){if(!e)return;let t=e.trim().toLowerCase(),n=t.replace(/[\s_-]+/g,``);if(n===`adaptive`||n===`auto`)return`adaptive`;if(n===`xhigh`||n===`extrahigh`)return`xhigh`;if([`off`].includes(t))return`off`;if([`on`,`enable`,`enabled`].includes(t))return`low`;if([`min`,`minimal`].includes(t))return`minimal`;if([`low`,`thinkhard`,`think-hard`,`think_hard`].includes(t))return`low`;if([`mid`,`med`,`medium`,`thinkharder`,`think-harder`,`harder`].includes(t))return`medium`;if([`high`,`ultra`,`ultrathink`,`think-hard`,`thinkhardest`,`highest`,`max`].includes(t))return`high`;if([`think`].includes(t))return`minimal`}function Kq(e,t){let n=t?.trim().toLowerCase();if(!n)return!1;let r=e?.trim().toLowerCase();return r?Uq.has(`${r}/${n}`):Wq.has(n)}function qq(e,t){let n=[`off`,`minimal`,`low`,`medium`,`high`];return Kq(e,t)&&n.push(`xhigh`),n.push(`adaptive`),n}function Jq(e,t){return Vq(e)?[`off`,`on`]:qq(e,t)}function Yq(e,t,n=`, `){return Jq(e,t).join(n)}function Xq(){let e=[...Hq];return e.length===0?`unknown model`:e.length===1?e[0]:e.length===2?`${e[0]} or ${e[1]}`:`${e.slice(0,-1).join(`, `)} or ${e[e.length-1]}`}function Zq(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`all`,`everything`].includes(t))return`full`;if([`on`,`minimal`,`true`,`yes`,`1`].includes(t))return`on`}function Qq(e){return Zq(e)}function $q(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`enable`,`enabled`].includes(t)||[`tokens`,`token`,`tok`,`minimal`,`min`].includes(t))return`tokens`;if([`full`,`session`].includes(t))return`full`}function eJ(e){return $q(e)??`off`}function tJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`].includes(t))return`off`;if([`full`,`auto`,`auto-approve`,`autoapprove`].includes(t))return`full`;if([`ask`,`prompt`,`approval`,`approve`].includes(t))return`ask`;if([`on`,`true`,`yes`,`1`].includes(t))return`on`}function nJ(e){if(!e)return;let t=e.toLowerCase();if([`off`,`false`,`no`,`0`,`hide`,`hidden`,`disable`,`disabled`].includes(t))return`off`;if([`on`,`true`,`yes`,`1`,`show`,`visible`,`enable`,`enabled`].includes(t))return`on`;if([`stream`,`streaming`,`draft`,`live`].includes(t))return`stream`}function rJ(e){let t=e.match(/supported values are:\s*([^\n.]+)/i)??e.match(/supported values:\s*([^\n.]+)/i);if(!t?.[1])return[];let n=t[1],r=Array.from(n.matchAll(/['"]([^'"]+)['"]/g)).map(e=>e[1]?.trim());return r.length>0?r.filter(e=>!!e):n.split(/,|\band\b/gi).map(e=>e.replace(/^[^a-zA-Z]+|[^a-zA-Z]+$/g,``).trim()).filter(Boolean)}function iJ(e){let t=e.message?.trim();if(!t)return;let n=rJ(t);if(n.length===0)return/not supported/i.test(t)&&!e.attempted.has(`off`)?`off`:void 0;for(let t of n){let n=Gq(t);if(n&&!e.attempted.has(n))return n}}function aJ(e){let t=[];for(let n=0;n<e.length;n++){let r=e[n];if(!r||typeof r!=`object`){t.push(r);continue}if(r.role!==`assistant`){t.push(r);continue}let i=r,a=e[n+1];if((a&&typeof a==`object`?a.role:void 0)!==`user`){t.push(r);continue}let o=a,s=new Set;if(Array.isArray(o.content))for(let e of o.content)e&&e.type===`toolResult`&&e.toolUseId&&s.add(e.toolUseId);let c=Array.isArray(i.content)?i.content:[],l=c.filter(e=>e?e.type===`toolUse`?s.has(e.id||``):!0:!1);c.length>0&&l.length===0?t.push({...i,content:[{type:`text`,text:`[tool calls omitted]`}]}):t.push({...i,content:l})}return t}function oJ(e){let{messages:t,role:n,merge:r}=e;if(!Array.isArray(t)||t.length===0)return t;let i=[],a;for(let e of t){if(!e||typeof e!=`object`){i.push(e);continue}let t=e.role;if(!t){i.push(e);continue}if(t===a&&a===n){let t=i[i.length-1],n=e;if(t&&typeof t==`object`){let e=t;i[i.length-1]=r(e,n);continue}}i.push(e),a=t}return i}function sJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...e,content:n,...t.usage&&{usage:t.usage},...t.stopReason&&{stopReason:t.stopReason},...t.errorMessage&&{errorMessage:t.errorMessage}}}function cJ(e){return oJ({messages:e,role:`assistant`,merge:sJ})}function lJ(e,t){let n=[...Array.isArray(e.content)?e.content:[],...Array.isArray(t.content)?t.content:[]];return{...t,content:n,timestamp:t.timestamp??e.timestamp}}function uJ(e){return oJ({messages:aJ(e),role:`user`,merge:lJ})}const dJ=64e3,fJ=8e3,pJ=/\brequest[_ ]?id\b\s*[:=]\s*["'()]*([A-Za-z0-9._:-]+)/i,mJ=[String.raw`\b(?:x-)?api[-_]?key\b\s*[:=]\s*(["']?)([^\s"'\\;]+)\1`,String.raw`"(?:api[-_]?key|api_key)"\s*:\s*"([^"]+)"`,String.raw`(?:\bCookie\b\s*[:=]\s*[^;=\s]+=|;\s*[^;=\s]+=)([^;\s\r\n]+)`];function hJ(){let e=He()?.redactPatterns;return Array.isArray(e)?e.filter(e=>typeof e==`string`):[]}function gJ(e,t){let n=e?.trim();if(n)return n.length>t?`${n.slice(0,t)}…`:n}function _J(e){let t=e?.trim();if(t)return t.length>dJ?t.slice(0,dJ):t}function vJ(e,t=200){let n=e?.trim();if(!n)return;let r=Array.from(n).filter(e=>{let t=e.charCodeAt(0);return!(t<=8||t===11||t===12||t>=14&&t<=31||t===127)}).join(``).replace(/[\r\n\t]+/g,` `).replace(/\s+/g,` `).trim();return r.length>t?`${r.slice(0,t)}…`:r}function yJ(e,t){return!e||!t?e:e.split(t).join(gE(t,{len:12}))}function bJ(e){if(!e)return e;let t=hJ();return g(e,{mode:`tools`,patterns:[...De(),...t,...mJ]})}function xJ(e){if(e)return e.match(pJ)?.[1]?.trim()||void 0}function SJ(e){let t=e.message&&e.message.length>fJ?e.message.slice(0,fJ):e.message;return(e.httpCode||e.type||t?VG({httpCode:e.httpCode,type:e.type,message:t}):null)||(e.requestId?e.raw.split(e.requestId).join(`<request_id>`):JK(e.raw))}function CJ(e){let t=_J(e);if(!t)return{};try{let e=XK(t),n=e?.requestId??xJ(t),r=n?gE(n,{len:12}):void 0,i=SJ({raw:t,requestId:n,httpCode:e?.httpCode,type:e?.type,message:e?.message}),a=yJ(bJ(t),n),o=yJ(bJ(e?.message),n);return{rawErrorPreview:gJ(a,400),rawErrorHash:gE(t,{len:12}),rawErrorFingerprint:i?gE(i,{len:12}):void 0,httpCode:e?.httpCode,providerErrorType:e?.type,providerErrorMessagePreview:gJ(o,200),requestIdHash:r}}catch{return{}}}function wJ(e){let t=CJ(e);return{textPreview:t.rawErrorPreview,textHash:t.rawErrorHash,textFingerprint:t.rawErrorFingerprint,httpCode:t.httpCode,providerErrorType:t.providerErrorType,providerErrorMessagePreview:t.providerErrorMessagePreview,requestIdHash:t.requestIdHash}}const TJ=w(`agent/embedded`);function EJ(e){let t=e.reason===`billing`||e.reason===`auth_permanent`?`disabled`:`cooldown`,n=e.previous?.cooldownUntil,r=e.previous?.disabledUntil,i=t===`disabled`?typeof r==`number`&&Number.isFinite(r)&&r>e.now&&r===e.next.disabledUntil:typeof n==`number`&&Number.isFinite(n)&&n>e.now&&n===e.next.cooldownUntil,a=gE(e.profileId,{len:12}),o=vJ(e.runId)??`-`,s=vJ(e.provider)??`-`;TJ.warn(`auth profile failure state updated`,{event:`auth_profile_failure_state_updated`,tags:[`error_handling`,`auth_profiles`,t],runId:e.runId,profileId:a,provider:e.provider,reason:e.reason,windowType:t,windowReused:i,previousErrorCount:e.previous?.errorCount,errorCount:e.next.errorCount,previousCooldownUntil:n,cooldownUntil:e.next.cooldownUntil,previousDisabledUntil:r,disabledUntil:e.next.disabledUntil,previousDisabledReason:e.previous?.disabledReason,disabledReason:e.next.disabledReason,failureCounts:e.next.failureCounts,consoleMessage:`auth profile failure state updated: runId=${o} profile=${a} provider=${s} reason=${e.reason} window=${t} reused=${String(i)}`})}const DJ=[`auth_permanent`,`auth`,`billing`,`format`,`model_not_found`,`overloaded`,`timeout`,`rate_limit`,`unknown`],OJ=new Set(DJ),kJ=new Map(DJ.map((e,t)=>[e,t]));function AJ(e){let t=z(e??``);return t===`openrouter`||t===`kilocode`}function jJ(e){let t=[e.cooldownUntil,e.disabledUntil].filter(e=>typeof e==`number`).filter(e=>Number.isFinite(e)&&e>0);return t.length===0?null:Math.max(...t)}function MJ(e,t,n){if(AJ(e.profiles[t]?.provider))return!1;let r=e.usageStats?.[t];if(!r)return!1;let i=jJ(r);return i?(n??Date.now())<i:!1}function NJ(e,t){return typeof e==`number`&&Number.isFinite(e)&&e>0&&t<e}function PJ(e){let t=e.now??Date.now(),n=new Map,r=(e,t)=>{!OJ.has(e)||t<=0||!Number.isFinite(t)||n.set(e,(n.get(e)??0)+t)};for(let n of e.profileIds){let i=e.store.usageStats?.[n];if(!i)continue;if(NJ(i.disabledUntil,t)&&i.disabledReason&&OJ.has(i.disabledReason)){r(i.disabledReason,1e3);continue}if(!NJ(i.cooldownUntil,t))continue;let a=!1;for(let[e,t]of Object.entries(i.failureCounts??{})){let n=e,i=typeof t==`number`?t:0;!OJ.has(n)||i<=0||(r(n,i),a=!0)}a||r(`unknown`,1)}if(n.size===0)return null;let i=null,a=-1,o=2**53-1;for(let e of DJ){let t=n.get(e);if(typeof t!=`number`)continue;let r=kJ.get(e)??2**53-1;(t>a||t===a&&r<o)&&(i=e,a=t,o=r)}return i}function FJ(e,t){let n=null;for(let r of t){let t=e.usageStats?.[r];if(!t)continue;let i=jJ(t);typeof i!=`number`||!Number.isFinite(i)||i<=0||(n===null||i<n)&&(n=i)}return n}function IJ(e,t){let n=e.usageStats;if(!n)return!1;let r=t??Date.now(),i=!1;for(let[e,t]of Object.entries(n)){if(!t)continue;let a=!1,o=typeof t.cooldownUntil==`number`&&Number.isFinite(t.cooldownUntil)&&t.cooldownUntil>0&&r>=t.cooldownUntil,s=typeof t.disabledUntil==`number`&&Number.isFinite(t.disabledUntil)&&t.disabledUntil>0&&r>=t.disabledUntil;o&&(t.cooldownUntil=void 0,a=!0),s&&(t.disabledUntil=void 0,t.disabledReason=void 0,a=!0),a&&!jJ(t)&&(t.errorCount=0,t.failureCounts=void 0),a&&(n[e]=t,i=!0)}return i}async function LJ(e){let{store:t,profileId:n,agentDir:r}=e,i=await Sd({agentDir:r,updater:e=>e.profiles[n]?(HJ(e,n,e=>VJ(e,{lastUsed:Date.now()})),!0):!1});if(i){t.usageStats=i.usageStats;return}t.profiles[n]&&(HJ(t,n,e=>VJ(e,{lastUsed:Date.now()})),Fd(t,r))}function RJ(e){let t=Math.max(1,e);return Math.min(3600*1e3,60*1e3*5**Math.min(t-1,3))}function zJ(e){let t={billingBackoffHours:5,billingMaxHours:24,failureWindowHours:24},n=(e,t)=>typeof e==`number`&&Number.isFinite(e)&&e>0?e:t,r=e.cfg?.auth?.cooldowns,i=n((()=>{let t=r?.billingBackoffHoursByProvider;if(t){for(let[n,r]of Object.entries(t))if(z(n)===e.providerId)return r}})()??r?.billingBackoffHours,t.billingBackoffHours),a=n(r?.billingMaxHours,t.billingMaxHours),o=n(r?.failureWindowHours,t.failureWindowHours);return{billingBackoffMs:i*60*60*1e3,billingMaxMs:a*60*60*1e3,failureWindowMs:o*60*60*1e3}}function BJ(e){let t=Math.max(1,e.errorCount),n=Math.max(6e4,e.baseMs),r=Math.max(n,e.maxMs),i=n*2**Math.min(t-1,10);return Math.min(r,i)}function VJ(e,t){return{...e,errorCount:0,cooldownUntil:void 0,disabledUntil:void 0,disabledReason:void 0,failureCounts:void 0,...t}}function HJ(e,t,n){e.usageStats=e.usageStats??{},e.usageStats[t]=n(e.usageStats[t])}function UJ(e){let{existingUntil:t,now:n,recomputedUntil:r}=e;return typeof t==`number`&&Number.isFinite(t)&&t>n?t:r}function WJ(e){let t=e.cfgResolved.failureWindowMs,n=typeof e.existing.lastFailureAt==`number`&&e.existing.lastFailureAt>0&&e.now-e.existing.lastFailureAt>t,r=jJ(e.existing),i=typeof r==`number`&&e.now>=r,a=n||i,o=(a?0:e.existing.errorCount??0)+1,s=a?{}:{...e.existing.failureCounts};s[e.reason]=(s[e.reason]??0)+1;let c={...e.existing,errorCount:o,failureCounts:s,lastFailureAt:e.now};if(e.reason===`billing`||e.reason===`auth_permanent`){let t=BJ({errorCount:s[e.reason]??1,baseMs:e.cfgResolved.billingBackoffMs,maxMs:e.cfgResolved.billingMaxMs});c.disabledUntil=UJ({existingUntil:e.existing.disabledUntil,now:e.now,recomputedUntil:e.now+t}),c.disabledReason=e.reason}else{let t=RJ(o);c.cooldownUntil=UJ({existingUntil:e.existing.cooldownUntil,now:e.now,recomputedUntil:e.now+t})}return c}async function GJ(e){let{store:t,profileId:n,reason:r,agentDir:i,cfg:a,runId:o}=e,s=t.profiles[n];if(!s||AJ(s.provider))return;let c,l,u=0,d=await Sd({agentDir:i,updater:e=>{let t=e.profiles[n];if(!t||AJ(t.provider))return!1;let i=Date.now(),o=zJ({cfg:a,providerId:z(t.provider)});l=e.usageStats?.[n],u=i;let s=WJ({existing:l??{},now:i,reason:r,cfgResolved:o});return c=s,HJ(e,n,()=>s),!0}});if(d){t.usageStats=d.usageStats,c&&EJ({runId:o,profileId:n,provider:s.provider,reason:r,previous:l,next:c,now:u});return}if(!t.profiles[n])return;let f=Date.now(),p=zJ({cfg:a,providerId:z(t.profiles[n]?.provider??``)});l=t.usageStats?.[n];let m=WJ({existing:l??{},now:f,reason:r,cfgResolved:p});c=m,HJ(t,n,()=>m),Fd(t,i),EJ({runId:o,profileId:n,provider:t.profiles[n]?.provider??s.provider,reason:r,previous:l,next:c,now:f})}function KJ(e){let t=xu(e.provider),n=e.store.profiles[e.profileId];if(!n)return{eligible:!1,reasonCode:`profile_missing`};if(xu(n.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};let r=e.cfg?.auth?.profiles?.[e.profileId];if(r){if(xu(r.provider)!==t)return{eligible:!1,reasonCode:`provider_mismatch`};if(r.mode!==n.type&&!(r.mode===`oauth`&&n.type===`token`))return{eligible:!1,reasonCode:`mode_mismatch`}}let i=QT({credential:n,now:e.now});return{eligible:i.eligible,reasonCode:i.reasonCode}}function qJ(e){let{cfg:t,store:n,provider:r,preferredProfile:i}=e,a=z(r),o=xu(r),s=Date.now();IJ(n,s);let c=Su(n.order,a),l=Su(t?.auth?.order,a),u=c??l,d=t?.auth?.profiles?Object.entries(t.auth.profiles).filter(([,e])=>xu(e.provider)===o).map(([e])=>e):[],f=u??(d.length>0?d:Ld(n,r));if(f.length===0)return[];let p=e=>KJ({cfg:t,store:n,provider:o,profileId:e,now:s}).eligible,m=f.filter(p),h=f.every(e=>!n.profiles[e]);m.length===0&&d.length>0&&h&&(m=Ld(n,r).filter(p));let g=Id(m);if(u&&u.length>0){let e=[],t=[];for(let r of g)if(MJ(n,r)){let e=jJ(n.usageStats?.[r]??{})??s;t.push({profileId:r,cooldownUntil:e})}else e.push(r);let r=t.toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId),a=[...e,...r];return i&&a.includes(i)?[i,...a.filter(e=>e!==i)]:a}let _=JJ(g,n);return i&&_.includes(i)?[i,..._.filter(e=>e!==i)]:_}function JJ(e,t){let n=Date.now(),r=[],i=[];for(let n of e)MJ(t,n)?i.push(n):r.push(n);let a=r.map(e=>{let n=t.profiles[e]?.type;return{profileId:e,typeScore:n===`oauth`?0:n===`token`?1:n===`api_key`?2:3,lastUsed:t.usageStats?.[e]?.lastUsed??0}}).toSorted((e,t)=>e.typeScore===t.typeScore?e.lastUsed-t.lastUsed:e.typeScore-t.typeScore).map(e=>e.profileId),o=i.map(e=>({profileId:e,cooldownUntil:jJ(t.usageStats?.[e]??{})??n})).toSorted((e,t)=>e.cooldownUntil-t.cooldownUntil).map(e=>e.profileId);return[...a,...o]}var YJ=e({CLAUDE_CLI_PROFILE_ID:()=>CLAUDE_CLI_PROFILE_ID,CODEX_CLI_PROFILE_ID:()=>CODEX_CLI_PROFILE_ID,ensureAuthProfileStore:()=>Pd});const XJ=w(`model-auth`),ZJ=`AWS_BEARER_TOKEN_BEDROCK`,QJ=`AWS_ACCESS_KEY_ID`,$J=`AWS_SECRET_ACCESS_KEY`,eY=`AWS_PROFILE`;function tY(e,t){let n=e?.models?.providers??{},r=n[t];if(r)return r;let i=z(t);return i===t?Object.entries(n).find(([e])=>z(e)===i)?.[1]:n[i]??Object.entries(n).find(([e])=>z(e)===i)?.[1]}function nY(e,t){return Io(tY(e,t)?.apiKey)}function rY(e){let t=nY(e.cfg,e.provider);if(!t)return null;if(!ds(t))return{apiKey:t,source:`models.json`};if(!os(t))return null;let n=Io((e.env??process.env)[t]);return n?{apiKey:n,source:sY({applied:new Set(Po()),envVars:[t],label:`${t} (models.json marker)`})}:null}function iY(e,t,n){return!!rY({cfg:e,provider:t,env:n})}function aY(e,t){let n=tY(e,t)?.auth;if(n===`api-key`||n===`aws-sdk`||n===`oauth`||n===`token`)return n}function oY(e){if(z(e.provider)!==`ollama`)return null;let t=tY(e.cfg,e.provider);return!t||!(t.api?.trim()||t.baseUrl?.trim()||Array.isArray(t.models)&&t.models.length>0)?null:{apiKey:`ollama-local`,source:`models.providers.ollama (synthetic local key)`,mode:`api-key`}}function sY(e){return`${e.envVars.some(t=>e.applied.has(t))?`shell env: `:`env: `}${e.label}`}function cY(e=process.env){if(e[ZJ]?.trim())return ZJ;if(e[QJ]?.trim()&&e[$J]?.trim())return QJ;if(e[eY]?.trim())return eY}function lY(){let e=new Set(Po());return process.env[ZJ]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[ZJ],label:ZJ})}:process.env[QJ]?.trim()&&process.env[$J]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[QJ,$J],label:`${QJ} + ${$J}`})}:process.env[eY]?.trim()?{mode:`aws-sdk`,source:sY({applied:e,envVars:[eY],label:eY})}:{mode:`aws-sdk`,source:`aws-sdk default chain`}}async function uY(e){let{provider:t,cfg:n,profileId:r,preferredProfile:i}=e,a=e.store??Pd(e.agentDir);if(r){let t=await mE({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(!t)throw Error(`No credentials found for profile "${r}".`);let i=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:i===`oauth`?`oauth`:i===`token`?`token`:`api-key`}}let o=aY(n,t);if(o===`aws-sdk`)return lY();let s=qJ({cfg:n,store:a,provider:t,preferredProfile:i});for(let r of s)try{let t=await mE({cfg:n,store:a,profileId:r,agentDir:e.agentDir});if(t){let e=a.profiles[r]?.type;return{apiKey:t.apiKey,profileId:r,source:`profile:${r}`,mode:e===`oauth`?`oauth`:e===`token`?`token`:`api-key`}}}catch(e){XJ.debug?.(`auth profile "${r}" failed for provider "${t}": ${String(e)}`)}let c=dY(t);if(c)return{apiKey:c.apiKey,source:c.source,mode:c.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`};let l=rY({cfg:n,provider:t});if(l)return{apiKey:l.apiKey,source:l.source,mode:`api-key`};let u=oY({cfg:n,provider:t});if(u)return u;let d=z(t);if(o===void 0&&d===`amazon-bedrock`)return lY();if(t===`openai`&&Ld(a,`openai-codex`).length>0)throw Error(`No API key found for provider "openai". You are authenticated with OpenAI Codex OAuth. Use openai-codex/gpt-5.4 (OAuth) or set OPENAI_API_KEY to use openai/gpt-5.4.`);let f=hd(e.agentDir),p=O.dirname(f);throw Error([`No API key found for provider "${t}".`,`Auth store: ${f} (agentDir: ${p}).`,`Configure auth for this agent (${gr(`openclaw agents add <id>`)}) or copy auth-profiles.json from the main agentDir.`].join(` `))}function dY(e,t=process.env){let n=z(e),r=new Set(Po()),i=e=>{let n=Io(t[e]);return n?{apiKey:n,source:r.has(e)?`shell env: ${e}`:`env: ${e}`}:null},a=$o[n];if(a)for(let e of a){let t=i(e);if(t)return t}if(n===`google-vertex`){let e=Dt(n);return e?{apiKey:e,source:`gcloud adc`}:null}return null}function fY(e,t,n){let r=e?.trim();if(!r)return;let i=aY(t,r);if(i===`aws-sdk`)return`aws-sdk`;let a=n??Pd(),o=Ld(a,r);if(o.length>0){let e=new Set(o.map(e=>a.profiles[e]?.type).filter(e=>!!e));if([`oauth`,`token`,`api_key`].filter(t=>e.has(t)).length>=2)return`mixed`;if(e.has(`oauth`))return`oauth`;if(e.has(`token`))return`token`;if(e.has(`api_key`))return`api-key`}if(i===void 0&&z(r)===`amazon-bedrock`)return`aws-sdk`;let s=dY(r);return s?.apiKey?s.source.includes(`OAUTH_TOKEN`)?`oauth`:`api-key`:iY(t,r)?`api-key`:`unknown`}async function pY(e){return uY({provider:e.model.provider,cfg:e.cfg,profileId:e.profileId,preferredProfile:e.preferredProfile,store:e.store,agentDir:e.agentDir})}function mY(e,t){let n=Fo(e.apiKey);if(n)return n;throw Error(`No API key resolved for provider "${t}" (auth mode: ${e.mode}).`)}export{yq as $,cg as $a,Dx as $i,wz as $n,Fs as $o,SA as $r,wr as $s,ZH as $t,Kq as A,q_ as Aa,bE as Ai,HB as An,hd as Ao,hM as Ar,N as As,WU as At,bq as B,u_ as Ba,yT as Bi,vB as Bn,z as Bo,Pj as Br,Hr as Bs,MU as Bt,qq as C,sv as Ca,XE as Ci,dV as Cn,cf as Co,DN as Cr,zi as Cs,RW as Ct,$q as D,G_ as Da,wE as Di,qB as Dn,Ld as Do,BM as Dr,M as Ds,tG as Dt,Gq as E,K_ as Ea,TE as Ei,tV as En,Id as Eo,RM as Er,Oi as Es,IW as Et,kq as F,F_ as Fa,UT as Fi,TB as Fn,Au as Fo,Xj as Fr,ii as Fs,LU as Ft,nK as G,$g as Ga,Ow as Gi,sB as Gn,Fu as Go,wj as Gr,Nr as Gs,hU as Gt,_q as H,d_ as Ha,Tw as Hi,lB as Hn,Nu as Ho,Aj as Hr,Kr as Hs,TU as Ht,Aq as I,M_ as Ia,HT as Ii,SB as In,Su as Io,Zj as Ir,ai as Is,PU as It,mq as J,Dg as Ja,UC as Ji,kz as Jn,ru as Jo,oj as Jr,Br as Js,uU as Jt,ZK as K,Kg as Ka,Aw as Ki,Vz as Kn,Lu as Ko,vj as Kr,Ir as Ks,_U as Kt,Fq as L,C_ as La,bT as Li,_B as Ln,Cu as Lo,qj as Lr,Pr as Ls,FU as Lt,Rq as M,R_ as Ma,gE as Mi,NB as Mn,Qu as Mo,CM as Mr,yi as Ms,BU as Mt,Lq as N,z_ as Na,mE as Ni,MB as Nn,Iu as No,Jj as Nr,oi as Ns,IU as Nt,Qq as O,Y_ as Oa,yE as Oi,WB as On,Rd as Oo,WM as Or,Ci as Os,HW as Ot,Iq as P,L_ as Pa,WT as Pi,jB as Pn,ku as Po,Kj as Pr,Qr as Ps,RU as Pt,sK as Q,yg as Qa,Ex as Qi,hz as Qn,Ls as Qo,CA as Qr,xr as Qs,eU as Qt,Tq as R,m_ as Ra,_T as Ri,bB as Rn,bu as Ro,zj as Rr,Wr as Rs,NU as Rt,Xq as S,ev as Sa,qE as Si,SV as Sn,rp as So,kN as Sr,Bi as Ss,rG as St,nJ as T,B_ as Ta,RE as Ti,rV as Tn,Wd as To,GM as Tr,xi as Ts,eG as Tt,VK as U,c_ as Ua,Ew as Ui,aB as Un,ju as Uo,sj as Ur,Rr as Us,xU as Ut,rK as V,p_ as Va,mT as Vi,yB as Vn,Mu as Vo,Nj as Vr,zr as Vs,EU as Vt,QK as W,e_ as Wa,kw as Wi,oB as Wn,Ru as Wo,Tj as Wr,Ur as Ws,dU as Wt,pq as X,kg as Xa,Mw as Xi,xz as Xn,oc as Xo,DA as Xr,Dr as Xs,nU as Xt,sq as Y,Og as Ya,Cw as Yi,pz as Yn,pu as Yo,tj as Yr,Mr as Ys,lU as Yt,fK as Z,Cg as Za,TC as Zi,bz as Zn,cc as Zo,yA as Zr,Er as Zs,tU as Zt,vJ as _,Gv as _a,an as _c,nD as _i,kV as _n,Sp as _o,ZF as _r,Li as _s,uG as _t,fY as a,Tx as aa,tr as ac,kk as ai,RH as an,zh as ao,fz as ar,us as as,lq as at,iJ as b,dv as ba,oD as bi,gV as bn,Tp as bo,rF as br,Ui as bs,oG as bt,qJ as c,H as ca,Ln as cc,WD as ci,PH as cn,ih as co,pL as cr,Ho as cs,ZG as ct,MJ as d,Oy as da,Hn as dc,W as di,AH as dn,sh as do,nI as dr,Io as ds,zG as dt,kx as ea,_r as ec,Qk as ei,QH as en,og as eo,vz as er,ms as es,vq as et,GJ as f,ky as fa,In as fc,OD as fi,wH as fn,Sm as fo,QF as fr,Fo as fs,MG as ft,wJ as g,ty as ga,dn as gc,rD as gi,PV as gn,om as go,GF as gr,Ta as gs,pG as gt,CJ as h,xy as ha,fn as hc,tD as hi,jV as hn,ym as ho,UF as hr,mo as hs,_G as ht,dY as i,wx as ia,rr as ic,Uk as ii,VH as in,Bh as io,uz as ir,ds as is,BK as it,zq as j,I_ as ja,EE as ji,PB as jn,fd as jo,SM as jr,Mi as js,UU as jt,eJ as k,J_ as ka,xE as ki,VB as kn,Pd as ko,pM as kr,ji as ks,$W as kt,IJ as l,ab as la,Pn as lc,LD as li,kH as ln,ah as lo,eL as lr,Vo as ls,YG as lt,PJ as m,Ny as ma,xn as mc,vD as mi,aH as mn,vm as mo,qF as mr,Mo as ms,kG as mt,mY as n,Sx as na,cr as nc,Vk as ni,WH as nn,sg as no,Sz as nr,gs as ns,eq as nt,rY as o,dx as oa,nr as oc,Ak as oi,LH as on,Rh as oo,dz as or,Wo as os,dq as ot,LJ as p,My as pa,Cn as pc,xD as pi,CH as pn,pm as po,WF as pr,No as ps,jG as pt,JK as q,Jg as qa,jw as qi,Rz as qn,Zl as qo,Cj as qr,Fr as qs,mU as qt,uY as r,xx as ra,ir as rc,zk as ri,KH as rn,Fh as ro,Cz as rr,ps as rs,YK as rt,YJ as s,Lb as sa,Wn as sc,RD as si,FH as sn,Ah as so,TL as sr,Uo as ss,$K as st,pY as t,hx as ta,gr as tc,Hk as ti,qH as tn,Qh as to,gz as tr,hs as ts,dK as tt,FJ as u,Sy as ua,Rn as uc,AD as ui,OH as un,bh as uo,QI as ur,Bo as us,BG as ut,uJ as v,xv as va,nn as vc,aD as vi,xV as vn,wp as vo,VF as vr,Ii as vs,fG as vt,tJ as w,cv as wa,LE as wi,sV as wn,Xd as wo,eN as wr,Ri as ws,zW as wt,Yq as x,iv as xa,YE as xi,CV as xn,Cp as xo,bP as xr,Hi as xs,iG as xt,cJ as y,Cv as ya,sD as yi,wV as yn,Ep as yo,iF as yr,Pi as ys,sG as yt,Eq as z,s_ as za,gT as zi,gB as zn,Eu as zo,Mj as zr,Gr as zs,AU as zt};