@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
@@ -1 +1 @@
1
- import{g as e,i as t,m as n,o as r,u as i}from"./paths-B4IRk3wi.js";import{A as a,p as o}from"./subsystem-C5XF2Fy5.js";import{_ as s}from"./utils-UGOV_184.js";import{Ga as c,Zs as l,qs as u,so as d}from"./model-selection-I1ctjFOB.js";import"./reply-r9KtzgpM.js";import"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import{t as f}from"./command-format-BbDT1tlm.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./send-YPQFx-fV.js";import"./send-Ds5sy22D.js";import"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./audio-transcription-runner-BJNP7vB8.js";import"./image-BJC11A7e.js";import"./models-config-CWIlroKT.js";import"./tool-display-DjuSUUbH.js";import"./fetch-guard-Cji70DJW.js";import"./api-key-rotation-DYYvcqSG.js";import"./local-roots-Dxioh0C2.js";import"./model-catalog-vNCcsy4h.js";import"./proxy-fetch-BADsUK4d.js";import"./tokens-XGbQGn67.js";import"./deliver-DHP2vHKB.js";import"./commands-CGpM84iR.js";import"./commands-registry-CxDVU5s9.js";import"./pairing-store-Bv4KSELv.js";import"./fetch-Dikjvc5M.js";import"./call-BA3O_Qpl.js";import"./with-timeout-WveKxvFV.js";import"./diagnostic-Bzd5vlKH.js";import"./send-D0y-r_hg2.js";import"./pi-model-discovery-6myCPEJE.js";import"./exec-approvals-allowlist-BKFaHvA5.js";import"./exec-safe-bin-runtime-policy-D2WexijZ.js";import"./ir-CZdZsdnI.js";import"./render-D8OWO2hT.js";import"./target-errors-DH0aw-m5.js";import"./read-only-account-inspect-DEnPVHTo.js";import"./channel-selection-oRONo9z3.js";import"./plugin-auto-enable-Cp7L8ko8.js";import"./send-CgeRzkWS.js";import"./outbound-attachment-aZWcoZ-N.js";import"./delivery-queue-CKbauSFq.js";import"./send-DIw8ExHc.js";import"./channel-activity-DHY5wAyl.js";import"./tables-h7y1Jhf4.js";import"./fetch-Bn0mWg6a.js";import"./skill-commands-O39uSj-k.js";import"./workspace-dirs-BhF1Dzxt.js";import"./pairing-token-CKX1ds78.js";import"./restart-CTfuVGfA.js";import"./runtime-web-tools-CCIXUISf.js";import"./command-secret-targets-BBTiqQKa.js";import"./session-cost-usage-BgqKixv0.js";import"./connection-auth-DZ-3Svr_.js";import{f as p,g as m,i as h,o as g}from"./onboard-helpers-CGJLUoxR.js";import{n as _,r as v,t as y}from"./prompt-style-CXKekIBY.js";import"./pairing-labels-ryOnuOFA.js";import"./memory-cli-DHvscp7X.js";import"./query-expansion-0OxEb1Io.js";import"./manager-BwrZfep3.js";import{t as b}from"./links-CySwdMcF.js";import{n as x}from"./cli-utils-BY7dLMFy.js";import"./help-format-BRbF_INg.js";import"./progress-LNttnI-y.js";import"./exec-approvals-BpBNEy6i.js";import"./nodes-screen-C7-5RrbN.js";import"./system-run-command-DCzdgYyb.js";import"./runtime-DLxfCs7F.js";import"./stagger-DmFYysrJ.js";import"./runtime-guard-DFYBaYZS.js";import"./program-context-Cu8fVR-O.js";import"./skills-status-BWIugRCz.js";import{t as S}from"./clipboard-CKT_VIkG.js";import"./note-D4GAwgha.js";import"./issue-format-kj7FXHhi.js";import"./channels-status-issues-PRgOT90w.js";import"./completion-cli-DbGDCoiM.js";import"./daemon-install-plan.shared-BSDdwWjB.js";import"./gateway-install-token-BIqlEgy0.js";import"./systemd-D7odsu4K.js";import{n as C}from"./service-BtB9epJk.js";import"./systemd-hints-x1lJAOxS.js";import"./diagnostics-BgbeL9KE.js";import"./health-Cy_CvKbX.js";import"./control-ui-assets-BIa0GGDg.js";import"./channel-account-context-BMPAMZEv.js";import"./update-runner-8Hto6X-M.js";import"./logging-KiJmOmw4.js";import"./oauth-tls-preflight-ByNjbUR5.js";import"./doctor-config-flow-DHB8N7tT.js";import{a as w,i as T,o as E,r as D,t as O}from"./cleanup-utils-D-RhEX6F.js";import"./systemd-linger-C2MJD6KG.js";import"./health-format-VBr6LEpt.js";import{n as k,t as A}from"./prompt-select-styled-CbTtKeIC.js";import"./doctor-completion-DXqdpdlo.js";import j from"node:path";import{cancel as M,confirm as N,isCancel as P,multiselect as F}from"@clack/prompts";async function I(e,t=process.env){let n=await c({config:e,env:t,value:e.gateway?.auth?.token,path:`gateway.auth.token`,readFallback:()=>d(t)});return{token:n.value,source:n.source===`config`?`config`:n.source===`secretRef`?`secretRef`:n.source===`fallback`?`env`:void 0,unresolvedRefReason:n.unresolvedRefReason,tokenSecretRefConfigured:n.secretRefConfigured}}async function L(e=o,t={}){let n=await l(),r=n.valid?n.config:{},a=i(r),s=r.gateway?.bind??`loopback`,c=r.gateway?.controlUi?.basePath,u=r.gateway?.customBindHost,d=await I(r,process.env),f=d.token??``,_=m({port:a,bind:s===`lan`?`loopback`:s,customBindHost:u,basePath:c}),v=f.length>0&&!d.tokenSecretRefConfigured,y=v?`${_.httpUrl}#token=${encodeURIComponent(f)}`:_.httpUrl;e.log(`Dashboard URL: ${y}`),d.tokenSecretRefConfigured&&f&&e.log(`Token auto-auth is disabled for SecretRef-managed gateway.auth.token; use your external token source if prompted.`),d.unresolvedRefReason&&(e.log(`Token auto-auth unavailable: ${d.unresolvedRefReason}`),e.log("Set OPENCLAW_GATEWAY_TOKEN in this shell or resolve your secret provider, then rerun `openclaw dashboard`."));let b=await S(y).catch(()=>!1);e.log(b?`Copied to clipboard.`:`Copy to clipboard unavailable.`);let x=!1,C;t.noOpen?C=`Browser launch disabled (--no-open). Use the URL above.`:((await h()).ok&&(x=await p(y)),x||(C=g({port:a,basePath:c,token:v&&f||void 0}))),x?e.log(`Opened in your browser. Keep that tab to control OpenClaw.`):C&&e.log(C)}function R(){let t=u(),i=e(),a=r(),o=n();return{cfg:t,stateDir:i,configPath:a,oauthDir:o,...O({cfg:t,stateDir:i,configPath:a,oauthDir:o})}}async function z(e){if(t)return;let n=C(),r=!1;try{r=await n.isLoaded({env:process.env})}catch(t){e.error(`Gateway service check failed: ${String(t)}`);return}if(r)try{await n.stop({env:process.env,stdout:process.stdout})}catch(t){e.error(`Gateway stop failed: ${String(t)}`)}}function B(e){e.log(`Recommended first: ${f(`openclaw backup create`)}`)}async function V(e,t){let n=!t.nonInteractive;if(!n&&!t.yes){e.error(`Non-interactive mode requires --yes.`),e.exit(1);return}let r=t.scope;if(!r){if(!n){e.error(`Non-interactive mode requires --scope.`),e.exit(1);return}let t=await A({message:`Reset scope`,options:[{value:`config`,label:`Config only`,hint:`openclaw.json`},{value:`config+creds+sessions`,label:`Config + credentials + sessions`,hint:`keeps workspace + auth profiles`},{value:`full`,label:`Full reset`,hint:`state dir + workspace`}],initialValue:`config+creds+sessions`});if(P(t)){M(v(`Reset cancelled.`)??`Reset cancelled.`),e.exit(0);return}r=t}if(![`config`,`config+creds+sessions`,`full`].includes(r)){e.error(`Invalid --scope. Expected "config", "config+creds+sessions", or "full".`),e.exit(1);return}if(n&&!t.yes){let t=await N({message:_(`Proceed with ${r} reset?`)});if(P(t)||!t){M(v(`Reset cancelled.`)??`Reset cancelled.`),e.exit(0);return}}let i=!!t.dryRun,{stateDir:a,configPath:o,oauthDir:s,configInsideState:c,oauthInsideState:l,workspaceDirs:u}=R();if(r!==`config`&&(B(e),i?e.log(`[dry-run] stop gateway service`):await z(e)),r===`config`){await T(o,e,{dryRun:i,label:o});return}if(r===`config+creds+sessions`){await T(o,e,{dryRun:i,label:o}),await T(s,e,{dryRun:i,label:s});let t=await D(a);for(let n of t)await T(n,e,{dryRun:i,label:n});e.log(`Next: ${f(`openclaw onboard --install-daemon`)}`);return}if(r===`full`){await w({stateDir:a,configPath:o,oauthDir:s,configInsideState:c,oauthInsideState:l},e,{dryRun:i}),await E(u,e,{dryRun:i}),e.log(`Next: ${f(`openclaw onboard --install-daemon`)}`);return}}const H=e=>F({...e,message:_(e.message),options:e.options.map(e=>e.hint===void 0?e:{...e,hint:y(e.hint)})});function U(e){let t=!!(e.all||e.service||e.state||e.workspace||e.app),n=new Set;return(e.all||e.service)&&n.add(`service`),(e.all||e.state)&&n.add(`state`),(e.all||e.workspace)&&n.add(`workspace`),(e.all||e.app)&&n.add(`app`),{scopes:n,hadExplicit:t}}async function W(e){if(t)return e.error(`Nix mode detected; service uninstall is disabled.`),!1;let n=C(),r=!1;try{r=await n.isLoaded({env:process.env})}catch(t){return e.error(`Gateway service check failed: ${String(t)}`),!1}if(!r)return e.log(`Gateway service ${n.notLoadedText}.`),!0;try{await n.stop({env:process.env,stdout:process.stdout})}catch(t){e.error(`Gateway stop failed: ${String(t)}`)}try{return await n.uninstall({env:process.env,stdout:process.stdout}),!0}catch(t){return e.error(`Gateway uninstall failed: ${String(t)}`),!1}}async function G(e,t){process.platform===`darwin`&&await T(`/Applications/OpenClaw.app`,e,{dryRun:t,label:`/Applications/OpenClaw.app`})}function K(e){e.log(`Recommended first: ${f(`openclaw backup create`)}`)}async function q(e,t){let{scopes:n,hadExplicit:r}=U(t),i=!t.nonInteractive;if(!i&&!t.yes){e.error(`Non-interactive mode requires --yes.`),e.exit(1);return}if(!r){if(!i){e.error(`Non-interactive mode requires explicit scopes (use --all).`),e.exit(1);return}let t=await H({message:`Uninstall which components?`,options:[{value:`service`,label:`Gateway service`,hint:`launchd / systemd / schtasks`},{value:`state`,label:`State + config`,hint:`~/.qbotclaw`},{value:`workspace`,label:`Workspace`,hint:`agent files`},{value:`app`,label:`macOS app`,hint:`/Applications/OpenClaw.app`}],initialValues:[`service`,`state`,`workspace`]});if(P(t)){M(v(`Uninstall cancelled.`)??`Uninstall cancelled.`),e.exit(0);return}for(let e of t)n.add(e)}if(n.size===0){e.log(`Nothing selected.`);return}if(i&&!t.yes){let t=await N({message:_(`Proceed with uninstall?`)});if(P(t)||!t){M(v(`Uninstall cancelled.`)??`Uninstall cancelled.`),e.exit(0);return}}let a=!!t.dryRun,{stateDir:o,configPath:c,oauthDir:l,configInsideState:u,oauthInsideState:d,workspaceDirs:f}=R();if((n.has(`state`)||n.has(`workspace`))&&K(e),n.has(`service`)&&(a?e.log(`[dry-run] remove gateway service`):await W(e)),n.has(`state`)&&await w({stateDir:o,configPath:c,oauthDir:l,configInsideState:u,oauthInsideState:d},e,{dryRun:a}),n.has(`workspace`)&&await E(f,e,{dryRun:a}),n.has(`app`)&&await G(e,a),e.log(`CLI still installed. Remove via npm/pnpm if desired.`),n.has(`state`)&&!n.has(`workspace`)){let t=s();t&&f.some(e=>e.startsWith(j.resolve(t)))&&e.log(`Tip: workspaces were preserved. Re-run with --workspace to remove them.`)}}function J(e){e.command(`doctor`).description(`Health checks + quick fixes for the gateway and channels`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/doctor`,`docs.openclaw.ai/cli/doctor`)}\n`).option(`--no-workspace-suggestions`,`Disable workspace memory system suggestions`,!1).option(`--yes`,`Accept defaults without prompting`,!1).option(`--repair`,`Apply recommended repairs without prompting`,!1).option(`--fix`,`Apply recommended repairs (alias for --repair)`,!1).option(`--force`,`Apply aggressive repairs (overwrites custom service config)`,!1).option(`--non-interactive`,`Run without prompts (safe migrations only)`,!1).option(`--generate-gateway-token`,`Generate and configure a gateway token`,!1).option(`--deep`,`Scan system services for extra gateway installs`,!1).action(async e=>{await x(o,async()=>{await k(o,{workspaceSuggestions:e.workspaceSuggestions,yes:!!e.yes,repair:!!e.repair||!!e.fix,force:!!e.force,nonInteractive:!!e.nonInteractive,generateGatewayToken:!!e.generateGatewayToken,deep:!!e.deep}),o.exit(0)})}),e.command(`dashboard`).description(`Open the Control UI with your current token`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/dashboard`,`docs.openclaw.ai/cli/dashboard`)}\n`).option(`--no-open`,`Print URL but do not launch a browser`).action(async e=>{await x(o,async()=>{await L(o,{noOpen:e.open===!1})})}),e.command(`reset`).description(`Reset local config/state (keeps the CLI installed)`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/reset`,`docs.openclaw.ai/cli/reset`)}\n`).option(`--scope <scope>`,`config|config+creds+sessions|full (default: interactive prompt)`).option(`--yes`,`Skip confirmation prompts`,!1).option(`--non-interactive`,`Disable prompts (requires --scope + --yes)`,!1).option(`--dry-run`,`Print actions without removing files`,!1).action(async e=>{await x(o,async()=>{await V(o,{scope:e.scope,yes:!!e.yes,nonInteractive:!!e.nonInteractive,dryRun:!!e.dryRun})})}),e.command(`uninstall`).description(`Uninstall the gateway service + local data (CLI remains)`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/uninstall`,`docs.openclaw.ai/cli/uninstall`)}\n`).option(`--service`,`Remove the gateway service`,!1).option(`--state`,`Remove state + config`,!1).option(`--workspace`,`Remove workspace dirs`,!1).option(`--app`,`Remove the macOS app`,!1).option(`--all`,`Remove service + state + workspace + app`,!1).option(`--yes`,`Skip confirmation prompts`,!1).option(`--non-interactive`,`Disable prompts (requires --yes)`,!1).option(`--dry-run`,`Print actions without removing files`,!1).action(async e=>{await x(o,async()=>{await q(o,{service:!!e.service,state:!!e.state,workspace:!!e.workspace,app:!!e.app,all:!!e.all,yes:!!e.yes,nonInteractive:!!e.nonInteractive,dryRun:!!e.dryRun})})})}export{J as registerMaintenanceCommands};
1
+ import{g as e,i as t,m as n,o as r,u as i}from"./paths-B4IRk3wi.js";import{A as a,p as o}from"./subsystem-C5XF2Fy5.js";import{_ as s}from"./utils-UGOV_184.js";import{Ga as c,Zs as l,qs as u,so as d}from"./model-selection-I1ctjFOB.js";import"./reply-r9KtzgpM.js";import"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import{t as f}from"./command-format-BbDT1tlm.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./send-YPQFx-fV.js";import"./send-Ds5sy22D.js";import"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./audio-transcription-runner-BJNP7vB8.js";import"./image-BJC11A7e.js";import"./models-config-CWIlroKT.js";import"./tool-display-DjuSUUbH.js";import"./fetch-guard-Cji70DJW.js";import"./api-key-rotation-DYYvcqSG.js";import"./local-roots-Dxioh0C2.js";import"./model-catalog-vNCcsy4h.js";import"./proxy-fetch-BADsUK4d.js";import"./tokens-XGbQGn67.js";import"./deliver-DHP2vHKB.js";import"./commands-CGpM84iR.js";import"./commands-registry-CxDVU5s9.js";import"./pairing-store-Bv4KSELv.js";import"./fetch-Dikjvc5M.js";import"./call-BA3O_Qpl.js";import"./with-timeout-WveKxvFV.js";import"./diagnostic-Bzd5vlKH.js";import"./send-D0y-r_hg2.js";import"./pi-model-discovery-6myCPEJE.js";import"./exec-approvals-allowlist-BKFaHvA5.js";import"./exec-safe-bin-runtime-policy-D2WexijZ.js";import"./ir-CZdZsdnI.js";import"./render-D8OWO2hT.js";import"./target-errors-DH0aw-m5.js";import"./read-only-account-inspect-DEnPVHTo.js";import"./channel-selection-oRONo9z3.js";import"./plugin-auto-enable-Cp7L8ko8.js";import"./send-CgeRzkWS.js";import"./outbound-attachment-aZWcoZ-N.js";import"./delivery-queue-CKbauSFq.js";import"./send-DIw8ExHc.js";import"./channel-activity-DHY5wAyl.js";import"./tables-h7y1Jhf4.js";import"./fetch-Bn0mWg6a.js";import"./skill-commands-O39uSj-k.js";import"./workspace-dirs-BhF1Dzxt.js";import"./pairing-token-CKX1ds78.js";import"./restart-CTfuVGfA.js";import"./runtime-web-tools-CCIXUISf.js";import"./command-secret-targets-BBTiqQKa.js";import"./session-cost-usage-BgqKixv0.js";import"./connection-auth-DZ-3Svr_.js";import{f as p,g as m,i as h,o as g}from"./onboard-helpers-CGJLUoxR.js";import{n as _,r as v,t as y}from"./prompt-style-CXKekIBY.js";import"./pairing-labels-ryOnuOFA.js";import"./memory-cli-DHvscp7X.js";import"./query-expansion-0OxEb1Io.js";import"./manager-BwrZfep3.js";import{t as b}from"./links-CySwdMcF.js";import{n as x}from"./cli-utils-BY7dLMFy.js";import"./help-format-BRbF_INg.js";import"./progress-LNttnI-y.js";import"./exec-approvals-BpBNEy6i.js";import"./nodes-screen-C7-5RrbN.js";import"./system-run-command-DCzdgYyb.js";import"./runtime-DLxfCs7F.js";import"./stagger-DmFYysrJ.js";import"./runtime-guard-DFYBaYZS.js";import"./program-context-Cu8fVR-O.js";import"./skills-status-BWIugRCz.js";import{t as S}from"./clipboard-CKT_VIkG.js";import"./note-D4GAwgha.js";import"./issue-format-kj7FXHhi.js";import"./channels-status-issues-PRgOT90w.js";import"./completion-cli-DbGDCoiM.js";import"./daemon-install-plan.shared-BSDdwWjB.js";import"./gateway-install-token-BIqlEgy0.js";import"./systemd-D7odsu4K.js";import{n as C}from"./service-BtB9epJk.js";import"./systemd-hints-x1lJAOxS.js";import"./diagnostics-BgbeL9KE.js";import"./health-Cy_CvKbX.js";import"./control-ui-assets-BIa0GGDg.js";import"./channel-account-context-BMPAMZEv.js";import"./update-runner-8Hto6X-M.js";import"./logging-KiJmOmw4.js";import"./oauth-tls-preflight-ByNjbUR5.js";import"./doctor-config-flow-DHB8N7tT.js";import{a as w,i as T,o as E,r as D,t as O}from"./cleanup-utils-D-RhEX6F.js";import"./systemd-linger-C2MJD6KG.js";import"./health-format-VBr6LEpt.js";import{n as k,t as A}from"./prompt-select-styled-CbTtKeIC.js";import"./doctor-completion-DXqdpdlo.js";import j from"node:path";import{cancel as M,confirm as N,isCancel as P,multiselect as F}from"@clack/prompts";async function I(e,t=process.env){let n=await c({config:e,env:t,value:e.gateway?.auth?.token,path:`gateway.auth.token`,readFallback:()=>d(t)});return{token:n.value,source:n.source===`config`?`config`:n.source===`secretRef`?`secretRef`:n.source===`fallback`?`env`:void 0,unresolvedRefReason:n.unresolvedRefReason,tokenSecretRefConfigured:n.secretRefConfigured}}async function L(e=o,t={}){let n=await l(),r=n.valid?n.config:{},a=i(r),s=r.gateway?.bind??`loopback`,c=r.gateway?.controlUi?.basePath,u=r.gateway?.customBindHost,d=await I(r,process.env),f=d.token??``,_=m({port:a,bind:s===`lan`?`loopback`:s,customBindHost:u,basePath:c}),v=f.length>0&&!d.tokenSecretRefConfigured,y=v?`${_.httpUrl}#token=${encodeURIComponent(f)}`:_.httpUrl;e.log(`Dashboard URL: ${y}`),d.tokenSecretRefConfigured&&f&&e.log(`Token auto-auth is disabled for SecretRef-managed gateway.auth.token; use your external token source if prompted.`),d.unresolvedRefReason&&(e.log(`Token auto-auth unavailable: ${d.unresolvedRefReason}`),e.log("Set OPENCLAW_GATEWAY_TOKEN in this shell or resolve your secret provider, then rerun `openclaw dashboard`."));let b=await S(y).catch(()=>!1);e.log(b?`Copied to clipboard.`:`Copy to clipboard unavailable.`);let x=!1,C;t.noOpen?C=`Browser launch disabled (--no-open). Use the URL above.`:((await h()).ok&&(x=await p(y)),x||(C=g({port:a,basePath:c,token:v&&f||void 0}))),x?e.log(`Opened in your browser. Keep that tab to control OpenClaw.`):C&&e.log(C)}function R(){let t=u(),i=e(),a=r(),o=n();return{cfg:t,stateDir:i,configPath:a,oauthDir:o,...O({cfg:t,stateDir:i,configPath:a,oauthDir:o})}}async function z(e){if(t)return;let n=C(),r=!1;try{r=await n.isLoaded({env:process.env})}catch(t){e.error(`Gateway service check failed: ${String(t)}`);return}if(r)try{await n.stop({env:process.env,stdout:process.stdout})}catch(t){e.error(`Gateway stop failed: ${String(t)}`)}}function B(e){e.log(`Recommended first: ${f(`openclaw backup create`)}`)}async function V(e,t){let n=!t.nonInteractive;if(!n&&!t.yes){e.error(`Non-interactive mode requires --yes.`),e.exit(1);return}let r=t.scope;if(!r){if(!n){e.error(`Non-interactive mode requires --scope.`),e.exit(1);return}let t=await A({message:`Reset scope`,options:[{value:`config`,label:`Config only`,hint:`openclaw.json`},{value:`config+creds+sessions`,label:`Config + credentials + sessions`,hint:`keeps workspace + auth profiles`},{value:`full`,label:`Full reset`,hint:`state dir + workspace`}],initialValue:`config+creds+sessions`});if(P(t)){M(v(`Reset cancelled.`)??`Reset cancelled.`),e.exit(0);return}r=t}if(![`config`,`config+creds+sessions`,`full`].includes(r)){e.error(`Invalid --scope. Expected "config", "config+creds+sessions", or "full".`),e.exit(1);return}if(n&&!t.yes){let t=await N({message:_(`Proceed with ${r} reset?`)});if(P(t)||!t){M(v(`Reset cancelled.`)??`Reset cancelled.`),e.exit(0);return}}let i=!!t.dryRun,{stateDir:a,configPath:o,oauthDir:s,configInsideState:c,oauthInsideState:l,workspaceDirs:u}=R();if(r!==`config`&&(B(e),i?e.log(`[dry-run] stop gateway service`):await z(e)),r===`config`){await T(o,e,{dryRun:i,label:o});return}if(r===`config+creds+sessions`){await T(o,e,{dryRun:i,label:o}),await T(s,e,{dryRun:i,label:s});let t=await D(a);for(let n of t)await T(n,e,{dryRun:i,label:n});e.log(`Next: ${f(`openclaw onboard --install-daemon`)}`);return}if(r===`full`){await w({stateDir:a,configPath:o,oauthDir:s,configInsideState:c,oauthInsideState:l},e,{dryRun:i}),await E(u,e,{dryRun:i}),e.log(`Next: ${f(`openclaw onboard --install-daemon`)}`);return}}const H=e=>F({...e,message:_(e.message),options:e.options.map(e=>e.hint===void 0?e:{...e,hint:y(e.hint)})});function U(e){let t=!!(e.all||e.service||e.state||e.workspace||e.app),n=new Set;return(e.all||e.service)&&n.add(`service`),(e.all||e.state)&&n.add(`state`),(e.all||e.workspace)&&n.add(`workspace`),(e.all||e.app)&&n.add(`app`),{scopes:n,hadExplicit:t}}async function W(e){if(t)return e.error(`Nix mode detected; service uninstall is disabled.`),!1;let n=C(),r=!1;try{r=await n.isLoaded({env:process.env})}catch(t){return e.error(`Gateway service check failed: ${String(t)}`),!1}if(!r)return e.log(`Gateway service ${n.notLoadedText}.`),!0;try{await n.stop({env:process.env,stdout:process.stdout})}catch(t){e.error(`Gateway stop failed: ${String(t)}`)}try{return await n.uninstall({env:process.env,stdout:process.stdout}),!0}catch(t){return e.error(`Gateway uninstall failed: ${String(t)}`),!1}}async function G(e,t){process.platform===`darwin`&&await T(`/Applications/OpenClaw.app`,e,{dryRun:t,label:`/Applications/OpenClaw.app`})}function K(e){e.log(`Recommended first: ${f(`openclaw backup create`)}`)}async function q(e,t){let{scopes:n,hadExplicit:r}=U(t),i=!t.nonInteractive;if(!i&&!t.yes){e.error(`Non-interactive mode requires --yes.`),e.exit(1);return}if(!r){if(!i){e.error(`Non-interactive mode requires explicit scopes (use --all).`),e.exit(1);return}let t=await H({message:`Uninstall which components?`,options:[{value:`service`,label:`Gateway service`,hint:`launchd / systemd / schtasks`},{value:`state`,label:`State + config`,hint:`~/.qbotclaw`},{value:`workspace`,label:`Workspace`,hint:`agent files`},{value:`app`,label:`macOS app`,hint:`/Applications/OpenClaw.app`}],initialValues:[`service`,`state`,`workspace`]});if(P(t)){M(v(`Uninstall cancelled.`)??`Uninstall cancelled.`),e.exit(0);return}for(let e of t)n.add(e)}if(n.size===0){e.log(`Nothing selected.`);return}if(i&&!t.yes){let t=await N({message:_(`Proceed with uninstall?`)});if(P(t)||!t){M(v(`Uninstall cancelled.`)??`Uninstall cancelled.`),e.exit(0);return}}let a=!!t.dryRun,{stateDir:o,configPath:c,oauthDir:l,configInsideState:u,oauthInsideState:d,workspaceDirs:f}=R();if((n.has(`state`)||n.has(`workspace`))&&K(e),n.has(`service`)&&(a?e.log(`[dry-run] remove gateway service`):await W(e)),n.has(`state`)&&await w({stateDir:o,configPath:c,oauthDir:l,configInsideState:u,oauthInsideState:d},e,{dryRun:a}),n.has(`workspace`)&&await E(f,e,{dryRun:a}),n.has(`app`)&&await G(e,a),e.log(`CLI still installed. Remove via npm/pnpm if desired.`),n.has(`state`)&&!n.has(`workspace`)){let t=s();t&&f.some(e=>e.startsWith(j.resolve(t)))&&e.log(`Tip: workspaces were preserved. Re-run with --workspace to remove them.`)}}function J(e){e.command(`doctor`).description(`Health checks + quick fixes for the gateway and channels`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/doctor`,`docs.openclaw.ai/cli/doctor`)}\n`).option(`--no-workspace-suggestions`,`Disable workspace memory system suggestions`,!1).option(`--yes`,`Accept defaults without prompting`,!1).option(`--repair`,`Apply recommended repairs without prompting`,!1).option(`--fix`,`Apply recommended repairs (alias for --repair)`,!1).option(`--force`,`Apply aggressive repairs (overwrites custom service config)`,!1).option(`--non-interactive`,`Run without prompts (safe migrations only)`,!1).option(`--generate-gateway-token`,`Generate and configure a gateway token`,!1).option(`--deep`,`Scan system services for extra gateway installs`,!1).action(async e=>{await x(o,async()=>{await k(o,{workspaceSuggestions:e.workspaceSuggestions,yes:!!e.yes,repair:!!e.repair||!!e.fix,force:!!e.force,nonInteractive:!!e.nonInteractive,generateGatewayToken:!!e.generateGatewayToken,deep:!!e.deep}),o.exit(0)})}),e.command(`dashboard`).description(`Open the Control UI with your current token`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/dashboard`,`docs.openclaw.ai/cli/dashboard`)}\n`).option(`--no-open`,`Print URL but do not launch a browser`).action(async e=>{await x(o,async()=>{await L(o,{noOpen:e.open===!1})})}),e.command(`reset`).description(`Reset local config/state (keeps the CLI installed)`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/reset`,`docs.openclaw.ai/cli/reset`)}\n`).option(`--scope <scope>`,`config|config+creds+sessions|full (default: interactive prompt)`).option(`--yes`,`Skip confirmation prompts`,!1).option(`--non-interactive`,`Disable prompts (requires --scope + --yes)`,!1).option(`--dry-run`,`Print actions without removing files`,!1).action(async e=>{await x(o,async()=>{await V(o,{scope:e.scope,yes:!!e.yes,nonInteractive:!!e.nonInteractive,dryRun:!!e.dryRun})})}),e.command(`uninstall`).description(`Uninstall the gateway service + local data (CLI remains)`).addHelpText(`after`,()=>`\n${a.muted(`Docs:`)} ${b(`/cli/uninstall`,`docs.openclaw.ai/cli/uninstall`)}\n`).option(`--service`,`Remove the gateway service`,!1).option(`--state`,`Remove state + config`,!1).option(`--workspace`,`Remove workspace dirs`,!1).option(`--app`,`Remove the macOS app`,!1).option(`--all`,`Remove service + state + workspace + app`,!1).option(`--yes`,`Skip confirmation prompts`,!1).option(`--non-interactive`,`Disable prompts (requires --yes)`,!1).option(`--dry-run`,`Print actions without removing files`,!1).action(async e=>{await x(o,async()=>{await q(o,{service:!!e.service,state:!!e.state,workspace:!!e.workspace,app:!!e.app,all:!!e.all,yes:!!e.yes,nonInteractive:!!e.nonInteractive,dryRun:!!e.dryRun})})})}export{J as registerMaintenanceCommands};
@@ -2,4 +2,4 @@ import{A as e,k as t,p as n,v as r,w as i}from"./subsystem-BLbY429l.js";import".
2
2
  ${e.heading(`Examples:`)}
3
3
  ${C([[`openclaw message send --target +15555550123 --message "Hi"`,`Send a text message.`],[`openclaw message send --target +15555550123 --message "Hi" --media photo.jpg`,`Send a message with media.`],[`openclaw message poll --channel discord --target channel:123 --poll-question "Snack?" --poll-option Pizza --poll-option Sushi`,`Create a Discord poll.`],[`openclaw message react --channel discord --target 123 --message-id 456 --emoji "✅"`,`React to a message.`]])}
4
4
 
5
- ${e.muted(`Docs:`)} ${x(`/cli/message`,`docs.openclaw.ai/cli/message`)}`).action(()=>{r.help({error:!0})}),i=G(r,n.messageChannelOptions);re(r,i),K(r,i),$(r,i),te(r,i),ne(r,i),Q(r,i),X(r,i),Z(r,i),ie(r,i),J(r,i),Y(r,i),q(r,i)}export{ae as registerMessageCommands};
5
+ ${e.muted(`Docs:`)} ${x(`/cli/message`,`docs.openclaw.ai/cli/message`)}`).action(()=>{r.help({error:!0})}),i=G(r,n.messageChannelOptions);re(r,i),K(r,i),$(r,i),te(r,i),ne(r,i),Q(r,i),X(r,i),Z(r,i),ie(r,i),J(r,i),Y(r,i),q(r,i)}export{ae as registerMessageCommands};
@@ -2,4 +2,4 @@ import"./paths-B4IRk3wi.js";import{A as e,k as t,p as n,v as r,w as i}from"./sub
2
2
  ${e.heading(`Examples:`)}
3
3
  ${C([[`openclaw message send --target +15555550123 --message "Hi"`,`Send a text message.`],[`openclaw message send --target +15555550123 --message "Hi" --media photo.jpg`,`Send a message with media.`],[`openclaw message poll --channel discord --target channel:123 --poll-question "Snack?" --poll-option Pizza --poll-option Sushi`,`Create a Discord poll.`],[`openclaw message react --channel discord --target 123 --message-id 456 --emoji "✅"`,`React to a message.`]])}
4
4
 
5
- ${e.muted(`Docs:`)} ${x(`/cli/message`,`docs.openclaw.ai/cli/message`)}`).action(()=>{r.help({error:!0})}),i=K(r,n.messageChannelOptions);re(r,i),q(r,i),ee(r,i),te(r,i),ne(r,i),$(r,i),Z(r,i),Q(r,i),ie(r,i),Y(r,i),X(r,i),J(r,i)}export{ae as registerMessageCommands};
5
+ ${e.muted(`Docs:`)} ${x(`/cli/message`,`docs.openclaw.ai/cli/message`)}`).action(()=>{r.help({error:!0})}),i=K(r,n.messageChannelOptions);re(r,i),q(r,i),ee(r,i),te(r,i),ne(r,i),$(r,i),Z(r,i),Q(r,i),ie(r,i),Y(r,i),X(r,i),J(r,i)}export{ae as registerMessageCommands};
@@ -1 +1 @@
1
- import"./paths-B4IRk3wi.js";import{A as e,p as t}from"./subsystem-C5XF2Fy5.js";import"./utils-UGOV_184.js";import"./model-selection-I1ctjFOB.js";import"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./call-BA3O_Qpl.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import{t as n}from"./links-CySwdMcF.js";import{n as r}from"./cli-utils-BY7dLMFy.js";import"./progress-LNttnI-y.js";import"./runtime-guard-DFYBaYZS.js";import"./note-D4GAwgha.js";import"./clack-prompter-Dq0aY6iM.js";import"./onboarding.secret-input-B6fzeucQ.js";import"./onboarding-BJRqNsZ8.js";import"./logging-KiJmOmw4.js";import{t as i}from"./onboard-provider-auth-flags-Dvwzdz37.js";import{n as a}from"./auth-choice-options-Dw14noox.js";import{t as o}from"./onboard-B3WSjKCu.js";function s(e,t){if(!e||typeof e!=`object`)return;let n=`getOptionValueSource`in e?e.getOptionValueSource:void 0;if(typeof n==`function`){if(n.call(e,`skipDaemon`)===`cli`)return!1;if(n.call(e,`installDaemon`)===`cli`)return!!t.installDaemon}}const c=a({includeLegacyAliases:!0,includeSkip:!0});function l(a){let l=a.command(`onboard`).description(`Interactive wizard to set up the gateway, workspace, and skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${n(`/cli/onboard`,`docs.openclaw.ai/cli/onboard`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace)`).option(`--reset`,`Reset config + credentials + sessions before running wizard (workspace only with --reset-scope full)`).option(`--reset-scope <scope>`,`Reset scope: config|config+creds+sessions|full`).option(`--non-interactive`,`Run without prompts`,!1).option(`--accept-risk`,`Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)`,!1).option(`--flow <flow>`,`Wizard flow: quickstart|advanced|manual`).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--auth-choice <choice>`,`Auth: ${c}`).option(`--token-provider <id>`,`Token provider id (non-interactive; used with --auth-choice token)`).option(`--token <token>`,`Token value (non-interactive; used with --auth-choice token)`).option(`--token-profile-id <id>`,`Auth profile id (non-interactive; default: <provider>:manual)`).option(`--token-expires-in <duration>`,`Optional token expiry duration (e.g. 365d, 12h)`).option(`--secret-input-mode <mode>`,`API key persistence mode: plaintext|ref (default: plaintext)`).option(`--cloudflare-ai-gateway-account-id <id>`,`Cloudflare Account ID`).option(`--cloudflare-ai-gateway-gateway-id <id>`,`Cloudflare AI Gateway ID`);for(let e of i)l.option(e.cliOption,e.description);l.option(`--custom-base-url <url>`,`Custom provider base URL`).option(`--custom-api-key <key>`,`Custom provider API key (optional)`).option(`--custom-model-id <id>`,`Custom provider model ID`).option(`--custom-provider-id <id>`,`Custom provider ID (optional; auto-derived by default)`).option(`--custom-compatibility <mode>`,`Custom provider API compatibility: openai|anthropic (default: openai)`).option(`--gateway-port <port>`,`Gateway port`).option(`--gateway-bind <mode>`,`Gateway bind: loopback|tailnet|lan|auto|custom`).option(`--gateway-auth <mode>`,`Gateway auth: token|password`).option(`--gateway-token <token>`,`Gateway token (token auth)`).option(`--gateway-token-ref-env <name>`,`Gateway token SecretRef env var name (token auth; e.g. OPENCLAW_GATEWAY_TOKEN)`).option(`--gateway-password <password>`,`Gateway password (password auth)`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).option(`--tailscale <mode>`,`Tailscale: off|serve|funnel`).option(`--tailscale-reset-on-exit`,`Reset tailscale serve/funnel on exit`).option(`--install-daemon`,`Install gateway service`).option(`--no-install-daemon`,`Skip gateway service install`).option(`--skip-daemon`,`Skip gateway service install`).option(`--daemon-runtime <runtime>`,`Daemon runtime: node|bun`).option(`--skip-channels`,`Skip channel setup`).option(`--skip-skills`,`Skip skills setup`).option(`--skip-search`,`Skip search provider setup`).option(`--skip-health`,`Skip health check`).option(`--skip-ui`,`Skip Control UI/TUI prompts`).option(`--node-manager <name>`,`Node manager for skills: npm|pnpm|bun`).option(`--json`,`Output JSON summary`,!1),l.action(async(e,n)=>{await r(t,async()=>{let r=s(n,{installDaemon:!!e.installDaemon}),i=typeof e.gatewayPort==`string`?Number.parseInt(e.gatewayPort,10):void 0;await o({workspace:e.workspace,nonInteractive:!!e.nonInteractive,acceptRisk:!!e.acceptRisk,flow:e.flow,mode:e.mode,authChoice:e.authChoice,tokenProvider:e.tokenProvider,token:e.token,tokenProfileId:e.tokenProfileId,tokenExpiresIn:e.tokenExpiresIn,secretInputMode:e.secretInputMode,anthropicApiKey:e.anthropicApiKey,openaiApiKey:e.openaiApiKey,mistralApiKey:e.mistralApiKey,openrouterApiKey:e.openrouterApiKey,kilocodeApiKey:e.kilocodeApiKey,aiGatewayApiKey:e.aiGatewayApiKey,cloudflareAiGatewayAccountId:e.cloudflareAiGatewayAccountId,cloudflareAiGatewayGatewayId:e.cloudflareAiGatewayGatewayId,cloudflareAiGatewayApiKey:e.cloudflareAiGatewayApiKey,moonshotApiKey:e.moonshotApiKey,kimiCodeApiKey:e.kimiCodeApiKey,geminiApiKey:e.geminiApiKey,zaiApiKey:e.zaiApiKey,xiaomiApiKey:e.xiaomiApiKey,qianfanApiKey:e.qianfanApiKey,modelstudioApiKeyCn:e.modelstudioApiKeyCn,modelstudioApiKey:e.modelstudioApiKey,minimaxApiKey:e.minimaxApiKey,syntheticApiKey:e.syntheticApiKey,veniceApiKey:e.veniceApiKey,togetherApiKey:e.togetherApiKey,huggingfaceApiKey:e.huggingfaceApiKey,opencodeZenApiKey:e.opencodeZenApiKey,opencodeGoApiKey:e.opencodeGoApiKey,xaiApiKey:e.xaiApiKey,litellmApiKey:e.litellmApiKey,volcengineApiKey:e.volcengineApiKey,byteplusApiKey:e.byteplusApiKey,customBaseUrl:e.customBaseUrl,customApiKey:e.customApiKey,customModelId:e.customModelId,customProviderId:e.customProviderId,customCompatibility:e.customCompatibility,gatewayPort:typeof i==`number`&&Number.isFinite(i)?i:void 0,gatewayBind:e.gatewayBind,gatewayAuth:e.gatewayAuth,gatewayToken:e.gatewayToken,gatewayTokenRefEnv:e.gatewayTokenRefEnv,gatewayPassword:e.gatewayPassword,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken,tailscale:e.tailscale,tailscaleResetOnExit:!!e.tailscaleResetOnExit,reset:!!e.reset,resetScope:e.resetScope,installDaemon:r,daemonRuntime:e.daemonRuntime,skipChannels:!!e.skipChannels,skipSkills:!!e.skipSkills,skipSearch:!!e.skipSearch,skipHealth:!!e.skipHealth,skipUi:!!e.skipUi,nodeManager:e.nodeManager,json:!!e.json},t)})})}export{l as registerOnboardCommand};
1
+ import"./paths-B4IRk3wi.js";import{A as e,p as t}from"./subsystem-C5XF2Fy5.js";import"./utils-UGOV_184.js";import"./model-selection-I1ctjFOB.js";import"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./call-BA3O_Qpl.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import{t as n}from"./links-CySwdMcF.js";import{n as r}from"./cli-utils-BY7dLMFy.js";import"./progress-LNttnI-y.js";import"./runtime-guard-DFYBaYZS.js";import"./note-D4GAwgha.js";import"./clack-prompter-Dq0aY6iM.js";import"./onboarding.secret-input-B6fzeucQ.js";import"./onboarding-BJRqNsZ8.js";import"./logging-KiJmOmw4.js";import{t as i}from"./onboard-provider-auth-flags-Dvwzdz37.js";import{n as a}from"./auth-choice-options-Dw14noox.js";import{t as o}from"./onboard-B3WSjKCu.js";function s(e,t){if(!e||typeof e!=`object`)return;let n=`getOptionValueSource`in e?e.getOptionValueSource:void 0;if(typeof n==`function`){if(n.call(e,`skipDaemon`)===`cli`)return!1;if(n.call(e,`installDaemon`)===`cli`)return!!t.installDaemon}}const c=a({includeLegacyAliases:!0,includeSkip:!0});function l(a){let l=a.command(`onboard`).description(`Interactive wizard to set up the gateway, workspace, and skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${n(`/cli/onboard`,`docs.openclaw.ai/cli/onboard`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace)`).option(`--reset`,`Reset config + credentials + sessions before running wizard (workspace only with --reset-scope full)`).option(`--reset-scope <scope>`,`Reset scope: config|config+creds+sessions|full`).option(`--non-interactive`,`Run without prompts`,!1).option(`--accept-risk`,`Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)`,!1).option(`--flow <flow>`,`Wizard flow: quickstart|advanced|manual`).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--auth-choice <choice>`,`Auth: ${c}`).option(`--token-provider <id>`,`Token provider id (non-interactive; used with --auth-choice token)`).option(`--token <token>`,`Token value (non-interactive; used with --auth-choice token)`).option(`--token-profile-id <id>`,`Auth profile id (non-interactive; default: <provider>:manual)`).option(`--token-expires-in <duration>`,`Optional token expiry duration (e.g. 365d, 12h)`).option(`--secret-input-mode <mode>`,`API key persistence mode: plaintext|ref (default: plaintext)`).option(`--cloudflare-ai-gateway-account-id <id>`,`Cloudflare Account ID`).option(`--cloudflare-ai-gateway-gateway-id <id>`,`Cloudflare AI Gateway ID`);for(let e of i)l.option(e.cliOption,e.description);l.option(`--custom-base-url <url>`,`Custom provider base URL`).option(`--custom-api-key <key>`,`Custom provider API key (optional)`).option(`--custom-model-id <id>`,`Custom provider model ID`).option(`--custom-provider-id <id>`,`Custom provider ID (optional; auto-derived by default)`).option(`--custom-compatibility <mode>`,`Custom provider API compatibility: openai|anthropic (default: openai)`).option(`--gateway-port <port>`,`Gateway port`).option(`--gateway-bind <mode>`,`Gateway bind: loopback|tailnet|lan|auto|custom`).option(`--gateway-auth <mode>`,`Gateway auth: token|password`).option(`--gateway-token <token>`,`Gateway token (token auth)`).option(`--gateway-token-ref-env <name>`,`Gateway token SecretRef env var name (token auth; e.g. OPENCLAW_GATEWAY_TOKEN)`).option(`--gateway-password <password>`,`Gateway password (password auth)`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).option(`--tailscale <mode>`,`Tailscale: off|serve|funnel`).option(`--tailscale-reset-on-exit`,`Reset tailscale serve/funnel on exit`).option(`--install-daemon`,`Install gateway service`).option(`--no-install-daemon`,`Skip gateway service install`).option(`--skip-daemon`,`Skip gateway service install`).option(`--daemon-runtime <runtime>`,`Daemon runtime: node|bun`).option(`--skip-channels`,`Skip channel setup`).option(`--skip-skills`,`Skip skills setup`).option(`--skip-search`,`Skip search provider setup`).option(`--skip-health`,`Skip health check`).option(`--skip-ui`,`Skip Control UI/TUI prompts`).option(`--node-manager <name>`,`Node manager for skills: npm|pnpm|bun`).option(`--json`,`Output JSON summary`,!1),l.action(async(e,n)=>{await r(t,async()=>{let r=s(n,{installDaemon:!!e.installDaemon}),i=typeof e.gatewayPort==`string`?Number.parseInt(e.gatewayPort,10):void 0;await o({workspace:e.workspace,nonInteractive:!!e.nonInteractive,acceptRisk:!!e.acceptRisk,flow:e.flow,mode:e.mode,authChoice:e.authChoice,tokenProvider:e.tokenProvider,token:e.token,tokenProfileId:e.tokenProfileId,tokenExpiresIn:e.tokenExpiresIn,secretInputMode:e.secretInputMode,anthropicApiKey:e.anthropicApiKey,openaiApiKey:e.openaiApiKey,mistralApiKey:e.mistralApiKey,openrouterApiKey:e.openrouterApiKey,kilocodeApiKey:e.kilocodeApiKey,aiGatewayApiKey:e.aiGatewayApiKey,cloudflareAiGatewayAccountId:e.cloudflareAiGatewayAccountId,cloudflareAiGatewayGatewayId:e.cloudflareAiGatewayGatewayId,cloudflareAiGatewayApiKey:e.cloudflareAiGatewayApiKey,moonshotApiKey:e.moonshotApiKey,kimiCodeApiKey:e.kimiCodeApiKey,geminiApiKey:e.geminiApiKey,zaiApiKey:e.zaiApiKey,xiaomiApiKey:e.xiaomiApiKey,qianfanApiKey:e.qianfanApiKey,modelstudioApiKeyCn:e.modelstudioApiKeyCn,modelstudioApiKey:e.modelstudioApiKey,minimaxApiKey:e.minimaxApiKey,syntheticApiKey:e.syntheticApiKey,veniceApiKey:e.veniceApiKey,togetherApiKey:e.togetherApiKey,huggingfaceApiKey:e.huggingfaceApiKey,opencodeZenApiKey:e.opencodeZenApiKey,opencodeGoApiKey:e.opencodeGoApiKey,xaiApiKey:e.xaiApiKey,litellmApiKey:e.litellmApiKey,volcengineApiKey:e.volcengineApiKey,byteplusApiKey:e.byteplusApiKey,customBaseUrl:e.customBaseUrl,customApiKey:e.customApiKey,customModelId:e.customModelId,customProviderId:e.customProviderId,customCompatibility:e.customCompatibility,gatewayPort:typeof i==`number`&&Number.isFinite(i)?i:void 0,gatewayBind:e.gatewayBind,gatewayAuth:e.gatewayAuth,gatewayToken:e.gatewayToken,gatewayTokenRefEnv:e.gatewayTokenRefEnv,gatewayPassword:e.gatewayPassword,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken,tailscale:e.tailscale,tailscaleResetOnExit:!!e.tailscaleResetOnExit,reset:!!e.reset,resetScope:e.resetScope,installDaemon:r,daemonRuntime:e.daemonRuntime,skipChannels:!!e.skipChannels,skipSkills:!!e.skipSkills,skipSearch:!!e.skipSearch,skipHealth:!!e.skipHealth,skipUi:!!e.skipUi,nodeManager:e.nodeManager,json:!!e.json},t)})})}export{l as registerOnboardCommand};
@@ -1 +1 @@
1
- import{A as e,p as t}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import"./auth-profiles-BhXA8Jy2.js";import"./agent-scope-DAWJwFfl.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./call-BQT0zCgv.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import{t as n}from"./links-CBnmRP9D.js";import{n as r}from"./cli-utils-BleB1eys.js";import"./progress-d1m2sqR1.js";import"./note-Dp-d_utk.js";import"./clack-prompter-DBPdGdqp.js";import"./runtime-guard-DX2Ie4ri.js";import"./onboarding.secret-input-CBuD3c32.js";import"./onboarding-B8icigkk.js";import"./logging-Dz4Qg6th.js";import{t as i}from"./onboard-provider-auth-flags-CqbipO7D.js";import{n as a}from"./auth-choice-options-B3WQyS7I.js";import{t as o}from"./onboard-C65vdb94.js";function s(e,t){if(!e||typeof e!=`object`)return;let n=`getOptionValueSource`in e?e.getOptionValueSource:void 0;if(typeof n==`function`){if(n.call(e,`skipDaemon`)===`cli`)return!1;if(n.call(e,`installDaemon`)===`cli`)return!!t.installDaemon}}const c=a({includeLegacyAliases:!0,includeSkip:!0});function l(a){let l=a.command(`onboard`).description(`Interactive wizard to set up the gateway, workspace, and skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${n(`/cli/onboard`,`docs.openclaw.ai/cli/onboard`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace)`).option(`--reset`,`Reset config + credentials + sessions before running wizard (workspace only with --reset-scope full)`).option(`--reset-scope <scope>`,`Reset scope: config|config+creds+sessions|full`).option(`--non-interactive`,`Run without prompts`,!1).option(`--accept-risk`,`Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)`,!1).option(`--flow <flow>`,`Wizard flow: quickstart|advanced|manual`).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--auth-choice <choice>`,`Auth: ${c}`).option(`--token-provider <id>`,`Token provider id (non-interactive; used with --auth-choice token)`).option(`--token <token>`,`Token value (non-interactive; used with --auth-choice token)`).option(`--token-profile-id <id>`,`Auth profile id (non-interactive; default: <provider>:manual)`).option(`--token-expires-in <duration>`,`Optional token expiry duration (e.g. 365d, 12h)`).option(`--secret-input-mode <mode>`,`API key persistence mode: plaintext|ref (default: plaintext)`).option(`--cloudflare-ai-gateway-account-id <id>`,`Cloudflare Account ID`).option(`--cloudflare-ai-gateway-gateway-id <id>`,`Cloudflare AI Gateway ID`);for(let e of i)l.option(e.cliOption,e.description);l.option(`--custom-base-url <url>`,`Custom provider base URL`).option(`--custom-api-key <key>`,`Custom provider API key (optional)`).option(`--custom-model-id <id>`,`Custom provider model ID`).option(`--custom-provider-id <id>`,`Custom provider ID (optional; auto-derived by default)`).option(`--custom-compatibility <mode>`,`Custom provider API compatibility: openai|anthropic (default: openai)`).option(`--gateway-port <port>`,`Gateway port`).option(`--gateway-bind <mode>`,`Gateway bind: loopback|tailnet|lan|auto|custom`).option(`--gateway-auth <mode>`,`Gateway auth: token|password`).option(`--gateway-token <token>`,`Gateway token (token auth)`).option(`--gateway-token-ref-env <name>`,`Gateway token SecretRef env var name (token auth; e.g. OPENCLAW_GATEWAY_TOKEN)`).option(`--gateway-password <password>`,`Gateway password (password auth)`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).option(`--tailscale <mode>`,`Tailscale: off|serve|funnel`).option(`--tailscale-reset-on-exit`,`Reset tailscale serve/funnel on exit`).option(`--install-daemon`,`Install gateway service`).option(`--no-install-daemon`,`Skip gateway service install`).option(`--skip-daemon`,`Skip gateway service install`).option(`--daemon-runtime <runtime>`,`Daemon runtime: node|bun`).option(`--skip-channels`,`Skip channel setup`).option(`--skip-skills`,`Skip skills setup`).option(`--skip-search`,`Skip search provider setup`).option(`--skip-health`,`Skip health check`).option(`--skip-ui`,`Skip Control UI/TUI prompts`).option(`--node-manager <name>`,`Node manager for skills: npm|pnpm|bun`).option(`--json`,`Output JSON summary`,!1),l.action(async(e,n)=>{await r(t,async()=>{let r=s(n,{installDaemon:!!e.installDaemon}),i=typeof e.gatewayPort==`string`?Number.parseInt(e.gatewayPort,10):void 0;await o({workspace:e.workspace,nonInteractive:!!e.nonInteractive,acceptRisk:!!e.acceptRisk,flow:e.flow,mode:e.mode,authChoice:e.authChoice,tokenProvider:e.tokenProvider,token:e.token,tokenProfileId:e.tokenProfileId,tokenExpiresIn:e.tokenExpiresIn,secretInputMode:e.secretInputMode,anthropicApiKey:e.anthropicApiKey,openaiApiKey:e.openaiApiKey,mistralApiKey:e.mistralApiKey,openrouterApiKey:e.openrouterApiKey,kilocodeApiKey:e.kilocodeApiKey,aiGatewayApiKey:e.aiGatewayApiKey,cloudflareAiGatewayAccountId:e.cloudflareAiGatewayAccountId,cloudflareAiGatewayGatewayId:e.cloudflareAiGatewayGatewayId,cloudflareAiGatewayApiKey:e.cloudflareAiGatewayApiKey,moonshotApiKey:e.moonshotApiKey,kimiCodeApiKey:e.kimiCodeApiKey,geminiApiKey:e.geminiApiKey,zaiApiKey:e.zaiApiKey,xiaomiApiKey:e.xiaomiApiKey,qianfanApiKey:e.qianfanApiKey,modelstudioApiKeyCn:e.modelstudioApiKeyCn,modelstudioApiKey:e.modelstudioApiKey,minimaxApiKey:e.minimaxApiKey,syntheticApiKey:e.syntheticApiKey,veniceApiKey:e.veniceApiKey,togetherApiKey:e.togetherApiKey,huggingfaceApiKey:e.huggingfaceApiKey,opencodeZenApiKey:e.opencodeZenApiKey,opencodeGoApiKey:e.opencodeGoApiKey,xaiApiKey:e.xaiApiKey,litellmApiKey:e.litellmApiKey,volcengineApiKey:e.volcengineApiKey,byteplusApiKey:e.byteplusApiKey,customBaseUrl:e.customBaseUrl,customApiKey:e.customApiKey,customModelId:e.customModelId,customProviderId:e.customProviderId,customCompatibility:e.customCompatibility,gatewayPort:typeof i==`number`&&Number.isFinite(i)?i:void 0,gatewayBind:e.gatewayBind,gatewayAuth:e.gatewayAuth,gatewayToken:e.gatewayToken,gatewayTokenRefEnv:e.gatewayTokenRefEnv,gatewayPassword:e.gatewayPassword,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken,tailscale:e.tailscale,tailscaleResetOnExit:!!e.tailscaleResetOnExit,reset:!!e.reset,resetScope:e.resetScope,installDaemon:r,daemonRuntime:e.daemonRuntime,skipChannels:!!e.skipChannels,skipSkills:!!e.skipSkills,skipSearch:!!e.skipSearch,skipHealth:!!e.skipHealth,skipUi:!!e.skipUi,nodeManager:e.nodeManager,json:!!e.json},t)})})}export{l as registerOnboardCommand};
1
+ import{A as e,p as t}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import"./auth-profiles-BhXA8Jy2.js";import"./agent-scope-DAWJwFfl.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./call-BQT0zCgv.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import{t as n}from"./links-CBnmRP9D.js";import{n as r}from"./cli-utils-BleB1eys.js";import"./progress-d1m2sqR1.js";import"./note-Dp-d_utk.js";import"./clack-prompter-DBPdGdqp.js";import"./runtime-guard-DX2Ie4ri.js";import"./onboarding.secret-input-CBuD3c32.js";import"./onboarding-B8icigkk.js";import"./logging-Dz4Qg6th.js";import{t as i}from"./onboard-provider-auth-flags-CqbipO7D.js";import{n as a}from"./auth-choice-options-B3WQyS7I.js";import{t as o}from"./onboard-C65vdb94.js";function s(e,t){if(!e||typeof e!=`object`)return;let n=`getOptionValueSource`in e?e.getOptionValueSource:void 0;if(typeof n==`function`){if(n.call(e,`skipDaemon`)===`cli`)return!1;if(n.call(e,`installDaemon`)===`cli`)return!!t.installDaemon}}const c=a({includeLegacyAliases:!0,includeSkip:!0});function l(a){let l=a.command(`onboard`).description(`Interactive wizard to set up the gateway, workspace, and skills`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${n(`/cli/onboard`,`docs.openclaw.ai/cli/onboard`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace)`).option(`--reset`,`Reset config + credentials + sessions before running wizard (workspace only with --reset-scope full)`).option(`--reset-scope <scope>`,`Reset scope: config|config+creds+sessions|full`).option(`--non-interactive`,`Run without prompts`,!1).option(`--accept-risk`,`Acknowledge that agents are powerful and full system access is risky (required for --non-interactive)`,!1).option(`--flow <flow>`,`Wizard flow: quickstart|advanced|manual`).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--auth-choice <choice>`,`Auth: ${c}`).option(`--token-provider <id>`,`Token provider id (non-interactive; used with --auth-choice token)`).option(`--token <token>`,`Token value (non-interactive; used with --auth-choice token)`).option(`--token-profile-id <id>`,`Auth profile id (non-interactive; default: <provider>:manual)`).option(`--token-expires-in <duration>`,`Optional token expiry duration (e.g. 365d, 12h)`).option(`--secret-input-mode <mode>`,`API key persistence mode: plaintext|ref (default: plaintext)`).option(`--cloudflare-ai-gateway-account-id <id>`,`Cloudflare Account ID`).option(`--cloudflare-ai-gateway-gateway-id <id>`,`Cloudflare AI Gateway ID`);for(let e of i)l.option(e.cliOption,e.description);l.option(`--custom-base-url <url>`,`Custom provider base URL`).option(`--custom-api-key <key>`,`Custom provider API key (optional)`).option(`--custom-model-id <id>`,`Custom provider model ID`).option(`--custom-provider-id <id>`,`Custom provider ID (optional; auto-derived by default)`).option(`--custom-compatibility <mode>`,`Custom provider API compatibility: openai|anthropic (default: openai)`).option(`--gateway-port <port>`,`Gateway port`).option(`--gateway-bind <mode>`,`Gateway bind: loopback|tailnet|lan|auto|custom`).option(`--gateway-auth <mode>`,`Gateway auth: token|password`).option(`--gateway-token <token>`,`Gateway token (token auth)`).option(`--gateway-token-ref-env <name>`,`Gateway token SecretRef env var name (token auth; e.g. OPENCLAW_GATEWAY_TOKEN)`).option(`--gateway-password <password>`,`Gateway password (password auth)`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).option(`--tailscale <mode>`,`Tailscale: off|serve|funnel`).option(`--tailscale-reset-on-exit`,`Reset tailscale serve/funnel on exit`).option(`--install-daemon`,`Install gateway service`).option(`--no-install-daemon`,`Skip gateway service install`).option(`--skip-daemon`,`Skip gateway service install`).option(`--daemon-runtime <runtime>`,`Daemon runtime: node|bun`).option(`--skip-channels`,`Skip channel setup`).option(`--skip-skills`,`Skip skills setup`).option(`--skip-search`,`Skip search provider setup`).option(`--skip-health`,`Skip health check`).option(`--skip-ui`,`Skip Control UI/TUI prompts`).option(`--node-manager <name>`,`Node manager for skills: npm|pnpm|bun`).option(`--json`,`Output JSON summary`,!1),l.action(async(e,n)=>{await r(t,async()=>{let r=s(n,{installDaemon:!!e.installDaemon}),i=typeof e.gatewayPort==`string`?Number.parseInt(e.gatewayPort,10):void 0;await o({workspace:e.workspace,nonInteractive:!!e.nonInteractive,acceptRisk:!!e.acceptRisk,flow:e.flow,mode:e.mode,authChoice:e.authChoice,tokenProvider:e.tokenProvider,token:e.token,tokenProfileId:e.tokenProfileId,tokenExpiresIn:e.tokenExpiresIn,secretInputMode:e.secretInputMode,anthropicApiKey:e.anthropicApiKey,openaiApiKey:e.openaiApiKey,mistralApiKey:e.mistralApiKey,openrouterApiKey:e.openrouterApiKey,kilocodeApiKey:e.kilocodeApiKey,aiGatewayApiKey:e.aiGatewayApiKey,cloudflareAiGatewayAccountId:e.cloudflareAiGatewayAccountId,cloudflareAiGatewayGatewayId:e.cloudflareAiGatewayGatewayId,cloudflareAiGatewayApiKey:e.cloudflareAiGatewayApiKey,moonshotApiKey:e.moonshotApiKey,kimiCodeApiKey:e.kimiCodeApiKey,geminiApiKey:e.geminiApiKey,zaiApiKey:e.zaiApiKey,xiaomiApiKey:e.xiaomiApiKey,qianfanApiKey:e.qianfanApiKey,modelstudioApiKeyCn:e.modelstudioApiKeyCn,modelstudioApiKey:e.modelstudioApiKey,minimaxApiKey:e.minimaxApiKey,syntheticApiKey:e.syntheticApiKey,veniceApiKey:e.veniceApiKey,togetherApiKey:e.togetherApiKey,huggingfaceApiKey:e.huggingfaceApiKey,opencodeZenApiKey:e.opencodeZenApiKey,opencodeGoApiKey:e.opencodeGoApiKey,xaiApiKey:e.xaiApiKey,litellmApiKey:e.litellmApiKey,volcengineApiKey:e.volcengineApiKey,byteplusApiKey:e.byteplusApiKey,customBaseUrl:e.customBaseUrl,customApiKey:e.customApiKey,customModelId:e.customModelId,customProviderId:e.customProviderId,customCompatibility:e.customCompatibility,gatewayPort:typeof i==`number`&&Number.isFinite(i)?i:void 0,gatewayBind:e.gatewayBind,gatewayAuth:e.gatewayAuth,gatewayToken:e.gatewayToken,gatewayTokenRefEnv:e.gatewayTokenRefEnv,gatewayPassword:e.gatewayPassword,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken,tailscale:e.tailscale,tailscaleResetOnExit:!!e.tailscaleResetOnExit,reset:!!e.reset,resetScope:e.resetScope,installDaemon:r,daemonRuntime:e.daemonRuntime,skipChannels:!!e.skipChannels,skipSkills:!!e.skipSkills,skipSearch:!!e.skipSearch,skipHealth:!!e.skipHealth,skipUi:!!e.skipUi,nodeManager:e.nodeManager,json:!!e.json},t)})})}export{l as registerOnboardCommand};
@@ -1 +1 @@
1
- import{A as e,p as t}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Bo as n,Oo as r}from"./auth-profiles-BhXA8Jy2.js";import{D as i,v as a}from"./agent-scope-DAWJwFfl.js";import{x as o}from"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import{o as s}from"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./call-BQT0zCgv.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import{t as c}from"./links-CBnmRP9D.js";import{n as l}from"./cli-utils-BleB1eys.js";import"./progress-d1m2sqR1.js";import{t as u}from"./command-options-BpOUDl2S.js";import"./note-Dp-d_utk.js";import"./clack-prompter-DBPdGdqp.js";import"./runtime-guard-DX2Ie4ri.js";import"./onboarding.secret-input-CBuD3c32.js";import"./onboarding-B8icigkk.js";import{n as d,t as f}from"./logging-Dz4Qg6th.js";import{t as p}from"./onboard-C65vdb94.js";import m from"json5";import h from"node:fs/promises";async function g(e){try{let t=await h.readFile(e,`utf-8`),n=m.parse(t);return n&&typeof n==`object`?{exists:!0,parsed:n}:{exists:!0,parsed:{}}}catch{return{exists:!1,parsed:{}}}}async function _(e,c=t){let l=typeof e?.workspace==`string`&&e.workspace.trim()?e.workspace.trim():void 0,u=r().configPath,p=await g(u),m=p.parsed,_=m.agents?.defaults??{},v=l??_.workspace??a,y={...m,agents:{...m.agents,defaults:{..._,workspace:v}},gateway:{...m.gateway,mode:m.gateway?.mode??`local`}};if(!p.exists||_.workspace!==v||m.gateway?.mode!==y.gateway?.mode)if(await n(y),!p.exists)c.log(`Wrote ${f(u)}`);else{let e=[];_.workspace!==v&&e.push(`set agents.defaults.workspace`),m.gateway?.mode!==y.gateway?.mode&&e.push(`set gateway.mode`),d(c,{path:u,suffix:e.length>0?`(${e.join(`, `)})`:void 0})}else c.log(`Config OK: ${f(u)}`);let b=await i({dir:v,ensureBootstrapFiles:!y.agents?.defaults?.skipBootstrap});c.log(`Workspace OK: ${o(b.dir)}`);let x=s();await h.mkdir(x,{recursive:!0}),c.log(`Sessions OK: ${o(x)}`)}function v(n){n.command(`setup`).description(`Initialize ~/.qbotclaw/openclaw.json and the agent workspace`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/setup`,`docs.openclaw.ai/cli/setup`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace; stored as agents.defaults.workspace)`).option(`--wizard`,`Run the interactive onboarding wizard`,!1).option(`--non-interactive`,`Run the wizard without prompts`,!1).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).action(async(e,n)=>{await l(t,async()=>{let r=u(n,[`wizard`,`nonInteractive`,`mode`,`remoteUrl`,`remoteToken`]);if(e.wizard||r){await p({workspace:e.workspace,nonInteractive:!!e.nonInteractive,mode:e.mode,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken},t);return}await _({workspace:e.workspace},t)})})}export{v as registerSetupCommand};
1
+ import{A as e,p as t}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Bo as n,Oo as r}from"./auth-profiles-BhXA8Jy2.js";import{D as i,v as a}from"./agent-scope-DAWJwFfl.js";import{x as o}from"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import{o as s}from"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./call-BQT0zCgv.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import{t as c}from"./links-CBnmRP9D.js";import{n as l}from"./cli-utils-BleB1eys.js";import"./progress-d1m2sqR1.js";import{t as u}from"./command-options-BpOUDl2S.js";import"./note-Dp-d_utk.js";import"./clack-prompter-DBPdGdqp.js";import"./runtime-guard-DX2Ie4ri.js";import"./onboarding.secret-input-CBuD3c32.js";import"./onboarding-B8icigkk.js";import{n as d,t as f}from"./logging-Dz4Qg6th.js";import{t as p}from"./onboard-C65vdb94.js";import m from"json5";import h from"node:fs/promises";async function g(e){try{let t=await h.readFile(e,`utf-8`),n=m.parse(t);return n&&typeof n==`object`?{exists:!0,parsed:n}:{exists:!0,parsed:{}}}catch{return{exists:!1,parsed:{}}}}async function _(e,c=t){let l=typeof e?.workspace==`string`&&e.workspace.trim()?e.workspace.trim():void 0,u=r().configPath,p=await g(u),m=p.parsed,_=m.agents?.defaults??{},v=l??_.workspace??a,y={...m,agents:{...m.agents,defaults:{..._,workspace:v}},gateway:{...m.gateway,mode:m.gateway?.mode??`local`}};if(!p.exists||_.workspace!==v||m.gateway?.mode!==y.gateway?.mode)if(await n(y),!p.exists)c.log(`Wrote ${f(u)}`);else{let e=[];_.workspace!==v&&e.push(`set agents.defaults.workspace`),m.gateway?.mode!==y.gateway?.mode&&e.push(`set gateway.mode`),d(c,{path:u,suffix:e.length>0?`(${e.join(`, `)})`:void 0})}else c.log(`Config OK: ${f(u)}`);let b=await i({dir:v,ensureBootstrapFiles:!y.agents?.defaults?.skipBootstrap});c.log(`Workspace OK: ${o(b.dir)}`);let x=s();await h.mkdir(x,{recursive:!0}),c.log(`Sessions OK: ${o(x)}`)}function v(n){n.command(`setup`).description(`Initialize ~/.qbotclaw/openclaw.json and the agent workspace`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/setup`,`docs.openclaw.ai/cli/setup`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace; stored as agents.defaults.workspace)`).option(`--wizard`,`Run the interactive onboarding wizard`,!1).option(`--non-interactive`,`Run the wizard without prompts`,!1).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).action(async(e,n)=>{await l(t,async()=>{let r=u(n,[`wizard`,`nonInteractive`,`mode`,`remoteUrl`,`remoteToken`]);if(e.wizard||r){await p({workspace:e.workspace,nonInteractive:!!e.nonInteractive,mode:e.mode,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken},t);return}await _({workspace:e.workspace},t)})})}export{v as registerSetupCommand};
@@ -1 +1 @@
1
- import"./paths-B4IRk3wi.js";import{A as e,p as t}from"./subsystem-C5XF2Fy5.js";import{S as n}from"./utils-UGOV_184.js";import{Ws as r,nc as i}from"./model-selection-I1ctjFOB.js";import{D as a,v as o}from"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import{o as s}from"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./call-BA3O_Qpl.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import{t as c}from"./links-CySwdMcF.js";import{n as l}from"./cli-utils-BY7dLMFy.js";import"./progress-LNttnI-y.js";import"./runtime-guard-DFYBaYZS.js";import{t as u}from"./command-options-Bq5nQxz6.js";import"./note-D4GAwgha.js";import"./clack-prompter-Dq0aY6iM.js";import"./onboarding.secret-input-B6fzeucQ.js";import"./onboarding-BJRqNsZ8.js";import{n as d,t as f}from"./logging-KiJmOmw4.js";import{t as p}from"./onboard-B3WSjKCu.js";import m from"json5";import h from"node:fs/promises";async function g(e){try{let t=await h.readFile(e,`utf-8`),n=m.parse(t);return n&&typeof n==`object`?{exists:!0,parsed:n}:{exists:!0,parsed:{}}}catch{return{exists:!1,parsed:{}}}}async function _(e,c=t){let l=typeof e?.workspace==`string`&&e.workspace.trim()?e.workspace.trim():void 0,u=r().configPath,p=await g(u),m=p.parsed,_=m.agents?.defaults??{},v=l??_.workspace??o,y={...m,agents:{...m.agents,defaults:{..._,workspace:v}},gateway:{...m.gateway,mode:m.gateway?.mode??`local`}};if(!p.exists||_.workspace!==v||m.gateway?.mode!==y.gateway?.mode)if(await i(y),!p.exists)c.log(`Wrote ${f(u)}`);else{let e=[];_.workspace!==v&&e.push(`set agents.defaults.workspace`),m.gateway?.mode!==y.gateway?.mode&&e.push(`set gateway.mode`),d(c,{path:u,suffix:e.length>0?`(${e.join(`, `)})`:void 0})}else c.log(`Config OK: ${f(u)}`);let b=await a({dir:v,ensureBootstrapFiles:!y.agents?.defaults?.skipBootstrap});c.log(`Workspace OK: ${n(b.dir)}`);let x=s();await h.mkdir(x,{recursive:!0}),c.log(`Sessions OK: ${n(x)}`)}function v(n){n.command(`setup`).description(`Initialize ~/.qbotclaw/openclaw.json and the agent workspace`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/setup`,`docs.openclaw.ai/cli/setup`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace; stored as agents.defaults.workspace)`).option(`--wizard`,`Run the interactive onboarding wizard`,!1).option(`--non-interactive`,`Run the wizard without prompts`,!1).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).action(async(e,n)=>{await l(t,async()=>{let r=u(n,[`wizard`,`nonInteractive`,`mode`,`remoteUrl`,`remoteToken`]);if(e.wizard||r){await p({workspace:e.workspace,nonInteractive:!!e.nonInteractive,mode:e.mode,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken},t);return}await _({workspace:e.workspace},t)})})}export{v as registerSetupCommand};
1
+ import"./paths-B4IRk3wi.js";import{A as e,p as t}from"./subsystem-C5XF2Fy5.js";import{S as n}from"./utils-UGOV_184.js";import{Ws as r,nc as i}from"./model-selection-I1ctjFOB.js";import{D as a,v as o}from"./agent-scope-DXZc3eNT.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import{o as s}from"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./call-BA3O_Qpl.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import{t as c}from"./links-CySwdMcF.js";import{n as l}from"./cli-utils-BY7dLMFy.js";import"./progress-LNttnI-y.js";import"./runtime-guard-DFYBaYZS.js";import{t as u}from"./command-options-Bq5nQxz6.js";import"./note-D4GAwgha.js";import"./clack-prompter-Dq0aY6iM.js";import"./onboarding.secret-input-B6fzeucQ.js";import"./onboarding-BJRqNsZ8.js";import{n as d,t as f}from"./logging-KiJmOmw4.js";import{t as p}from"./onboard-B3WSjKCu.js";import m from"json5";import h from"node:fs/promises";async function g(e){try{let t=await h.readFile(e,`utf-8`),n=m.parse(t);return n&&typeof n==`object`?{exists:!0,parsed:n}:{exists:!0,parsed:{}}}catch{return{exists:!1,parsed:{}}}}async function _(e,c=t){let l=typeof e?.workspace==`string`&&e.workspace.trim()?e.workspace.trim():void 0,u=r().configPath,p=await g(u),m=p.parsed,_=m.agents?.defaults??{},v=l??_.workspace??o,y={...m,agents:{...m.agents,defaults:{..._,workspace:v}},gateway:{...m.gateway,mode:m.gateway?.mode??`local`}};if(!p.exists||_.workspace!==v||m.gateway?.mode!==y.gateway?.mode)if(await i(y),!p.exists)c.log(`Wrote ${f(u)}`);else{let e=[];_.workspace!==v&&e.push(`set agents.defaults.workspace`),m.gateway?.mode!==y.gateway?.mode&&e.push(`set gateway.mode`),d(c,{path:u,suffix:e.length>0?`(${e.join(`, `)})`:void 0})}else c.log(`Config OK: ${f(u)}`);let b=await a({dir:v,ensureBootstrapFiles:!y.agents?.defaults?.skipBootstrap});c.log(`Workspace OK: ${n(b.dir)}`);let x=s();await h.mkdir(x,{recursive:!0}),c.log(`Sessions OK: ${n(x)}`)}function v(n){n.command(`setup`).description(`Initialize ~/.qbotclaw/openclaw.json and the agent workspace`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${c(`/cli/setup`,`docs.openclaw.ai/cli/setup`)}\n`).option(`--workspace <dir>`,`Agent workspace directory (default: ~/.qbotclaw/workspace; stored as agents.defaults.workspace)`).option(`--wizard`,`Run the interactive onboarding wizard`,!1).option(`--non-interactive`,`Run the wizard without prompts`,!1).option(`--mode <mode>`,`Wizard mode: local|remote`).option(`--remote-url <url>`,`Remote Gateway WebSocket URL`).option(`--remote-token <token>`,`Remote Gateway token (optional)`).action(async(e,n)=>{await l(t,async()=>{let r=u(n,[`wizard`,`nonInteractive`,`mode`,`remoteUrl`,`remoteToken`]);if(e.wizard||r){await p({workspace:e.workspace,nonInteractive:!!e.nonInteractive,mode:e.mode,remoteUrl:e.remoteUrl,remoteToken:e.remoteToken},t);return}await _({workspace:e.workspace},t)})})}export{v as registerSetupCommand};
@@ -1 +1 @@
1
- import{A as e,k as t,p as n,w as r}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Bt as i,Ht as a,Lt as o,Vt as s,jo as c,jt as l,zt as u}from"./auth-profiles-BhXA8Jy2.js";import"./agent-scope-DAWJwFfl.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import"./send-DS5Quwb7.js";import"./send-BeZJ1zbp.js";import"./compact-CuBCVnVS.js";import{n as d,r as f}from"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./models-config-DN2Q51fC.js";import"./tokens-DRM8vzJx.js";import"./with-timeout-c1CzdShT.js";import"./deliver-COKdxPmA.js";import"./diagnostic-CW_Jv5UM.js";import"./send-DRm6AFp-.js";import"./pi-model-discovery-AiV9h8k6.js";import"./exec-approvals-allowlist-DBh9Pm77.js";import"./exec-safe-bin-runtime-policy-Ck3GO5AB.js";import"./model-catalog-BLdaFmIo.js";import"./fetch-CY5G3PDq.js";import"./audio-transcription-runner-BUsb6cqv.js";import"./fetch-guard-BaRbr_V6.js";import"./image-D-R3N1it.js";import"./tool-display-DJDtttQg.js";import"./api-key-rotation-D8WsZ43x.js";import"./proxy-fetch-gWETR3cl.js";import"./ir-CH7YvSi9.js";import"./render-DrrPmnMI.js";import"./target-errors-D55sWZ4E.js";import"./commands-Dy7duWlt.js";import"./commands-registry-Dn2uuNuy.js";import"./session-cost-usage-CHtVgnE8.js";import"./session-utils-CrR0wD3W.js";import"./sqlite-CILF3z9U.js";import"./call-BQT0zCgv.js";import"./pi-tools.policy-CeSKHaKa.js";import"./pairing-store-CjTPxq0X.js";import"./fetch-Dh-apy46.js";import"./skill-commands-C59b8Yso.js";import"./workspace-dirs-A8Vib9_B.js";import"./pairing-token-CX0SUJsB.js";import"./channel-activity-DYpm-0Cz.js";import"./tables-D1pcaye7.js";import"./kill-tree-DBJW8_Q-.js";import"./runtime-web-tools-BWv0X5qp.js";import"./runtime-BlsMYeaw.js";import"./node-shell-dXp4vk-i.js";import"./stagger-DxzgG2jd.js";import"./channel-selection-Ddyykqxv.js";import"./plugin-auto-enable-DCOxqfDQ.js";import"./send-8rJCpsDu.js";import"./outbound-attachment-DBNxdLYh.js";import"./delivery-queue-nkPJu0fY.js";import"./send-BPfl_1It.js";import"./system-run-command-FCk9hSMO.js";import"./fetch-Ce-scEU-.js";import"./command-secret-targets-KM3OecbM.js";import"./connection-auth-BcPbGyxw.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import"./pairing-labels-BP1h0iHy.js";import"./search-manager-KMRzwyPH.js";import"./manager-C5SBozw4.js";import"./memory-cli-CnruTL1h.js";import{t as p}from"./links-CBnmRP9D.js";import{n as m}from"./cli-utils-BleB1eys.js";import{t as h}from"./help-format-B4aEI7V9.js";import"./progress-d1m2sqR1.js";import"./exec-approvals-BXO9Cezj.js";import"./skills-status-DswSl5aD.js";import"./dangerous-tools-CFRYQJ6V.js";import"./skill-scanner-CkxXNioD.js";import"./issue-format-CpTuk_rQ.js";import"./channels-status-issues-8eFrGKyf.js";import{n as g}from"./helpers-COz1ghcB.js";import"./systemd-DbevZh65.js";import"./service-DZ9EbS15.js";import"./probe-auth-Cg6SAov9.js";import"./diagnostics-Cdctg9K_.js";import"./table-CR7TFMew.js";import{n as _}from"./status-DgRrUxyg.js";import{r as v}from"./health-Bedsiigi.js";import"./channel-account-context-DAcarnqW.js";import"./node-command-policy-Bbmnc16l.js";import"./audit-B6LsW3Ai.js";import"./node-service-C0bl7jcZ.js";import"./status.update-B_8Gumuc.js";import{a as y,c as b,i as x,n as S,o as C,r as w,s as T,sessionsCommand as E,t as D}from"./sessions-BvTGb3rW.js";import O from"node:fs";function k(e){return e.missingKeys.has(e.key)?`prune-missing`:e.staleKeys.has(e.key)?`prune-stale`:e.cappedKeys.has(e.key)?`cap-overflow`:e.budgetEvictedKeys.has(e.key)?`evict-budget`:`keep`}function A(t,n){let r=t.padEnd(12);return n?t===`keep`?e.muted(r):t===`prune-missing`?e.error(r):t===`prune-stale`?e.warn(r):t===`cap-overflow`?e.accentBright(r):e.error(r):r}function j(e){return T(e.beforeStore).map(t=>({...t,action:k({key:t.key,missingKeys:e.missingKeys,staleKeys:e.staleKeys,cappedKeys:e.cappedKeys,budgetEvictedKeys:e.budgetEvictedKeys})}))}function M(e){let t=f({storePath:e.storePath}),n=0;for(let[r,i]of Object.entries(e.store)){if(!i?.sessionId)continue;let a=d(i.sessionId,i,t);O.existsSync(a)||(delete e.store[r],n+=1,e.onPruned?.(r))}return n}async function N(e){let t=s(),n=l(e.target.storePath,{skipCache:!0}),r=structuredClone(n),o=new Set,c=new Set,d=new Set,f=e.fixMissing===!0?M({store:r,storePath:e.target.storePath,onPruned:e=>{d.add(e)}}):0,p=i(r,t.pruneAfterMs,{log:!1,onPruned:({key:e})=>{o.add(e)}}),m=u(r,t.maxEntries,{log:!1,onCapped:({key:e})=>{c.add(e)}}),h=structuredClone(r),g=await a({store:r,storePath:e.target.storePath,activeSessionKey:e.activeKey,maintenance:t,warnOnly:!1,dryRun:!0}),_=new Set;for(let e of Object.keys(h))Object.hasOwn(r,e)||_.add(e);let v=Object.keys(n).length,y=Object.keys(r).length,b=f>0||p>0||m>0||(g?.removedEntries??0)>0||(g?.removedFiles??0)>0;return{summary:{agentId:e.target.agentId,storePath:e.target.storePath,mode:e.mode,dryRun:e.dryRun,beforeCount:v,afterCount:y,missing:f,pruned:p,capped:m,diskBudget:g,wouldMutate:b},actionRows:j({beforeStore:n,staleKeys:o,cappedKeys:c,budgetEvictedKeys:_,missingKeys:d})}}function P(n){let r=t();if(n.showAgentHeader&&n.runtime.log(`Agent: ${n.summary.agentId}`),n.runtime.log(`Session store: ${n.summary.storePath}`),n.runtime.log(`Maintenance mode: ${n.summary.mode}`),n.runtime.log(`Entries: ${n.summary.beforeCount} -> ${n.summary.afterCount} (remove ${n.summary.beforeCount-n.summary.afterCount})`),n.runtime.log(`Would prune missing transcripts: ${n.summary.missing}`),n.runtime.log(`Would prune stale: ${n.summary.pruned}`),n.runtime.log(`Would cap overflow: ${n.summary.capped}`),n.summary.diskBudget&&n.runtime.log(`Would enforce disk budget: ${n.summary.diskBudget.totalBytesBefore} -> ${n.summary.diskBudget.totalBytesAfter} bytes (files ${n.summary.diskBudget.removedFiles}, entries ${n.summary.diskBudget.removedEntries})`),n.actionRows.length===0)return;n.runtime.log(``),n.runtime.log(`Planned session actions:`);let i=[`Action`.padEnd(12),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Flags`].join(` `);n.runtime.log(r?e.heading(i):i);for(let e of n.actionRows){let t=C(n.cfg,e,n.displayDefaults),i=[A(e.action,r),w(e.key,r),D(e.updatedAt,r),x(t,r),S(e,r)].join(` `);n.runtime.log(i.trimEnd())}}async function F(e,t){let n=c(),r=y(n),i=e.enforce?`enforce`:s().mode,a=b({cfg:n,opts:{store:e.store,agent:e.agent,allAgents:e.allAgents},runtime:t});if(!a)return;let u=[];for(let t of a){let n=await N({target:t,mode:i,dryRun:!!e.dryRun,activeKey:e.activeKey,fixMissing:!!e.fixMissing});u.push(n)}if(e.dryRun){if(e.json){if(u.length===1){t.log(JSON.stringify(u[0]?.summary??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!0,stores:u.map(e=>e.summary)},null,2));return}for(let e=0;e<u.length;e+=1){let i=u[e];e>0&&t.log(``),P({cfg:n,summary:i.summary,actionRows:i.actionRows,displayDefaults:r,runtime:t,showAgentHeader:u.length>1})}return}let d=[];for(let t of a){let n={current:null},r=await o(t.storePath,async n=>e.fixMissing?M({store:n,storePath:t.storePath}):0,{activeSessionKey:e.activeKey,maintenanceOverride:{mode:i},onMaintenanceApplied:e=>{n.current=e}}),a=l(t.storePath,{skipCache:!0}),s=u.find(e=>e.summary.storePath===t.storePath),c=n.current,f=c===null?{...s?.summary??{agentId:t.agentId,storePath:t.storePath,mode:i,dryRun:!1,beforeCount:0,afterCount:0,missing:0,pruned:0,capped:0,diskBudget:null,wouldMutate:!1},dryRun:!1,applied:!0,appliedCount:Object.keys(a).length}:{agentId:t.agentId,storePath:t.storePath,mode:c.mode,dryRun:!1,beforeCount:c.beforeCount,afterCount:c.afterCount,missing:r,pruned:c.pruned,capped:c.capped,diskBudget:c.diskBudget,wouldMutate:r>0||c.pruned>0||c.capped>0||(c.diskBudget?.removedEntries??0)>0||(c.diskBudget?.removedFiles??0)>0,applied:!0,appliedCount:Object.keys(a).length};d.push(f)}if(e.json){if(d.length===1){t.log(JSON.stringify(d[0]??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!1,stores:d},null,2));return}for(let e=0;e<d.length;e+=1){let n=d[e];e>0&&t.log(``),d.length>1&&t.log(`Agent: ${n.agentId}`),t.log(`Session store: ${n.storePath}`),t.log(`Applied maintenance. Current entries: ${n.appliedCount??0}`)}}function I(e){return!!(e.verbose||e.debug)}function L(e){let t=g(e);return e!==void 0&&t===void 0?(n.error(`--timeout must be a positive integer (milliseconds)`),n.exit(1),null):t}async function R(e,t){let i=I(e);r(i);let a=L(e.timeout);a!==null&&await m(n,async()=>{await t({verbose:i,timeoutMs:a})})}function z(t){t.command(`status`).description(`Show channel health and recent session recipients`).option(`--json`,`Output JSON instead of text`,!1).option(`--all`,`Full diagnosis (read-only, pasteable)`,!1).option(`--usage`,`Show model provider usage/quota snapshots`,!1).option(`--deep`,`Probe channels (WhatsApp Web + Telegram + Discord + Slack + Signal)`,!1).option(`--timeout <ms>`,`Probe timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw status`,`Show channel health + session summary.`],[`openclaw status --all`,`Full diagnosis (read-only).`],[`openclaw status --json`,`Machine-readable output.`],[`openclaw status --usage`,`Show model provider usage/quota snapshots.`],[`openclaw status --deep`,`Run channel probes (WA + Telegram + Discord + Slack + Signal).`],[`openclaw status --deep --timeout 5000`,`Tighten probe timeout.`]])}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/status`,`docs.openclaw.ai/cli/status`)}\n`).action(async e=>{await R(e,async({verbose:t,timeoutMs:r})=>{await _({json:!!e.json,all:!!e.all,deep:!!e.deep,usage:!!e.usage,timeoutMs:r,verbose:t},n)})}),t.command(`health`).description(`Fetch health from the running gateway`).option(`--json`,`Output JSON instead of text`,!1).option(`--timeout <ms>`,`Connection timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/health`,`docs.openclaw.ai/cli/health`)}\n`).action(async e=>{await R(e,async({verbose:t,timeoutMs:r})=>{await v({json:!!e.json,timeoutMs:r,verbose:t},n)})});let i=t.command(`sessions`).description(`List stored conversation sessions`).option(`--json`,`Output as JSON`,!1).option(`--verbose`,`Verbose logging`,!1).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to inspect (default: configured default agent)`).option(`--all-agents`,`Aggregate sessions across all configured agents`,!1).option(`--active <minutes>`,`Only show sessions updated within the past N minutes`).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw sessions`,`List all sessions.`],[`openclaw sessions --agent work`,`List sessions for one agent.`],[`openclaw sessions --all-agents`,`Aggregate sessions across agents.`],[`openclaw sessions --active 120`,`Only last 2 hours.`],[`openclaw sessions --json`,`Machine-readable output.`],[`openclaw sessions --store ./tmp/sessions.json`,`Use a specific session store.`]])}\n\n${e.muted(`Shows token usage per session when the agent reports it; set agents.defaults.contextTokens to cap the window and show %.`)}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/sessions`,`docs.openclaw.ai/cli/sessions`)}\n`).action(async e=>{r(!!e.verbose),await E({json:!!e.json,store:e.store,agent:e.agent,allAgents:!!e.allAgents,active:e.active},n)});i.enablePositionalOptions(),i.command(`cleanup`).description(`Run session-store maintenance now`).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to maintain (default: configured default agent)`).option(`--all-agents`,`Run maintenance across all configured agents`,!1).option(`--dry-run`,`Preview maintenance actions without writing`,!1).option(`--enforce`,`Apply maintenance even when configured mode is warn`,!1).option(`--fix-missing`,`Remove store entries whose transcript files are missing (bypasses age/count retention)`,!1).option(`--active-key <key>`,`Protect this session key from budget-eviction`).option(`--json`,`Output JSON`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw sessions cleanup --dry-run`,`Preview stale/cap cleanup.`],[`openclaw sessions cleanup --dry-run --fix-missing`,`Also preview pruning entries with missing transcript files.`],[`openclaw sessions cleanup --enforce`,`Apply maintenance now.`],[`openclaw sessions cleanup --agent work --dry-run`,`Preview one agent store.`],[`openclaw sessions cleanup --all-agents --dry-run`,`Preview all agent stores.`],[`openclaw sessions cleanup --enforce --store ./tmp/sessions.json`,`Use a specific store.`]])}`).action(async(e,t)=>{let r=t.parent?.opts();await m(n,async()=>{await F({store:e.store??r?.store,agent:e.agent??r?.agent,allAgents:!!(e.allAgents||r?.allAgents),dryRun:!!e.dryRun,enforce:!!e.enforce,fixMissing:!!e.fixMissing,activeKey:e.activeKey,json:!!(e.json||r?.json)},n)})})}export{z as registerStatusHealthSessionsCommands};
1
+ import{A as e,k as t,p as n,w as r}from"./subsystem-BLbY429l.js";import"./paths-BjD3T_xq.js";import"./boolean-D15s2V33.js";import{Bt as i,Ht as a,Lt as o,Vt as s,jo as c,jt as l,zt as u}from"./auth-profiles-BhXA8Jy2.js";import"./agent-scope-DAWJwFfl.js";import"./utils-CGdo13HV.js";import"./openclaw-root-CnsBf6ZU.js";import"./github-copilot-token-C79yeDKS.js";import"./env-overrides-DHtB4kK3.js";import"./version-q3SkUw2K.js";import"./registry-BptzrW8D.js";import"./skills-CKTicUKS.js";import"./frontmatter-C7mzDNxd.js";import"./plugins-DNlgeTTc.js";import"./logger-kQAOe3qp.js";import"./exec-B3eleY5O.js";import"./windows-spawn-7oINn5ao.js";import"./redact-CnRxK70G.js";import"./path-alias-guards-kY_ZbWs-.js";import"./errors-6SQWM9dj.js";import"./send-DS5Quwb7.js";import"./send-BeZJ1zbp.js";import"./compact-CuBCVnVS.js";import{n as d,r as f}from"./paths-BfjJY2VL.js";import"./chat-envelope-Bznn2SoS.js";import"./models-config-DN2Q51fC.js";import"./tokens-DRM8vzJx.js";import"./with-timeout-c1CzdShT.js";import"./deliver-COKdxPmA.js";import"./diagnostic-CW_Jv5UM.js";import"./send-DRm6AFp-.js";import"./pi-model-discovery-AiV9h8k6.js";import"./exec-approvals-allowlist-DBh9Pm77.js";import"./exec-safe-bin-runtime-policy-Ck3GO5AB.js";import"./model-catalog-BLdaFmIo.js";import"./fetch-CY5G3PDq.js";import"./audio-transcription-runner-BUsb6cqv.js";import"./fetch-guard-BaRbr_V6.js";import"./image-D-R3N1it.js";import"./tool-display-DJDtttQg.js";import"./api-key-rotation-D8WsZ43x.js";import"./proxy-fetch-gWETR3cl.js";import"./ir-CH7YvSi9.js";import"./render-DrrPmnMI.js";import"./target-errors-D55sWZ4E.js";import"./commands-Dy7duWlt.js";import"./commands-registry-Dn2uuNuy.js";import"./session-cost-usage-CHtVgnE8.js";import"./session-utils-CrR0wD3W.js";import"./sqlite-CILF3z9U.js";import"./call-BQT0zCgv.js";import"./pi-tools.policy-CeSKHaKa.js";import"./pairing-store-CjTPxq0X.js";import"./fetch-Dh-apy46.js";import"./skill-commands-C59b8Yso.js";import"./workspace-dirs-A8Vib9_B.js";import"./pairing-token-CX0SUJsB.js";import"./channel-activity-DYpm-0Cz.js";import"./tables-D1pcaye7.js";import"./kill-tree-DBJW8_Q-.js";import"./runtime-web-tools-BWv0X5qp.js";import"./runtime-BlsMYeaw.js";import"./node-shell-dXp4vk-i.js";import"./stagger-DxzgG2jd.js";import"./channel-selection-Ddyykqxv.js";import"./plugin-auto-enable-DCOxqfDQ.js";import"./send-8rJCpsDu.js";import"./outbound-attachment-DBNxdLYh.js";import"./delivery-queue-nkPJu0fY.js";import"./send-BPfl_1It.js";import"./system-run-command-FCk9hSMO.js";import"./fetch-Ce-scEU-.js";import"./command-secret-targets-KM3OecbM.js";import"./connection-auth-BcPbGyxw.js";import"./onboard-helpers-DbpWQoiB.js";import"./prompt-style-BThRSQJR.js";import"./pairing-labels-BP1h0iHy.js";import"./search-manager-KMRzwyPH.js";import"./manager-C5SBozw4.js";import"./memory-cli-CnruTL1h.js";import{t as p}from"./links-CBnmRP9D.js";import{n as m}from"./cli-utils-BleB1eys.js";import{t as h}from"./help-format-B4aEI7V9.js";import"./progress-d1m2sqR1.js";import"./exec-approvals-BXO9Cezj.js";import"./skills-status-DswSl5aD.js";import"./dangerous-tools-CFRYQJ6V.js";import"./skill-scanner-CkxXNioD.js";import"./issue-format-CpTuk_rQ.js";import"./channels-status-issues-8eFrGKyf.js";import{n as g}from"./helpers-COz1ghcB.js";import"./systemd-DbevZh65.js";import"./service-DZ9EbS15.js";import"./probe-auth-Cg6SAov9.js";import"./diagnostics-Cdctg9K_.js";import"./table-CR7TFMew.js";import{n as _}from"./status-DgRrUxyg.js";import{r as v}from"./health-Bedsiigi.js";import"./channel-account-context-DAcarnqW.js";import"./node-command-policy-Bbmnc16l.js";import"./audit-B6LsW3Ai.js";import"./node-service-C0bl7jcZ.js";import"./status.update-B_8Gumuc.js";import{a as y,c as b,i as x,n as S,o as C,r as w,s as T,sessionsCommand as E,t as D}from"./sessions-BvTGb3rW.js";import O from"node:fs";function k(e){return e.missingKeys.has(e.key)?`prune-missing`:e.staleKeys.has(e.key)?`prune-stale`:e.cappedKeys.has(e.key)?`cap-overflow`:e.budgetEvictedKeys.has(e.key)?`evict-budget`:`keep`}function A(t,n){let r=t.padEnd(12);return n?t===`keep`?e.muted(r):t===`prune-missing`?e.error(r):t===`prune-stale`?e.warn(r):t===`cap-overflow`?e.accentBright(r):e.error(r):r}function j(e){return T(e.beforeStore).map(t=>({...t,action:k({key:t.key,missingKeys:e.missingKeys,staleKeys:e.staleKeys,cappedKeys:e.cappedKeys,budgetEvictedKeys:e.budgetEvictedKeys})}))}function M(e){let t=f({storePath:e.storePath}),n=0;for(let[r,i]of Object.entries(e.store)){if(!i?.sessionId)continue;let a=d(i.sessionId,i,t);O.existsSync(a)||(delete e.store[r],n+=1,e.onPruned?.(r))}return n}async function N(e){let t=s(),n=l(e.target.storePath,{skipCache:!0}),r=structuredClone(n),o=new Set,c=new Set,d=new Set,f=e.fixMissing===!0?M({store:r,storePath:e.target.storePath,onPruned:e=>{d.add(e)}}):0,p=i(r,t.pruneAfterMs,{log:!1,onPruned:({key:e})=>{o.add(e)}}),m=u(r,t.maxEntries,{log:!1,onCapped:({key:e})=>{c.add(e)}}),h=structuredClone(r),g=await a({store:r,storePath:e.target.storePath,activeSessionKey:e.activeKey,maintenance:t,warnOnly:!1,dryRun:!0}),_=new Set;for(let e of Object.keys(h))Object.hasOwn(r,e)||_.add(e);let v=Object.keys(n).length,y=Object.keys(r).length,b=f>0||p>0||m>0||(g?.removedEntries??0)>0||(g?.removedFiles??0)>0;return{summary:{agentId:e.target.agentId,storePath:e.target.storePath,mode:e.mode,dryRun:e.dryRun,beforeCount:v,afterCount:y,missing:f,pruned:p,capped:m,diskBudget:g,wouldMutate:b},actionRows:j({beforeStore:n,staleKeys:o,cappedKeys:c,budgetEvictedKeys:_,missingKeys:d})}}function P(n){let r=t();if(n.showAgentHeader&&n.runtime.log(`Agent: ${n.summary.agentId}`),n.runtime.log(`Session store: ${n.summary.storePath}`),n.runtime.log(`Maintenance mode: ${n.summary.mode}`),n.runtime.log(`Entries: ${n.summary.beforeCount} -> ${n.summary.afterCount} (remove ${n.summary.beforeCount-n.summary.afterCount})`),n.runtime.log(`Would prune missing transcripts: ${n.summary.missing}`),n.runtime.log(`Would prune stale: ${n.summary.pruned}`),n.runtime.log(`Would cap overflow: ${n.summary.capped}`),n.summary.diskBudget&&n.runtime.log(`Would enforce disk budget: ${n.summary.diskBudget.totalBytesBefore} -> ${n.summary.diskBudget.totalBytesAfter} bytes (files ${n.summary.diskBudget.removedFiles}, entries ${n.summary.diskBudget.removedEntries})`),n.actionRows.length===0)return;n.runtime.log(``),n.runtime.log(`Planned session actions:`);let i=[`Action`.padEnd(12),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Flags`].join(` `);n.runtime.log(r?e.heading(i):i);for(let e of n.actionRows){let t=C(n.cfg,e,n.displayDefaults),i=[A(e.action,r),w(e.key,r),D(e.updatedAt,r),x(t,r),S(e,r)].join(` `);n.runtime.log(i.trimEnd())}}async function F(e,t){let n=c(),r=y(n),i=e.enforce?`enforce`:s().mode,a=b({cfg:n,opts:{store:e.store,agent:e.agent,allAgents:e.allAgents},runtime:t});if(!a)return;let u=[];for(let t of a){let n=await N({target:t,mode:i,dryRun:!!e.dryRun,activeKey:e.activeKey,fixMissing:!!e.fixMissing});u.push(n)}if(e.dryRun){if(e.json){if(u.length===1){t.log(JSON.stringify(u[0]?.summary??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!0,stores:u.map(e=>e.summary)},null,2));return}for(let e=0;e<u.length;e+=1){let i=u[e];e>0&&t.log(``),P({cfg:n,summary:i.summary,actionRows:i.actionRows,displayDefaults:r,runtime:t,showAgentHeader:u.length>1})}return}let d=[];for(let t of a){let n={current:null},r=await o(t.storePath,async n=>e.fixMissing?M({store:n,storePath:t.storePath}):0,{activeSessionKey:e.activeKey,maintenanceOverride:{mode:i},onMaintenanceApplied:e=>{n.current=e}}),a=l(t.storePath,{skipCache:!0}),s=u.find(e=>e.summary.storePath===t.storePath),c=n.current,f=c===null?{...s?.summary??{agentId:t.agentId,storePath:t.storePath,mode:i,dryRun:!1,beforeCount:0,afterCount:0,missing:0,pruned:0,capped:0,diskBudget:null,wouldMutate:!1},dryRun:!1,applied:!0,appliedCount:Object.keys(a).length}:{agentId:t.agentId,storePath:t.storePath,mode:c.mode,dryRun:!1,beforeCount:c.beforeCount,afterCount:c.afterCount,missing:r,pruned:c.pruned,capped:c.capped,diskBudget:c.diskBudget,wouldMutate:r>0||c.pruned>0||c.capped>0||(c.diskBudget?.removedEntries??0)>0||(c.diskBudget?.removedFiles??0)>0,applied:!0,appliedCount:Object.keys(a).length};d.push(f)}if(e.json){if(d.length===1){t.log(JSON.stringify(d[0]??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!1,stores:d},null,2));return}for(let e=0;e<d.length;e+=1){let n=d[e];e>0&&t.log(``),d.length>1&&t.log(`Agent: ${n.agentId}`),t.log(`Session store: ${n.storePath}`),t.log(`Applied maintenance. Current entries: ${n.appliedCount??0}`)}}function I(e){return!!(e.verbose||e.debug)}function L(e){let t=g(e);return e!==void 0&&t===void 0?(n.error(`--timeout must be a positive integer (milliseconds)`),n.exit(1),null):t}async function R(e,t){let i=I(e);r(i);let a=L(e.timeout);a!==null&&await m(n,async()=>{await t({verbose:i,timeoutMs:a})})}function z(t){t.command(`status`).description(`Show channel health and recent session recipients`).option(`--json`,`Output JSON instead of text`,!1).option(`--all`,`Full diagnosis (read-only, pasteable)`,!1).option(`--usage`,`Show model provider usage/quota snapshots`,!1).option(`--deep`,`Probe channels (WhatsApp Web + Telegram + Discord + Slack + Signal)`,!1).option(`--timeout <ms>`,`Probe timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw status`,`Show channel health + session summary.`],[`openclaw status --all`,`Full diagnosis (read-only).`],[`openclaw status --json`,`Machine-readable output.`],[`openclaw status --usage`,`Show model provider usage/quota snapshots.`],[`openclaw status --deep`,`Run channel probes (WA + Telegram + Discord + Slack + Signal).`],[`openclaw status --deep --timeout 5000`,`Tighten probe timeout.`]])}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/status`,`docs.openclaw.ai/cli/status`)}\n`).action(async e=>{await R(e,async({verbose:t,timeoutMs:r})=>{await _({json:!!e.json,all:!!e.all,deep:!!e.deep,usage:!!e.usage,timeoutMs:r,verbose:t},n)})}),t.command(`health`).description(`Fetch health from the running gateway`).option(`--json`,`Output JSON instead of text`,!1).option(`--timeout <ms>`,`Connection timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/health`,`docs.openclaw.ai/cli/health`)}\n`).action(async e=>{await R(e,async({verbose:t,timeoutMs:r})=>{await v({json:!!e.json,timeoutMs:r,verbose:t},n)})});let i=t.command(`sessions`).description(`List stored conversation sessions`).option(`--json`,`Output as JSON`,!1).option(`--verbose`,`Verbose logging`,!1).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to inspect (default: configured default agent)`).option(`--all-agents`,`Aggregate sessions across all configured agents`,!1).option(`--active <minutes>`,`Only show sessions updated within the past N minutes`).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw sessions`,`List all sessions.`],[`openclaw sessions --agent work`,`List sessions for one agent.`],[`openclaw sessions --all-agents`,`Aggregate sessions across agents.`],[`openclaw sessions --active 120`,`Only last 2 hours.`],[`openclaw sessions --json`,`Machine-readable output.`],[`openclaw sessions --store ./tmp/sessions.json`,`Use a specific session store.`]])}\n\n${e.muted(`Shows token usage per session when the agent reports it; set agents.defaults.contextTokens to cap the window and show %.`)}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${p(`/cli/sessions`,`docs.openclaw.ai/cli/sessions`)}\n`).action(async e=>{r(!!e.verbose),await E({json:!!e.json,store:e.store,agent:e.agent,allAgents:!!e.allAgents,active:e.active},n)});i.enablePositionalOptions(),i.command(`cleanup`).description(`Run session-store maintenance now`).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to maintain (default: configured default agent)`).option(`--all-agents`,`Run maintenance across all configured agents`,!1).option(`--dry-run`,`Preview maintenance actions without writing`,!1).option(`--enforce`,`Apply maintenance even when configured mode is warn`,!1).option(`--fix-missing`,`Remove store entries whose transcript files are missing (bypasses age/count retention)`,!1).option(`--active-key <key>`,`Protect this session key from budget-eviction`).option(`--json`,`Output JSON`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${h([[`openclaw sessions cleanup --dry-run`,`Preview stale/cap cleanup.`],[`openclaw sessions cleanup --dry-run --fix-missing`,`Also preview pruning entries with missing transcript files.`],[`openclaw sessions cleanup --enforce`,`Apply maintenance now.`],[`openclaw sessions cleanup --agent work --dry-run`,`Preview one agent store.`],[`openclaw sessions cleanup --all-agents --dry-run`,`Preview all agent stores.`],[`openclaw sessions cleanup --enforce --store ./tmp/sessions.json`,`Use a specific store.`]])}`).action(async(e,t)=>{let r=t.parent?.opts();await m(n,async()=>{await F({store:e.store??r?.store,agent:e.agent??r?.agent,allAgents:!!(e.allAgents||r?.allAgents),dryRun:!!e.dryRun,enforce:!!e.enforce,fixMissing:!!e.fixMissing,activeKey:e.activeKey,json:!!(e.json||r?.json)},n)})})}export{z as registerStatusHealthSessionsCommands};
@@ -1 +1 @@
1
- import"./paths-B4IRk3wi.js";import{A as e,k as t,p as n,w as r,y as i}from"./subsystem-C5XF2Fy5.js";import"./utils-UGOV_184.js";import{$n as a,Fr as o,Hn as s,Jn as c,Qn as l,Xn as u,Zn as d,h as f,qs as p}from"./model-selection-I1ctjFOB.js";import{D as m,P as h,tn as g}from"./reply-r9KtzgpM.js";import{f as _,r as v}from"./agent-scope-DXZc3eNT.js";import{E as y,c as b}from"./session-key-D3P0tf5P.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./send-YPQFx-fV.js";import"./send-Ds5sy22D.js";import{c as x,n as S,r as C}from"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./audio-transcription-runner-BJNP7vB8.js";import"./image-BJC11A7e.js";import"./models-config-CWIlroKT.js";import"./tool-display-DjuSUUbH.js";import"./fetch-guard-Cji70DJW.js";import"./api-key-rotation-DYYvcqSG.js";import"./local-roots-Dxioh0C2.js";import"./model-catalog-vNCcsy4h.js";import"./proxy-fetch-BADsUK4d.js";import"./tokens-XGbQGn67.js";import"./deliver-DHP2vHKB.js";import"./commands-CGpM84iR.js";import"./commands-registry-CxDVU5s9.js";import"./pairing-store-Bv4KSELv.js";import"./fetch-Dikjvc5M.js";import"./call-BA3O_Qpl.js";import"./with-timeout-WveKxvFV.js";import"./diagnostic-Bzd5vlKH.js";import"./send-D0y-r_hg2.js";import"./pi-model-discovery-6myCPEJE.js";import"./exec-approvals-allowlist-BKFaHvA5.js";import"./exec-safe-bin-runtime-policy-D2WexijZ.js";import"./ir-CZdZsdnI.js";import"./render-D8OWO2hT.js";import"./target-errors-DH0aw-m5.js";import"./read-only-account-inspect-DEnPVHTo.js";import"./channel-selection-oRONo9z3.js";import"./plugin-auto-enable-Cp7L8ko8.js";import"./send-CgeRzkWS.js";import"./outbound-attachment-aZWcoZ-N.js";import"./delivery-queue-CKbauSFq.js";import"./send-DIw8ExHc.js";import{n as ee}from"./format-relative-B9pSIdGe.js";import"./channel-activity-DHY5wAyl.js";import"./tables-h7y1Jhf4.js";import"./fetch-Bn0mWg6a.js";import"./skill-commands-O39uSj-k.js";import"./workspace-dirs-BhF1Dzxt.js";import"./pairing-token-CKX1ds78.js";import"./restart-CTfuVGfA.js";import"./runtime-web-tools-CCIXUISf.js";import"./command-secret-targets-BBTiqQKa.js";import"./session-cost-usage-BgqKixv0.js";import"./connection-auth-DZ-3Svr_.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import"./pairing-labels-ryOnuOFA.js";import"./memory-cli-DHvscp7X.js";import"./query-expansion-0OxEb1Io.js";import"./manager-BwrZfep3.js";import{t as w}from"./links-CySwdMcF.js";import{n as T}from"./cli-utils-BY7dLMFy.js";import{t as E}from"./help-format-BRbF_INg.js";import"./progress-LNttnI-y.js";import"./exec-approvals-BpBNEy6i.js";import"./nodes-screen-C7-5RrbN.js";import"./system-run-command-DCzdgYyb.js";import"./runtime-DLxfCs7F.js";import"./stagger-DmFYysrJ.js";import{n as D}from"./helpers-Cp8gcO6u.js";import"./skills-status-BWIugRCz.js";import"./dangerous-tools-oYCu5wfC.js";import"./skill-scanner-CUUF3Fvo.js";import"./issue-format-kj7FXHhi.js";import"./channels-status-issues-PRgOT90w.js";import"./systemd-D7odsu4K.js";import"./service-BtB9epJk.js";import"./probe-auth-9RrZOStc.js";import"./diagnostics-BgbeL9KE.js";import"./table-CY440fI1.js";import{t as O}from"./status-DKB9gdSp.js";import{r as k}from"./health-Cy_CvKbX.js";import"./channel-account-context-BMPAMZEv.js";import"./node-command-policy-DgkwfoCs.js";import"./audit-7DFnKINd.js";import"./node-service-BRfrNp8l.js";import"./status.update-Cf2e-l9d.js";import A from"node:fs";function j(e){let t=new Map;for(let n of e)t.has(n.storePath)||t.set(n.storePath,n);return[...t.values()]}function M(e,t){let n=_(e),r=!!t.agent?.trim(),i=t.allAgents===!0;if(r&&i)throw Error(`--agent and --all-agents cannot be used together`);if(t.store&&(r||i))throw Error(`--store cannot be combined with --agent or --all-agents`);if(t.store)return[{agentId:n,storePath:x(t.store,{agentId:n})}];if(i)return j(v(e).map(t=>({agentId:t,storePath:x(e.session?.store,{agentId:t})})));if(r){let n=v(e),r=b(t.agent??``);if(!n.includes(r))throw Error(`Unknown agent id "${t.agent}". Use "openclaw agents list" to see configured agents.`);return[{agentId:r,storePath:x(e.session?.store,{agentId:r})}]}return[{agentId:n,storePath:x(e.session?.store,{agentId:n})}]}function N(e){try{return M(e.cfg,e.opts)}catch(t){return e.runtime.error(t instanceof Error?t.message:String(t)),e.runtime.exit(1),null}}function P(e){return Object.entries(e).map(([e,t])=>{let n=t?.updatedAt??null;return{key:e,updatedAt:n,ageMs:n?Date.now()-n:null,sessionId:t?.sessionId,systemSent:t?.systemSent,abortedLastRun:t?.abortedLastRun,thinkingLevel:t?.thinkingLevel,verboseLevel:t?.verboseLevel,reasoningLevel:t?.reasoningLevel,elevatedLevel:t?.elevatedLevel,responseUsage:t?.responseUsage,groupActivation:t?.groupActivation,inputTokens:t?.inputTokens,outputTokens:t?.outputTokens,totalTokens:t?.totalTokens,totalTokensFresh:t?.totalTokensFresh,model:t?.model,modelProvider:t?.modelProvider,providerOverride:t?.providerOverride,modelOverride:t?.modelOverride,contextTokens:t?.contextTokens}}).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0))}function F(e){return{model:f({cfg:e,defaultProvider:`anthropic`,defaultModel:`claude-opus-4-6`}).model??`claude-opus-4-6`}}function I(e,t,n){return h(e,t,y(t.key)?.agentId).model??n.model}function L(e){return e.length<=26?e:`${e.slice(0,16)}...${e.slice(-6)}`}function R(t,n){let r=L(t).padEnd(26);return n?e.accent(r):r}function z(t,n){let r=(t?ee(Date.now()-t):`unknown`).padEnd(9);return n?e.muted(r):r}function B(t,n){let r=(t??`unknown`).padEnd(14);return n?e.info(r):r}function V(t,n){let r=[t.thinkingLevel?`think:${t.thinkingLevel}`:null,t.verboseLevel?`verbose:${t.verboseLevel}`:null,t.reasoningLevel?`reasoning:${t.reasoningLevel}`:null,t.elevatedLevel?`elev:${t.elevatedLevel}`:null,t.responseUsage?`usage:${t.responseUsage}`:null,t.groupActivation?`activation:${t.groupActivation}`:null,t.systemSent?`system`:null,t.abortedLastRun?`aborted`:null,t.sessionId?`id:${t.sessionId}`:null].filter(Boolean).join(` `);return r.length===0?``:n?e.muted(r):r}function H(e){return e.missingKeys.has(e.key)?`prune-missing`:e.staleKeys.has(e.key)?`prune-stale`:e.cappedKeys.has(e.key)?`cap-overflow`:e.budgetEvictedKeys.has(e.key)?`evict-budget`:`keep`}function U(t,n){let r=t.padEnd(12);return n?t===`keep`?e.muted(r):t===`prune-missing`?e.error(r):t===`prune-stale`?e.warn(r):t===`cap-overflow`?e.accentBright(r):e.error(r):r}function W(e){return P(e.beforeStore).map(t=>({...t,action:H({key:t.key,missingKeys:e.missingKeys,staleKeys:e.staleKeys,cappedKeys:e.cappedKeys,budgetEvictedKeys:e.budgetEvictedKeys})}))}function G(e){let t=C({storePath:e.storePath}),n=0;for(let[r,i]of Object.entries(e.store)){if(!i?.sessionId)continue;let a=S(i.sessionId,i,t);A.existsSync(a)||(delete e.store[r],n+=1,e.onPruned?.(r))}return n}async function K(e){let t=l(),n=s(e.target.storePath,{skipCache:!0}),r=structuredClone(n),i=new Set,o=new Set,c=new Set,f=e.fixMissing===!0?G({store:r,storePath:e.target.storePath,onPruned:e=>{c.add(e)}}):0,p=d(r,t.pruneAfterMs,{log:!1,onPruned:({key:e})=>{i.add(e)}}),m=u(r,t.maxEntries,{log:!1,onCapped:({key:e})=>{o.add(e)}}),h=structuredClone(r),g=await a({store:r,storePath:e.target.storePath,activeSessionKey:e.activeKey,maintenance:t,warnOnly:!1,dryRun:!0}),_=new Set;for(let e of Object.keys(h))Object.hasOwn(r,e)||_.add(e);let v=Object.keys(n).length,y=Object.keys(r).length,b=f>0||p>0||m>0||(g?.removedEntries??0)>0||(g?.removedFiles??0)>0;return{summary:{agentId:e.target.agentId,storePath:e.target.storePath,mode:e.mode,dryRun:e.dryRun,beforeCount:v,afterCount:y,missing:f,pruned:p,capped:m,diskBudget:g,wouldMutate:b},actionRows:W({beforeStore:n,staleKeys:i,cappedKeys:o,budgetEvictedKeys:_,missingKeys:c})}}function q(n){let r=t();if(n.showAgentHeader&&n.runtime.log(`Agent: ${n.summary.agentId}`),n.runtime.log(`Session store: ${n.summary.storePath}`),n.runtime.log(`Maintenance mode: ${n.summary.mode}`),n.runtime.log(`Entries: ${n.summary.beforeCount} -> ${n.summary.afterCount} (remove ${n.summary.beforeCount-n.summary.afterCount})`),n.runtime.log(`Would prune missing transcripts: ${n.summary.missing}`),n.runtime.log(`Would prune stale: ${n.summary.pruned}`),n.runtime.log(`Would cap overflow: ${n.summary.capped}`),n.summary.diskBudget&&n.runtime.log(`Would enforce disk budget: ${n.summary.diskBudget.totalBytesBefore} -> ${n.summary.diskBudget.totalBytesAfter} bytes (files ${n.summary.diskBudget.removedFiles}, entries ${n.summary.diskBudget.removedEntries})`),n.actionRows.length===0)return;n.runtime.log(``),n.runtime.log(`Planned session actions:`);let i=[`Action`.padEnd(12),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Flags`].join(` `);n.runtime.log(r?e.heading(i):i);for(let e of n.actionRows){let t=I(n.cfg,e,n.displayDefaults),i=[U(e.action,r),R(e.key,r),z(e.updatedAt,r),B(t,r),V(e,r)].join(` `);n.runtime.log(i.trimEnd())}}async function J(e,t){let n=p(),r=F(n),i=e.enforce?`enforce`:l().mode,a=N({cfg:n,opts:{store:e.store,agent:e.agent,allAgents:e.allAgents},runtime:t});if(!a)return;let o=[];for(let t of a){let n=await K({target:t,mode:i,dryRun:!!e.dryRun,activeKey:e.activeKey,fixMissing:!!e.fixMissing});o.push(n)}if(e.dryRun){if(e.json){if(o.length===1){t.log(JSON.stringify(o[0]?.summary??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!0,stores:o.map(e=>e.summary)},null,2));return}for(let e=0;e<o.length;e+=1){let i=o[e];e>0&&t.log(``),q({cfg:n,summary:i.summary,actionRows:i.actionRows,displayDefaults:r,runtime:t,showAgentHeader:o.length>1})}return}let u=[];for(let t of a){let n={current:null},r=await c(t.storePath,async n=>e.fixMissing?G({store:n,storePath:t.storePath}):0,{activeSessionKey:e.activeKey,maintenanceOverride:{mode:i},onMaintenanceApplied:e=>{n.current=e}}),a=s(t.storePath,{skipCache:!0}),l=o.find(e=>e.summary.storePath===t.storePath),d=n.current,f=d===null?{...l?.summary??{agentId:t.agentId,storePath:t.storePath,mode:i,dryRun:!1,beforeCount:0,afterCount:0,missing:0,pruned:0,capped:0,diskBudget:null,wouldMutate:!1},dryRun:!1,applied:!0,appliedCount:Object.keys(a).length}:{agentId:t.agentId,storePath:t.storePath,mode:d.mode,dryRun:!1,beforeCount:d.beforeCount,afterCount:d.afterCount,missing:r,pruned:d.pruned,capped:d.capped,diskBudget:d.diskBudget,wouldMutate:r>0||d.pruned>0||d.capped>0||(d.diskBudget?.removedEntries??0)>0||(d.diskBudget?.removedFiles??0)>0,applied:!0,appliedCount:Object.keys(a).length};u.push(f)}if(e.json){if(u.length===1){t.log(JSON.stringify(u[0]??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!1,stores:u},null,2));return}for(let e=0;e<u.length;e+=1){let n=u[e];e>0&&t.log(``),u.length>1&&t.log(`Agent: ${n.agentId}`),t.log(`Session store: ${n.storePath}`),t.log(`Applied maintenance. Current entries: ${n.appliedCount??0}`)}}const Y=e=>`${(e/1e3).toFixed(e>=1e4?0:1)}k`,X=(t,n,r)=>!r||n===null?t:n>=95?e.error(t):n>=80?e.warn(t):n>=60?e.success(t):e.muted(t),Z=(t,n,r)=>{if(t===void 0){let t=`unknown/${n?Y(n):`?`} (?%)`;return r?e.muted(t.padEnd(20)):t.padEnd(20)}let i=Y(t),a=n?Y(n):`?`,o=n?Math.min(999,Math.round(t/n*100)):null;return X(`${i}/${a} (${o??`?`}%)`.padEnd(20),o,r)},Q=(t,n)=>{let r=t.padEnd(6);return n?t===`group`?e.accentBright(r):t===`global`?e.warn(r):t===`direct`?e.accent(r):e.muted(r):r};async function te(n,r){let a=n.allAgents===!0,c=p(),l=F(c),u=c.agents?.defaults?.contextTokens??g(l.model)??2e5,d=N({cfg:c,opts:{store:n.store,agent:n.agent,allAgents:n.allAgents},runtime:r});if(!d)return;let f;if(n.active!==void 0){let e=Number.parseInt(String(n.active),10);if(Number.isNaN(e)||e<=0){r.error(`--active must be a positive integer (minutes)`),r.exit(1);return}f=e}let h=d.flatMap(e=>{let t=s(e.storePath);return P(t).map(n=>({...n,agentId:y(n.key)?.agentId??e.agentId,kind:m(n.key,t[n.key])}))}).filter(e=>f===void 0?!0:e.updatedAt?Date.now()-e.updatedAt<=f*6e4:!1).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0));if(n.json){let e=d.length>1,t=a||e;r.log(JSON.stringify({path:t?null:d[0]?.storePath??null,stores:t?d.map(e=>({agentId:e.agentId,path:e.storePath})):void 0,allAgents:a?!0:void 0,count:h.length,activeMinutes:f??null,sessions:h.map(e=>{let t=I(c,e,l);return{...e,totalTokens:o(e)??null,totalTokensFresh:typeof e.totalTokens==`number`?e.totalTokensFresh!==!1:!1,contextTokens:e.contextTokens??g(t)??u??null,model:t}})},null,2));return}if(d.length===1&&!a?r.log(i(`Session store: ${d[0]?.storePath}`)):r.log(i(`Session stores: ${d.length} (${d.map(e=>e.agentId).join(`, `)})`)),r.log(i(`Sessions listed: ${h.length}`)),f&&r.log(i(`Filtered to last ${f} minute(s)`)),h.length===0){r.log(`No sessions found.`);return}let _=t(),v=a||d.length>1,b=[...v?[`Agent`.padEnd(10)]:[],`Kind`.padEnd(6),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Tokens (ctx %)`.padEnd(20),`Flags`].join(` `);r.log(_?e.heading(b):b);for(let t of h){let n=I(c,t,l),i=t.contextTokens??g(n)??u,a=o(t),s=[...v?[_?e.accentBright(t.agentId.padEnd(10)):t.agentId.padEnd(10)]:[],Q(t.kind,_),R(t.key,_),z(t.updatedAt,_),B(n,_),Z(a,i??null,_),V(t,_)].join(` `);r.log(s.trimEnd())}}function ne(e){return!!(e.verbose||e.debug)}function re(e){let t=D(e);return e!==void 0&&t===void 0?(n.error(`--timeout must be a positive integer (milliseconds)`),n.exit(1),null):t}async function $(e,t){let i=ne(e);r(i);let a=re(e.timeout);a!==null&&await T(n,async()=>{await t({verbose:i,timeoutMs:a})})}function ie(t){t.command(`status`).description(`Show channel health and recent session recipients`).option(`--json`,`Output JSON instead of text`,!1).option(`--all`,`Full diagnosis (read-only, pasteable)`,!1).option(`--usage`,`Show model provider usage/quota snapshots`,!1).option(`--deep`,`Probe channels (WhatsApp Web + Telegram + Discord + Slack + Signal)`,!1).option(`--timeout <ms>`,`Probe timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw status`,`Show channel health + session summary.`],[`openclaw status --all`,`Full diagnosis (read-only).`],[`openclaw status --json`,`Machine-readable output.`],[`openclaw status --usage`,`Show model provider usage/quota snapshots.`],[`openclaw status --deep`,`Run channel probes (WA + Telegram + Discord + Slack + Signal).`],[`openclaw status --deep --timeout 5000`,`Tighten probe timeout.`]])}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/status`,`docs.openclaw.ai/cli/status`)}\n`).action(async e=>{await $(e,async({verbose:t,timeoutMs:r})=>{await O({json:!!e.json,all:!!e.all,deep:!!e.deep,usage:!!e.usage,timeoutMs:r,verbose:t},n)})}),t.command(`health`).description(`Fetch health from the running gateway`).option(`--json`,`Output JSON instead of text`,!1).option(`--timeout <ms>`,`Connection timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/health`,`docs.openclaw.ai/cli/health`)}\n`).action(async e=>{await $(e,async({verbose:t,timeoutMs:r})=>{await k({json:!!e.json,timeoutMs:r,verbose:t},n)})});let i=t.command(`sessions`).description(`List stored conversation sessions`).option(`--json`,`Output as JSON`,!1).option(`--verbose`,`Verbose logging`,!1).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to inspect (default: configured default agent)`).option(`--all-agents`,`Aggregate sessions across all configured agents`,!1).option(`--active <minutes>`,`Only show sessions updated within the past N minutes`).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw sessions`,`List all sessions.`],[`openclaw sessions --agent work`,`List sessions for one agent.`],[`openclaw sessions --all-agents`,`Aggregate sessions across agents.`],[`openclaw sessions --active 120`,`Only last 2 hours.`],[`openclaw sessions --json`,`Machine-readable output.`],[`openclaw sessions --store ./tmp/sessions.json`,`Use a specific session store.`]])}\n\n${e.muted(`Shows token usage per session when the agent reports it; set agents.defaults.contextTokens to cap the window and show %.`)}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/sessions`,`docs.openclaw.ai/cli/sessions`)}\n`).action(async e=>{r(!!e.verbose),await te({json:!!e.json,store:e.store,agent:e.agent,allAgents:!!e.allAgents,active:e.active},n)});i.enablePositionalOptions(),i.command(`cleanup`).description(`Run session-store maintenance now`).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to maintain (default: configured default agent)`).option(`--all-agents`,`Run maintenance across all configured agents`,!1).option(`--dry-run`,`Preview maintenance actions without writing`,!1).option(`--enforce`,`Apply maintenance even when configured mode is warn`,!1).option(`--fix-missing`,`Remove store entries whose transcript files are missing (bypasses age/count retention)`,!1).option(`--active-key <key>`,`Protect this session key from budget-eviction`).option(`--json`,`Output JSON`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw sessions cleanup --dry-run`,`Preview stale/cap cleanup.`],[`openclaw sessions cleanup --dry-run --fix-missing`,`Also preview pruning entries with missing transcript files.`],[`openclaw sessions cleanup --enforce`,`Apply maintenance now.`],[`openclaw sessions cleanup --agent work --dry-run`,`Preview one agent store.`],[`openclaw sessions cleanup --all-agents --dry-run`,`Preview all agent stores.`],[`openclaw sessions cleanup --enforce --store ./tmp/sessions.json`,`Use a specific store.`]])}`).action(async(e,t)=>{let r=t.parent?.opts();await T(n,async()=>{await J({store:e.store??r?.store,agent:e.agent??r?.agent,allAgents:!!(e.allAgents||r?.allAgents),dryRun:!!e.dryRun,enforce:!!e.enforce,fixMissing:!!e.fixMissing,activeKey:e.activeKey,json:!!(e.json||r?.json)},n)})})}export{ie as registerStatusHealthSessionsCommands};
1
+ import"./paths-B4IRk3wi.js";import{A as e,k as t,p as n,w as r,y as i}from"./subsystem-C5XF2Fy5.js";import"./utils-UGOV_184.js";import{$n as a,Fr as o,Hn as s,Jn as c,Qn as l,Xn as u,Zn as d,h as f,qs as p}from"./model-selection-I1ctjFOB.js";import{D as m,P as h,tn as g}from"./reply-r9KtzgpM.js";import{f as _,r as v}from"./agent-scope-DXZc3eNT.js";import{E as y,c as b}from"./session-key-D3P0tf5P.js";import"./openclaw-root-D_0Q6--h.js";import"./github-copilot-token-DGYAlOmV.js";import"./boolean-Ch3DfXPy.js";import"./env-D7wNuBx1.js";import"./env-overrides-DXJbFrwI.js";import"./registry-hFAtCSWG.js";import"./skills-DHbOKEGc.js";import"./frontmatter-BkZkwkVO.js";import"./plugins-CYLrFT4h.js";import"./logger-Bl8URnrW.js";import"./exec-DHqLtFYt.js";import"./windows-spawn-AB7ItGAE.js";import"./redact-3_CiXMY6.js";import"./path-alias-guards-mvyLCPlN.js";import"./errors-Bunti32V.js";import"./send-YPQFx-fV.js";import"./send-Ds5sy22D.js";import{c as x,n as S,r as C}from"./paths-yLEk_25I.js";import"./chat-envelope-HVpKusFc.js";import"./audio-transcription-runner-BJNP7vB8.js";import"./image-BJC11A7e.js";import"./models-config-CWIlroKT.js";import"./tool-display-DjuSUUbH.js";import"./fetch-guard-Cji70DJW.js";import"./api-key-rotation-DYYvcqSG.js";import"./local-roots-Dxioh0C2.js";import"./model-catalog-vNCcsy4h.js";import"./proxy-fetch-BADsUK4d.js";import"./tokens-XGbQGn67.js";import"./deliver-DHP2vHKB.js";import"./commands-CGpM84iR.js";import"./commands-registry-CxDVU5s9.js";import"./pairing-store-Bv4KSELv.js";import"./fetch-Dikjvc5M.js";import"./call-BA3O_Qpl.js";import"./with-timeout-WveKxvFV.js";import"./diagnostic-Bzd5vlKH.js";import"./send-D0y-r_hg2.js";import"./pi-model-discovery-6myCPEJE.js";import"./exec-approvals-allowlist-BKFaHvA5.js";import"./exec-safe-bin-runtime-policy-D2WexijZ.js";import"./ir-CZdZsdnI.js";import"./render-D8OWO2hT.js";import"./target-errors-DH0aw-m5.js";import"./read-only-account-inspect-DEnPVHTo.js";import"./channel-selection-oRONo9z3.js";import"./plugin-auto-enable-Cp7L8ko8.js";import"./send-CgeRzkWS.js";import"./outbound-attachment-aZWcoZ-N.js";import"./delivery-queue-CKbauSFq.js";import"./send-DIw8ExHc.js";import{n as ee}from"./format-relative-B9pSIdGe.js";import"./channel-activity-DHY5wAyl.js";import"./tables-h7y1Jhf4.js";import"./fetch-Bn0mWg6a.js";import"./skill-commands-O39uSj-k.js";import"./workspace-dirs-BhF1Dzxt.js";import"./pairing-token-CKX1ds78.js";import"./restart-CTfuVGfA.js";import"./runtime-web-tools-CCIXUISf.js";import"./command-secret-targets-BBTiqQKa.js";import"./session-cost-usage-BgqKixv0.js";import"./connection-auth-DZ-3Svr_.js";import"./onboard-helpers-CGJLUoxR.js";import"./prompt-style-CXKekIBY.js";import"./pairing-labels-ryOnuOFA.js";import"./memory-cli-DHvscp7X.js";import"./query-expansion-0OxEb1Io.js";import"./manager-BwrZfep3.js";import{t as w}from"./links-CySwdMcF.js";import{n as T}from"./cli-utils-BY7dLMFy.js";import{t as E}from"./help-format-BRbF_INg.js";import"./progress-LNttnI-y.js";import"./exec-approvals-BpBNEy6i.js";import"./nodes-screen-C7-5RrbN.js";import"./system-run-command-DCzdgYyb.js";import"./runtime-DLxfCs7F.js";import"./stagger-DmFYysrJ.js";import{n as D}from"./helpers-Cp8gcO6u.js";import"./skills-status-BWIugRCz.js";import"./dangerous-tools-oYCu5wfC.js";import"./skill-scanner-CUUF3Fvo.js";import"./issue-format-kj7FXHhi.js";import"./channels-status-issues-PRgOT90w.js";import"./systemd-D7odsu4K.js";import"./service-BtB9epJk.js";import"./probe-auth-9RrZOStc.js";import"./diagnostics-BgbeL9KE.js";import"./table-CY440fI1.js";import{t as O}from"./status-DKB9gdSp.js";import{r as k}from"./health-Cy_CvKbX.js";import"./channel-account-context-BMPAMZEv.js";import"./node-command-policy-DgkwfoCs.js";import"./audit-7DFnKINd.js";import"./node-service-BRfrNp8l.js";import"./status.update-Cf2e-l9d.js";import A from"node:fs";function j(e){let t=new Map;for(let n of e)t.has(n.storePath)||t.set(n.storePath,n);return[...t.values()]}function M(e,t){let n=_(e),r=!!t.agent?.trim(),i=t.allAgents===!0;if(r&&i)throw Error(`--agent and --all-agents cannot be used together`);if(t.store&&(r||i))throw Error(`--store cannot be combined with --agent or --all-agents`);if(t.store)return[{agentId:n,storePath:x(t.store,{agentId:n})}];if(i)return j(v(e).map(t=>({agentId:t,storePath:x(e.session?.store,{agentId:t})})));if(r){let n=v(e),r=b(t.agent??``);if(!n.includes(r))throw Error(`Unknown agent id "${t.agent}". Use "openclaw agents list" to see configured agents.`);return[{agentId:r,storePath:x(e.session?.store,{agentId:r})}]}return[{agentId:n,storePath:x(e.session?.store,{agentId:n})}]}function N(e){try{return M(e.cfg,e.opts)}catch(t){return e.runtime.error(t instanceof Error?t.message:String(t)),e.runtime.exit(1),null}}function P(e){return Object.entries(e).map(([e,t])=>{let n=t?.updatedAt??null;return{key:e,updatedAt:n,ageMs:n?Date.now()-n:null,sessionId:t?.sessionId,systemSent:t?.systemSent,abortedLastRun:t?.abortedLastRun,thinkingLevel:t?.thinkingLevel,verboseLevel:t?.verboseLevel,reasoningLevel:t?.reasoningLevel,elevatedLevel:t?.elevatedLevel,responseUsage:t?.responseUsage,groupActivation:t?.groupActivation,inputTokens:t?.inputTokens,outputTokens:t?.outputTokens,totalTokens:t?.totalTokens,totalTokensFresh:t?.totalTokensFresh,model:t?.model,modelProvider:t?.modelProvider,providerOverride:t?.providerOverride,modelOverride:t?.modelOverride,contextTokens:t?.contextTokens}}).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0))}function F(e){return{model:f({cfg:e,defaultProvider:`anthropic`,defaultModel:`claude-opus-4-6`}).model??`claude-opus-4-6`}}function I(e,t,n){return h(e,t,y(t.key)?.agentId).model??n.model}function L(e){return e.length<=26?e:`${e.slice(0,16)}...${e.slice(-6)}`}function R(t,n){let r=L(t).padEnd(26);return n?e.accent(r):r}function z(t,n){let r=(t?ee(Date.now()-t):`unknown`).padEnd(9);return n?e.muted(r):r}function B(t,n){let r=(t??`unknown`).padEnd(14);return n?e.info(r):r}function V(t,n){let r=[t.thinkingLevel?`think:${t.thinkingLevel}`:null,t.verboseLevel?`verbose:${t.verboseLevel}`:null,t.reasoningLevel?`reasoning:${t.reasoningLevel}`:null,t.elevatedLevel?`elev:${t.elevatedLevel}`:null,t.responseUsage?`usage:${t.responseUsage}`:null,t.groupActivation?`activation:${t.groupActivation}`:null,t.systemSent?`system`:null,t.abortedLastRun?`aborted`:null,t.sessionId?`id:${t.sessionId}`:null].filter(Boolean).join(` `);return r.length===0?``:n?e.muted(r):r}function H(e){return e.missingKeys.has(e.key)?`prune-missing`:e.staleKeys.has(e.key)?`prune-stale`:e.cappedKeys.has(e.key)?`cap-overflow`:e.budgetEvictedKeys.has(e.key)?`evict-budget`:`keep`}function U(t,n){let r=t.padEnd(12);return n?t===`keep`?e.muted(r):t===`prune-missing`?e.error(r):t===`prune-stale`?e.warn(r):t===`cap-overflow`?e.accentBright(r):e.error(r):r}function W(e){return P(e.beforeStore).map(t=>({...t,action:H({key:t.key,missingKeys:e.missingKeys,staleKeys:e.staleKeys,cappedKeys:e.cappedKeys,budgetEvictedKeys:e.budgetEvictedKeys})}))}function G(e){let t=C({storePath:e.storePath}),n=0;for(let[r,i]of Object.entries(e.store)){if(!i?.sessionId)continue;let a=S(i.sessionId,i,t);A.existsSync(a)||(delete e.store[r],n+=1,e.onPruned?.(r))}return n}async function K(e){let t=l(),n=s(e.target.storePath,{skipCache:!0}),r=structuredClone(n),i=new Set,o=new Set,c=new Set,f=e.fixMissing===!0?G({store:r,storePath:e.target.storePath,onPruned:e=>{c.add(e)}}):0,p=d(r,t.pruneAfterMs,{log:!1,onPruned:({key:e})=>{i.add(e)}}),m=u(r,t.maxEntries,{log:!1,onCapped:({key:e})=>{o.add(e)}}),h=structuredClone(r),g=await a({store:r,storePath:e.target.storePath,activeSessionKey:e.activeKey,maintenance:t,warnOnly:!1,dryRun:!0}),_=new Set;for(let e of Object.keys(h))Object.hasOwn(r,e)||_.add(e);let v=Object.keys(n).length,y=Object.keys(r).length,b=f>0||p>0||m>0||(g?.removedEntries??0)>0||(g?.removedFiles??0)>0;return{summary:{agentId:e.target.agentId,storePath:e.target.storePath,mode:e.mode,dryRun:e.dryRun,beforeCount:v,afterCount:y,missing:f,pruned:p,capped:m,diskBudget:g,wouldMutate:b},actionRows:W({beforeStore:n,staleKeys:i,cappedKeys:o,budgetEvictedKeys:_,missingKeys:c})}}function q(n){let r=t();if(n.showAgentHeader&&n.runtime.log(`Agent: ${n.summary.agentId}`),n.runtime.log(`Session store: ${n.summary.storePath}`),n.runtime.log(`Maintenance mode: ${n.summary.mode}`),n.runtime.log(`Entries: ${n.summary.beforeCount} -> ${n.summary.afterCount} (remove ${n.summary.beforeCount-n.summary.afterCount})`),n.runtime.log(`Would prune missing transcripts: ${n.summary.missing}`),n.runtime.log(`Would prune stale: ${n.summary.pruned}`),n.runtime.log(`Would cap overflow: ${n.summary.capped}`),n.summary.diskBudget&&n.runtime.log(`Would enforce disk budget: ${n.summary.diskBudget.totalBytesBefore} -> ${n.summary.diskBudget.totalBytesAfter} bytes (files ${n.summary.diskBudget.removedFiles}, entries ${n.summary.diskBudget.removedEntries})`),n.actionRows.length===0)return;n.runtime.log(``),n.runtime.log(`Planned session actions:`);let i=[`Action`.padEnd(12),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Flags`].join(` `);n.runtime.log(r?e.heading(i):i);for(let e of n.actionRows){let t=I(n.cfg,e,n.displayDefaults),i=[U(e.action,r),R(e.key,r),z(e.updatedAt,r),B(t,r),V(e,r)].join(` `);n.runtime.log(i.trimEnd())}}async function J(e,t){let n=p(),r=F(n),i=e.enforce?`enforce`:l().mode,a=N({cfg:n,opts:{store:e.store,agent:e.agent,allAgents:e.allAgents},runtime:t});if(!a)return;let o=[];for(let t of a){let n=await K({target:t,mode:i,dryRun:!!e.dryRun,activeKey:e.activeKey,fixMissing:!!e.fixMissing});o.push(n)}if(e.dryRun){if(e.json){if(o.length===1){t.log(JSON.stringify(o[0]?.summary??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!0,stores:o.map(e=>e.summary)},null,2));return}for(let e=0;e<o.length;e+=1){let i=o[e];e>0&&t.log(``),q({cfg:n,summary:i.summary,actionRows:i.actionRows,displayDefaults:r,runtime:t,showAgentHeader:o.length>1})}return}let u=[];for(let t of a){let n={current:null},r=await c(t.storePath,async n=>e.fixMissing?G({store:n,storePath:t.storePath}):0,{activeSessionKey:e.activeKey,maintenanceOverride:{mode:i},onMaintenanceApplied:e=>{n.current=e}}),a=s(t.storePath,{skipCache:!0}),l=o.find(e=>e.summary.storePath===t.storePath),d=n.current,f=d===null?{...l?.summary??{agentId:t.agentId,storePath:t.storePath,mode:i,dryRun:!1,beforeCount:0,afterCount:0,missing:0,pruned:0,capped:0,diskBudget:null,wouldMutate:!1},dryRun:!1,applied:!0,appliedCount:Object.keys(a).length}:{agentId:t.agentId,storePath:t.storePath,mode:d.mode,dryRun:!1,beforeCount:d.beforeCount,afterCount:d.afterCount,missing:r,pruned:d.pruned,capped:d.capped,diskBudget:d.diskBudget,wouldMutate:r>0||d.pruned>0||d.capped>0||(d.diskBudget?.removedEntries??0)>0||(d.diskBudget?.removedFiles??0)>0,applied:!0,appliedCount:Object.keys(a).length};u.push(f)}if(e.json){if(u.length===1){t.log(JSON.stringify(u[0]??{},null,2));return}t.log(JSON.stringify({allAgents:!0,mode:i,dryRun:!1,stores:u},null,2));return}for(let e=0;e<u.length;e+=1){let n=u[e];e>0&&t.log(``),u.length>1&&t.log(`Agent: ${n.agentId}`),t.log(`Session store: ${n.storePath}`),t.log(`Applied maintenance. Current entries: ${n.appliedCount??0}`)}}const Y=e=>`${(e/1e3).toFixed(e>=1e4?0:1)}k`,X=(t,n,r)=>!r||n===null?t:n>=95?e.error(t):n>=80?e.warn(t):n>=60?e.success(t):e.muted(t),Z=(t,n,r)=>{if(t===void 0){let t=`unknown/${n?Y(n):`?`} (?%)`;return r?e.muted(t.padEnd(20)):t.padEnd(20)}let i=Y(t),a=n?Y(n):`?`,o=n?Math.min(999,Math.round(t/n*100)):null;return X(`${i}/${a} (${o??`?`}%)`.padEnd(20),o,r)},Q=(t,n)=>{let r=t.padEnd(6);return n?t===`group`?e.accentBright(r):t===`global`?e.warn(r):t===`direct`?e.accent(r):e.muted(r):r};async function te(n,r){let a=n.allAgents===!0,c=p(),l=F(c),u=c.agents?.defaults?.contextTokens??g(l.model)??2e5,d=N({cfg:c,opts:{store:n.store,agent:n.agent,allAgents:n.allAgents},runtime:r});if(!d)return;let f;if(n.active!==void 0){let e=Number.parseInt(String(n.active),10);if(Number.isNaN(e)||e<=0){r.error(`--active must be a positive integer (minutes)`),r.exit(1);return}f=e}let h=d.flatMap(e=>{let t=s(e.storePath);return P(t).map(n=>({...n,agentId:y(n.key)?.agentId??e.agentId,kind:m(n.key,t[n.key])}))}).filter(e=>f===void 0?!0:e.updatedAt?Date.now()-e.updatedAt<=f*6e4:!1).toSorted((e,t)=>(t.updatedAt??0)-(e.updatedAt??0));if(n.json){let e=d.length>1,t=a||e;r.log(JSON.stringify({path:t?null:d[0]?.storePath??null,stores:t?d.map(e=>({agentId:e.agentId,path:e.storePath})):void 0,allAgents:a?!0:void 0,count:h.length,activeMinutes:f??null,sessions:h.map(e=>{let t=I(c,e,l);return{...e,totalTokens:o(e)??null,totalTokensFresh:typeof e.totalTokens==`number`?e.totalTokensFresh!==!1:!1,contextTokens:e.contextTokens??g(t)??u??null,model:t}})},null,2));return}if(d.length===1&&!a?r.log(i(`Session store: ${d[0]?.storePath}`)):r.log(i(`Session stores: ${d.length} (${d.map(e=>e.agentId).join(`, `)})`)),r.log(i(`Sessions listed: ${h.length}`)),f&&r.log(i(`Filtered to last ${f} minute(s)`)),h.length===0){r.log(`No sessions found.`);return}let _=t(),v=a||d.length>1,b=[...v?[`Agent`.padEnd(10)]:[],`Kind`.padEnd(6),`Key`.padEnd(26),`Age`.padEnd(9),`Model`.padEnd(14),`Tokens (ctx %)`.padEnd(20),`Flags`].join(` `);r.log(_?e.heading(b):b);for(let t of h){let n=I(c,t,l),i=t.contextTokens??g(n)??u,a=o(t),s=[...v?[_?e.accentBright(t.agentId.padEnd(10)):t.agentId.padEnd(10)]:[],Q(t.kind,_),R(t.key,_),z(t.updatedAt,_),B(n,_),Z(a,i??null,_),V(t,_)].join(` `);r.log(s.trimEnd())}}function ne(e){return!!(e.verbose||e.debug)}function re(e){let t=D(e);return e!==void 0&&t===void 0?(n.error(`--timeout must be a positive integer (milliseconds)`),n.exit(1),null):t}async function $(e,t){let i=ne(e);r(i);let a=re(e.timeout);a!==null&&await T(n,async()=>{await t({verbose:i,timeoutMs:a})})}function ie(t){t.command(`status`).description(`Show channel health and recent session recipients`).option(`--json`,`Output JSON instead of text`,!1).option(`--all`,`Full diagnosis (read-only, pasteable)`,!1).option(`--usage`,`Show model provider usage/quota snapshots`,!1).option(`--deep`,`Probe channels (WhatsApp Web + Telegram + Discord + Slack + Signal)`,!1).option(`--timeout <ms>`,`Probe timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw status`,`Show channel health + session summary.`],[`openclaw status --all`,`Full diagnosis (read-only).`],[`openclaw status --json`,`Machine-readable output.`],[`openclaw status --usage`,`Show model provider usage/quota snapshots.`],[`openclaw status --deep`,`Run channel probes (WA + Telegram + Discord + Slack + Signal).`],[`openclaw status --deep --timeout 5000`,`Tighten probe timeout.`]])}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/status`,`docs.openclaw.ai/cli/status`)}\n`).action(async e=>{await $(e,async({verbose:t,timeoutMs:r})=>{await O({json:!!e.json,all:!!e.all,deep:!!e.deep,usage:!!e.usage,timeoutMs:r,verbose:t},n)})}),t.command(`health`).description(`Fetch health from the running gateway`).option(`--json`,`Output JSON instead of text`,!1).option(`--timeout <ms>`,`Connection timeout in milliseconds`,`10000`).option(`--verbose`,`Verbose logging`,!1).option(`--debug`,`Alias for --verbose`,!1).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/health`,`docs.openclaw.ai/cli/health`)}\n`).action(async e=>{await $(e,async({verbose:t,timeoutMs:r})=>{await k({json:!!e.json,timeoutMs:r,verbose:t},n)})});let i=t.command(`sessions`).description(`List stored conversation sessions`).option(`--json`,`Output as JSON`,!1).option(`--verbose`,`Verbose logging`,!1).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to inspect (default: configured default agent)`).option(`--all-agents`,`Aggregate sessions across all configured agents`,!1).option(`--active <minutes>`,`Only show sessions updated within the past N minutes`).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw sessions`,`List all sessions.`],[`openclaw sessions --agent work`,`List sessions for one agent.`],[`openclaw sessions --all-agents`,`Aggregate sessions across agents.`],[`openclaw sessions --active 120`,`Only last 2 hours.`],[`openclaw sessions --json`,`Machine-readable output.`],[`openclaw sessions --store ./tmp/sessions.json`,`Use a specific session store.`]])}\n\n${e.muted(`Shows token usage per session when the agent reports it; set agents.defaults.contextTokens to cap the window and show %.`)}`).addHelpText(`after`,()=>`\n${e.muted(`Docs:`)} ${w(`/cli/sessions`,`docs.openclaw.ai/cli/sessions`)}\n`).action(async e=>{r(!!e.verbose),await te({json:!!e.json,store:e.store,agent:e.agent,allAgents:!!e.allAgents,active:e.active},n)});i.enablePositionalOptions(),i.command(`cleanup`).description(`Run session-store maintenance now`).option(`--store <path>`,`Path to session store (default: resolved from config)`).option(`--agent <id>`,`Agent id to maintain (default: configured default agent)`).option(`--all-agents`,`Run maintenance across all configured agents`,!1).option(`--dry-run`,`Preview maintenance actions without writing`,!1).option(`--enforce`,`Apply maintenance even when configured mode is warn`,!1).option(`--fix-missing`,`Remove store entries whose transcript files are missing (bypasses age/count retention)`,!1).option(`--active-key <key>`,`Protect this session key from budget-eviction`).option(`--json`,`Output JSON`,!1).addHelpText(`after`,()=>`\n${e.heading(`Examples:`)}\n${E([[`openclaw sessions cleanup --dry-run`,`Preview stale/cap cleanup.`],[`openclaw sessions cleanup --dry-run --fix-missing`,`Also preview pruning entries with missing transcript files.`],[`openclaw sessions cleanup --enforce`,`Apply maintenance now.`],[`openclaw sessions cleanup --agent work --dry-run`,`Preview one agent store.`],[`openclaw sessions cleanup --all-agents --dry-run`,`Preview all agent stores.`],[`openclaw sessions cleanup --enforce --store ./tmp/sessions.json`,`Use a specific store.`]])}`).action(async(e,t)=>{let r=t.parent?.opts();await T(n,async()=>{await J({store:e.store??r?.store,agent:e.agent??r?.agent,allAgents:!!(e.allAgents||r?.allAgents),dryRun:!!e.dryRun,enforce:!!e.enforce,fixMissing:!!e.fixMissing,activeKey:e.activeKey,json:!!(e.json||r?.json)},n)})})}export{ie as registerStatusHealthSessionsCommands};
@@ -1 +1 @@
1
- import{t as e}from"./rolldown-runtime-CNxR59P3.js";import{J as t,U as n,Z as r}from"./subsystem-BLbY429l.js";import{i}from"./entry.js";import{r as a}from"./helpers-COz1ghcB.js";async function o(e,t){let r=t.at(-1),i=(r?.parent??e).rawArgs,o=a(r),s=r?.name()?[r.name(),...o]:o,c=n({programName:e.name(),rawArgs:i,fallbackArgv:s});await e.parseAsync(c)}function s(e,t){let n=e.commands,r=n.indexOf(t);return r<0?!1:(n.splice(r,1),!0)}function c(e,t){let n=e.commands.find(e=>e.name()===t);return n?s(e,n):!1}var l=e({getSubCliCommandsWithSubcommands:()=>h,getSubCliEntries:()=>m,loadValidatedConfigForPluginRegistration:()=>f,registerSubCliByName:()=>g,registerSubCliCommands:()=>v});const u=e=>!(i(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS)||r(e)),d=e=>i(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS),f=async()=>{let e=await import(`./auth-profiles-BhXA8Jy2.js`).then(e=>e.wo);return(await e.readConfigFileSnapshot()).valid?e.loadConfig():null},p=[{name:`acp`,description:`Agent Control Protocol tools`,hasSubcommands:!0,register:async e=>{(await import(`./acp-cli-01SGjPGi.js`)).registerAcpCli(e)}},{name:`gateway`,description:`Run, inspect, and query the WebSocket Gateway`,hasSubcommands:!0,register:async e=>{(await import(`./gateway-cli-DP65otLl.js`)).registerGatewayCli(e)}},{name:`daemon`,description:`Gateway service (legacy alias)`,hasSubcommands:!0,register:async e=>{(await import(`./daemon-cli-Cw_fxNgE.js`).then(e=>e.t)).registerDaemonCli(e)}},{name:`logs`,description:`Tail gateway file logs via RPC`,hasSubcommands:!1,register:async e=>{(await import(`./logs-cli-BM2XCmrH.js`)).registerLogsCli(e)}},{name:`system`,description:`System events, heartbeat, and presence`,hasSubcommands:!0,register:async e=>{(await import(`./system-cli-GyoLZQpj.js`)).registerSystemCli(e)}},{name:`models`,description:`Discover, scan, and configure models`,hasSubcommands:!0,register:async e=>{(await import(`./models-cli-vRoB_gfX.js`)).registerModelsCli(e)}},{name:`approvals`,description:`Manage exec approvals (gateway or node host)`,hasSubcommands:!0,register:async e=>{(await import(`./exec-approvals-cli-BuHSw09B.js`)).registerExecApprovalsCli(e)}},{name:`nodes`,description:`Manage gateway-owned node pairing and node commands`,hasSubcommands:!0,register:async e=>{(await import(`./nodes-cli-DU13-dCL.js`)).registerNodesCli(e)}},{name:`devices`,description:`Device pairing + token management`,hasSubcommands:!0,register:async e=>{(await import(`./devices-cli-D7PkbnHO.js`)).registerDevicesCli(e)}},{name:`node`,description:`Run and manage the headless node host service`,hasSubcommands:!0,register:async e=>{(await import(`./node-cli-DUI7Zctj.js`)).registerNodeCli(e)}},{name:`sandbox`,description:`Manage sandbox containers for agent isolation`,hasSubcommands:!0,register:async e=>{(await import(`./sandbox-cli-CxluKLFV.js`)).registerSandboxCli(e)}},{name:`tui`,description:`Open a terminal UI connected to the Gateway`,hasSubcommands:!1,register:async e=>{(await import(`./tui-cli-Bj0okLCf.js`)).registerTuiCli(e)}},{name:`cron`,description:`Manage cron jobs via the Gateway scheduler`,hasSubcommands:!0,register:async e=>{(await import(`./cron-cli-Cro66JtU.js`)).registerCronCli(e)}},{name:`dns`,description:`DNS helpers for wide-area discovery (Tailscale + CoreDNS)`,hasSubcommands:!0,register:async e=>{(await import(`./dns-cli-OuwliJ60.js`)).registerDnsCli(e)}},{name:`docs`,description:`Search the live OpenClaw docs`,hasSubcommands:!1,register:async e=>{(await import(`./docs-cli-Cdw9Iz9a.js`)).registerDocsCli(e)}},{name:`hooks`,description:`Manage internal agent hooks`,hasSubcommands:!0,register:async e=>{(await import(`./hooks-cli-DrnH2iDk.js`)).registerHooksCli(e)}},{name:`webhooks`,description:`Webhook helpers and integrations`,hasSubcommands:!0,register:async e=>{(await import(`./webhooks-cli-LU2ADRQp.js`)).registerWebhooksCli(e)}},{name:`qr`,description:`Generate iOS pairing QR/setup code`,hasSubcommands:!1,register:async e=>{(await import(`./qr-cli-DUR7oW0_.js`)).registerQrCli(e)}},{name:`clawbot`,description:`Legacy clawbot command aliases`,hasSubcommands:!0,register:async e=>{(await import(`./clawbot-cli-CaNu5A0G.js`)).registerClawbotCli(e)}},{name:`pairing`,description:`Secure DM pairing (approve inbound requests)`,hasSubcommands:!0,register:async e=>{let{registerPluginCliCommands:t}=await import(`./cli-i7P4bYBg.js`),n=await f();n&&t(e,n),(await import(`./pairing-cli-Cby6Ww8F.js`)).registerPairingCli(e)}},{name:`plugins`,description:`Manage OpenClaw plugins and extensions`,hasSubcommands:!0,register:async e=>{(await import(`./plugins-cli-BiV4FaGs.js`)).registerPluginsCli(e);let{registerPluginCliCommands:t}=await import(`./cli-i7P4bYBg.js`),n=await f();n&&t(e,n)}},{name:`channels`,description:`Manage connected chat channels (Telegram, Discord, etc.)`,hasSubcommands:!0,register:async e=>{(await import(`./channels-cli-cwFjBXcP.js`)).registerChannelsCli(e)}},{name:`directory`,description:`Lookup contact and group IDs (self, peers, groups) for supported chat channels`,hasSubcommands:!0,register:async e=>{(await import(`./directory-cli-CxeuNJcC.js`)).registerDirectoryCli(e)}},{name:`security`,description:`Security tools and local config audits`,hasSubcommands:!0,register:async e=>{(await import(`./security-cli-CllLwpQ-.js`)).registerSecurityCli(e)}},{name:`secrets`,description:`Secrets runtime reload controls`,hasSubcommands:!0,register:async e=>{(await import(`./secrets-cli-DmDZiX17.js`)).registerSecretsCli(e)}},{name:`skills`,description:`List and inspect available skills`,hasSubcommands:!0,register:async e=>{(await import(`./skills-cli-nj0w4fe0.js`)).registerSkillsCli(e)}},{name:`update`,description:`Update OpenClaw and inspect update channel status`,hasSubcommands:!0,register:async e=>{(await import(`./update-cli-lciKU8_L.js`)).registerUpdateCli(e)}},{name:`completion`,description:`Generate shell completion script`,hasSubcommands:!1,register:async e=>{(await import(`./completion-cli-CRNTbZlR.js`).then(e=>e.n)).registerCompletionCli(e)}}];function m(){return p}function h(){return p.filter(e=>e.hasSubcommands).map(e=>e.name)}async function g(e,t){let n=p.find(e=>e.name===t);return n?(c(e,n.name),await n.register(e),!0):!1}function _(e,t){let n=e.command(t.name).description(t.description);n.allowUnknownOption(!0),n.allowExcessArguments(!0),n.action(async(...r)=>{s(e,n),await t.register(e),await o(e,r)})}function v(e,n=process.argv){if(d(n)){for(let t of p)t.register(e);return}let r=t(n);if(r&&u(n)){let t=p.find(e=>e.name===r);if(t){_(e,t);return}}for(let t of p)_(e,t)}export{l as a,v as i,m as n,c as o,g as r,o as s,h as t};
1
+ import{t as e}from"./rolldown-runtime-CNxR59P3.js";import{J as t,U as n,Z as r}from"./subsystem-BLbY429l.js";import{i}from"./entry.js";import{r as a}from"./helpers-COz1ghcB.js";async function o(e,t){let r=t.at(-1),i=(r?.parent??e).rawArgs,o=a(r),s=r?.name()?[r.name(),...o]:o,c=n({programName:e.name(),rawArgs:i,fallbackArgv:s});await e.parseAsync(c)}function s(e,t){let n=e.commands,r=n.indexOf(t);return r<0?!1:(n.splice(r,1),!0)}function c(e,t){let n=e.commands.find(e=>e.name()===t);return n?s(e,n):!1}var l=e({getSubCliCommandsWithSubcommands:()=>h,getSubCliEntries:()=>m,loadValidatedConfigForPluginRegistration:()=>f,registerSubCliByName:()=>g,registerSubCliCommands:()=>v});const u=e=>!(i(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS)||r(e)),d=e=>i(process.env.OPENCLAW_DISABLE_LAZY_SUBCOMMANDS),f=async()=>{let e=await import(`./auth-profiles-BhXA8Jy2.js`).then(e=>e.wo);return(await e.readConfigFileSnapshot()).valid?e.loadConfig():null},p=[{name:`acp`,description:`Agent Control Protocol tools`,hasSubcommands:!0,register:async e=>{(await import(`./acp-cli-01SGjPGi.js`)).registerAcpCli(e)}},{name:`gateway`,description:`Run, inspect, and query the WebSocket Gateway`,hasSubcommands:!0,register:async e=>{(await import(`./gateway-cli-DP65otLl.js`)).registerGatewayCli(e)}},{name:`daemon`,description:`Gateway service (legacy alias)`,hasSubcommands:!0,register:async e=>{(await import(`./daemon-cli-Cw_fxNgE.js`).then(e=>e.t)).registerDaemonCli(e)}},{name:`logs`,description:`Tail gateway file logs via RPC`,hasSubcommands:!1,register:async e=>{(await import(`./logs-cli-BM2XCmrH.js`)).registerLogsCli(e)}},{name:`system`,description:`System events, heartbeat, and presence`,hasSubcommands:!0,register:async e=>{(await import(`./system-cli-GyoLZQpj.js`)).registerSystemCli(e)}},{name:`models`,description:`Discover, scan, and configure models`,hasSubcommands:!0,register:async e=>{(await import(`./models-cli-vRoB_gfX.js`)).registerModelsCli(e)}},{name:`approvals`,description:`Manage exec approvals (gateway or node host)`,hasSubcommands:!0,register:async e=>{(await import(`./exec-approvals-cli-BuHSw09B.js`)).registerExecApprovalsCli(e)}},{name:`nodes`,description:`Manage gateway-owned node pairing and node commands`,hasSubcommands:!0,register:async e=>{(await import(`./nodes-cli-DU13-dCL.js`)).registerNodesCli(e)}},{name:`devices`,description:`Device pairing + token management`,hasSubcommands:!0,register:async e=>{(await import(`./devices-cli-D7PkbnHO.js`)).registerDevicesCli(e)}},{name:`node`,description:`Run and manage the headless node host service`,hasSubcommands:!0,register:async e=>{(await import(`./node-cli-DUI7Zctj.js`)).registerNodeCli(e)}},{name:`sandbox`,description:`Manage sandbox containers for agent isolation`,hasSubcommands:!0,register:async e=>{(await import(`./sandbox-cli-CxluKLFV.js`)).registerSandboxCli(e)}},{name:`tui`,description:`Open a terminal UI connected to the Gateway`,hasSubcommands:!1,register:async e=>{(await import(`./tui-cli-Bj0okLCf.js`)).registerTuiCli(e)}},{name:`cron`,description:`Manage cron jobs via the Gateway scheduler`,hasSubcommands:!0,register:async e=>{(await import(`./cron-cli-Cro66JtU.js`)).registerCronCli(e)}},{name:`dns`,description:`DNS helpers for wide-area discovery (Tailscale + CoreDNS)`,hasSubcommands:!0,register:async e=>{(await import(`./dns-cli-OuwliJ60.js`)).registerDnsCli(e)}},{name:`docs`,description:`Search the live OpenClaw docs`,hasSubcommands:!1,register:async e=>{(await import(`./docs-cli-Cdw9Iz9a.js`)).registerDocsCli(e)}},{name:`hooks`,description:`Manage internal agent hooks`,hasSubcommands:!0,register:async e=>{(await import(`./hooks-cli-DrnH2iDk.js`)).registerHooksCli(e)}},{name:`webhooks`,description:`Webhook helpers and integrations`,hasSubcommands:!0,register:async e=>{(await import(`./webhooks-cli-LU2ADRQp.js`)).registerWebhooksCli(e)}},{name:`qr`,description:`Generate iOS pairing QR/setup code`,hasSubcommands:!1,register:async e=>{(await import(`./qr-cli-DUR7oW0_.js`)).registerQrCli(e)}},{name:`clawbot`,description:`Legacy clawbot command aliases`,hasSubcommands:!0,register:async e=>{(await import(`./clawbot-cli-CaNu5A0G.js`)).registerClawbotCli(e)}},{name:`pairing`,description:`Secure DM pairing (approve inbound requests)`,hasSubcommands:!0,register:async e=>{let{registerPluginCliCommands:t}=await import(`./cli-i7P4bYBg.js`),n=await f();n&&t(e,n),(await import(`./pairing-cli-Cby6Ww8F.js`)).registerPairingCli(e)}},{name:`plugins`,description:`Manage OpenClaw plugins and extensions`,hasSubcommands:!0,register:async e=>{(await import(`./plugins-cli-BiV4FaGs.js`)).registerPluginsCli(e);let{registerPluginCliCommands:t}=await import(`./cli-i7P4bYBg.js`),n=await f();n&&t(e,n)}},{name:`channels`,description:`Manage connected chat channels (Telegram, Discord, etc.)`,hasSubcommands:!0,register:async e=>{(await import(`./channels-cli-cwFjBXcP.js`)).registerChannelsCli(e)}},{name:`directory`,description:`Lookup contact and group IDs (self, peers, groups) for supported chat channels`,hasSubcommands:!0,register:async e=>{(await import(`./directory-cli-CxeuNJcC.js`)).registerDirectoryCli(e)}},{name:`security`,description:`Security tools and local config audits`,hasSubcommands:!0,register:async e=>{(await import(`./security-cli-CllLwpQ-.js`)).registerSecurityCli(e)}},{name:`secrets`,description:`Secrets runtime reload controls`,hasSubcommands:!0,register:async e=>{(await import(`./secrets-cli-DmDZiX17.js`)).registerSecretsCli(e)}},{name:`skills`,description:`List and inspect available skills`,hasSubcommands:!0,register:async e=>{(await import(`./skills-cli-nj0w4fe0.js`)).registerSkillsCli(e)}},{name:`update`,description:`Update OpenClaw and inspect update channel status`,hasSubcommands:!0,register:async e=>{(await import(`./update-cli-lciKU8_L.js`)).registerUpdateCli(e)}},{name:`completion`,description:`Generate shell completion script`,hasSubcommands:!1,register:async e=>{(await import(`./completion-cli-CRNTbZlR.js`).then(e=>e.n)).registerCompletionCli(e)}}];function m(){return p}function h(){return p.filter(e=>e.hasSubcommands).map(e=>e.name)}async function g(e,t){let n=p.find(e=>e.name===t);return n?(c(e,n.name),await n.register(e),!0):!1}function _(e,t){let n=e.command(t.name).description(t.description);n.allowUnknownOption(!0),n.allowExcessArguments(!0),n.action(async(...r)=>{s(e,n),await t.register(e),await o(e,r)})}function v(e,n=process.argv){if(d(n)){for(let t of p)t.register(e);return}let r=t(n);if(r&&u(n)){let t=p.find(e=>e.name===r);if(t){_(e,t);return}}for(let t of p)_(e,t)}export{l as a,v as i,m as n,c as o,g as r,o as s,h as t};
@@ -1 +1 @@
1
- import{S as e,t}from"./subsystem-BLbY429l.js";import{v as n}from"./utils-CGdo13HV.js";import r from"node:path";const i={memory:`memory`,"context-engine":`contextEngine`},a={memory:`memory-core`,contextEngine:`legacy`};function o(e){return e?i[e]??null:null}function s(e){return a[e]}function c(e){let t=o(e.selectedKind);if(!t)return{config:e.config,warnings:[],changed:!1};let n=[],r=e.config.plugins??{},i=r.slots?.[t],a={...r.slots,[t]:e.selectedId},c=i??s(t);c&&c!==e.selectedId&&n.push(`Exclusive slot "${t}" switched from "${c}" to "${e.selectedId}".`);let l={...r.entries},u=[];if(e.registry)for(let t of e.registry.plugins){if(t.id===e.selectedId||t.kind!==e.selectedKind)continue;let n=l[t.id];(!n||n.enabled!==!1)&&(l[t.id]={...n,enabled:!1},u.push(t.id))}return u.length>0&&n.push(`Disabled other "${t}" slot plugins: ${u.toSorted().join(`, `)}.`),i!==e.selectedId||u.length>0?{config:{...e.config,plugins:{...r,slots:a,entries:l}},warnings:n,changed:!0}:{config:e.config,warnings:[],changed:!1}}const l=Symbol.for(`openclaw.contextEngineRegistryState`);function u(){let e=globalThis;return e[l]||(e[l]={engines:new Map}),e[l]}function d(e,t){u().engines.set(e,t)}function f(){return[...u().engines.keys()]}async function p(e){let t=e?.plugins?.slots?.contextEngine,n=typeof t==`string`&&t.trim()?t.trim():s(`contextEngine`),r=u().engines.get(n);if(!r)throw Error(`Context engine "${n}" is not registered. Available engines: ${f().join(`, `)||`(none)`}`);return r()}const m=globalThis,h=m.__openclaw_internal_hook_handlers__??=new Map,g=t(`internal-hooks`);function _(e,t){h.has(e)||h.set(e,[]),h.get(e).push(t)}function v(){h.clear()}async function y(e){let t=h.get(e.type)??[],n=h.get(`${e.type}:${e.action}`)??[],r=[...t,...n];if(r.length!==0)for(let t of r)try{await t(e)}catch(t){let n=t instanceof Error?t.message:String(t);g.error(`Hook error [${e.type}:${e.action}]: ${n}`)}}function b(e,t,n,r={}){return{type:e,action:t,sessionKey:n,context:r,timestamp:new Date,messages:[]}}const x=new Map;let S=!1;const C=4096,ee=new Set([`help`,`commands`,`status`,`whoami`,`context`,`stop`,`reset`,`new`,`compact`,`session`,`allowlist`,`approve`,`skill`,`verbose`,`reasoning`,`usage`,`tts`]);function te(e){let t=e.trim().toLowerCase();return t?/^[a-z][a-z0-9_-]*$/.test(t)?ee.has(t)?`Command name "${t}" is reserved by a built-in command`:null:`Command name must start with a letter and contain only letters, numbers, hyphens, and underscores`:`Command name cannot be empty`}function ne(t,n){if(S)return{ok:!1,error:`Cannot register commands while processing is in progress`};if(typeof n.handler!=`function`)return{ok:!1,error:`Command handler must be a function`};if(typeof n.name!=`string`)return{ok:!1,error:`Command name must be a string`};if(typeof n.description!=`string`)return{ok:!1,error:`Command description must be a string`};let r=n.name.trim(),i=n.description.trim();if(!i)return{ok:!1,error:`Command description cannot be empty`};let a=te(r);if(a)return{ok:!1,error:a};let o=`/${r.toLowerCase()}`;return x.has(o)?{ok:!1,error:`Command "${r}" already registered by plugin "${x.get(o).pluginId}"`}:(x.set(o,{...n,name:r,description:i,pluginId:t}),e(`Registered plugin command: ${o} (plugin: ${t})`),{ok:!0})}function re(){x.clear()}function ie(e){let t=e.trim();if(!t.startsWith(`/`))return null;let n=t.indexOf(` `),r=n===-1?t:t.slice(0,n),i=n===-1?void 0:t.slice(n+1).trim(),a=r.toLowerCase(),o=x.get(a);return!o||i&&!o.acceptsArgs?null:{command:o,args:i||void 0}}function w(e){if(!e)return;if(e.length>C)return e.slice(0,C);let t=``;for(let n of e){let e=n.charCodeAt(0);e<=31&&e!==9&&e!==10||e===127||(t+=n)}return t}async function T(t){let{command:n,args:r,senderId:i,channel:a,isAuthorizedSender:o,commandBody:s,config:c}=t;if(n.requireAuth!==!1&&!o)return e(`Plugin command /${n.name} blocked: unauthorized sender ${i||`<unknown>`}`),{text:`⚠️ This command requires authorization.`};let l=w(r),u={senderId:i,channel:a,channelId:t.channelId,isAuthorizedSender:o,args:l,commandBody:s,config:c,from:t.from,to:t.to,accountId:t.accountId,messageThreadId:t.messageThreadId};S=!0;try{let t=await n.handler(u);return e(`Plugin command /${n.name} executed successfully for ${i||`unknown`}`),t}catch(t){let r=t;return e(`Plugin command /${n.name} error: ${r.message}`),{text:`⚠️ Command failed. Please try again later.`}}finally{S=!1}}function E(){return Array.from(x.values()).map(e=>({name:e.name,description:e.description,pluginId:e.pluginId}))}function D(e,t){let n=t?.trim().toLowerCase(),r=n?e.nativeNames?.[n]:void 0;if(typeof r==`string`&&r.trim())return r.trim();let i=e.nativeNames?.default;return typeof i==`string`&&i.trim()?i.trim():e.name}function ae(e){return Array.from(x.values()).map(t=>({name:D(t,e),description:t.description,acceptsArgs:t.acceptsArgs??!1}))}function O(e,t){let n=e?.trim();if(!n){let e=t?.trim();return e?e.startsWith(`/`)?e:`/${e}`:null}return n.startsWith(`/`)?n:`/${n}`}function k(e){let t=e.replace(/\/{2,}/g,`/`);return t.length<=1?t:t.replace(/\/+$/,``)}function oe(e){try{return new URL(e,`http://localhost`).pathname}catch{return e}}function se(e){return k(oe(e).toLowerCase())||`/`}function A(e,t,n){let r=se(n);t.has(r)||(t.add(r),e.push(r))}function j(e,t=32){let n=[],r=new Set;A(n,r,e);let i=e,a=!1,o=0;for(let e=0;e<t;e++){let e=i;try{e=decodeURIComponent(i)}catch{a=!0;break}if(e===i)break;o+=1,i=e,A(n,r,i)}let s=!1;if(!a)try{s=decodeURIComponent(i)!==i}catch{a=!0}return{candidates:n,decodePasses:o,decodePassLimitReached:s,malformedEncoding:a}}function M(e){let{candidates:t}=j(e);return t[t.length-1]??`/`}function N(e){let{candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i}=j(e);return{canonicalPath:t[t.length-1]??`/`,candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i,rawNormalizedPath:k(e.toLowerCase())||`/`}}const P=[`/api/channels`];function F(e,t){return e===t||e.startsWith(`${t}/`)||e.startsWith(`${t}%`)}function I(e,t){let n=M(e.path),r=M(t.path);if(e.match===`exact`&&t.match===`exact`)return n===r;if(e.match===`prefix`&&t.match===`prefix`)return F(n,r)||F(r,n);let i=e.match===`prefix`?e:t;return F(M((e.match===`exact`?e:t).path),M(i.path))}function L(e,t){return e.find(e=>I(e,t))}const R=new Set([`before_model_resolve`,`before_prompt_build`,`before_agent_start`,`llm_input`,`llm_output`,`agent_end`,`before_compaction`,`after_compaction`,`before_reset`,`message_received`,`message_sending`,`message_sent`,`before_tool_call`,`after_tool_call`,`tool_result_persist`,`before_message_write`,`session_start`,`session_end`,`subagent_spawning`,`subagent_delivery_target`,`subagent_spawned`,`subagent_ended`,`gateway_start`,`gateway_stop`]),z=e=>typeof e==`string`&&R.has(e),B=new Set([`before_prompt_build`,`before_agent_start`]),V=e=>B.has(e),H=[`systemPrompt`,`prependContext`,`prependSystemContext`,`appendSystemContext`],U=e=>{if(!e||typeof e!=`object`)return e;let t={...e};for(let e of H)delete t[e];return Object.keys(t).length>0?t:void 0},W=e=>(t,n)=>{let r=e(t,n);return r&&typeof r==`object`&&`then`in r?Promise.resolve(r).then(e=>U(e)):U(r)};function G(){return{plugins:[],tools:[],hooks:[],typedHooks:[],channels:[],providers:[],gatewayHandlers:{},httpRoutes:[],cliRegistrars:[],services:[],commands:[],diagnostics:[]}}function K(e){let t=G(),i=new Set(Object.keys(e.coreGatewayHandlers??{})),a=e=>{t.diagnostics.push(e)},o=(e,n,r)=>{let i=r?.names??(r?.name?[r.name]:[]),a=r?.optional===!0,o=typeof n==`function`?n:e=>n;typeof n!=`function`&&i.push(n.name);let s=i.map(e=>e.trim()).filter(Boolean);s.length>0&&e.toolNames.push(...s),t.tools.push({pluginId:e.id,factory:o,names:s,optional:a,source:e.source})},s=(e,n,i,o,s)=>{let c=(Array.isArray(n)?n:[n]).map(e=>e.trim()).filter(Boolean),l=o?.entry??null,u=l?.hook.name??o?.name?.trim();if(!u){a({level:`warn`,pluginId:e.id,source:e.source,message:`hook registration missing name`});return}let d=l?.hook.description??o?.description??``,f=l?{...l,hook:{...l.hook,name:u,description:d,source:`openclaw-plugin`,pluginId:e.id},metadata:{...l.metadata,events:c}}:{hook:{name:u,description:d,source:`openclaw-plugin`,pluginId:e.id,filePath:e.source,baseDir:r.dirname(e.source),handlerPath:e.source},frontmatter:{},metadata:{events:c},invocation:{enabled:!0}};if(e.hookNames.push(u),t.hooks.push({pluginId:e.id,entry:f,events:c,source:e.source}),!(s?.hooks?.internal?.enabled!==!0||o?.register===!1))for(let e of c)_(e,i)},c=(e,n,r)=>{let o=n.trim();if(o){if(i.has(o)||t.gatewayHandlers[o]){a({level:`error`,pluginId:e.id,source:e.source,message:`gateway method already registered: ${o}`});return}t.gatewayHandlers[o]=r,e.gatewayMethods.push(o)}},l=e=>`${e.pluginId?.trim()||`unknown-plugin`} (${e.source?.trim()||`unknown-source`})`,u=(e,n)=>{let r=O(n.path);if(!r){a({level:`warn`,pluginId:e.id,source:e.source,message:`http route registration missing path`});return}if(n.auth!==`gateway`&&n.auth!==`plugin`){a({level:`error`,pluginId:e.id,source:e.source,message:`http route registration missing or invalid auth: ${r}`});return}let i=n.match??`exact`,o=L(t.httpRoutes,{path:r,match:i});if(o&&o.auth!==n.auth){a({level:`error`,pluginId:e.id,source:e.source,message:`http route overlap rejected: ${r} (${i}, ${n.auth}) overlaps ${o.path} (${o.match}, ${o.auth}) owned by ${l(o)}`});return}let s=t.httpRoutes.findIndex(e=>e.path===r&&e.match===i);if(s>=0){let o=t.httpRoutes[s];if(!o)return;if(!n.replaceExisting){a({level:`error`,pluginId:e.id,source:e.source,message:`http route already registered: ${r} (${i}) by ${l(o)}`});return}if(o.pluginId&&o.pluginId!==e.id){a({level:`error`,pluginId:e.id,source:e.source,message:`http route replacement rejected: ${r} (${i}) owned by ${l(o)}`});return}t.httpRoutes[s]={pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source};return}e.httpRoutes+=1,t.httpRoutes.push({pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source})},f=(e,n)=>{let r=typeof n.plugin==`object`?n:{plugin:n},i=r.plugin,o=typeof i?.id==`string`?i.id.trim():String(i?.id??``).trim();if(!o){a({level:`error`,pluginId:e.id,source:e.source,message:`channel registration missing id`});return}e.channelIds.push(o),t.channels.push({pluginId:e.id,plugin:i,dock:r.dock,source:e.source})},p=(e,n)=>{let r=typeof n?.id==`string`?n.id.trim():``;if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`provider registration missing id`});return}let i=t.providers.find(e=>e.provider.id===r);if(i){a({level:`error`,pluginId:e.id,source:e.source,message:`provider already registered: ${r} (${i.pluginId})`});return}e.providerIds.push(r),t.providers.push({pluginId:e.id,provider:n,source:e.source})},m=(e,n,r)=>{let i=(r?.commands??[]).map(e=>e.trim()).filter(Boolean);e.cliCommands.push(...i),t.cliRegistrars.push({pluginId:e.id,register:n,commands:i,source:e.source})},h=(e,n)=>{let r=n.id.trim();r&&(e.services.push(r),t.services.push({pluginId:e.id,service:n,source:e.source}))},g=(e,n)=>{let r=n.name.trim();if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration missing name`});return}let i=ne(e.id,n);if(!i.ok){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration failed: ${i.error}`});return}e.commands.push(r),t.commands.push({pluginId:e.id,command:n,source:e.source})},v=(e,n,r,i,o)=>{if(!z(n)){a({level:`warn`,pluginId:e.id,source:e.source,message:`unknown typed hook "${String(n)}" ignored`});return}let s=r;if(o?.allowPromptInjection===!1&&V(n)){if(n===`before_prompt_build`){a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" blocked by plugins.entries.${e.id}.hooks.allowPromptInjection=false`});return}n===`before_agent_start`&&(a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" prompt fields constrained by plugins.entries.${e.id}.hooks.allowPromptInjection=false`}),s=W(r))}e.hookCount+=1,t.typedHooks.push({pluginId:e.id,hookName:n,handler:s,priority:i?.priority,source:e.source})},y=e=>({info:e.info,warn:e.warn,error:e.error,debug:e.debug});return{registry:t,createApi:(t,r)=>({id:t.id,name:t.name,version:t.version,description:t.description,source:t.source,config:r.config,pluginConfig:r.pluginConfig,runtime:e.runtime,logger:y(e.logger),registerTool:(e,n)=>o(t,e,n),registerHook:(e,n,i)=>s(t,e,n,i,r.config),registerHttpRoute:e=>u(t,e),registerChannel:e=>f(t,e),registerProvider:e=>p(t,e),registerGatewayMethod:(e,n)=>c(t,e,n),registerCli:(e,n)=>m(t,e,n),registerService:e=>h(t,e),registerCommand:e=>g(t,e),registerContextEngine:(e,t)=>d(e,t),resolvePath:e=>n(e),on:(e,n,i)=>v(t,e,n,i,r.hookPolicy)}),pushDiagnostic:a,registerTool:o,registerChannel:f,registerProvider:p,registerGatewayMethod:c,registerCli:m,registerService:h,registerCommand:g,registerHook:s,registerTypedHook:v}}const q=Symbol.for(`openclaw.pluginRegistryState`),J=(()=>{let e=globalThis;return e[q]||(e[q]={registry:G(),key:null,version:0}),e[q]})();function ce(e,t){J.registry=e,J.key=t??null,J.version+=1}function le(){return J.registry}function Y(){return J.registry||(J.registry=G(),J.version+=1),J.registry}function ue(){return J.key}function de(){return J.version}const X=[`telegram`,`whatsapp`,`discord`,`irc`,`googlechat`,`slack`,`signal`,`imessage`,`line`],fe=[...X],Z={telegram:{id:`telegram`,label:`Telegram`,selectionLabel:`Telegram (Bot API)`,detailLabel:`Telegram Bot`,docsPath:`/channels/telegram`,docsLabel:`telegram`,blurb:`simplest way to get started — register a bot with @BotFather and get going.`,systemImage:`paperplane`,selectionDocsPrefix:``,selectionDocsOmitLabel:!0,selectionExtras:[`https://openclaw.ai`]},whatsapp:{id:`whatsapp`,label:`WhatsApp`,selectionLabel:`WhatsApp (QR link)`,detailLabel:`WhatsApp Web`,docsPath:`/channels/whatsapp`,docsLabel:`whatsapp`,blurb:`works with your own number; recommend a separate phone + eSIM.`,systemImage:`message`},discord:{id:`discord`,label:`Discord`,selectionLabel:`Discord (Bot API)`,detailLabel:`Discord Bot`,docsPath:`/channels/discord`,docsLabel:`discord`,blurb:`very well supported right now.`,systemImage:`bubble.left.and.bubble.right`},irc:{id:`irc`,label:`IRC`,selectionLabel:`IRC (Server + Nick)`,detailLabel:`IRC`,docsPath:`/channels/irc`,docsLabel:`irc`,blurb:`classic IRC networks with DM/channel routing and pairing controls.`,systemImage:`network`},googlechat:{id:`googlechat`,label:`Google Chat`,selectionLabel:`Google Chat (Chat API)`,detailLabel:`Google Chat`,docsPath:`/channels/googlechat`,docsLabel:`googlechat`,blurb:`Google Workspace Chat app with HTTP webhook.`,systemImage:`message.badge`},slack:{id:`slack`,label:`Slack`,selectionLabel:`Slack (Socket Mode)`,detailLabel:`Slack Bot`,docsPath:`/channels/slack`,docsLabel:`slack`,blurb:`supported (Socket Mode).`,systemImage:`number`},signal:{id:`signal`,label:`Signal`,selectionLabel:`Signal (signal-cli)`,detailLabel:`Signal REST`,docsPath:`/channels/signal`,docsLabel:`signal`,blurb:`signal-cli linked device; more setup (David Reagans: "Hop on Discord.").`,systemImage:`antenna.radiowaves.left.and.right`},imessage:{id:`imessage`,label:`iMessage`,selectionLabel:`iMessage (imsg)`,detailLabel:`iMessage`,docsPath:`/channels/imessage`,docsLabel:`imessage`,blurb:`this is still a work in progress.`,systemImage:`message.fill`},line:{id:`line`,label:`LINE`,selectionLabel:`LINE (Messaging API)`,detailLabel:`LINE Bot`,docsPath:`/channels/line`,docsLabel:`line`,blurb:`LINE Messaging API webhook bot.`,systemImage:`message`}},pe={imsg:`imessage`,"internet-relay-chat":`irc`,"google-chat":`googlechat`,gchat:`googlechat`},Q=e=>e?.trim().toLowerCase()||void 0;function me(){return X.map(e=>Z[e])}function he(e){return Z[e]}function $(e){let t=Q(e);if(!t)return null;let n=pe[t]??t;return X.includes(n)?n:null}function ge(e){return $(e)}function _e(e){let t=Q(e);return t?Y().channels.find(e=>{let n=String(e.plugin.id??``).trim().toLowerCase();return n&&n===t?!0:(e.plugin.meta.aliases??[]).some(e=>e.trim().toLowerCase()===t)})?.plugin.id??null:null}function ve(e){return`${e.label}: ${e.blurb}`}function ye(e,t){let n=e.selectionDocsPrefix??`Docs:`,r=e.docsLabel??e.id,i=e.selectionDocsOmitLabel?t(e.docsPath):t(e.docsPath,r),a=(e.selectionExtras??[]).filter(Boolean).join(` `);return`${e.label} — ${e.blurb} ${n?`${n} `:``}${i}${a?` ${a}`:``}`}export{y as A,T as C,v as D,ie as E,p as M,c as N,b as O,s as P,re as S,E as T,L as _,he as a,M as b,ge as c,ue as d,de as f,K as g,G as h,ye as i,d as j,_ as k,$ as l,ce as m,X as n,me as o,Y as p,ve as r,_e as s,fe as t,le as u,P as v,ae as w,O as x,N as y};
1
+ import{S as e,t}from"./subsystem-BLbY429l.js";import{v as n}from"./utils-CGdo13HV.js";import r from"node:path";const i={memory:`memory`,"context-engine":`contextEngine`},a={memory:`memory-core`,contextEngine:`legacy`};function o(e){return e?i[e]??null:null}function s(e){return a[e]}function c(e){let t=o(e.selectedKind);if(!t)return{config:e.config,warnings:[],changed:!1};let n=[],r=e.config.plugins??{},i=r.slots?.[t],a={...r.slots,[t]:e.selectedId},c=i??s(t);c&&c!==e.selectedId&&n.push(`Exclusive slot "${t}" switched from "${c}" to "${e.selectedId}".`);let l={...r.entries},u=[];if(e.registry)for(let t of e.registry.plugins){if(t.id===e.selectedId||t.kind!==e.selectedKind)continue;let n=l[t.id];(!n||n.enabled!==!1)&&(l[t.id]={...n,enabled:!1},u.push(t.id))}return u.length>0&&n.push(`Disabled other "${t}" slot plugins: ${u.toSorted().join(`, `)}.`),i!==e.selectedId||u.length>0?{config:{...e.config,plugins:{...r,slots:a,entries:l}},warnings:n,changed:!0}:{config:e.config,warnings:[],changed:!1}}const l=Symbol.for(`openclaw.contextEngineRegistryState`);function u(){let e=globalThis;return e[l]||(e[l]={engines:new Map}),e[l]}function d(e,t){u().engines.set(e,t)}function f(){return[...u().engines.keys()]}async function p(e){let t=e?.plugins?.slots?.contextEngine,n=typeof t==`string`&&t.trim()?t.trim():s(`contextEngine`),r=u().engines.get(n);if(!r)throw Error(`Context engine "${n}" is not registered. Available engines: ${f().join(`, `)||`(none)`}`);return r()}const m=globalThis,h=m.__openclaw_internal_hook_handlers__??=new Map,g=t(`internal-hooks`);function _(e,t){h.has(e)||h.set(e,[]),h.get(e).push(t)}function v(){h.clear()}async function y(e){let t=h.get(e.type)??[],n=h.get(`${e.type}:${e.action}`)??[],r=[...t,...n];if(r.length!==0)for(let t of r)try{await t(e)}catch(t){let n=t instanceof Error?t.message:String(t);g.error(`Hook error [${e.type}:${e.action}]: ${n}`)}}function b(e,t,n,r={}){return{type:e,action:t,sessionKey:n,context:r,timestamp:new Date,messages:[]}}const x=new Map;let S=!1;const C=4096,ee=new Set([`help`,`commands`,`status`,`whoami`,`context`,`stop`,`reset`,`new`,`compact`,`session`,`allowlist`,`approve`,`skill`,`verbose`,`reasoning`,`usage`,`tts`]);function te(e){let t=e.trim().toLowerCase();return t?/^[a-z][a-z0-9_-]*$/.test(t)?ee.has(t)?`Command name "${t}" is reserved by a built-in command`:null:`Command name must start with a letter and contain only letters, numbers, hyphens, and underscores`:`Command name cannot be empty`}function ne(t,n){if(S)return{ok:!1,error:`Cannot register commands while processing is in progress`};if(typeof n.handler!=`function`)return{ok:!1,error:`Command handler must be a function`};if(typeof n.name!=`string`)return{ok:!1,error:`Command name must be a string`};if(typeof n.description!=`string`)return{ok:!1,error:`Command description must be a string`};let r=n.name.trim(),i=n.description.trim();if(!i)return{ok:!1,error:`Command description cannot be empty`};let a=te(r);if(a)return{ok:!1,error:a};let o=`/${r.toLowerCase()}`;return x.has(o)?{ok:!1,error:`Command "${r}" already registered by plugin "${x.get(o).pluginId}"`}:(x.set(o,{...n,name:r,description:i,pluginId:t}),e(`Registered plugin command: ${o} (plugin: ${t})`),{ok:!0})}function re(){x.clear()}function ie(e){let t=e.trim();if(!t.startsWith(`/`))return null;let n=t.indexOf(` `),r=n===-1?t:t.slice(0,n),i=n===-1?void 0:t.slice(n+1).trim(),a=r.toLowerCase(),o=x.get(a);return!o||i&&!o.acceptsArgs?null:{command:o,args:i||void 0}}function w(e){if(!e)return;if(e.length>C)return e.slice(0,C);let t=``;for(let n of e){let e=n.charCodeAt(0);e<=31&&e!==9&&e!==10||e===127||(t+=n)}return t}async function T(t){let{command:n,args:r,senderId:i,channel:a,isAuthorizedSender:o,commandBody:s,config:c}=t;if(n.requireAuth!==!1&&!o)return e(`Plugin command /${n.name} blocked: unauthorized sender ${i||`<unknown>`}`),{text:`⚠️ This command requires authorization.`};let l=w(r),u={senderId:i,channel:a,channelId:t.channelId,isAuthorizedSender:o,args:l,commandBody:s,config:c,from:t.from,to:t.to,accountId:t.accountId,messageThreadId:t.messageThreadId};S=!0;try{let t=await n.handler(u);return e(`Plugin command /${n.name} executed successfully for ${i||`unknown`}`),t}catch(t){let r=t;return e(`Plugin command /${n.name} error: ${r.message}`),{text:`⚠️ Command failed. Please try again later.`}}finally{S=!1}}function E(){return Array.from(x.values()).map(e=>({name:e.name,description:e.description,pluginId:e.pluginId}))}function D(e,t){let n=t?.trim().toLowerCase(),r=n?e.nativeNames?.[n]:void 0;if(typeof r==`string`&&r.trim())return r.trim();let i=e.nativeNames?.default;return typeof i==`string`&&i.trim()?i.trim():e.name}function ae(e){return Array.from(x.values()).map(t=>({name:D(t,e),description:t.description,acceptsArgs:t.acceptsArgs??!1}))}function O(e,t){let n=e?.trim();if(!n){let e=t?.trim();return e?e.startsWith(`/`)?e:`/${e}`:null}return n.startsWith(`/`)?n:`/${n}`}function k(e){let t=e.replace(/\/{2,}/g,`/`);return t.length<=1?t:t.replace(/\/+$/,``)}function oe(e){try{return new URL(e,`http://localhost`).pathname}catch{return e}}function se(e){return k(oe(e).toLowerCase())||`/`}function A(e,t,n){let r=se(n);t.has(r)||(t.add(r),e.push(r))}function j(e,t=32){let n=[],r=new Set;A(n,r,e);let i=e,a=!1,o=0;for(let e=0;e<t;e++){let e=i;try{e=decodeURIComponent(i)}catch{a=!0;break}if(e===i)break;o+=1,i=e,A(n,r,i)}let s=!1;if(!a)try{s=decodeURIComponent(i)!==i}catch{a=!0}return{candidates:n,decodePasses:o,decodePassLimitReached:s,malformedEncoding:a}}function M(e){let{candidates:t}=j(e);return t[t.length-1]??`/`}function N(e){let{candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i}=j(e);return{canonicalPath:t[t.length-1]??`/`,candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i,rawNormalizedPath:k(e.toLowerCase())||`/`}}const P=[`/api/channels`];function F(e,t){return e===t||e.startsWith(`${t}/`)||e.startsWith(`${t}%`)}function I(e,t){let n=M(e.path),r=M(t.path);if(e.match===`exact`&&t.match===`exact`)return n===r;if(e.match===`prefix`&&t.match===`prefix`)return F(n,r)||F(r,n);let i=e.match===`prefix`?e:t;return F(M((e.match===`exact`?e:t).path),M(i.path))}function L(e,t){return e.find(e=>I(e,t))}const R=new Set([`before_model_resolve`,`before_prompt_build`,`before_agent_start`,`llm_input`,`llm_output`,`agent_end`,`before_compaction`,`after_compaction`,`before_reset`,`message_received`,`message_sending`,`message_sent`,`before_tool_call`,`after_tool_call`,`tool_result_persist`,`before_message_write`,`session_start`,`session_end`,`subagent_spawning`,`subagent_delivery_target`,`subagent_spawned`,`subagent_ended`,`gateway_start`,`gateway_stop`]),z=e=>typeof e==`string`&&R.has(e),B=new Set([`before_prompt_build`,`before_agent_start`]),V=e=>B.has(e),H=[`systemPrompt`,`prependContext`,`prependSystemContext`,`appendSystemContext`],U=e=>{if(!e||typeof e!=`object`)return e;let t={...e};for(let e of H)delete t[e];return Object.keys(t).length>0?t:void 0},W=e=>(t,n)=>{let r=e(t,n);return r&&typeof r==`object`&&`then`in r?Promise.resolve(r).then(e=>U(e)):U(r)};function G(){return{plugins:[],tools:[],hooks:[],typedHooks:[],channels:[],providers:[],gatewayHandlers:{},httpRoutes:[],cliRegistrars:[],services:[],commands:[],diagnostics:[]}}function K(e){let t=G(),i=new Set(Object.keys(e.coreGatewayHandlers??{})),a=e=>{t.diagnostics.push(e)},o=(e,n,r)=>{let i=r?.names??(r?.name?[r.name]:[]),a=r?.optional===!0,o=typeof n==`function`?n:e=>n;typeof n!=`function`&&i.push(n.name);let s=i.map(e=>e.trim()).filter(Boolean);s.length>0&&e.toolNames.push(...s),t.tools.push({pluginId:e.id,factory:o,names:s,optional:a,source:e.source})},s=(e,n,i,o,s)=>{let c=(Array.isArray(n)?n:[n]).map(e=>e.trim()).filter(Boolean),l=o?.entry??null,u=l?.hook.name??o?.name?.trim();if(!u){a({level:`warn`,pluginId:e.id,source:e.source,message:`hook registration missing name`});return}let d=l?.hook.description??o?.description??``,f=l?{...l,hook:{...l.hook,name:u,description:d,source:`openclaw-plugin`,pluginId:e.id},metadata:{...l.metadata,events:c}}:{hook:{name:u,description:d,source:`openclaw-plugin`,pluginId:e.id,filePath:e.source,baseDir:r.dirname(e.source),handlerPath:e.source},frontmatter:{},metadata:{events:c},invocation:{enabled:!0}};if(e.hookNames.push(u),t.hooks.push({pluginId:e.id,entry:f,events:c,source:e.source}),!(s?.hooks?.internal?.enabled!==!0||o?.register===!1))for(let e of c)_(e,i)},c=(e,n,r)=>{let o=n.trim();if(o){if(i.has(o)||t.gatewayHandlers[o]){a({level:`error`,pluginId:e.id,source:e.source,message:`gateway method already registered: ${o}`});return}t.gatewayHandlers[o]=r,e.gatewayMethods.push(o)}},l=e=>`${e.pluginId?.trim()||`unknown-plugin`} (${e.source?.trim()||`unknown-source`})`,u=(e,n)=>{let r=O(n.path);if(!r){a({level:`warn`,pluginId:e.id,source:e.source,message:`http route registration missing path`});return}if(n.auth!==`gateway`&&n.auth!==`plugin`){a({level:`error`,pluginId:e.id,source:e.source,message:`http route registration missing or invalid auth: ${r}`});return}let i=n.match??`exact`,o=L(t.httpRoutes,{path:r,match:i});if(o&&o.auth!==n.auth){a({level:`error`,pluginId:e.id,source:e.source,message:`http route overlap rejected: ${r} (${i}, ${n.auth}) overlaps ${o.path} (${o.match}, ${o.auth}) owned by ${l(o)}`});return}let s=t.httpRoutes.findIndex(e=>e.path===r&&e.match===i);if(s>=0){let o=t.httpRoutes[s];if(!o)return;if(!n.replaceExisting){a({level:`error`,pluginId:e.id,source:e.source,message:`http route already registered: ${r} (${i}) by ${l(o)}`});return}if(o.pluginId&&o.pluginId!==e.id){a({level:`error`,pluginId:e.id,source:e.source,message:`http route replacement rejected: ${r} (${i}) owned by ${l(o)}`});return}t.httpRoutes[s]={pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source};return}e.httpRoutes+=1,t.httpRoutes.push({pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source})},f=(e,n)=>{let r=typeof n.plugin==`object`?n:{plugin:n},i=r.plugin,o=typeof i?.id==`string`?i.id.trim():String(i?.id??``).trim();if(!o){a({level:`error`,pluginId:e.id,source:e.source,message:`channel registration missing id`});return}e.channelIds.push(o),t.channels.push({pluginId:e.id,plugin:i,dock:r.dock,source:e.source})},p=(e,n)=>{let r=typeof n?.id==`string`?n.id.trim():``;if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`provider registration missing id`});return}let i=t.providers.find(e=>e.provider.id===r);if(i){a({level:`error`,pluginId:e.id,source:e.source,message:`provider already registered: ${r} (${i.pluginId})`});return}e.providerIds.push(r),t.providers.push({pluginId:e.id,provider:n,source:e.source})},m=(e,n,r)=>{let i=(r?.commands??[]).map(e=>e.trim()).filter(Boolean);e.cliCommands.push(...i),t.cliRegistrars.push({pluginId:e.id,register:n,commands:i,source:e.source})},h=(e,n)=>{let r=n.id.trim();r&&(e.services.push(r),t.services.push({pluginId:e.id,service:n,source:e.source}))},g=(e,n)=>{let r=n.name.trim();if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration missing name`});return}let i=ne(e.id,n);if(!i.ok){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration failed: ${i.error}`});return}e.commands.push(r),t.commands.push({pluginId:e.id,command:n,source:e.source})},v=(e,n,r,i,o)=>{if(!z(n)){a({level:`warn`,pluginId:e.id,source:e.source,message:`unknown typed hook "${String(n)}" ignored`});return}let s=r;if(o?.allowPromptInjection===!1&&V(n)){if(n===`before_prompt_build`){a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" blocked by plugins.entries.${e.id}.hooks.allowPromptInjection=false`});return}n===`before_agent_start`&&(a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" prompt fields constrained by plugins.entries.${e.id}.hooks.allowPromptInjection=false`}),s=W(r))}e.hookCount+=1,t.typedHooks.push({pluginId:e.id,hookName:n,handler:s,priority:i?.priority,source:e.source})},y=e=>({info:e.info,warn:e.warn,error:e.error,debug:e.debug});return{registry:t,createApi:(t,r)=>({id:t.id,name:t.name,version:t.version,description:t.description,source:t.source,config:r.config,pluginConfig:r.pluginConfig,runtime:e.runtime,logger:y(e.logger),registerTool:(e,n)=>o(t,e,n),registerHook:(e,n,i)=>s(t,e,n,i,r.config),registerHttpRoute:e=>u(t,e),registerChannel:e=>f(t,e),registerProvider:e=>p(t,e),registerGatewayMethod:(e,n)=>c(t,e,n),registerCli:(e,n)=>m(t,e,n),registerService:e=>h(t,e),registerCommand:e=>g(t,e),registerContextEngine:(e,t)=>d(e,t),resolvePath:e=>n(e),on:(e,n,i)=>v(t,e,n,i,r.hookPolicy)}),pushDiagnostic:a,registerTool:o,registerChannel:f,registerProvider:p,registerGatewayMethod:c,registerCli:m,registerService:h,registerCommand:g,registerHook:s,registerTypedHook:v}}const q=Symbol.for(`openclaw.pluginRegistryState`),J=(()=>{let e=globalThis;return e[q]||(e[q]={registry:G(),key:null,version:0}),e[q]})();function ce(e,t){J.registry=e,J.key=t??null,J.version+=1}function le(){return J.registry}function Y(){return J.registry||(J.registry=G(),J.version+=1),J.registry}function ue(){return J.key}function de(){return J.version}const X=[`telegram`,`whatsapp`,`discord`,`irc`,`googlechat`,`slack`,`signal`,`imessage`,`line`],fe=[...X],Z={telegram:{id:`telegram`,label:`Telegram`,selectionLabel:`Telegram (Bot API)`,detailLabel:`Telegram Bot`,docsPath:`/channels/telegram`,docsLabel:`telegram`,blurb:`simplest way to get started — register a bot with @BotFather and get going.`,systemImage:`paperplane`,selectionDocsPrefix:``,selectionDocsOmitLabel:!0,selectionExtras:[`https://openclaw.ai`]},whatsapp:{id:`whatsapp`,label:`WhatsApp`,selectionLabel:`WhatsApp (QR link)`,detailLabel:`WhatsApp Web`,docsPath:`/channels/whatsapp`,docsLabel:`whatsapp`,blurb:`works with your own number; recommend a separate phone + eSIM.`,systemImage:`message`},discord:{id:`discord`,label:`Discord`,selectionLabel:`Discord (Bot API)`,detailLabel:`Discord Bot`,docsPath:`/channels/discord`,docsLabel:`discord`,blurb:`very well supported right now.`,systemImage:`bubble.left.and.bubble.right`},irc:{id:`irc`,label:`IRC`,selectionLabel:`IRC (Server + Nick)`,detailLabel:`IRC`,docsPath:`/channels/irc`,docsLabel:`irc`,blurb:`classic IRC networks with DM/channel routing and pairing controls.`,systemImage:`network`},googlechat:{id:`googlechat`,label:`Google Chat`,selectionLabel:`Google Chat (Chat API)`,detailLabel:`Google Chat`,docsPath:`/channels/googlechat`,docsLabel:`googlechat`,blurb:`Google Workspace Chat app with HTTP webhook.`,systemImage:`message.badge`},slack:{id:`slack`,label:`Slack`,selectionLabel:`Slack (Socket Mode)`,detailLabel:`Slack Bot`,docsPath:`/channels/slack`,docsLabel:`slack`,blurb:`supported (Socket Mode).`,systemImage:`number`},signal:{id:`signal`,label:`Signal`,selectionLabel:`Signal (signal-cli)`,detailLabel:`Signal REST`,docsPath:`/channels/signal`,docsLabel:`signal`,blurb:`signal-cli linked device; more setup (David Reagans: "Hop on Discord.").`,systemImage:`antenna.radiowaves.left.and.right`},imessage:{id:`imessage`,label:`iMessage`,selectionLabel:`iMessage (imsg)`,detailLabel:`iMessage`,docsPath:`/channels/imessage`,docsLabel:`imessage`,blurb:`this is still a work in progress.`,systemImage:`message.fill`},line:{id:`line`,label:`LINE`,selectionLabel:`LINE (Messaging API)`,detailLabel:`LINE Bot`,docsPath:`/channels/line`,docsLabel:`line`,blurb:`LINE Messaging API webhook bot.`,systemImage:`message`}},pe={imsg:`imessage`,"internet-relay-chat":`irc`,"google-chat":`googlechat`,gchat:`googlechat`},Q=e=>e?.trim().toLowerCase()||void 0;function me(){return X.map(e=>Z[e])}function he(e){return Z[e]}function $(e){let t=Q(e);if(!t)return null;let n=pe[t]??t;return X.includes(n)?n:null}function ge(e){return $(e)}function _e(e){let t=Q(e);return t?Y().channels.find(e=>{let n=String(e.plugin.id??``).trim().toLowerCase();return n&&n===t?!0:(e.plugin.meta.aliases??[]).some(e=>e.trim().toLowerCase()===t)})?.plugin.id??null:null}function ve(e){return`${e.label}: ${e.blurb}`}function ye(e,t){let n=e.selectionDocsPrefix??`Docs:`,r=e.docsLabel??e.id,i=e.selectionDocsOmitLabel?t(e.docsPath):t(e.docsPath,r),a=(e.selectionExtras??[]).filter(Boolean).join(` `);return`${e.label} — ${e.blurb} ${n?`${n} `:``}${i}${a?` ${a}`:``}`}export{y as A,T as C,v as D,ie as E,p as M,c as N,b as O,s as P,re as S,E as T,L as _,he as a,M as b,ge as c,ue as d,de as f,K as g,G as h,ye as i,d as j,_ as k,$ as l,ce as m,X as n,me as o,Y as p,ve as r,_e as s,fe as t,le as u,P as v,ae as w,O as x,N as y};
@@ -1 +1 @@
1
- import{S as e,t}from"./subsystem-C5XF2Fy5.js";import{y as n}from"./utils-UGOV_184.js";import r from"node:path";const i={memory:`memory`,"context-engine":`contextEngine`},a={memory:`memory-core`,contextEngine:`legacy`};function o(e){return e?i[e]??null:null}function s(e){return a[e]}function c(e){let t=o(e.selectedKind);if(!t)return{config:e.config,warnings:[],changed:!1};let n=[],r=e.config.plugins??{},i=r.slots?.[t],a={...r.slots,[t]:e.selectedId},c=i??s(t);c&&c!==e.selectedId&&n.push(`Exclusive slot "${t}" switched from "${c}" to "${e.selectedId}".`);let l={...r.entries},u=[];if(e.registry)for(let t of e.registry.plugins){if(t.id===e.selectedId||t.kind!==e.selectedKind)continue;let n=l[t.id];(!n||n.enabled!==!1)&&(l[t.id]={...n,enabled:!1},u.push(t.id))}return u.length>0&&n.push(`Disabled other "${t}" slot plugins: ${u.toSorted().join(`, `)}.`),i!==e.selectedId||u.length>0?{config:{...e.config,plugins:{...r,slots:a,entries:l}},warnings:n,changed:!0}:{config:e.config,warnings:[],changed:!1}}const l=Symbol.for(`openclaw.contextEngineRegistryState`);function u(){let e=globalThis;return e[l]||(e[l]={engines:new Map}),e[l]}function d(e,t){u().engines.set(e,t)}function f(){return[...u().engines.keys()]}async function p(e){let t=e?.plugins?.slots?.contextEngine,n=typeof t==`string`&&t.trim()?t.trim():s(`contextEngine`),r=u().engines.get(n);if(!r)throw Error(`Context engine "${n}" is not registered. Available engines: ${f().join(`, `)||`(none)`}`);return r()}const m=globalThis,h=m.__openclaw_internal_hook_handlers__??=new Map,g=t(`internal-hooks`);function _(e,t){h.has(e)||h.set(e,[]),h.get(e).push(t)}function v(){h.clear()}async function y(e){let t=h.get(e.type)??[],n=h.get(`${e.type}:${e.action}`)??[],r=[...t,...n];if(r.length!==0)for(let t of r)try{await t(e)}catch(t){let n=t instanceof Error?t.message:String(t);g.error(`Hook error [${e.type}:${e.action}]: ${n}`)}}function b(e,t,n,r={}){return{type:e,action:t,sessionKey:n,context:r,timestamp:new Date,messages:[]}}const x=new Map;let S=!1;const C=4096,ee=new Set([`help`,`commands`,`status`,`whoami`,`context`,`stop`,`reset`,`new`,`compact`,`session`,`allowlist`,`approve`,`skill`,`verbose`,`reasoning`,`usage`,`tts`]);function te(e){let t=e.trim().toLowerCase();return t?/^[a-z][a-z0-9_-]*$/.test(t)?ee.has(t)?`Command name "${t}" is reserved by a built-in command`:null:`Command name must start with a letter and contain only letters, numbers, hyphens, and underscores`:`Command name cannot be empty`}function ne(t,n){if(S)return{ok:!1,error:`Cannot register commands while processing is in progress`};if(typeof n.handler!=`function`)return{ok:!1,error:`Command handler must be a function`};if(typeof n.name!=`string`)return{ok:!1,error:`Command name must be a string`};if(typeof n.description!=`string`)return{ok:!1,error:`Command description must be a string`};let r=n.name.trim(),i=n.description.trim();if(!i)return{ok:!1,error:`Command description cannot be empty`};let a=te(r);if(a)return{ok:!1,error:a};let o=`/${r.toLowerCase()}`;return x.has(o)?{ok:!1,error:`Command "${r}" already registered by plugin "${x.get(o).pluginId}"`}:(x.set(o,{...n,name:r,description:i,pluginId:t}),e(`Registered plugin command: ${o} (plugin: ${t})`),{ok:!0})}function re(){x.clear()}function ie(e){let t=e.trim();if(!t.startsWith(`/`))return null;let n=t.indexOf(` `),r=n===-1?t:t.slice(0,n),i=n===-1?void 0:t.slice(n+1).trim(),a=r.toLowerCase(),o=x.get(a);return!o||i&&!o.acceptsArgs?null:{command:o,args:i||void 0}}function w(e){if(!e)return;if(e.length>C)return e.slice(0,C);let t=``;for(let n of e){let e=n.charCodeAt(0);e<=31&&e!==9&&e!==10||e===127||(t+=n)}return t}async function T(t){let{command:n,args:r,senderId:i,channel:a,isAuthorizedSender:o,commandBody:s,config:c}=t;if(n.requireAuth!==!1&&!o)return e(`Plugin command /${n.name} blocked: unauthorized sender ${i||`<unknown>`}`),{text:`⚠️ This command requires authorization.`};let l=w(r),u={senderId:i,channel:a,channelId:t.channelId,isAuthorizedSender:o,args:l,commandBody:s,config:c,from:t.from,to:t.to,accountId:t.accountId,messageThreadId:t.messageThreadId};S=!0;try{let t=await n.handler(u);return e(`Plugin command /${n.name} executed successfully for ${i||`unknown`}`),t}catch(t){let r=t;return e(`Plugin command /${n.name} error: ${r.message}`),{text:`⚠️ Command failed. Please try again later.`}}finally{S=!1}}function E(){return Array.from(x.values()).map(e=>({name:e.name,description:e.description,pluginId:e.pluginId}))}function D(e,t){let n=t?.trim().toLowerCase(),r=n?e.nativeNames?.[n]:void 0;if(typeof r==`string`&&r.trim())return r.trim();let i=e.nativeNames?.default;return typeof i==`string`&&i.trim()?i.trim():e.name}function ae(e){return Array.from(x.values()).map(t=>({name:D(t,e),description:t.description,acceptsArgs:t.acceptsArgs??!1}))}function O(e,t){let n=e?.trim();if(!n){let e=t?.trim();return e?e.startsWith(`/`)?e:`/${e}`:null}return n.startsWith(`/`)?n:`/${n}`}function k(e){let t=e.replace(/\/{2,}/g,`/`);return t.length<=1?t:t.replace(/\/+$/,``)}function oe(e){try{return new URL(e,`http://localhost`).pathname}catch{return e}}function se(e){return k(oe(e).toLowerCase())||`/`}function A(e,t,n){let r=se(n);t.has(r)||(t.add(r),e.push(r))}function j(e,t=32){let n=[],r=new Set;A(n,r,e);let i=e,a=!1,o=0;for(let e=0;e<t;e++){let e=i;try{e=decodeURIComponent(i)}catch{a=!0;break}if(e===i)break;o+=1,i=e,A(n,r,i)}let s=!1;if(!a)try{s=decodeURIComponent(i)!==i}catch{a=!0}return{candidates:n,decodePasses:o,decodePassLimitReached:s,malformedEncoding:a}}function M(e){let{candidates:t}=j(e);return t[t.length-1]??`/`}function N(e){let{candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i}=j(e);return{canonicalPath:t[t.length-1]??`/`,candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i,rawNormalizedPath:k(e.toLowerCase())||`/`}}const P=[`/api/channels`];function F(e,t){return e===t||e.startsWith(`${t}/`)||e.startsWith(`${t}%`)}function I(e,t){let n=M(e.path),r=M(t.path);if(e.match===`exact`&&t.match===`exact`)return n===r;if(e.match===`prefix`&&t.match===`prefix`)return F(n,r)||F(r,n);let i=e.match===`prefix`?e:t;return F(M((e.match===`exact`?e:t).path),M(i.path))}function L(e,t){return e.find(e=>I(e,t))}const R=new Set([`before_model_resolve`,`before_prompt_build`,`before_agent_start`,`llm_input`,`llm_output`,`agent_end`,`before_compaction`,`after_compaction`,`before_reset`,`message_received`,`message_sending`,`message_sent`,`before_tool_call`,`after_tool_call`,`tool_result_persist`,`before_message_write`,`session_start`,`session_end`,`subagent_spawning`,`subagent_delivery_target`,`subagent_spawned`,`subagent_ended`,`gateway_start`,`gateway_stop`]),z=e=>typeof e==`string`&&R.has(e),B=new Set([`before_prompt_build`,`before_agent_start`]),V=e=>B.has(e),H=[`systemPrompt`,`prependContext`,`prependSystemContext`,`appendSystemContext`],U=e=>{if(!e||typeof e!=`object`)return e;let t={...e};for(let e of H)delete t[e];return Object.keys(t).length>0?t:void 0},W=e=>(t,n)=>{let r=e(t,n);return r&&typeof r==`object`&&`then`in r?Promise.resolve(r).then(e=>U(e)):U(r)};function G(){return{plugins:[],tools:[],hooks:[],typedHooks:[],channels:[],providers:[],gatewayHandlers:{},httpRoutes:[],cliRegistrars:[],services:[],commands:[],diagnostics:[]}}function K(e){let t=G(),i=new Set(Object.keys(e.coreGatewayHandlers??{})),a=e=>{t.diagnostics.push(e)},o=(e,n,r)=>{let i=r?.names??(r?.name?[r.name]:[]),a=r?.optional===!0,o=typeof n==`function`?n:e=>n;typeof n!=`function`&&i.push(n.name);let s=i.map(e=>e.trim()).filter(Boolean);s.length>0&&e.toolNames.push(...s),t.tools.push({pluginId:e.id,factory:o,names:s,optional:a,source:e.source})},s=(e,n,i,o,s)=>{let c=(Array.isArray(n)?n:[n]).map(e=>e.trim()).filter(Boolean),l=o?.entry??null,u=l?.hook.name??o?.name?.trim();if(!u){a({level:`warn`,pluginId:e.id,source:e.source,message:`hook registration missing name`});return}let d=l?.hook.description??o?.description??``,f=l?{...l,hook:{...l.hook,name:u,description:d,source:`openclaw-plugin`,pluginId:e.id},metadata:{...l.metadata,events:c}}:{hook:{name:u,description:d,source:`openclaw-plugin`,pluginId:e.id,filePath:e.source,baseDir:r.dirname(e.source),handlerPath:e.source},frontmatter:{},metadata:{events:c},invocation:{enabled:!0}};if(e.hookNames.push(u),t.hooks.push({pluginId:e.id,entry:f,events:c,source:e.source}),!(s?.hooks?.internal?.enabled!==!0||o?.register===!1))for(let e of c)_(e,i)},c=(e,n,r)=>{let o=n.trim();if(o){if(i.has(o)||t.gatewayHandlers[o]){a({level:`error`,pluginId:e.id,source:e.source,message:`gateway method already registered: ${o}`});return}t.gatewayHandlers[o]=r,e.gatewayMethods.push(o)}},l=e=>`${e.pluginId?.trim()||`unknown-plugin`} (${e.source?.trim()||`unknown-source`})`,u=(e,n)=>{let r=O(n.path);if(!r){a({level:`warn`,pluginId:e.id,source:e.source,message:`http route registration missing path`});return}if(n.auth!==`gateway`&&n.auth!==`plugin`){a({level:`error`,pluginId:e.id,source:e.source,message:`http route registration missing or invalid auth: ${r}`});return}let i=n.match??`exact`,o=L(t.httpRoutes,{path:r,match:i});if(o&&o.auth!==n.auth){a({level:`error`,pluginId:e.id,source:e.source,message:`http route overlap rejected: ${r} (${i}, ${n.auth}) overlaps ${o.path} (${o.match}, ${o.auth}) owned by ${l(o)}`});return}let s=t.httpRoutes.findIndex(e=>e.path===r&&e.match===i);if(s>=0){let o=t.httpRoutes[s];if(!o)return;if(!n.replaceExisting){a({level:`error`,pluginId:e.id,source:e.source,message:`http route already registered: ${r} (${i}) by ${l(o)}`});return}if(o.pluginId&&o.pluginId!==e.id){a({level:`error`,pluginId:e.id,source:e.source,message:`http route replacement rejected: ${r} (${i}) owned by ${l(o)}`});return}t.httpRoutes[s]={pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source};return}e.httpRoutes+=1,t.httpRoutes.push({pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source})},f=(e,n)=>{let r=typeof n.plugin==`object`?n:{plugin:n},i=r.plugin,o=typeof i?.id==`string`?i.id.trim():String(i?.id??``).trim();if(!o){a({level:`error`,pluginId:e.id,source:e.source,message:`channel registration missing id`});return}e.channelIds.push(o),t.channels.push({pluginId:e.id,plugin:i,dock:r.dock,source:e.source})},p=(e,n)=>{let r=typeof n?.id==`string`?n.id.trim():``;if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`provider registration missing id`});return}let i=t.providers.find(e=>e.provider.id===r);if(i){a({level:`error`,pluginId:e.id,source:e.source,message:`provider already registered: ${r} (${i.pluginId})`});return}e.providerIds.push(r),t.providers.push({pluginId:e.id,provider:n,source:e.source})},m=(e,n,r)=>{let i=(r?.commands??[]).map(e=>e.trim()).filter(Boolean);e.cliCommands.push(...i),t.cliRegistrars.push({pluginId:e.id,register:n,commands:i,source:e.source})},h=(e,n)=>{let r=n.id.trim();r&&(e.services.push(r),t.services.push({pluginId:e.id,service:n,source:e.source}))},g=(e,n)=>{let r=n.name.trim();if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration missing name`});return}let i=ne(e.id,n);if(!i.ok){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration failed: ${i.error}`});return}e.commands.push(r),t.commands.push({pluginId:e.id,command:n,source:e.source})},v=(e,n,r,i,o)=>{if(!z(n)){a({level:`warn`,pluginId:e.id,source:e.source,message:`unknown typed hook "${String(n)}" ignored`});return}let s=r;if(o?.allowPromptInjection===!1&&V(n)){if(n===`before_prompt_build`){a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" blocked by plugins.entries.${e.id}.hooks.allowPromptInjection=false`});return}n===`before_agent_start`&&(a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" prompt fields constrained by plugins.entries.${e.id}.hooks.allowPromptInjection=false`}),s=W(r))}e.hookCount+=1,t.typedHooks.push({pluginId:e.id,hookName:n,handler:s,priority:i?.priority,source:e.source})},y=e=>({info:e.info,warn:e.warn,error:e.error,debug:e.debug});return{registry:t,createApi:(t,r)=>({id:t.id,name:t.name,version:t.version,description:t.description,source:t.source,config:r.config,pluginConfig:r.pluginConfig,runtime:e.runtime,logger:y(e.logger),registerTool:(e,n)=>o(t,e,n),registerHook:(e,n,i)=>s(t,e,n,i,r.config),registerHttpRoute:e=>u(t,e),registerChannel:e=>f(t,e),registerProvider:e=>p(t,e),registerGatewayMethod:(e,n)=>c(t,e,n),registerCli:(e,n)=>m(t,e,n),registerService:e=>h(t,e),registerCommand:e=>g(t,e),registerContextEngine:(e,t)=>d(e,t),resolvePath:e=>n(e),on:(e,n,i)=>v(t,e,n,i,r.hookPolicy)}),pushDiagnostic:a,registerTool:o,registerChannel:f,registerProvider:p,registerGatewayMethod:c,registerCli:m,registerService:h,registerCommand:g,registerHook:s,registerTypedHook:v}}const q=Symbol.for(`openclaw.pluginRegistryState`),J=(()=>{let e=globalThis;return e[q]||(e[q]={registry:G(),key:null,version:0}),e[q]})();function ce(e,t){J.registry=e,J.key=t??null,J.version+=1}function le(){return J.registry}function Y(){return J.registry||(J.registry=G(),J.version+=1),J.registry}function ue(){return J.key}function de(){return J.version}const X=[`telegram`,`whatsapp`,`discord`,`irc`,`googlechat`,`slack`,`signal`,`imessage`,`line`],fe=[...X],Z={telegram:{id:`telegram`,label:`Telegram`,selectionLabel:`Telegram (Bot API)`,detailLabel:`Telegram Bot`,docsPath:`/channels/telegram`,docsLabel:`telegram`,blurb:`simplest way to get started — register a bot with @BotFather and get going.`,systemImage:`paperplane`,selectionDocsPrefix:``,selectionDocsOmitLabel:!0,selectionExtras:[`https://openclaw.ai`]},whatsapp:{id:`whatsapp`,label:`WhatsApp`,selectionLabel:`WhatsApp (QR link)`,detailLabel:`WhatsApp Web`,docsPath:`/channels/whatsapp`,docsLabel:`whatsapp`,blurb:`works with your own number; recommend a separate phone + eSIM.`,systemImage:`message`},discord:{id:`discord`,label:`Discord`,selectionLabel:`Discord (Bot API)`,detailLabel:`Discord Bot`,docsPath:`/channels/discord`,docsLabel:`discord`,blurb:`very well supported right now.`,systemImage:`bubble.left.and.bubble.right`},irc:{id:`irc`,label:`IRC`,selectionLabel:`IRC (Server + Nick)`,detailLabel:`IRC`,docsPath:`/channels/irc`,docsLabel:`irc`,blurb:`classic IRC networks with DM/channel routing and pairing controls.`,systemImage:`network`},googlechat:{id:`googlechat`,label:`Google Chat`,selectionLabel:`Google Chat (Chat API)`,detailLabel:`Google Chat`,docsPath:`/channels/googlechat`,docsLabel:`googlechat`,blurb:`Google Workspace Chat app with HTTP webhook.`,systemImage:`message.badge`},slack:{id:`slack`,label:`Slack`,selectionLabel:`Slack (Socket Mode)`,detailLabel:`Slack Bot`,docsPath:`/channels/slack`,docsLabel:`slack`,blurb:`supported (Socket Mode).`,systemImage:`number`},signal:{id:`signal`,label:`Signal`,selectionLabel:`Signal (signal-cli)`,detailLabel:`Signal REST`,docsPath:`/channels/signal`,docsLabel:`signal`,blurb:`signal-cli linked device; more setup (David Reagans: "Hop on Discord.").`,systemImage:`antenna.radiowaves.left.and.right`},imessage:{id:`imessage`,label:`iMessage`,selectionLabel:`iMessage (imsg)`,detailLabel:`iMessage`,docsPath:`/channels/imessage`,docsLabel:`imessage`,blurb:`this is still a work in progress.`,systemImage:`message.fill`},line:{id:`line`,label:`LINE`,selectionLabel:`LINE (Messaging API)`,detailLabel:`LINE Bot`,docsPath:`/channels/line`,docsLabel:`line`,blurb:`LINE Messaging API webhook bot.`,systemImage:`message`}},pe={imsg:`imessage`,"internet-relay-chat":`irc`,"google-chat":`googlechat`,gchat:`googlechat`},Q=e=>e?.trim().toLowerCase()||void 0;function me(){return X.map(e=>Z[e])}function he(e){return Z[e]}function $(e){let t=Q(e);if(!t)return null;let n=pe[t]??t;return X.includes(n)?n:null}function ge(e){return $(e)}function _e(e){let t=Q(e);return t?Y().channels.find(e=>{let n=String(e.plugin.id??``).trim().toLowerCase();return n&&n===t?!0:(e.plugin.meta.aliases??[]).some(e=>e.trim().toLowerCase()===t)})?.plugin.id??null:null}function ve(e){return`${e.label}: ${e.blurb}`}function ye(e,t){let n=e.selectionDocsPrefix??`Docs:`,r=e.docsLabel??e.id,i=e.selectionDocsOmitLabel?t(e.docsPath):t(e.docsPath,r),a=(e.selectionExtras??[]).filter(Boolean).join(` `);return`${e.label} — ${e.blurb} ${n?`${n} `:``}${i}${a?` ${a}`:``}`}export{y as A,T as C,v as D,ie as E,p as M,c as N,b as O,s as P,re as S,E as T,L as _,he as a,M as b,ge as c,ue as d,de as f,K as g,G as h,ye as i,d as j,_ as k,$ as l,ce as m,X as n,me as o,Y as p,ve as r,_e as s,fe as t,le as u,P as v,ae as w,O as x,N as y};
1
+ import{S as e,t}from"./subsystem-C5XF2Fy5.js";import{y as n}from"./utils-UGOV_184.js";import r from"node:path";const i={memory:`memory`,"context-engine":`contextEngine`},a={memory:`memory-core`,contextEngine:`legacy`};function o(e){return e?i[e]??null:null}function s(e){return a[e]}function c(e){let t=o(e.selectedKind);if(!t)return{config:e.config,warnings:[],changed:!1};let n=[],r=e.config.plugins??{},i=r.slots?.[t],a={...r.slots,[t]:e.selectedId},c=i??s(t);c&&c!==e.selectedId&&n.push(`Exclusive slot "${t}" switched from "${c}" to "${e.selectedId}".`);let l={...r.entries},u=[];if(e.registry)for(let t of e.registry.plugins){if(t.id===e.selectedId||t.kind!==e.selectedKind)continue;let n=l[t.id];(!n||n.enabled!==!1)&&(l[t.id]={...n,enabled:!1},u.push(t.id))}return u.length>0&&n.push(`Disabled other "${t}" slot plugins: ${u.toSorted().join(`, `)}.`),i!==e.selectedId||u.length>0?{config:{...e.config,plugins:{...r,slots:a,entries:l}},warnings:n,changed:!0}:{config:e.config,warnings:[],changed:!1}}const l=Symbol.for(`openclaw.contextEngineRegistryState`);function u(){let e=globalThis;return e[l]||(e[l]={engines:new Map}),e[l]}function d(e,t){u().engines.set(e,t)}function f(){return[...u().engines.keys()]}async function p(e){let t=e?.plugins?.slots?.contextEngine,n=typeof t==`string`&&t.trim()?t.trim():s(`contextEngine`),r=u().engines.get(n);if(!r)throw Error(`Context engine "${n}" is not registered. Available engines: ${f().join(`, `)||`(none)`}`);return r()}const m=globalThis,h=m.__openclaw_internal_hook_handlers__??=new Map,g=t(`internal-hooks`);function _(e,t){h.has(e)||h.set(e,[]),h.get(e).push(t)}function v(){h.clear()}async function y(e){let t=h.get(e.type)??[],n=h.get(`${e.type}:${e.action}`)??[],r=[...t,...n];if(r.length!==0)for(let t of r)try{await t(e)}catch(t){let n=t instanceof Error?t.message:String(t);g.error(`Hook error [${e.type}:${e.action}]: ${n}`)}}function b(e,t,n,r={}){return{type:e,action:t,sessionKey:n,context:r,timestamp:new Date,messages:[]}}const x=new Map;let S=!1;const C=4096,ee=new Set([`help`,`commands`,`status`,`whoami`,`context`,`stop`,`reset`,`new`,`compact`,`session`,`allowlist`,`approve`,`skill`,`verbose`,`reasoning`,`usage`,`tts`]);function te(e){let t=e.trim().toLowerCase();return t?/^[a-z][a-z0-9_-]*$/.test(t)?ee.has(t)?`Command name "${t}" is reserved by a built-in command`:null:`Command name must start with a letter and contain only letters, numbers, hyphens, and underscores`:`Command name cannot be empty`}function ne(t,n){if(S)return{ok:!1,error:`Cannot register commands while processing is in progress`};if(typeof n.handler!=`function`)return{ok:!1,error:`Command handler must be a function`};if(typeof n.name!=`string`)return{ok:!1,error:`Command name must be a string`};if(typeof n.description!=`string`)return{ok:!1,error:`Command description must be a string`};let r=n.name.trim(),i=n.description.trim();if(!i)return{ok:!1,error:`Command description cannot be empty`};let a=te(r);if(a)return{ok:!1,error:a};let o=`/${r.toLowerCase()}`;return x.has(o)?{ok:!1,error:`Command "${r}" already registered by plugin "${x.get(o).pluginId}"`}:(x.set(o,{...n,name:r,description:i,pluginId:t}),e(`Registered plugin command: ${o} (plugin: ${t})`),{ok:!0})}function re(){x.clear()}function ie(e){let t=e.trim();if(!t.startsWith(`/`))return null;let n=t.indexOf(` `),r=n===-1?t:t.slice(0,n),i=n===-1?void 0:t.slice(n+1).trim(),a=r.toLowerCase(),o=x.get(a);return!o||i&&!o.acceptsArgs?null:{command:o,args:i||void 0}}function w(e){if(!e)return;if(e.length>C)return e.slice(0,C);let t=``;for(let n of e){let e=n.charCodeAt(0);e<=31&&e!==9&&e!==10||e===127||(t+=n)}return t}async function T(t){let{command:n,args:r,senderId:i,channel:a,isAuthorizedSender:o,commandBody:s,config:c}=t;if(n.requireAuth!==!1&&!o)return e(`Plugin command /${n.name} blocked: unauthorized sender ${i||`<unknown>`}`),{text:`⚠️ This command requires authorization.`};let l=w(r),u={senderId:i,channel:a,channelId:t.channelId,isAuthorizedSender:o,args:l,commandBody:s,config:c,from:t.from,to:t.to,accountId:t.accountId,messageThreadId:t.messageThreadId};S=!0;try{let t=await n.handler(u);return e(`Plugin command /${n.name} executed successfully for ${i||`unknown`}`),t}catch(t){let r=t;return e(`Plugin command /${n.name} error: ${r.message}`),{text:`⚠️ Command failed. Please try again later.`}}finally{S=!1}}function E(){return Array.from(x.values()).map(e=>({name:e.name,description:e.description,pluginId:e.pluginId}))}function D(e,t){let n=t?.trim().toLowerCase(),r=n?e.nativeNames?.[n]:void 0;if(typeof r==`string`&&r.trim())return r.trim();let i=e.nativeNames?.default;return typeof i==`string`&&i.trim()?i.trim():e.name}function ae(e){return Array.from(x.values()).map(t=>({name:D(t,e),description:t.description,acceptsArgs:t.acceptsArgs??!1}))}function O(e,t){let n=e?.trim();if(!n){let e=t?.trim();return e?e.startsWith(`/`)?e:`/${e}`:null}return n.startsWith(`/`)?n:`/${n}`}function k(e){let t=e.replace(/\/{2,}/g,`/`);return t.length<=1?t:t.replace(/\/+$/,``)}function oe(e){try{return new URL(e,`http://localhost`).pathname}catch{return e}}function se(e){return k(oe(e).toLowerCase())||`/`}function A(e,t,n){let r=se(n);t.has(r)||(t.add(r),e.push(r))}function j(e,t=32){let n=[],r=new Set;A(n,r,e);let i=e,a=!1,o=0;for(let e=0;e<t;e++){let e=i;try{e=decodeURIComponent(i)}catch{a=!0;break}if(e===i)break;o+=1,i=e,A(n,r,i)}let s=!1;if(!a)try{s=decodeURIComponent(i)!==i}catch{a=!0}return{candidates:n,decodePasses:o,decodePassLimitReached:s,malformedEncoding:a}}function M(e){let{candidates:t}=j(e);return t[t.length-1]??`/`}function N(e){let{candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i}=j(e);return{canonicalPath:t[t.length-1]??`/`,candidates:t,decodePasses:n,decodePassLimitReached:r,malformedEncoding:i,rawNormalizedPath:k(e.toLowerCase())||`/`}}const P=[`/api/channels`];function F(e,t){return e===t||e.startsWith(`${t}/`)||e.startsWith(`${t}%`)}function I(e,t){let n=M(e.path),r=M(t.path);if(e.match===`exact`&&t.match===`exact`)return n===r;if(e.match===`prefix`&&t.match===`prefix`)return F(n,r)||F(r,n);let i=e.match===`prefix`?e:t;return F(M((e.match===`exact`?e:t).path),M(i.path))}function L(e,t){return e.find(e=>I(e,t))}const R=new Set([`before_model_resolve`,`before_prompt_build`,`before_agent_start`,`llm_input`,`llm_output`,`agent_end`,`before_compaction`,`after_compaction`,`before_reset`,`message_received`,`message_sending`,`message_sent`,`before_tool_call`,`after_tool_call`,`tool_result_persist`,`before_message_write`,`session_start`,`session_end`,`subagent_spawning`,`subagent_delivery_target`,`subagent_spawned`,`subagent_ended`,`gateway_start`,`gateway_stop`]),z=e=>typeof e==`string`&&R.has(e),B=new Set([`before_prompt_build`,`before_agent_start`]),V=e=>B.has(e),H=[`systemPrompt`,`prependContext`,`prependSystemContext`,`appendSystemContext`],U=e=>{if(!e||typeof e!=`object`)return e;let t={...e};for(let e of H)delete t[e];return Object.keys(t).length>0?t:void 0},W=e=>(t,n)=>{let r=e(t,n);return r&&typeof r==`object`&&`then`in r?Promise.resolve(r).then(e=>U(e)):U(r)};function G(){return{plugins:[],tools:[],hooks:[],typedHooks:[],channels:[],providers:[],gatewayHandlers:{},httpRoutes:[],cliRegistrars:[],services:[],commands:[],diagnostics:[]}}function K(e){let t=G(),i=new Set(Object.keys(e.coreGatewayHandlers??{})),a=e=>{t.diagnostics.push(e)},o=(e,n,r)=>{let i=r?.names??(r?.name?[r.name]:[]),a=r?.optional===!0,o=typeof n==`function`?n:e=>n;typeof n!=`function`&&i.push(n.name);let s=i.map(e=>e.trim()).filter(Boolean);s.length>0&&e.toolNames.push(...s),t.tools.push({pluginId:e.id,factory:o,names:s,optional:a,source:e.source})},s=(e,n,i,o,s)=>{let c=(Array.isArray(n)?n:[n]).map(e=>e.trim()).filter(Boolean),l=o?.entry??null,u=l?.hook.name??o?.name?.trim();if(!u){a({level:`warn`,pluginId:e.id,source:e.source,message:`hook registration missing name`});return}let d=l?.hook.description??o?.description??``,f=l?{...l,hook:{...l.hook,name:u,description:d,source:`openclaw-plugin`,pluginId:e.id},metadata:{...l.metadata,events:c}}:{hook:{name:u,description:d,source:`openclaw-plugin`,pluginId:e.id,filePath:e.source,baseDir:r.dirname(e.source),handlerPath:e.source},frontmatter:{},metadata:{events:c},invocation:{enabled:!0}};if(e.hookNames.push(u),t.hooks.push({pluginId:e.id,entry:f,events:c,source:e.source}),!(s?.hooks?.internal?.enabled!==!0||o?.register===!1))for(let e of c)_(e,i)},c=(e,n,r)=>{let o=n.trim();if(o){if(i.has(o)||t.gatewayHandlers[o]){a({level:`error`,pluginId:e.id,source:e.source,message:`gateway method already registered: ${o}`});return}t.gatewayHandlers[o]=r,e.gatewayMethods.push(o)}},l=e=>`${e.pluginId?.trim()||`unknown-plugin`} (${e.source?.trim()||`unknown-source`})`,u=(e,n)=>{let r=O(n.path);if(!r){a({level:`warn`,pluginId:e.id,source:e.source,message:`http route registration missing path`});return}if(n.auth!==`gateway`&&n.auth!==`plugin`){a({level:`error`,pluginId:e.id,source:e.source,message:`http route registration missing or invalid auth: ${r}`});return}let i=n.match??`exact`,o=L(t.httpRoutes,{path:r,match:i});if(o&&o.auth!==n.auth){a({level:`error`,pluginId:e.id,source:e.source,message:`http route overlap rejected: ${r} (${i}, ${n.auth}) overlaps ${o.path} (${o.match}, ${o.auth}) owned by ${l(o)}`});return}let s=t.httpRoutes.findIndex(e=>e.path===r&&e.match===i);if(s>=0){let o=t.httpRoutes[s];if(!o)return;if(!n.replaceExisting){a({level:`error`,pluginId:e.id,source:e.source,message:`http route already registered: ${r} (${i}) by ${l(o)}`});return}if(o.pluginId&&o.pluginId!==e.id){a({level:`error`,pluginId:e.id,source:e.source,message:`http route replacement rejected: ${r} (${i}) owned by ${l(o)}`});return}t.httpRoutes[s]={pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source};return}e.httpRoutes+=1,t.httpRoutes.push({pluginId:e.id,path:r,handler:n.handler,auth:n.auth,match:i,source:e.source})},f=(e,n)=>{let r=typeof n.plugin==`object`?n:{plugin:n},i=r.plugin,o=typeof i?.id==`string`?i.id.trim():String(i?.id??``).trim();if(!o){a({level:`error`,pluginId:e.id,source:e.source,message:`channel registration missing id`});return}e.channelIds.push(o),t.channels.push({pluginId:e.id,plugin:i,dock:r.dock,source:e.source})},p=(e,n)=>{let r=typeof n?.id==`string`?n.id.trim():``;if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`provider registration missing id`});return}let i=t.providers.find(e=>e.provider.id===r);if(i){a({level:`error`,pluginId:e.id,source:e.source,message:`provider already registered: ${r} (${i.pluginId})`});return}e.providerIds.push(r),t.providers.push({pluginId:e.id,provider:n,source:e.source})},m=(e,n,r)=>{let i=(r?.commands??[]).map(e=>e.trim()).filter(Boolean);e.cliCommands.push(...i),t.cliRegistrars.push({pluginId:e.id,register:n,commands:i,source:e.source})},h=(e,n)=>{let r=n.id.trim();r&&(e.services.push(r),t.services.push({pluginId:e.id,service:n,source:e.source}))},g=(e,n)=>{let r=n.name.trim();if(!r){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration missing name`});return}let i=ne(e.id,n);if(!i.ok){a({level:`error`,pluginId:e.id,source:e.source,message:`command registration failed: ${i.error}`});return}e.commands.push(r),t.commands.push({pluginId:e.id,command:n,source:e.source})},v=(e,n,r,i,o)=>{if(!z(n)){a({level:`warn`,pluginId:e.id,source:e.source,message:`unknown typed hook "${String(n)}" ignored`});return}let s=r;if(o?.allowPromptInjection===!1&&V(n)){if(n===`before_prompt_build`){a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" blocked by plugins.entries.${e.id}.hooks.allowPromptInjection=false`});return}n===`before_agent_start`&&(a({level:`warn`,pluginId:e.id,source:e.source,message:`typed hook "${n}" prompt fields constrained by plugins.entries.${e.id}.hooks.allowPromptInjection=false`}),s=W(r))}e.hookCount+=1,t.typedHooks.push({pluginId:e.id,hookName:n,handler:s,priority:i?.priority,source:e.source})},y=e=>({info:e.info,warn:e.warn,error:e.error,debug:e.debug});return{registry:t,createApi:(t,r)=>({id:t.id,name:t.name,version:t.version,description:t.description,source:t.source,config:r.config,pluginConfig:r.pluginConfig,runtime:e.runtime,logger:y(e.logger),registerTool:(e,n)=>o(t,e,n),registerHook:(e,n,i)=>s(t,e,n,i,r.config),registerHttpRoute:e=>u(t,e),registerChannel:e=>f(t,e),registerProvider:e=>p(t,e),registerGatewayMethod:(e,n)=>c(t,e,n),registerCli:(e,n)=>m(t,e,n),registerService:e=>h(t,e),registerCommand:e=>g(t,e),registerContextEngine:(e,t)=>d(e,t),resolvePath:e=>n(e),on:(e,n,i)=>v(t,e,n,i,r.hookPolicy)}),pushDiagnostic:a,registerTool:o,registerChannel:f,registerProvider:p,registerGatewayMethod:c,registerCli:m,registerService:h,registerCommand:g,registerHook:s,registerTypedHook:v}}const q=Symbol.for(`openclaw.pluginRegistryState`),J=(()=>{let e=globalThis;return e[q]||(e[q]={registry:G(),key:null,version:0}),e[q]})();function ce(e,t){J.registry=e,J.key=t??null,J.version+=1}function le(){return J.registry}function Y(){return J.registry||(J.registry=G(),J.version+=1),J.registry}function ue(){return J.key}function de(){return J.version}const X=[`telegram`,`whatsapp`,`discord`,`irc`,`googlechat`,`slack`,`signal`,`imessage`,`line`],fe=[...X],Z={telegram:{id:`telegram`,label:`Telegram`,selectionLabel:`Telegram (Bot API)`,detailLabel:`Telegram Bot`,docsPath:`/channels/telegram`,docsLabel:`telegram`,blurb:`simplest way to get started — register a bot with @BotFather and get going.`,systemImage:`paperplane`,selectionDocsPrefix:``,selectionDocsOmitLabel:!0,selectionExtras:[`https://openclaw.ai`]},whatsapp:{id:`whatsapp`,label:`WhatsApp`,selectionLabel:`WhatsApp (QR link)`,detailLabel:`WhatsApp Web`,docsPath:`/channels/whatsapp`,docsLabel:`whatsapp`,blurb:`works with your own number; recommend a separate phone + eSIM.`,systemImage:`message`},discord:{id:`discord`,label:`Discord`,selectionLabel:`Discord (Bot API)`,detailLabel:`Discord Bot`,docsPath:`/channels/discord`,docsLabel:`discord`,blurb:`very well supported right now.`,systemImage:`bubble.left.and.bubble.right`},irc:{id:`irc`,label:`IRC`,selectionLabel:`IRC (Server + Nick)`,detailLabel:`IRC`,docsPath:`/channels/irc`,docsLabel:`irc`,blurb:`classic IRC networks with DM/channel routing and pairing controls.`,systemImage:`network`},googlechat:{id:`googlechat`,label:`Google Chat`,selectionLabel:`Google Chat (Chat API)`,detailLabel:`Google Chat`,docsPath:`/channels/googlechat`,docsLabel:`googlechat`,blurb:`Google Workspace Chat app with HTTP webhook.`,systemImage:`message.badge`},slack:{id:`slack`,label:`Slack`,selectionLabel:`Slack (Socket Mode)`,detailLabel:`Slack Bot`,docsPath:`/channels/slack`,docsLabel:`slack`,blurb:`supported (Socket Mode).`,systemImage:`number`},signal:{id:`signal`,label:`Signal`,selectionLabel:`Signal (signal-cli)`,detailLabel:`Signal REST`,docsPath:`/channels/signal`,docsLabel:`signal`,blurb:`signal-cli linked device; more setup (David Reagans: "Hop on Discord.").`,systemImage:`antenna.radiowaves.left.and.right`},imessage:{id:`imessage`,label:`iMessage`,selectionLabel:`iMessage (imsg)`,detailLabel:`iMessage`,docsPath:`/channels/imessage`,docsLabel:`imessage`,blurb:`this is still a work in progress.`,systemImage:`message.fill`},line:{id:`line`,label:`LINE`,selectionLabel:`LINE (Messaging API)`,detailLabel:`LINE Bot`,docsPath:`/channels/line`,docsLabel:`line`,blurb:`LINE Messaging API webhook bot.`,systemImage:`message`}},pe={imsg:`imessage`,"internet-relay-chat":`irc`,"google-chat":`googlechat`,gchat:`googlechat`},Q=e=>e?.trim().toLowerCase()||void 0;function me(){return X.map(e=>Z[e])}function he(e){return Z[e]}function $(e){let t=Q(e);if(!t)return null;let n=pe[t]??t;return X.includes(n)?n:null}function ge(e){return $(e)}function _e(e){let t=Q(e);return t?Y().channels.find(e=>{let n=String(e.plugin.id??``).trim().toLowerCase();return n&&n===t?!0:(e.plugin.meta.aliases??[]).some(e=>e.trim().toLowerCase()===t)})?.plugin.id??null:null}function ve(e){return`${e.label}: ${e.blurb}`}function ye(e,t){let n=e.selectionDocsPrefix??`Docs:`,r=e.docsLabel??e.id,i=e.selectionDocsOmitLabel?t(e.docsPath):t(e.docsPath,r),a=(e.selectionExtras??[]).filter(Boolean).join(` `);return`${e.label} — ${e.blurb} ${n?`${n} `:``}${i}${a?` ${a}`:``}`}export{y as A,T as C,v as D,ie as E,p as M,c as N,b as O,s as P,re as S,E as T,L as _,he as a,M as b,ge as c,ue as d,de as f,K as g,G as h,ye as i,d as j,_ as k,$ as l,ce as m,X as n,me as o,Y as p,ve as r,_e as s,fe as t,le as u,P as v,ae as w,O as x,N as y};