openclaw-multi-auto 1.6.7 → 1.6.8

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 (329) hide show
  1. package/dist/{accounts-BPt-s1cW.js → accounts-4vg8osA5.js} +7 -7
  2. package/dist/{accounts-C_lW3Ag9.js → accounts-BOzyfwW4.js} +2 -2
  3. package/dist/{accounts-CC3alHma.js → accounts-BgOnManD.js} +1 -1
  4. package/dist/{accounts-CNIODbBr.js → accounts-CXo4Ac3z.js} +1 -1
  5. package/dist/{accounts-C9HcPI9h.js → accounts-L9ByEpnP.js} +2 -2
  6. package/dist/{accounts-Tgelvk0C.js → accounts-yfBeCZtS.js} +17 -17
  7. package/dist/{acp-cli-DjB0ovMh.js → acp-cli-B2w71bEK.js} +8 -8
  8. package/dist/{active-listener-BEdprTkn.js → active-listener-D1yqT1cw.js} +2 -2
  9. package/dist/{agent-scope-CNJUPFcR.js → agent-scope-BbO_VBbv.js} +17 -17
  10. package/dist/{agents.config-Dh5Lcv4N.js → agents.config-y8kHMoox.js} +2 -2
  11. package/dist/{api-key-rotation-PzGuOQm_.js → api-key-rotation-CzacqD3s.js} +1 -1
  12. package/dist/{api-key-rotation-BJpKWXy0.js → api-key-rotation-DtsNS2Nb.js} +2 -2
  13. package/dist/{audio-preflight-DOYiMo_d.js → audio-preflight-CiANHFx-.js} +34 -34
  14. package/dist/{audio-preflight-BMvgEQ5j.js → audio-preflight-DoPfNXDz.js} +32 -32
  15. package/dist/{audio-transcription-runner-sLK1yiya.js → audio-transcription-runner-B9-J1DUd.js} +23 -23
  16. package/dist/{audio-transcription-runner-gLFfz8fr.js → audio-transcription-runner-CzjuH3uL.js} +12 -12
  17. package/dist/{audit-BSvn3dTQ.js → audit-BBbzzHkv.js} +29 -29
  18. package/dist/{audit-membership-runtime-Dntemq07.js → audit-membership-runtime-DWyHWAHM.js} +4 -4
  19. package/dist/{auth-C_LDvTxu.js → auth-B_YGaEcP.js} +1 -1
  20. package/dist/{auth-choice-Bu5kPuhF.js → auth-choice-CV87PVB8.js} +11 -11
  21. package/dist/{auth-choice-fpoHu7pV.js → auth-choice-gf8aEhcg.js} +13 -13
  22. package/dist/{auth-choice.apply-helpers-RNa-mjTS.js → auth-choice.apply-helpers-IK7zIZHi.js} +1 -1
  23. package/dist/{auth-token-CktupXSw.js → auth-token-D2V9CMur.js} +1 -1
  24. package/dist/{bonjour-discovery-DvVDs7rm.js → bonjour-discovery-BC_XEtg4.js} +1 -1
  25. package/dist/{browser-cli-DuYjaYLJ.js → browser-cli-BEWtuR6r.js} +12 -12
  26. package/dist/build-info.json +3 -3
  27. package/dist/bundled/boot-md/handler.js +51 -51
  28. package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
  29. package/dist/bundled/command-logger/handler.js +2 -2
  30. package/dist/bundled/session-memory/handler.js +51 -51
  31. package/dist/{call-eK-5ynwM.js → call-YJ9zjeji.js} +10 -10
  32. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  33. package/dist/{channel-account-context-BQD0zpuF.js → channel-account-context-CJ_25Q5X.js} +5 -5
  34. package/dist/{channel-activity-w-iWKqZg.js → channel-activity-BHb0aL0J.js} +1 -1
  35. package/dist/{channel-activity-BDnjYF7B.js → channel-activity-xHOMiarp.js} +3 -3
  36. package/dist/{channel-options-o5oDDArl.js → channel-options-8OGfdfdc.js} +3 -3
  37. package/dist/{channel-selection-HaUsJ3kL.js → channel-selection-D21oKnM0.js} +1 -1
  38. package/dist/{channel-web-JuhY6j_M.js → channel-web-BXHQWjc6.js} +16 -16
  39. package/dist/{channels-cli-aZhDWAhv.js → channels-cli-ByTcIaZC.js} +92 -92
  40. package/dist/{channels-status-issues-Bi69DlUp.js → channels-status-issues-Cva3QRlu.js} +1 -1
  41. package/dist/{chrome-CQR5U4Oc.js → chrome-DBMFZ1ho.js} +4 -4
  42. package/dist/{chrome-DxxEKrY7.js → chrome-DlhJHqj8.js} +26 -26
  43. package/dist/{clawbot-cli-DJzN7m49.js → clawbot-cli-DpZDxNOd.js} +11 -11
  44. package/dist/cli/daemon-cli.js +1 -1
  45. package/dist/{cli-fGEJw7Bh.js → cli-bsDX2k8k.js} +72 -72
  46. package/dist/{client-BEwDNigg.js → client-D9sBKoZI.js} +2 -2
  47. package/dist/{command-secret-targets-qpSAI_K2.js → command-secret-targets-SH5qP5X_.js} +4 -4
  48. package/dist/{commands-BaXA2bSJ.js → commands-DUzVNM-Q.js} +1 -1
  49. package/dist/{commands-registry-D-nkNP-x.js → commands-registry-C2INbVUe.js} +3 -3
  50. package/dist/{commands-registry-D5qXbFJn.js → commands-registry-V1zZ5pPC.js} +4 -4
  51. package/dist/{completion-cli-D-Vt6klA.js → completion-cli-4GVy2WHG.js} +12 -12
  52. package/dist/{config-cli-D7CkjeZo.js → config-cli-ByWpkmkG.js} +7 -7
  53. package/dist/{config-guard-B1hrQ4RG.js → config-guard-ofLFxSQh.js} +16 -16
  54. package/dist/{config-validation-CZ59Kb8S.js → config-validation-9QNDxE74.js} +3 -3
  55. package/dist/{configure-BTMq-WnT.js → configure-JiVnjIlt.js} +17 -17
  56. package/dist/{control-ui-assets-DR9xNC3f.js → control-ui-assets-D7bG2PFs.js} +1 -1
  57. package/dist/{cron-cli-CvFNRfgv.js → cron-cli-DuHdcQFw.js} +11 -11
  58. package/dist/{daemon-cli-Bb7Q2DPz.js → daemon-cli-Do_4dH0e.js} +15 -15
  59. package/dist/{daemon-install-mDWE60H-.js → daemon-install-C0_0OAHU.js} +4 -4
  60. package/dist/{daemon-install-helpers-BYWgt_7u.js → daemon-install-helpers-Pex1FHrG.js} +11 -11
  61. package/dist/{deliver-DuqANTNs.js → deliver-B05oD9oA.js} +7 -7
  62. package/dist/{deliver-DbdywYJE.js → deliver-CApVJA_l.js} +21 -21
  63. package/dist/deliver-runtime-D1z-h5eg.js +36 -0
  64. package/dist/deliver-runtime-DGrrnFpY.js +61 -0
  65. package/dist/deps-send-discord.runtime-DAPWkSXf.js +36 -0
  66. package/dist/deps-send-discord.runtime-DnbhTFX9.js +26 -0
  67. package/dist/deps-send-imessage.runtime-BOiQ6mDx.js +25 -0
  68. package/dist/deps-send-imessage.runtime-DWqR6W7h.js +35 -0
  69. package/dist/deps-send-signal.runtime-CTcl388M.js +24 -0
  70. package/dist/deps-send-signal.runtime-Ce60L81Z.js +34 -0
  71. package/dist/deps-send-slack.runtime-CCqBz4Kg.js +22 -0
  72. package/dist/deps-send-slack.runtime-s0pqdhHR.js +32 -0
  73. package/dist/deps-send-telegram.runtime-DGSKTCpH.js +27 -0
  74. package/dist/{deps-send-telegram.runtime-TOpNwBFj.js → deps-send-telegram.runtime-IVPYXaID.js} +16 -16
  75. package/dist/deps-send-whatsapp.runtime-Dz_4fi2D.js +60 -0
  76. package/dist/deps-send-whatsapp.runtime-bRJ5Zed1.js +118 -0
  77. package/dist/{devices-cli-DVXzYwja.js → devices-cli-D0SxzElB.js} +8 -8
  78. package/dist/{diagnostic-Co6Kghr-.js → diagnostic-Bn4PZjMZ.js} +2 -2
  79. package/dist/{diagnostic-CL9h6IXx.js → diagnostic-v2TGEcgC.js} +1 -1
  80. package/dist/{diagnostics-CwWdfrvB.js → diagnostics-CBcbp7BB.js} +5 -5
  81. package/dist/{directory-cli-DL2TKoz1.js → directory-cli-A0q9Ftjc.js} +7 -7
  82. package/dist/{dns-cli-DOHzu8H-.js → dns-cli-hyt6Wvvq.js} +5 -5
  83. package/dist/{dock-BR4hdehX.js → dock-SpSqP4RS.js} +4 -4
  84. package/dist/{docs-cli-D1S8CZJy.js → docs-cli-CJfXaxzc.js} +4 -4
  85. package/dist/{doctor-completion-CkEHCVMO.js → doctor-completion-CDRZEttH.js} +2 -2
  86. package/dist/{doctor-config-flow-DQNZsEku.js → doctor-config-flow-kZl_wy2A.js} +15 -15
  87. package/dist/{enable-V7r6GCwn.js → enable-B27E5MMW.js} +1 -1
  88. package/dist/{errors-xt401nuk.js → errors-CCLeFWAg.js} +1 -1
  89. package/dist/{exec-approvals-allowlist-CtUT02un.js → exec-approvals-allowlist-BOUCQu6B.js} +1 -1
  90. package/dist/{exec-approvals-cli-CsCqi3wl.js → exec-approvals-cli-_cqBqjTA.js} +16 -16
  91. package/dist/{exec-safe-bin-runtime-policy-CSBwsuHS.js → exec-safe-bin-runtime-policy-CkhpnueN.js} +2 -2
  92. package/dist/{fetch-DuraYswo.js → fetch-BlJWzEP6.js} +5 -5
  93. package/dist/{fetch-guard-DWr0d00H.js → fetch-guard-ChYBwfiy.js} +2 -2
  94. package/dist/{fetch-guard-Ca0W-yZr.js → fetch-guard-NyNh7p-s.js} +1 -1
  95. package/dist/{frontmatter-BkTfEZ93.js → frontmatter-CvaMP376.js} +3 -3
  96. package/dist/{fs-safe-CTYUrIgQ.js → fs-safe-0jAo_Whb.js} +4 -4
  97. package/dist/{fs-safe-D_adQJX4.js → fs-safe-mG29clJ9.js} +24 -24
  98. package/dist/{gateway-cli-C5cq5Fv9.js → gateway-cli-94YTdTAa.js} +152 -152
  99. package/dist/{gateway-rpc-C32KFHnD.js → gateway-rpc-NhXLPpJx.js} +1 -1
  100. package/dist/{github-copilot-token-BDioPmd6.js → github-copilot-token-D13V9YBz.js} +7 -7
  101. package/dist/{health-yuGFUIWJ.js → health-B99KJscL.js} +11 -11
  102. package/dist/{hooks-cli-CXWcvFYo.js → hooks-cli-C01QhY4h.js} +80 -80
  103. package/dist/{hooks-status-Bjjm7teR.js → hooks-status-CZNGtyrM.js} +1 -1
  104. package/dist/{image-eT7Y-nP5.js → image-B3Mz7N5I.js} +6 -6
  105. package/dist/{image-CDKYPK1-.js → image-BaqqhHHh.js} +5 -5
  106. package/dist/{image-ops-BTwvusXV.js → image-ops-CKnT_r12.js} +10 -10
  107. package/dist/{image-ops-BuUnEOE0.js → image-ops-CehkHxmW.js} +2 -2
  108. package/dist/image-runtime-D9iVXh4M.js +55 -0
  109. package/dist/image-runtime-DWjhow2W.js +29 -0
  110. package/dist/index.js +82 -82
  111. package/dist/{inspect-lNlGLW_c.js → inspect-XHunUBlV.js} +4 -4
  112. package/dist/{install-safe-path-BNRYD-KJ.js → install-safe-path-om__n8TQ.js} +25 -25
  113. package/dist/{installs-BB_8nllr.js → installs-Z0VR0SY2.js} +9 -9
  114. package/dist/{ipv4-CPzn5xIX.js → ipv4-NJiClroF.js} +1 -1
  115. package/dist/{ir-BdjoGJyL.js → ir-ChJe1hY6.js} +8 -8
  116. package/dist/{ir-B83looB-.js → ir-DAP-B-Xw.js} +8 -8
  117. package/dist/{issue-format-D_MHPECu.js → issue-format-G-7IkANX.js} +1 -1
  118. package/dist/{json-files-DIEpaxUj.js → json-files-D6M304Qd.js} +8 -8
  119. package/dist/{legacy-names-DOC03BkU.js → legacy-names-TyzbVqa_.js} +1 -1
  120. package/dist/{lifecycle-core-C2u5W-Xd.js → lifecycle-core-BcIuIPMF.js} +5 -5
  121. package/dist/llm-slug-generator.js +51 -51
  122. package/dist/{local-roots-_noFNwvo.js → local-roots-BCYAjsgu.js} +3 -3
  123. package/dist/{logger-BfjWMCSD.js → logger-DMZQQtxK.js} +7 -7
  124. package/dist/{login-CbJ7lelX.js → login-D7cZyPrd.js} +3 -3
  125. package/dist/{login-CrIwcrVI.js → login-DiCctRo1.js} +5 -5
  126. package/dist/{login-qr-9cwofnkY.js → login-qr-DPVFxhjZ.js} +6 -6
  127. package/dist/{login-qr-BpPDZdl_.js → login-qr-MUbXgjtd.js} +10 -10
  128. package/dist/{logs-cli-RYm8XZEC.js → logs-cli-CtEDxmDk.js} +9 -9
  129. package/dist/{manager-1bvuGrNR.js → manager-BW_NSIMl.js} +13 -13
  130. package/dist/{manager-Dbz9CyPw.js → manager-CSnZM2Iw.js} +14 -14
  131. package/dist/manager-runtime-BN6VevdC.js +18 -0
  132. package/dist/{manager-runtime-DsniMUxY.js → manager-runtime-aMwRbhZ3.js} +9 -9
  133. package/dist/{manifest-registry-QfHOpQrg.js → manifest-registry-D74D25g7.js} +1 -1
  134. package/dist/{memory-cli-CLBPPSow.js → memory-cli-CCMIlraX.js} +12 -12
  135. package/dist/{model-CfB7nuUK.js → model-CnHxvu4o.js} +2 -2
  136. package/dist/{model-catalog-BH55qLYK.js → model-catalog-QXAt20Vy.js} +3 -3
  137. package/dist/{model-picker-D3xDEPDv.js → model-picker-ByrLHc9_.js} +4 -4
  138. package/dist/{model-selection-DZM1M4yx.js → model-selection-DqSNdtby.js} +16 -16
  139. package/dist/{model-selection-Dna0Gz1k.js → model-selection-idoqPmw0.js} +43 -43
  140. package/dist/{models-cli-DlFeSGXD.js → models-cli-C0mrlgSL.js} +81 -81
  141. package/dist/{models-config-BLJwyO9D.js → models-config-5EhgxVMQ.js} +6 -6
  142. package/dist/{node-cli-Dcn7Lxvr.js → node-cli-DdKfRYhS.js} +33 -33
  143. package/dist/{node-command-policy-DfcI_g5B.js → node-command-policy-D-hu0n3w.js} +1 -1
  144. package/dist/{node-service-CIXWfpdM.js → node-service--hFCI8Ok.js} +1 -1
  145. package/dist/{nodes-cli-CtIY3Wdi.js → nodes-cli-BmjFvKQh.js} +16 -16
  146. package/dist/{nodes-screen-DgLXnfNX.js → nodes-screen-CCNot0xV.js} +7 -7
  147. package/dist/{npm-pack-install-BmT2Qku8.js → npm-pack-install-DSR8-nhr.js} +18 -18
  148. package/dist/{npm-resolution-Ch4kSz-J.js → npm-resolution-dr4H2dBm.js} +4 -4
  149. package/dist/{onboard-pvZeQwGW.js → onboard-CyDS1PdS.js} +6 -6
  150. package/dist/{onboard-channels-CZMeimvm.js → onboard-channels-QzPuUsu5.js} +21 -21
  151. package/dist/{onboard-custom-Bk9lP_gS.js → onboard-custom-pyXzjp5z.js} +4 -4
  152. package/dist/{onboard-helpers-C51uqagK.js → onboard-helpers-ByC3v1-U.js} +10 -10
  153. package/dist/{onboard-hooks-B4RFbzBs.js → onboard-hooks-C2cFv3_-.js} +4 -4
  154. package/dist/{onboard-remote-CmB2v7g1.js → onboard-remote-DHZv5w4W.js} +4 -4
  155. package/dist/{onboard-skills-B52kyElD.js → onboard-skills-D_R383gZ.js} +4 -4
  156. package/dist/{onboarding-BQS8Nd_E.js → onboarding-Df6qbE08.js} +14 -14
  157. package/dist/{onboarding.finalize-1BqhSubV.js → onboarding.finalize-DkEbxmLj.js} +85 -85
  158. package/dist/{onboarding.gateway-config-BIkI8VxE.js → onboarding.gateway-config-DttU83Zb.js} +18 -18
  159. package/dist/{onboarding.secret-input-Dz6lMbgK.js → onboarding.secret-input-BJILGy22.js} +1 -1
  160. package/dist/{openai-model-default-LC7S-YJ9.js → openai-model-default-uuDOWnTl.js} +2 -2
  161. package/dist/{openclaw-root-DG6I1Pl4.js → openclaw-root-DeEQQJyX.js} +8 -8
  162. package/dist/{outbound-C2sayF6_.js → outbound-B0HGMG3V.js} +3 -3
  163. package/dist/{outbound-ChDjtuD6.js → outbound-C2kanETZ.js} +6 -6
  164. package/dist/{outbound-attachment-BMKxLFNL.js → outbound-attachment-Ccf9O8B8.js} +2 -2
  165. package/dist/{outbound-attachment-DqHlD21U.js → outbound-attachment-DBrYWX8h.js} +2 -2
  166. package/dist/{pairing-cli-BiogXen1.js → pairing-cli-L76jWxbm.js} +8 -8
  167. package/dist/{pairing-labels-OxEX3p5e.js → pairing-labels-D9vsJ1yc.js} +1 -1
  168. package/dist/{pairing-store-CxcCXceV.js → pairing-store-qlIFCeZB.js} +3 -3
  169. package/dist/{path-alias-guards-CY88Htx_.js → path-alias-guards-BzAaCM2k.js} +3 -3
  170. package/dist/{path-alias-guards-BzvdLvTI.js → path-alias-guards-DqXRZmsL.js} +1 -1
  171. package/dist/{path-safety-dy_YlK3a.js → path-safety-BtMBl7vC.js} +1 -1
  172. package/dist/{paths-C48pWRFv.js → paths-1ThfklTP.js} +9 -9
  173. package/dist/{paths-Cvc9EM8Y.js → paths-C6TxBCvO.js} +5 -5
  174. package/dist/{paths-Bkr-BCxW.js → paths-CCxysrzL.js} +4 -4
  175. package/dist/{pi-embedded-BQQa91aA.js → pi-embedded-bcjMe3wj.js} +167 -167
  176. package/dist/{pi-embedded-helpers-CLXm10bV.js → pi-embedded-helpers-D5yyGEvA.js} +52 -52
  177. package/dist/{pi-embedded-helpers-CuG0ngBL.js → pi-embedded-helpers-DXrnVbBZ.js} +6 -6
  178. package/dist/{pi-model-discovery-Dymwdjt0.js → pi-model-discovery-BGgOlX8N.js} +7 -7
  179. package/dist/{pi-model-discovery-Drm3mYtt.js → pi-model-discovery-BKbDxeIp.js} +1 -1
  180. package/dist/pi-model-discovery-runtime-Bwmi4Ev8.js +11 -0
  181. package/dist/{pi-model-discovery-runtime-CCZ87Xog.js → pi-model-discovery-runtime-CpLmZvoC.js} +5 -5
  182. package/dist/{pi-tools.before-tool-call.runtime-CxMxsbgT.js → pi-tools.before-tool-call.runtime-81kH9GUj.js} +5 -5
  183. package/dist/{pi-tools.before-tool-call.runtime-Cwab_5W1.js → pi-tools.before-tool-call.runtime-BuLxSyx9.js} +9 -9
  184. package/dist/{pi-tools.policy-DaB-Ff9f.js → pi-tools.policy-BC7YGcon.js} +5 -5
  185. package/dist/{plugin-auto-enable-DOlffoVt.js → plugin-auto-enable-CIeegxhY.js} +3 -3
  186. package/dist/{plugin-registry-DfKKSRKU.js → plugin-registry-D8JSGXQX.js} +3 -3
  187. package/dist/plugin-sdk/signal.js +2 -2
  188. package/dist/{plugins-4Rj4OjLY.js → plugins-CWkRQYDj.js} +11 -11
  189. package/dist/{plugins-DaN4Jp7R.js → plugins-TLur5wHC.js} +2 -2
  190. package/dist/{plugins-cli-540srne6.js → plugins-cli-e8svgZ6i.js} +82 -82
  191. package/dist/{ports-DX1Cxj7W.js → ports-BE9ZTYml.js} +1 -1
  192. package/dist/{ports-B6f6PDVD.js → ports-CfTWPxj9.js} +2 -2
  193. package/dist/{program-context-iEkoyF3D.js → program-context-DNYbQrvx.js} +41 -41
  194. package/dist/{prompt-select-styled-C1MS6ea1.js → prompt-select-styled-B7A4T4-F.js} +40 -40
  195. package/dist/{provider-auth-helpers-BeZKOpzW.js → provider-auth-helpers-DolkcfyF.js} +5 -5
  196. package/dist/{proxy-env-DlmzDx8x.js → proxy-env-Cq5gdrbj.js} +1 -1
  197. package/dist/{proxy-env-R4DbTLy-.js → proxy-env-hdF2jCzB.js} +1 -1
  198. package/dist/{proxy-fetch-B2pEfjbR.js → proxy-fetch-CCjEYbFm.js} +1 -1
  199. package/dist/{push-apns-wRpQOiqI.js → push-apns-COJt9ulg.js} +5 -5
  200. package/dist/{pw-ai-DNMjFMqH.js → pw-ai-CDQDCfUa.js} +14 -14
  201. package/dist/{pw-ai-DP_aLfwB.js → pw-ai-CICkGw_S.js} +18 -18
  202. package/dist/{qmd-manager-BtIKUaO9.js → qmd-manager-BsYsO9Ii.js} +10 -10
  203. package/dist/{qmd-manager-DP6UdQoL.js → qmd-manager-CT6j2ntm.js} +20 -20
  204. package/dist/{qr-cli-7lXeTSek.js → qr-cli-CKPDy5Oq.js} +2 -2
  205. package/dist/{query-expansion-bOaotSTR.js → query-expansion-DmxOigqX.js} +12 -12
  206. package/dist/{query-expansion-CX-1fS52.js → query-expansion-DtLc3wjL.js} +6 -6
  207. package/dist/{redact-COik8ET1.js → redact-ClbcYG1J.js} +1 -1
  208. package/dist/{redact-snapshot-D6W9dz8Q.js → redact-snapshot-C6NRnnHx.js} +1 -1
  209. package/dist/{register.agent-Bjkfci3x.js → register.agent-D4BrsIbk.js} +97 -97
  210. package/dist/register.configure-B8qyHllb.js +164 -0
  211. package/dist/{register.maintenance-ErXA_uuU.js → register.maintenance-x2-poSUG.js} +93 -93
  212. package/dist/{register.message-vHhFsp94.js → register.message-NeUR5N0O.js} +73 -73
  213. package/dist/{register.onboard-BgvfFczx.js → register.onboard-Cdh-N4A9.js} +18 -18
  214. package/dist/{register.setup-Bel3kQD6.js → register.setup-B3ADFeTG.js} +21 -21
  215. package/dist/{register.status-health-sessions-BEhwEKZV.js → register.status-health-sessions-zRCJ2e-L.js} +86 -86
  216. package/dist/{reply-9D8ZuOqr.js → reply-BFrmGuXU.js} +149 -149
  217. package/dist/{rpc-BSqhmmbX.js → rpc-DUJUbW2t.js} +1 -1
  218. package/dist/{run-with-concurrency-BgYfgkXT.js → run-with-concurrency-D_ZpbgEG.js} +4 -4
  219. package/dist/{runtime-BHbS8ZHw.js → runtime-DTxtPm0I.js} +3 -3
  220. package/dist/{runtime-config-collectors-CXxR70dG.js → runtime-config-collectors-BEvlZaJw.js} +1 -1
  221. package/dist/{runtime-whatsapp-login.runtime-BkF8zMbl.js → runtime-whatsapp-login.runtime-DLNWSVqX.js} +7 -7
  222. package/dist/runtime-whatsapp-login.runtime-IeylZEl4.js +13 -0
  223. package/dist/runtime-whatsapp-outbound.runtime-ClBRuLsq.js +22 -0
  224. package/dist/runtime-whatsapp-outbound.runtime-bK_Rub3q.js +32 -0
  225. package/dist/{sandbox-HvaJFfqL.js → sandbox-C0HLb5d5.js} +18 -18
  226. package/dist/{sandbox-cli-Cyu9YZx0.js → sandbox-cli-CHpGeoro.js} +25 -25
  227. package/dist/{secrets-cli-B-aLO0SY.js → secrets-cli-DgQQmw65.js} +11 -11
  228. package/dist/{security-cli-DZTjYQ-D.js → security-cli-W-7xXDn1.js} +42 -42
  229. package/dist/{send-dfu6_rgf.js → send-BQERFNyo.js} +5 -5
  230. package/dist/{send-BlhxqBI9.js → send-BUFnD0eE.js} +6 -6
  231. package/dist/{send-L7gRiwyd.js → send-Bj776ESJ.js} +7 -7
  232. package/dist/{send-BcAN5-hD.js → send-CJrrDXqE.js} +11 -11
  233. package/dist/{send-CVzWMFl1.js → send-D3BV3zCy.js} +8 -8
  234. package/dist/{send-PE6cwoTe.js → send-DcxmcFi_.js} +8 -8
  235. package/dist/{send-C9SevGlM.js → send-Ddtb8gLT.js} +4 -4
  236. package/dist/{send-6lz6rNVP.js → send-Dx2RkUOZ.js} +6 -6
  237. package/dist/{send-7ekhdACO.js → send-tsYgRPrs.js} +5 -5
  238. package/dist/{send-BHTiZcH3.js → send-vmONuVgL.js} +26 -26
  239. package/dist/{server-ChrqZt3H.js → server-Bzgq55gk.js} +20 -20
  240. package/dist/{server-context-BhpOEoCB.js → server-context-DCpD_bA8.js} +12 -12
  241. package/dist/{server-lifecycle-BYHavdLd.js → server-lifecycle-B2SzHMkK.js} +2 -2
  242. package/dist/{server-middleware-BzsDWK_f.js → server-middleware-C_u_M_FK.js} +1 -1
  243. package/dist/{server-node-events-CN7o3YoN.js → server-node-events-BS0Yy6SL.js} +73 -73
  244. package/dist/{service-qQCNqvmY.js → service-DhcBUav5.js} +15 -15
  245. package/dist/{session-D8ImowSs.js → session-A4QhBRvH.js} +8 -8
  246. package/dist/{session-CdQJLohq.js → session-D6FZ4tQ8.js} +1 -1
  247. package/dist/{sessions-Fm2Lx117.js → sessions-CRTJuMXp.js} +15 -15
  248. package/dist/{shared-CWdEWtsZ.js → shared-BXXG3vT8.js} +3 -3
  249. package/dist/{shared-26KZSqMI.js → shared-DOUEV_Eq.js} +1 -1
  250. package/dist/{skill-commands-De4NUpNz.js → skill-commands-BgzZkiJz.js} +5 -5
  251. package/dist/{skill-commands-DNqJ-kwn.js → skill-commands-CMzBZKG2.js} +9 -9
  252. package/dist/{skill-scanner-BtrQE0gO.js → skill-scanner-DcrwF2Fr.js} +6 -6
  253. package/dist/{skills-Sy3onNq_.js → skills-4CjDh8J_.js} +3 -3
  254. package/dist/{skills-7ODkHQYp.js → skills-CE_iqvM5.js} +22 -22
  255. package/dist/{skills-cli-DiN4xbFz.js → skills-cli-CRB7e30Z.js} +5 -5
  256. package/dist/{skills-install-DksQkSIq.js → skills-install-DOKJADrz.js} +6 -6
  257. package/dist/{skills-status-BZptMdLx.js → skills-status-BWqCvt0g.js} +1 -1
  258. package/dist/slash-commands.runtime-Cpn2tYW4.js +16 -0
  259. package/dist/{slash-commands.runtime-Becs7mLt.js → slash-commands.runtime-DSjg6jg8.js} +11 -11
  260. package/dist/slash-dispatch.runtime-CWbpp23S.js +56 -0
  261. package/dist/slash-dispatch.runtime-DcGK4xow.js +113 -0
  262. package/dist/slash-skill-commands.runtime-DKMvvdDW.js +20 -0
  263. package/dist/{slash-skill-commands.runtime-BqcgqTMM.js → slash-skill-commands.runtime-DwvIfTev.js} +15 -15
  264. package/dist/{status-CaG5OT-N.js → status-BiX1kbtY.js} +26 -26
  265. package/dist/{status.update-DR8lt70f.js → status.update-QMbtfb38.js} +2 -2
  266. package/dist/{store-D89wDcz9.js → store--eR1R_UX.js} +2 -2
  267. package/dist/{store-B7o63XvV.js → store-s4dlu9ZQ.js} +5 -5
  268. package/dist/subagent-registry-runtime-D5KDyK6C.js +113 -0
  269. package/dist/subagent-registry-runtime-DEVpAaAP.js +56 -0
  270. package/dist/{subsystem-B45WV3qB.js → subsystem-Di1z8l0Z.js} +14 -14
  271. package/dist/{system-cli-CpyvQedP.js → system-cli-Dz6Xu0cZ.js} +9 -9
  272. package/dist/{system-run-command-B7_IasTx.js → system-run-command-MvTaWm_5.js} +1 -1
  273. package/dist/{systemd-DotMzkho.js → systemd-V-rr1rHU.js} +9 -9
  274. package/dist/{systemd-hints-B1n_Cmj7.js → systemd-hints-BanLoKAv.js} +6 -6
  275. package/dist/{systemd-linger-la785pXY.js → systemd-linger-CWkk4GBp.js} +1 -1
  276. package/dist/{tables-B3d05drH.js → tables-D6c57Lrs.js} +1 -1
  277. package/dist/{tables-mE4cJBN2.js → tables-d739Y1xW.js} +1 -1
  278. package/dist/{tailnet-CSHZafwU.js → tailnet-DuRcvzVE.js} +1 -1
  279. package/dist/{target-errors-mnlwhAjP.js → target-errors-CBI2Ga0y.js} +2 -2
  280. package/dist/{target-errors-CCgPtzPv.js → target-errors-u7pjywIy.js} +4 -4
  281. package/dist/{thinking-BeGmb5k6.js → thinking-DXYisHiZ.js} +7 -7
  282. package/dist/{tokens-q32vI39c.js → tokens-DxnY9ui_.js} +1 -1
  283. package/dist/{tool-images-RZdHiZcG.js → tool-images-2cBx1W8h.js} +2 -2
  284. package/dist/{tool-images-Bhog1Yix.js → tool-images-6ceVT7-i.js} +1 -1
  285. package/dist/{tui-DoROfmXy.js → tui-DIVVG-0Y.js} +6 -6
  286. package/dist/{tui-cli-Axgy0FU4.js → tui-cli-DdB0uJii.js} +32 -32
  287. package/dist/{update-xgJWkTh1.js → update-C4nonzOq.js} +3 -3
  288. package/dist/{update-cli-Dudao0uZ.js → update-cli-B0ekEE4A.js} +102 -102
  289. package/dist/{update-runner-B_J4-cY6.js → update-runner-gVTOOfSH.js} +16 -16
  290. package/dist/web-C0Ki9gxL.js +117 -0
  291. package/dist/{web-Btj-e8kN.js → web-NWKn8ABz.js} +55 -55
  292. package/dist/{webhooks-cli-HRhGQtAq.js → webhooks-cli-D2omOmfe.js} +6 -6
  293. package/dist/{whatsapp-actions-s6qkgp-7.js → whatsapp-actions-Ds8L0msY.js} +17 -17
  294. package/dist/{whatsapp-actions-BHbJJyqw.js → whatsapp-actions-iEArE_Ez.js} +21 -21
  295. package/dist/{with-timeout-OltBBBXv.js → with-timeout-DW6XbMi-.js} +3 -3
  296. package/dist/{workspace-B3uGN7Xe.js → workspace-B7XBLNce.js} +1 -1
  297. package/dist/{workspace-U-DyR64O.js → workspace-CUVC6GX1.js} +20 -20
  298. package/dist/{workspace-dirs-0V-76Wmq.js → workspace-dirs-Ds-g-s99.js} +1 -1
  299. package/dist/{ws-BrCPoV7j.js → ws-BNW54x9_.js} +2 -2
  300. package/dist/{wsl-wYxPJ8EO.js → wsl-CgxzAzRe.js} +2 -2
  301. package/package.json +1 -1
  302. package/dist/deliver-runtime-BFs7iAZF.js +0 -36
  303. package/dist/deliver-runtime-CBjIBIWj.js +0 -61
  304. package/dist/deps-send-discord.runtime-Ch7m0GFO.js +0 -36
  305. package/dist/deps-send-discord.runtime-DZUccI6Z.js +0 -26
  306. package/dist/deps-send-imessage.runtime-BBXNUMFu.js +0 -35
  307. package/dist/deps-send-imessage.runtime-CF3OpoqY.js +0 -25
  308. package/dist/deps-send-signal.runtime-Cw4-ozeO.js +0 -24
  309. package/dist/deps-send-signal.runtime-DVVQsW-M.js +0 -34
  310. package/dist/deps-send-slack.runtime-BDsDhS1P.js +0 -22
  311. package/dist/deps-send-slack.runtime-Bm60sFNH.js +0 -32
  312. package/dist/deps-send-telegram.runtime-D_4xVasO.js +0 -27
  313. package/dist/deps-send-whatsapp.runtime-B2i2JcV5.js +0 -118
  314. package/dist/deps-send-whatsapp.runtime-DK8jqd14.js +0 -60
  315. package/dist/image-runtime-BcAK3n8a.js +0 -29
  316. package/dist/image-runtime-Csw6M1GE.js +0 -55
  317. package/dist/manager-runtime-FO1Sx3W8.js +0 -18
  318. package/dist/pi-model-discovery-runtime-BeY4EUPp.js +0 -11
  319. package/dist/register.configure-BEkx9CQc.js +0 -164
  320. package/dist/runtime-whatsapp-login.runtime-DUb55byQ.js +0 -13
  321. package/dist/runtime-whatsapp-outbound.runtime-Bii_xSfI.js +0 -22
  322. package/dist/runtime-whatsapp-outbound.runtime-CdzmGvC6.js +0 -32
  323. package/dist/slash-commands.runtime-CVw6566g.js +0 -16
  324. package/dist/slash-dispatch.runtime-B9Ygtzi4.js +0 -56
  325. package/dist/slash-dispatch.runtime-BGHMR1xK.js +0 -113
  326. package/dist/slash-skill-commands.runtime-DxZ4z5h6.js +0 -20
  327. package/dist/subagent-registry-runtime-0qZtQB7_.js +0 -113
  328. package/dist/subagent-registry-runtime-DL1Wv7nA.js +0 -56
  329. package/dist/web-QKn04c6k.js +0 -117
@@ -2,14 +2,14 @@ import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as
2
2
  import { a as logVerbose, d as colorize, f as isRich, g as getResolvedLoggerSettings, h as getLogger, m as getChildLogger, p as theme, s as setVerbose } from "./globals-BawKHR8h.js";
3
3
  import { C as sleep, D as isPlainObject, E as truncateUtf16Safe, S as shortenHomePath, c as ensureDir, r as clamp, y as resolveUserPath } from "./utils-CokqDAE4.js";
4
4
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels } from "./thinking-44rmAw5o.js";
5
- import { $ as normalizeOptionalSessionKey, $n as listDescendantRunsForRequester, $t as sleepWithAbort, A as resolveSessionModelRef, Ar as OPENAI_TTS_VOICES, B as triggerOpenClawRestart, Bt as createOutboundSendDeps$1, Cr as resolveTtsConfig, D as loadSessionEntry, Dn as createReplyDispatcher, Dr as setTtsProvider, Dt as readJsonBodyWithLimit, E as loadCombinedSessionStoreForGateway, En as dispatchInboundMessage, Er as setTtsEnabled, Et as handleSlackHttpRequest, F as isGatewaySigusr1RestartExternallyAllowed, Fr as resetAllLanes, Ft as resolveAgentOutboundTarget, G as summarizeRestartSentinel, H as formatDoctorNonInteractiveHint, Ht as getCliSessionId, I as markGatewaySigusr1RestartHandled, Ir as setCommandLaneConcurrency, It as createOutboundSendDeps, J as normalizeHttpWebhookUrl, Jn as countActiveDescendantRuns, Jt as resolveBootstrapWarningSignaturesSeen, Kn as isAbortRequestText, Kr as enqueueSystemEvent, L as scheduleGatewaySigusr1Restart, Ln as resolveOutboundTarget, Lr as waitForActiveTasks, Lt as applyVerboseOverride, M as consumeGatewaySigusr1RestartAuthorization, Mn as resolveOutboundSessionRoute, Mt as agentCommandFromIngress, N as deferGatewayRestartUntilIdle, Nr as getTotalQueueSize, O as pruneLegacyStoreKeys, On as getTotalPendingReplies, Or as textToSpeech, Ot as requestBodyErrorToText, P as emitGatewayRestart, Pr as markGatewayDraining, Pt as resolveAgentDeliveryPlan, Q as normalizeOptionalAgentId, Qt as computeBackoff, R as setGatewaySigusr1RestartPolicy, Rn as resolveSessionDeliveryTarget, Rr as CommandLane, Rt as parseVerboseOverride, S as canonicalizeSpawnedByForAgent, Sr as resolveTtsAutoMode, T as listSessionsFromStore, Tn as formatZonedTimestamp, Tr as resolveTtsProviderOrder, U as formatRestartSentinelMessage, Ur as stripHeartbeatToken, Ut as setCliSessionId, V as consumeRestartSentinel, Vn as resetDirectoryCache, Vt as runWithModelFallback, Wt as runCliAgent, X as normalizeCronJobPatch, Xr as requestHeartbeatNow, Xt as lookupContextTokens, Y as normalizeCronJobCreate, Yt as applyModelOverrideToSessionEntry, Z as inferLegacyName, Zn as initSubagentRegistry, _ as resolveCronStyleNow, _r as clearBootstrapSnapshot, ai as resolveSendPolicy, an as buildSafeExternalPrompt, ar as buildOutboundSessionContext, at as hasLegacyDeliveryHints, br as isTtsProviderConfigured, ci as DEFAULT_INPUT_MAX_REDIRECTS, cn as isExternalHookSession, cr as getAgentRunContext, ct as persistBrowserProxyFiles, di as extractImageContentFromSource, dr as resolveAgentIdentity, en as resolveSessionAuthProfileOverride, et as normalizeOptionalText, f as runEmbeddedPiAgent, fi as normalizeMimeList, ft as loadOpenClawPlugins, gt as normalizeGroupActivation, h as waitForEmbeddedPiRunEnd, hi as resolveAgentTimeoutMs, hr as resolveUserTimezone, ii as normalizeSendPolicy, ir as clearSessionQueues, it as buildDeliveryFromLegacyPayload, jn as ensureOutboundSessionEntry, jr as getActiveTaskCount, k as resolveGatewaySessionStoreTarget, kr as OPENAI_TTS_MODELS, li as DEFAULT_INPUT_TIMEOUT_MS, ln as createReplyPrefixOptions, lr as onAgentEvent, lt as getPluginToolMeta, m as getActiveEmbeddedRunCount, mn as buildHistoryContextFromEntries, n as buildBareSessionResetPrompt, ni as getAcpSessionManager, nr as resolveAnnounceTargetFromKey, nt as normalizeRequiredName, oi as DEFAULT_INPUT_IMAGE_MAX_BYTES, on as detectSuspiciousPatterns, or as clearAgentRunContext, ot as stripLegacyDeliveryFields, p as abortEmbeddedPiRun, pi as resolveInputFileLimits, pt as createPluginRuntime, q as writeRestartSentinel, qn as stopSubagentsForRequester, qr as isSystemEventContextChanged, ri as resolveAgentSessionDirs, rr as readLatestAssistantReply, rt as migrateLegacyCronPayload, si as DEFAULT_INPUT_IMAGE_MIMES, sn as getHookType, sr as emitAgentEvent, st as applyBrowserProxyPaths, ti as ACP_SESSION_IDENTITY_RENDERER_VERSION, tn as resolveAgentAvatar, tr as runSubagentAnnounceFlow, tt as normalizePayloadToSystemText, ui as extractFileContentFromSource, un as unbindThreadBindingsBySessionKey, ur as registerAgentRunContext, ut as resolvePluginTools, v as applyToolPolicyPipeline, vr as getTtsProvider, vt as loadProviderUsageSummary, w as listAgentsForGateway, wr as resolveTtsPrefsPath, wt as resolveAgentOutboundIdentity, x as createOpenClawTools, xr as resolveTtsApiKey, y as buildDefaultToolPolicyPipelineSteps, yr as isTtsEnabled, z as setPreRestartDeferralCheck, zn as resolveOutboundChannelPlugin, zr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, zt as createDefaultDeps } from "./reply-9D8ZuOqr.js";
6
- import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-CNJUPFcR.js";
5
+ import { $ as normalizeOptionalSessionKey, $n as listDescendantRunsForRequester, $t as sleepWithAbort, A as resolveSessionModelRef, Ar as OPENAI_TTS_VOICES, B as triggerOpenClawRestart, Bt as createOutboundSendDeps$1, Cr as resolveTtsConfig, D as loadSessionEntry, Dn as createReplyDispatcher, Dr as setTtsProvider, Dt as readJsonBodyWithLimit, E as loadCombinedSessionStoreForGateway, En as dispatchInboundMessage, Er as setTtsEnabled, Et as handleSlackHttpRequest, F as isGatewaySigusr1RestartExternallyAllowed, Fr as resetAllLanes, Ft as resolveAgentOutboundTarget, G as summarizeRestartSentinel, H as formatDoctorNonInteractiveHint, Ht as getCliSessionId, I as markGatewaySigusr1RestartHandled, Ir as setCommandLaneConcurrency, It as createOutboundSendDeps, J as normalizeHttpWebhookUrl, Jn as countActiveDescendantRuns, Jt as resolveBootstrapWarningSignaturesSeen, Kn as isAbortRequestText, Kr as enqueueSystemEvent, L as scheduleGatewaySigusr1Restart, Ln as resolveOutboundTarget, Lr as waitForActiveTasks, Lt as applyVerboseOverride, M as consumeGatewaySigusr1RestartAuthorization, Mn as resolveOutboundSessionRoute, Mt as agentCommandFromIngress, N as deferGatewayRestartUntilIdle, Nr as getTotalQueueSize, O as pruneLegacyStoreKeys, On as getTotalPendingReplies, Or as textToSpeech, Ot as requestBodyErrorToText, P as emitGatewayRestart, Pr as markGatewayDraining, Pt as resolveAgentDeliveryPlan, Q as normalizeOptionalAgentId, Qt as computeBackoff, R as setGatewaySigusr1RestartPolicy, Rn as resolveSessionDeliveryTarget, Rr as CommandLane, Rt as parseVerboseOverride, S as canonicalizeSpawnedByForAgent, Sr as resolveTtsAutoMode, T as listSessionsFromStore, Tn as formatZonedTimestamp, Tr as resolveTtsProviderOrder, U as formatRestartSentinelMessage, Ur as stripHeartbeatToken, Ut as setCliSessionId, V as consumeRestartSentinel, Vn as resetDirectoryCache, Vt as runWithModelFallback, Wt as runCliAgent, X as normalizeCronJobPatch, Xr as requestHeartbeatNow, Xt as lookupContextTokens, Y as normalizeCronJobCreate, Yt as applyModelOverrideToSessionEntry, Z as inferLegacyName, Zn as initSubagentRegistry, _ as resolveCronStyleNow, _r as clearBootstrapSnapshot, ai as resolveSendPolicy, an as buildSafeExternalPrompt, ar as buildOutboundSessionContext, at as hasLegacyDeliveryHints, br as isTtsProviderConfigured, ci as DEFAULT_INPUT_MAX_REDIRECTS, cn as isExternalHookSession, cr as getAgentRunContext, ct as persistBrowserProxyFiles, di as extractImageContentFromSource, dr as resolveAgentIdentity, en as resolveSessionAuthProfileOverride, et as normalizeOptionalText, f as runEmbeddedPiAgent, fi as normalizeMimeList, ft as loadOpenClawPlugins, gt as normalizeGroupActivation, h as waitForEmbeddedPiRunEnd, hi as resolveAgentTimeoutMs, hr as resolveUserTimezone, ii as normalizeSendPolicy, ir as clearSessionQueues, it as buildDeliveryFromLegacyPayload, jn as ensureOutboundSessionEntry, jr as getActiveTaskCount, k as resolveGatewaySessionStoreTarget, kr as OPENAI_TTS_MODELS, li as DEFAULT_INPUT_TIMEOUT_MS, ln as createReplyPrefixOptions, lr as onAgentEvent, lt as getPluginToolMeta, m as getActiveEmbeddedRunCount, mn as buildHistoryContextFromEntries, n as buildBareSessionResetPrompt, ni as getAcpSessionManager, nr as resolveAnnounceTargetFromKey, nt as normalizeRequiredName, oi as DEFAULT_INPUT_IMAGE_MAX_BYTES, on as detectSuspiciousPatterns, or as clearAgentRunContext, ot as stripLegacyDeliveryFields, p as abortEmbeddedPiRun, pi as resolveInputFileLimits, pt as createPluginRuntime, q as writeRestartSentinel, qn as stopSubagentsForRequester, qr as isSystemEventContextChanged, ri as resolveAgentSessionDirs, rr as readLatestAssistantReply, rt as migrateLegacyCronPayload, si as DEFAULT_INPUT_IMAGE_MIMES, sn as getHookType, sr as emitAgentEvent, st as applyBrowserProxyPaths, ti as ACP_SESSION_IDENTITY_RENDERER_VERSION, tn as resolveAgentAvatar, tr as runSubagentAnnounceFlow, tt as normalizePayloadToSystemText, ui as extractFileContentFromSource, un as unbindThreadBindingsBySessionKey, ur as registerAgentRunContext, ut as resolvePluginTools, v as applyToolPolicyPipeline, vr as getTtsProvider, vt as loadProviderUsageSummary, w as listAgentsForGateway, wr as resolveTtsPrefsPath, wt as resolveAgentOutboundIdentity, x as createOpenClawTools, xr as resolveTtsApiKey, y as buildDefaultToolPolicyPipelineSteps, yr as isTtsEnabled, z as setPreRestartDeferralCheck, zn as resolveOutboundChannelPlugin, zr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, zt as createDefaultDeps } from "./reply-BFrmGuXU.js";
6
+ import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-BbO_VBbv.js";
7
7
  import { a as setConsoleSubsystemFilter, d as defaultRuntime, n as runtimeForLogger, o as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-BiaB_3Ei.js";
8
8
  import { C as isCronRunSessionKey, E as parseAgentSessionKey, T as isSubagentSessionKey, _ as normalizeAccountId$1, c as normalizeAgentId, g as DEFAULT_ACCOUNT_ID, h as toAgentStoreSessionKey, l as normalizeMainKey, m as toAgentRequestSessionKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey } from "./session-key-CIXZm7v4.js";
9
- import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-DG6I1Pl4.js";
9
+ import { a as openBoundaryFileSync, f as isNotFoundPathError, g as matchesSkillFilter, i as openBoundaryFile, o as openVerifiedFileSync, s as sameFileIdentity, t as resolveOpenClawPackageRoot } from "./openclaw-root-DeEQQJyX.js";
10
10
  import { i as logWarn, t as logDebug } from "./logger-fgPrvtjf.js";
11
11
  import { n as runExec, t as runCommandWithTimeout } from "./exec-Cu2obwh9.js";
12
- import { $t as loadConfig, Bi as DEFAULT_MODEL, Dn as parseDurationMs, Fi as normalizeSecretInput, Hr as applyLegacyMigrations, Kn as isAvatarHttpUrl, On as parseByteSize, Qt as createConfigIO, S as resolveThinkingDefault, Ur as ensureControlUiAllowedOriginsForNonLoopbackBind, Vi as DEFAULT_PROVIDER, Vr as applyMergePatch, Wn as AVATAR_MAX_BYTES, Xt as migrateLegacyConfig, Zn as looksLikeAvatarPath, _ as resolveHooksGmailModel, a as getModelRefStatus, an as writeConfigFile, b as resolveSubagentConfiguredModelSelection, ei as buildTalkConfigResponse, en as parseConfigJson5, g as resolveDefaultModelForAgent, h as resolveConfiguredModelRef, ki as isPidAlive, ni as resolveAgentMaxConcurrent, nn as readConfigFileSnapshotForWrite, on as validateConfigObjectWithPlugins, p as resolveAllowedModelRef, qn as isAvatarImageDataUrl, ri as resolveSubagentMaxConcurrent, rn as resolveConfigSnapshotHash, s as isCliProvider, sn as OpenClawSchema, t as buildAllowedModelSet, tn as readConfigFileSnapshot, u as normalizeModelSelection, zi as DEFAULT_CONTEXT_TOKENS } from "./model-selection-DZM1M4yx.js";
12
+ import { $t as loadConfig, Bi as DEFAULT_MODEL, Dn as parseDurationMs, Fi as normalizeSecretInput, Hr as applyLegacyMigrations, Kn as isAvatarHttpUrl, On as parseByteSize, Qt as createConfigIO, S as resolveThinkingDefault, Ur as ensureControlUiAllowedOriginsForNonLoopbackBind, Vi as DEFAULT_PROVIDER, Vr as applyMergePatch, Wn as AVATAR_MAX_BYTES, Xt as migrateLegacyConfig, Zn as looksLikeAvatarPath, _ as resolveHooksGmailModel, a as getModelRefStatus, an as writeConfigFile, b as resolveSubagentConfiguredModelSelection, ei as buildTalkConfigResponse, en as parseConfigJson5, g as resolveDefaultModelForAgent, h as resolveConfiguredModelRef, ki as isPidAlive, ni as resolveAgentMaxConcurrent, nn as readConfigFileSnapshotForWrite, on as validateConfigObjectWithPlugins, p as resolveAllowedModelRef, qn as isAvatarImageDataUrl, ri as resolveSubagentMaxConcurrent, rn as resolveConfigSnapshotHash, s as isCliProvider, sn as OpenClawSchema, t as buildAllowedModelSet, tn as readConfigFileSnapshot, u as normalizeModelSelection, zi as DEFAULT_CONTEXT_TOKENS } from "./model-selection-DqSNdtby.js";
13
13
  import { C as clearInternalHooks, E as triggerInternalHook, T as registerInternalHook, h as createEmptyPluginRegistry, t as CHANNEL_IDS, u as getActivePluginRegistry, w as createInternalHookEvent } from "./registry-CTtrVpZB.js";
14
14
  import "./github-copilot-token-b6kJVrW-.js";
15
15
  import { t as formatCliCommand } from "./command-format-Gp1OUMPH.js";
@@ -17,150 +17,150 @@ import "./boolean-BsqeuxE6.js";
17
17
  import { n as logAcceptedEnvOption, t as isTruthyEnvValue } from "./env-CNF75H3c.js";
18
18
  import "./host-env-security-DkAVVuaw.js";
19
19
  import { i as resolveRuntimeServiceVersion, r as VERSION } from "./env-vars-ausEv-bN.js";
20
- import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-QfHOpQrg.js";
21
- import "./dock-BR4hdehX.js";
20
+ import { u as isTestDefaultMemorySlotDisabled } from "./manifest-registry-D74D25g7.js";
21
+ import "./dock-SpSqP4RS.js";
22
22
  import { _ as normalizeGatewayClientMode, f as GATEWAY_CLIENT_CAPS, g as hasGatewayClientCap, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-S2KEwruz.js";
23
- import "./send-BcAN5-hD.js";
24
- import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-DaN4Jp7R.js";
25
- import { $ as resolveMainSessionKey, A as readSessionPreviewItemsFromTranscript, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as resolveExplicitAgentSessionKey, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as resolveSessionResetPolicy, V as evaluateSessionFreshness, X as canonicalizeMainSessionAlias, Y as setSessionRuntimeModel, Z as resolveAgentMainSessionKey, ct as cleanStaleLockFiles, d as updateSessionStore, et as resolveMainSessionKeyFromConfig, k as readSessionMessages, n as parseSessionThreadInfo, nt as snapshotSessionOrigin, o as loadSessionStore, q as mergeSessionEntry, t as extractDeliveryInfo, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-Fm2Lx117.js";
26
- import { u as registerUnhandledRejectionHandler } from "./audio-transcription-runner-sLK1yiya.js";
27
- import { b as extractTextFromChatContent } from "./image-CDKYPK1-.js";
28
- import "./models-config-BLJwyO9D.js";
29
- import "./pi-embedded-helpers-CuG0ngBL.js";
30
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-HvaJFfqL.js";
23
+ import "./send-CJrrDXqE.js";
24
+ import { m as buildChannelAccountBindings, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, w as normalizeWhatsAppTarget } from "./plugins-TLur5wHC.js";
25
+ import { $ as resolveMainSessionKey, A as readSessionPreviewItemsFromTranscript, C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, I as stripInlineDirectiveTagsForDisplay, L as stripInlineDirectiveTagsFromMessageForDisplay, M as resolveSessionTranscriptCandidates, N as stripEnvelopeFromMessage, O as cleanupArchivedSessionTranscripts, P as stripEnvelopeFromMessages, Q as resolveExplicitAgentSessionKey, R as jsonUtf8Bytes, T as archiveFileOnDisk, U as resolveSessionResetPolicy, V as evaluateSessionFreshness, X as canonicalizeMainSessionAlias, Y as setSessionRuntimeModel, Z as resolveAgentMainSessionKey, ct as cleanStaleLockFiles, d as updateSessionStore, et as resolveMainSessionKeyFromConfig, k as readSessionMessages, n as parseSessionThreadInfo, nt as snapshotSessionOrigin, o as loadSessionStore, q as mergeSessionEntry, t as extractDeliveryInfo, x as mergeDeliveryContext, y as deliveryContextFromSession } from "./sessions-CRTJuMXp.js";
26
+ import { u as registerUnhandledRejectionHandler } from "./audio-transcription-runner-B9-J1DUd.js";
27
+ import { b as extractTextFromChatContent } from "./image-BaqqhHHh.js";
28
+ import "./models-config-5EhgxVMQ.js";
29
+ import "./pi-embedded-helpers-DXrnVbBZ.js";
30
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-C0HLb5d5.js";
31
31
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-IBWCA-2a.js";
32
- import "./chrome-CQR5U4Oc.js";
32
+ import "./chrome-DBMFZ1ho.js";
33
33
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-OabIsy4o.js";
34
34
  import { t as safeEqualSecret } from "./secret-equal-B7oJEPub.js";
35
- import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-CSHZafwU.js";
36
- import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-BrCPoV7j.js";
37
- import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-C_LDvTxu.js";
38
- import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-BhpOEoCB.js";
35
+ import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-DuRcvzVE.js";
36
+ import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-BNW54x9_.js";
37
+ import { a as resolveGatewayAuth, c as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, i as isLocalDirectRequest, l as createAuthRateLimiter, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, t as assertGatewayAuthConfigured, u as normalizeRateLimitClientIp } from "./auth-B_YGaEcP.js";
38
+ import { l as ensureGatewayStartupAuth, u as mergeGatewayTailscaleConfig } from "./server-context-DCpD_bA8.js";
39
39
  import { d as hasBinary } from "./frontmatter-CPpXT7mj.js";
40
- import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-Sy3onNq_.js";
41
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-CY88Htx_.js";
42
- import "./paths-C48pWRFv.js";
40
+ import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-4CjDh8J_.js";
41
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-BzAaCM2k.js";
42
+ import "./paths-1ThfklTP.js";
43
43
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-sDsI6gV3.js";
44
44
  import { o as isErrno, r as formatErrorMessage } from "./errors-BkPBAjci.js";
45
- import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-D_adQJX4.js";
46
- import { n as SsrFBlockedError } from "./proxy-env-R4DbTLy-.js";
47
- import { c as detectMime } from "./image-ops-BTwvusXV.js";
48
- import "./store-B7o63XvV.js";
49
- import { a as inspectPortUsage, l as formatPortDiagnostics, r as ensurePortAvailable } from "./ports-B6f6PDVD.js";
45
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-mG29clJ9.js";
46
+ import { n as SsrFBlockedError } from "./proxy-env-hdF2jCzB.js";
47
+ import { c as detectMime } from "./image-ops-CKnT_r12.js";
48
+ import "./store-s4dlu9ZQ.js";
49
+ import { a as inspectPortUsage, l as formatPortDiagnostics, r as ensurePortAvailable } from "./ports-CfTWPxj9.js";
50
50
  import { t as movePathToTrash } from "./trash--gw0enoo.js";
51
- import "./server-middleware-BzsDWK_f.js";
52
- import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-DIEpaxUj.js";
53
- import { i as resolveWhatsAppAccount } from "./accounts-BPt-s1cW.js";
54
- import "./accounts-CC3alHma.js";
51
+ import "./server-middleware-C_u_M_FK.js";
52
+ import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-D6M304Qd.js";
53
+ import { i as resolveWhatsAppAccount } from "./accounts-4vg8osA5.js";
54
+ import "./accounts-BgOnManD.js";
55
55
  import "./logging-D3KTM1pH.js";
56
- import "./accounts-CNIODbBr.js";
57
- import "./send-C9SevGlM.js";
56
+ import "./accounts-CXo4Ac3z.js";
57
+ import "./send-Ddtb8gLT.js";
58
58
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, s as resolveSessionTranscriptsDirForAgent } from "./paths-D24h0XR4.js";
59
59
  import { i as normalizeInputProvenance } from "./input-provenance-K1purPKY.js";
60
60
  import "./chat-envelope-DL2R5pK6.js";
61
- import "./tool-images-Bhog1Yix.js";
61
+ import "./tool-images-6ceVT7-i.js";
62
62
  import "./tool-display-D1uTM_Dm.js";
63
- import { t as fetchWithSsrFGuard } from "./fetch-guard-Ca0W-yZr.js";
64
- import "./api-key-rotation-PzGuOQm_.js";
65
- import "./local-roots-_noFNwvo.js";
66
- import { n as loadModelCatalog } from "./model-catalog-BH55qLYK.js";
63
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-NyNh7p-s.js";
64
+ import "./api-key-rotation-CzacqD3s.js";
65
+ import "./local-roots-BCYAjsgu.js";
66
+ import { n as loadModelCatalog } from "./model-catalog-QXAt20Vy.js";
67
67
  import "./proxy-fetch-DVvCU_Cg.js";
68
68
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-4XdPiPs_.js";
69
- import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-DuqANTNs.js";
70
- import { r as isRestartEnabled } from "./commands-BaXA2bSJ.js";
71
- import "./commands-registry-D-nkNP-x.js";
72
- import { $ as validateNodePairRejectParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodePairListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-BEwDNigg.js";
73
- import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-eK-5ynwM.js";
69
+ import { j as runGlobalGatewayStopSafely, k as getGlobalHookRunner, o as normalizeReplyPayloadsForDelivery, t as deliverOutboundPayloads } from "./deliver-B05oD9oA.js";
70
+ import { r as isRestartEnabled } from "./commands-DUzVNM-Q.js";
71
+ import "./commands-registry-C2INbVUe.js";
72
+ import { $ as validateNodePairRejectParams, $t as roleScopesAllow, A as validateCronStatusParams, At as validateWizardStartParams, B as validateExecApprovalsGetParams, C as validateConfigSetParams, Ct as validateToolsCatalogParams, D as validateCronRemoveParams, Dt as validateWebLoginWaitParams, E as validateCronListParams, Et as validateWebLoginStartParams, F as validateDevicePairRemoveParams, G as validateModelsListParams, Gt as rejectDevicePairing, H as validateExecApprovalsNodeSetParams, Ht as ensureDeviceToken, I as validateDeviceTokenRevokeParams, It as parseSessionLabel, J as validateNodeInvokeParams, Jt as revokeDeviceToken, K as validateNodeDescribeParams, Kt as removePairedDevice, L as validateDeviceTokenRotateParams, Lt as buildDeviceAuthPayload, M as validateDevicePairApproveParams, Mt as PROTOCOL_VERSION, N as validateDevicePairListParams, Nt as ErrorCodes, O as validateCronRunParams, Ot as validateWizardCancelParams, P as validateDevicePairRejectParams, Pt as errorShape, Q as validateNodePairListParams, Qt as verifyDeviceToken, R as validateExecApprovalRequestParams, Rt as buildDeviceAuthPayloadV3, S as validateConfigSchemaParams, St as validateTalkModeParams, T as validateCronAddParams, Tt as validateWakeParams, U as validateExecApprovalsSetParams, Ut as getPairedDevice, V as validateExecApprovalsNodeGetParams, Vt as approveDevicePairing, W as validateLogsTailParams, Wt as listDevicePairing, X as validateNodeListParams, Xt as summarizeDeviceTokens, Y as validateNodeInvokeResultParams, Yt as rotateDeviceToken, Z as validateNodePairApproveParams, Zt as updatePairedDeviceMetadata, _ as validateChatInjectParams, _t as validateSkillsBinsParams, a as validateAgentWaitParams, at as validateRequestFrame, b as validateConfigGetParams, bt as validateSkillsUpdateParams, c as validateAgentsFilesGetParams, ct as validateSendParams, d as validateAgentsListParams, dt as validateSessionsListParams, et as validateNodePairRequestParams, f as validateAgentsUpdateParams, ft as validateSessionsPatchParams, g as validateChatHistoryParams, gt as validateSessionsUsageParams, h as validateChatAbortParams, ht as validateSessionsResolveParams, i as validateAgentParams, in as verifyDeviceSignature, it as validatePushTestParams, j as validateCronUpdateParams, jt as validateWizardStatusParams, k as validateCronRunsParams, kt as validateWizardNextParams, l as validateAgentsFilesListParams, lt as validateSessionsCompactParams, m as validateChannelsStatusParams, mt as validateSessionsResetParams, n as formatValidationErrors, nt as validateNodeRenameParams, o as validateAgentsCreateParams, ot as validateSecretsResolveParams, p as validateChannelsLogoutParams, pt as validateSessionsPreviewParams, q as validateNodeEventParams, qt as requestDevicePairing, r as validateAgentIdentityParams, rn as normalizeDevicePublicKeyBase64Url, rt as validatePollParams, s as validateAgentsDeleteParams, st as validateSecretsResolveResult, tn as deriveDeviceIdFromPublicKey, tt as validateNodePairVerifyParams, u as validateAgentsFilesSetParams, ut as validateSessionsDeleteParams, v as validateChatSendParams, vt as validateSkillsInstallParams, w as validateConnectParams, wt as validateUpdateRunParams, x as validateConfigPatchParams, xt as validateTalkConfigParams, y as validateConfigApplyParams, yt as validateSkillsStatusParams, z as validateExecApprovalResolveParams, zt as normalizeDeviceMetadataForAuth } from "./client-D9sBKoZI.js";
73
+ import { c as ADMIN_SCOPE$3, d as isNodeRoleMethod, n as callGateway, p as loadGatewayTlsRuntime$1, u as authorizeOperatorScopesForMethod } from "./call-YJ9zjeji.js";
74
74
  import "./pairing-token-9FncM-ur.js";
75
75
  import "./fetch-D6Usyaj-.js";
76
- import { a as readChannelAllowFromStoreSync } from "./pairing-store-CxcCXceV.js";
76
+ import { a as readChannelAllowFromStoreSync } from "./pairing-store-qlIFCeZB.js";
77
77
  import { a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-QfWL5pgV.js";
78
- import "./exec-approvals-allowlist-CtUT02un.js";
79
- import "./exec-safe-bin-runtime-policy-CSBwsuHS.js";
80
- import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-DgLXnfNX.js";
81
- import { a as ToolInputError } from "./target-errors-CCgPtzPv.js";
82
- import { n as resolveSystemRunCommand } from "./system-run-command-B7_IasTx.js";
83
- import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-CL9h6IXx.js";
84
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-OltBBBXv.js";
85
- import { d as resolveCronStorePath, f as saveCronStore, u as loadCronStore } from "./send-CVzWMFl1.js";
86
- import "./model-CfB7nuUK.js";
87
- import "./pi-model-discovery-Drm3mYtt.js";
88
- import "./ir-BdjoGJyL.js";
78
+ import "./exec-approvals-allowlist-BOUCQu6B.js";
79
+ import "./exec-safe-bin-runtime-policy-CkhpnueN.js";
80
+ import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-CCNot0xV.js";
81
+ import { a as ToolInputError } from "./target-errors-u7pjywIy.js";
82
+ import { n as resolveSystemRunCommand } from "./system-run-command-MvTaWm_5.js";
83
+ import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-v2TGEcgC.js";
84
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-DW6XbMi-.js";
85
+ import { d as resolveCronStorePath, f as saveCronStore, u as loadCronStore } from "./send-D3BV3zCy.js";
86
+ import "./model-CnHxvu4o.js";
87
+ import "./pi-model-discovery-BKbDxeIp.js";
88
+ import "./ir-ChJe1hY6.js";
89
89
  import "./render-Bwu_WxwA.js";
90
- import { n as resolveMessageChannelSelection } from "./channel-selection-HaUsJ3kL.js";
90
+ import { n as resolveMessageChannelSelection } from "./channel-selection-D21oKnM0.js";
91
91
  import { n as normalizePollInput } from "./polls-Dc-wk6Mc.js";
92
- import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-DOlffoVt.js";
93
- import "./send-7ekhdACO.js";
94
- import "./outbound-attachment-BMKxLFNL.js";
92
+ import { i as buildChannelUiCatalog, t as applyPluginAutoEnable } from "./plugin-auto-enable-CIeegxhY.js";
93
+ import "./send-tsYgRPrs.js";
94
+ import "./outbound-attachment-Ccf9O8B8.js";
95
95
  import "./delivery-queue-5cgQEnOW.js";
96
- import "./send-BlhxqBI9.js";
97
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-DaB-Ff9f.js";
98
- import { t as getChannelActivity } from "./channel-activity-w-iWKqZg.js";
99
- import "./tables-B3d05drH.js";
96
+ import "./send-BUFnD0eE.js";
97
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BC7YGcon.js";
98
+ import { t as getChannelActivity } from "./channel-activity-BHb0aL0J.js";
99
+ import "./tables-D6c57Lrs.js";
100
100
  import "./proxy-CzncRRd4.js";
101
- import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-De4NUpNz.js";
102
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-0V-76Wmq.js";
103
- import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-CXxR70dG.js";
104
- import "./command-secret-targets-qpSAI_K2.js";
101
+ import { _ as updatePairedNodeMetadata, a as getRemoteSkillEligibility, b as getSkillsSnapshotVersion, c as refreshRemoteBinsForConnectedNodes, d as setSkillsRemoteRegistry, f as approveNodePairing, g as requestNodePairing, h as renamePairedNode, l as refreshRemoteNodeBins, m as rejectNodePairing, o as primeRemoteSkillsCache, p as listNodePairing, s as recordRemoteNodeInfo, u as removeRemoteNodeInfo, v as verifyNodeToken, x as registerSkillsChangeListener } from "./skill-commands-BgzZkiJz.js";
102
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-Ds-g-s99.js";
103
+ import { f as isKnownSecretTargetId, n as GATEWAY_AUTH_SURFACE_PATHS, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-BEvlZaJw.js";
104
+ import "./command-secret-targets-SH5qP5X_.js";
105
105
  import { c as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as deriveSessionTotalTokens, t as discoverAllSessions } from "./session-cost-usage-BY7a_j5T.js";
106
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-C51uqagK.js";
106
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-ByC3v1-U.js";
107
107
  import "./prompt-style-C7TXsSbx.js";
108
- import "./pairing-labels-OxEX3p5e.js";
108
+ import "./pairing-labels-D9vsJ1yc.js";
109
109
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-CpAFclrX.js";
110
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-CLBPPSow.js";
111
- import { r as resolveMemorySearchConfig } from "./manager-Dbz9CyPw.js";
112
- import "./query-expansion-bOaotSTR.js";
110
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-CCMIlraX.js";
111
+ import { r as resolveMemorySearchConfig } from "./manager-CSnZM2Iw.js";
112
+ import "./query-expansion-DmxOigqX.js";
113
113
  import { t as formatDocsLink } from "./links-3lq_eIAs.js";
114
114
  import { n as runCommandWithRuntime } from "./cli-utils-Ca0KE-dW.js";
115
115
  import { t as formatHelpExamples } from "./help-format-BBTgeZ6Z.js";
116
116
  import { n as withProgress } from "./progress-DSt-glE7.js";
117
- import "./server-lifecycle-BYHavdLd.js";
117
+ import "./server-lifecycle-B2SzHMkK.js";
118
118
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-DL-XRpny.js";
119
119
  import { i as onHeartbeatEvent, r as getLastHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-D3fxcg9H.js";
120
120
  import { t as ensureOpenClawCliOnPath } from "./path-env-AnA7c9fb.js";
121
121
  import "./runtime-guard-DW_QSy-l.js";
122
- import { n as waitForPortBindable, t as forceFreePortAndWait } from "./ports-DX1Cxj7W.js";
123
- import { t as buildWorkspaceSkillStatus } from "./skills-status-BZptMdLx.js";
122
+ import { n as waitForPortBindable, t as forceFreePortAndWait } from "./ports-BE9ZTYml.js";
123
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-BWqCvt0g.js";
124
124
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-D0u9YNYf.js";
125
125
  import { n as inheritOptionFromParent } from "./command-options-D0bXi5Pl.js";
126
126
  import { t as WizardCancelledError } from "./prompts-knTF_LVq.js";
127
127
  import { t as resolveChannelDefaultAccountId } from "./helpers-CvsgDup6.js";
128
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-Dh5Lcv4N.js";
129
- import { t as isWithinDir } from "./path-safety-dy_YlK3a.js";
130
- import "./install-safe-path-BNRYD-KJ.js";
131
- import "./skill-scanner-BtrQE0gO.js";
132
- import { n as formatConfigIssueLines } from "./issue-format-D_MHPECu.js";
128
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-y8kHMoox.js";
129
+ import { t as isWithinDir } from "./path-safety-BtMBl7vC.js";
130
+ import "./install-safe-path-om__n8TQ.js";
131
+ import "./skill-scanner-DcrwF2Fr.js";
132
+ import { n as formatConfigIssueLines } from "./issue-format-G-7IkANX.js";
133
133
  import { t as buildChannelAccountSnapshot } from "./status-D98glect.js";
134
- import "./channels-status-issues-Bi69DlUp.js";
135
- import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-D6W9dz8Q.js";
136
- import "./daemon-install-helpers-BYWgt_7u.js";
137
- import "./systemd-DotMzkho.js";
138
- import "./service-qQCNqvmY.js";
139
- import "./lifecycle-core-C2u5W-Xd.js";
140
- import "./systemd-hints-B1n_Cmj7.js";
134
+ import "./channels-status-issues-Cva3QRlu.js";
135
+ import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-C6NRnnHx.js";
136
+ import "./daemon-install-helpers-Pex1FHrG.js";
137
+ import "./systemd-V-rr1rHU.js";
138
+ import "./service-DhcBUav5.js";
139
+ import "./lifecycle-core-BcIuIPMF.js";
140
+ import "./systemd-hints-BanLoKAv.js";
141
141
  import { t as parsePort$1 } from "./parse-port-OBGBQwYB.js";
142
- import { n as addGatewayServiceCommands } from "./daemon-cli-Bb7Q2DPz.js";
143
- import "./diagnostics-CwWdfrvB.js";
142
+ import { n as addGatewayServiceCommands } from "./daemon-cli-Do_4dH0e.js";
143
+ import "./diagnostics-CBcbp7BB.js";
144
144
  import "./table-BxVlk3qy.js";
145
145
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DbTB0sCD.js";
146
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-26KZSqMI.js";
147
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-BSvn3dTQ.js";
148
- import { t as discoverGatewayBeacons } from "./bonjour-discovery-DvVDs7rm.js";
149
- import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-CaG5OT-N.js";
150
- import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-yuGFUIWJ.js";
151
- import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DR9xNC3f.js";
152
- import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-BQD0zpuF.js";
153
- import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-BHbS8ZHw.js";
154
- import "./onboarding.secret-input-Dz6lMbgK.js";
155
- import { t as runOnboardingWizard } from "./onboarding-BQS8Nd_E.js";
156
- import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-wRpQOiqI.js";
146
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-DOUEV_Eq.js";
147
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-BBbzzHkv.js";
148
+ import { t as discoverGatewayBeacons } from "./bonjour-discovery-BC_XEtg4.js";
149
+ import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-BiX1kbtY.js";
150
+ import { a as styleHealthChannelLine, c as setHeartbeatsEnabled, l as startHeartbeatRunner, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines, u as isCronSystemEvent } from "./health-B99KJscL.js";
151
+ import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-D7bG2PFs.js";
152
+ import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-CJ_25Q5X.js";
153
+ import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-DTxtPm0I.js";
154
+ import "./onboarding.secret-input-BJILGy22.js";
155
+ import { t as runOnboardingWizard } from "./onboarding-Df6qbE08.js";
156
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-COJt9ulg.js";
157
157
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-g3tzdtGh.js";
158
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-DfcI_g5B.js";
159
- import "./node-service-CIXWfpdM.js";
160
- import "./status.update-DR8lt70f.js";
161
- import { t as installSkill } from "./skills-install-DksQkSIq.js";
162
- import { t as runGatewayUpdate } from "./update-runner-B_J4-cY6.js";
163
- import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-B3uGN7Xe.js";
158
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-D-hu0n3w.js";
159
+ import "./node-service--hFCI8Ok.js";
160
+ import "./status.update-QMbtfb38.js";
161
+ import { t as installSkill } from "./skills-install-DOKJADrz.js";
162
+ import { t as runGatewayUpdate } from "./update-runner-gVTOOfSH.js";
163
+ import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-B7XBLNce.js";
164
164
  import { fileURLToPath, pathToFileURL } from "node:url";
165
165
  import * as fsSync from "node:fs";
166
166
  import fs from "node:fs";
@@ -168,7 +168,7 @@ import os from "node:os";
168
168
  import path from "node:path";
169
169
  import chalk from "chalk";
170
170
  import { isDeepStrictEqual } from "node:util";
171
- import fsPromises from "node:fs/promises";
171
+ import fs$1 from "node:fs/promises";
172
172
  import { spawn, spawnSync } from "node:child_process";
173
173
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
174
174
  import { z } from "zod";
@@ -1239,7 +1239,7 @@ function resolveCheckIntervalMs(cfg) {
1239
1239
  }
1240
1240
  async function readState(statePath) {
1241
1241
  try {
1242
- const raw = await fsPromises.readFile(statePath, "utf-8");
1242
+ const raw = await fs$1.readFile(statePath, "utf-8");
1243
1243
  const parsed = JSON.parse(raw);
1244
1244
  return parsed && typeof parsed === "object" ? parsed : {};
1245
1245
  } catch {
@@ -1320,7 +1320,7 @@ async function runAutoUpdateCommand(params) {
1320
1320
  path.join(params.root, "dist", "index.mjs")
1321
1321
  ];
1322
1322
  for (const candidate of candidates) try {
1323
- await fsPromises.access(candidate);
1323
+ await fs$1.access(candidate);
1324
1324
  argv.push(execPath, candidate, ...baseArgs);
1325
1325
  break;
1326
1326
  } catch {}
@@ -4451,20 +4451,20 @@ async function drainPendingWrite(filePath) {
4451
4451
  if (pending) await pending.catch(() => void 0);
4452
4452
  }
4453
4453
  async function pruneIfNeeded(filePath, opts) {
4454
- const stat = await fsPromises.stat(filePath).catch(() => null);
4454
+ const stat = await fs$1.stat(filePath).catch(() => null);
4455
4455
  if (!stat || stat.size <= opts.maxBytes) return;
4456
- const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4456
+ const lines = (await fs$1.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4457
4457
  const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
4458
4458
  const { randomBytes } = await import("node:crypto");
4459
4459
  const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
4460
- await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4461
- await fsPromises.rename(tmp, filePath);
4460
+ await fs$1.writeFile(tmp, `${kept.join("\n")}\n`, "utf-8");
4461
+ await fs$1.rename(tmp, filePath);
4462
4462
  }
4463
4463
  async function appendCronRunLog(filePath, entry, opts) {
4464
4464
  const resolved = path.resolve(filePath);
4465
4465
  const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
4466
- await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
4467
- await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4466
+ await fs$1.mkdir(path.dirname(resolved), { recursive: true });
4467
+ await fs$1.appendFile(resolved, `${JSON.stringify(entry)}\n`, "utf-8");
4468
4468
  await pruneIfNeeded(resolved, {
4469
4469
  maxBytes: opts?.maxBytes ?? DEFAULT_CRON_RUN_LOG_MAX_BYTES,
4470
4470
  keepLines: opts?.keepLines ?? DEFAULT_CRON_RUN_LOG_KEEP_LINES
@@ -4558,7 +4558,7 @@ function filterRunLogEntries(entries, opts) {
4558
4558
  async function readCronRunLogEntriesPage(filePath, opts) {
4559
4559
  await drainPendingWrite(filePath);
4560
4560
  const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
4561
- const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4561
+ const raw = await fs$1.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4562
4562
  const statuses = normalizeRunStatuses(opts);
4563
4563
  const deliveryStatuses = normalizeDeliveryStatuses(opts);
4564
4564
  const query = opts?.query?.trim().toLowerCase() ?? "";
@@ -4594,7 +4594,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4594
4594
  const query = opts.query?.trim().toLowerCase() ?? "";
4595
4595
  const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
4596
4596
  const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
4597
- const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4597
+ const jsonlFiles = (await fs$1.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4598
4598
  if (jsonlFiles.length === 0) return {
4599
4599
  entries: [],
4600
4600
  total: 0,
@@ -4605,7 +4605,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4605
4605
  };
4606
4606
  await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
4607
4607
  const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
4608
- return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
4608
+ return parseAllRunLogEntries(await fs$1.readFile(filePath, "utf-8").catch(() => ""));
4609
4609
  }))).flat(), {
4610
4610
  statuses,
4611
4611
  deliveryStatuses,
@@ -9834,7 +9834,7 @@ function resolveWorkspaceFilePathResultOrThrow(params) {
9834
9834
  }
9835
9835
  async function resolveWorkspaceRealPath(workspaceDir) {
9836
9836
  try {
9837
- return await fsPromises.realpath(workspaceDir);
9837
+ return await fs$1.realpath(workspaceDir);
9838
9838
  } catch {
9839
9839
  return path.resolve(workspaceDir);
9840
9840
  }
@@ -9863,7 +9863,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9863
9863
  };
9864
9864
  let candidateLstat;
9865
9865
  try {
9866
- candidateLstat = await fsPromises.lstat(candidatePath);
9866
+ candidateLstat = await fs$1.lstat(candidatePath);
9867
9867
  } catch (err) {
9868
9868
  return resolveWorkspaceFilePathResultOrThrow({
9869
9869
  error: err,
@@ -9874,7 +9874,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9874
9874
  if (candidateLstat.isSymbolicLink()) {
9875
9875
  let targetReal;
9876
9876
  try {
9877
- targetReal = await fsPromises.realpath(candidatePath);
9877
+ targetReal = await fs$1.realpath(candidatePath);
9878
9878
  } catch (err) {
9879
9879
  return resolveWorkspaceFilePathResultOrThrow({
9880
9880
  error: err,
@@ -9884,7 +9884,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9884
9884
  }
9885
9885
  let targetStat;
9886
9886
  try {
9887
- targetStat = await fsPromises.stat(targetReal);
9887
+ targetStat = await fs$1.stat(targetReal);
9888
9888
  } catch (err) {
9889
9889
  return resolveWorkspaceFilePathResultOrThrow({
9890
9890
  error: err,
@@ -9922,13 +9922,13 @@ async function resolveAgentWorkspaceFilePath(params) {
9922
9922
  return {
9923
9923
  kind: "ready",
9924
9924
  requestPath,
9925
- ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
9925
+ ioPath: await fs$1.realpath(candidatePath).catch(() => candidatePath),
9926
9926
  workspaceReal
9927
9927
  };
9928
9928
  }
9929
9929
  async function statFileSafely(filePath) {
9930
9930
  try {
9931
- const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
9931
+ const [stat, lstat] = await Promise.all([fs$1.stat(filePath), fs$1.lstat(filePath)]);
9932
9932
  if (lstat.isSymbolicLink() || !stat.isFile()) return null;
9933
9933
  if (stat.nlink > 1) return null;
9934
9934
  if (!sameFileIdentity(stat, lstat)) return null;
@@ -10022,7 +10022,7 @@ function respondAgentNotFound(respond, agentId) {
10022
10022
  async function moveToTrashBestEffort(pathname) {
10023
10023
  if (!pathname) return;
10024
10024
  try {
10025
- await fsPromises.access(pathname);
10025
+ await fs$1.access(pathname);
10026
10026
  } catch {
10027
10027
  return;
10028
10028
  }
@@ -10098,7 +10098,7 @@ const agentsHandlers = {
10098
10098
  dir: workspaceDir,
10099
10099
  ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
10100
10100
  });
10101
- await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10101
+ await fs$1.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
10102
10102
  await writeConfigFile(nextConfig);
10103
10103
  const safeName = sanitizeIdentityLine(rawName);
10104
10104
  const emoji = resolveOptionalStringParam(params.emoji);
@@ -10111,7 +10111,7 @@ const agentsHandlers = {
10111
10111
  ...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
10112
10112
  ""
10113
10113
  ];
10114
- await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
10114
+ await fs$1.appendFile(identityPath, lines.join("\n"), "utf-8");
10115
10115
  respond(true, {
10116
10116
  ok: true,
10117
10117
  agentId,
@@ -10146,9 +10146,9 @@ const agentsHandlers = {
10146
10146
  });
10147
10147
  if (avatar) {
10148
10148
  const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
10149
- await fsPromises.mkdir(workspace, { recursive: true });
10149
+ await fs$1.mkdir(workspace, { recursive: true });
10150
10150
  const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
10151
- await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10151
+ await fs$1.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
10152
10152
  }
10153
10153
  respond(true, {
10154
10154
  ok: true,
@@ -10272,7 +10272,7 @@ const agentsHandlers = {
10272
10272
  const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
10273
10273
  if (!resolved) return;
10274
10274
  const { agentId, workspaceDir, name } = resolved;
10275
- await fsPromises.mkdir(workspaceDir, { recursive: true });
10275
+ await fs$1.mkdir(workspaceDir, { recursive: true });
10276
10276
  const filePath = path.join(workspaceDir, name);
10277
10277
  const resolvedPath = await resolveWorkspaceFilePathOrRespond({
10278
10278
  respond,
@@ -12591,14 +12591,14 @@ function isRollingLogFile(file) {
12591
12591
  return ROLLING_LOG_RE.test(path.basename(file));
12592
12592
  }
12593
12593
  async function resolveLogFile(file) {
12594
- if (await fsPromises.stat(file).catch(() => null)) return file;
12594
+ if (await fs$1.stat(file).catch(() => null)) return file;
12595
12595
  if (!isRollingLogFile(file)) return file;
12596
12596
  const dir = path.dirname(file);
12597
- const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
12597
+ const entries = await fs$1.readdir(dir, { withFileTypes: true }).catch(() => null);
12598
12598
  if (!entries) return file;
12599
12599
  return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
12600
12600
  const fullPath = path.join(dir, entry.name);
12601
- const fileStat = await fsPromises.stat(fullPath).catch(() => null);
12601
+ const fileStat = await fs$1.stat(fullPath).catch(() => null);
12602
12602
  return fileStat ? {
12603
12603
  path: fullPath,
12604
12604
  mtimeMs: fileStat.mtimeMs
@@ -12606,7 +12606,7 @@ async function resolveLogFile(file) {
12606
12606
  }))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
12607
12607
  }
12608
12608
  async function readLogSlice(params) {
12609
- const stat = await fsPromises.stat(params.file).catch(() => null);
12609
+ const stat = await fs$1.stat(params.file).catch(() => null);
12610
12610
  if (!stat) return {
12611
12611
  cursor: 0,
12612
12612
  size: 0,
@@ -12644,7 +12644,7 @@ async function readLogSlice(params) {
12644
12644
  truncated,
12645
12645
  reset
12646
12646
  };
12647
- const handle = await fsPromises.open(params.file, "r");
12647
+ const handle = await fs$1.open(params.file, "r");
12648
12648
  try {
12649
12649
  let prefix = "";
12650
12650
  if (start > 0) {
@@ -13626,7 +13626,7 @@ const nodeHandlers = {
13626
13626
  const p = params;
13627
13627
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
13628
13628
  await respondUnavailableOnThrow(respond, async () => {
13629
- const { handleNodeEvent } = await import("./server-node-events-CN7o3YoN.js");
13629
+ const { handleNodeEvent } = await import("./server-node-events-BS0Yy6SL.js");
13630
13630
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
13631
13631
  await handleNodeEvent({
13632
13632
  deps: context.deps,
@@ -16657,7 +16657,7 @@ function normalizeAgentPayload(payload) {
16657
16657
  async function startBrowserControlServerIfEnabled() {
16658
16658
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
16659
16659
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
16660
- const mod = override ? await import(override) : await import("./server-ChrqZt3H.js");
16660
+ const mod = override ? await import(override) : await import("./server-Bzgq55gk.js");
16661
16661
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
16662
16662
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
16663
16663
  if (!start) return null;
@@ -16885,7 +16885,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
16885
16885
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
16886
16886
  const candidate = path.join(rootReal, rel);
16887
16887
  try {
16888
- const st = await fsPromises.lstat(candidate);
16888
+ const st = await fs$1.lstat(candidate);
16889
16889
  if (st.isSymbolicLink()) return null;
16890
16890
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
16891
16891
  } catch {}
@@ -16922,8 +16922,8 @@ async function resolveA2uiRoot() {
16922
16922
  for (const dir of candidates) try {
16923
16923
  const indexPath = path.join(dir, "index.html");
16924
16924
  const bundlePath = path.join(dir, "a2ui.bundle.js");
16925
- await fsPromises.stat(indexPath);
16926
- await fsPromises.stat(bundlePath);
16925
+ await fs$1.stat(indexPath);
16926
+ await fs$1.stat(bundlePath);
16927
16927
  return dir;
16928
16928
  } catch {}
16929
16929
  return null;
@@ -16932,7 +16932,7 @@ async function resolveA2uiRootReal() {
16932
16932
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
16933
16933
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
16934
16934
  const root = await resolveA2uiRoot();
16935
- cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
16935
+ cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
16936
16936
  cachedA2uiResolvedAtMs = Date.now();
16937
16937
  resolvingA2uiRoot = null;
16938
16938
  return cachedA2uiRootReal;
@@ -17153,13 +17153,13 @@ function normalizeBasePath(rawPath) {
17153
17153
  }
17154
17154
  async function prepareCanvasRoot(rootDir) {
17155
17155
  await ensureDir(rootDir);
17156
- const rootReal = await fsPromises.realpath(rootDir);
17156
+ const rootReal = await fs$1.realpath(rootDir);
17157
17157
  try {
17158
17158
  const indexPath = path.join(rootReal, "index.html");
17159
- await fsPromises.stat(indexPath);
17159
+ await fs$1.stat(indexPath);
17160
17160
  } catch {
17161
17161
  try {
17162
- await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17162
+ await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
17163
17163
  } catch {}
17164
17164
  }
17165
17165
  return rootReal;
@@ -20204,7 +20204,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
20204
20204
  }
20205
20205
  async function readLockPayload(lockPath) {
20206
20206
  try {
20207
- const raw = await fsPromises.readFile(lockPath, "utf8");
20207
+ const raw = await fs$1.readFile(lockPath, "utf8");
20208
20208
  const parsed = JSON.parse(raw);
20209
20209
  if (typeof parsed.pid !== "number") return null;
20210
20210
  if (typeof parsed.createdAt !== "string") return null;
@@ -20239,11 +20239,11 @@ async function acquireGatewayLock(opts = {}) {
20239
20239
  const platform = opts.platform ?? process.platform;
20240
20240
  const port = opts.port;
20241
20241
  const { lockPath, configPath } = resolveGatewayLockPath(env);
20242
- await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
20242
+ await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
20243
20243
  const startedAt = Date.now();
20244
20244
  let lastPayload = null;
20245
20245
  while (Date.now() - startedAt < timeoutMs) try {
20246
- const handle = await fsPromises.open(lockPath, "wx");
20246
+ const handle = await fs$1.open(lockPath, "wx");
20247
20247
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
20248
20248
  const payload = {
20249
20249
  pid: process.pid,
@@ -20257,7 +20257,7 @@ async function acquireGatewayLock(opts = {}) {
20257
20257
  configPath,
20258
20258
  release: async () => {
20259
20259
  await handle.close().catch(() => void 0);
20260
- await fsPromises.rm(lockPath, { force: true });
20260
+ await fs$1.rm(lockPath, { force: true });
20261
20261
  }
20262
20262
  };
20263
20263
  } catch (err) {
@@ -20266,7 +20266,7 @@ async function acquireGatewayLock(opts = {}) {
20266
20266
  const ownerPid = lastPayload?.pid;
20267
20267
  const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
20268
20268
  if (ownerStatus === "dead" && ownerPid) {
20269
- await fsPromises.rm(lockPath, { force: true });
20269
+ await fs$1.rm(lockPath, { force: true });
20270
20270
  continue;
20271
20271
  }
20272
20272
  if (ownerStatus !== "alive") {
@@ -20276,13 +20276,13 @@ async function acquireGatewayLock(opts = {}) {
20276
20276
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
20277
20277
  }
20278
20278
  if (!stale) try {
20279
- const st = await fsPromises.stat(lockPath);
20279
+ const st = await fs$1.stat(lockPath);
20280
20280
  stale = Date.now() - st.mtimeMs > staleMs;
20281
20281
  } catch {
20282
20282
  stale = false;
20283
20283
  }
20284
20284
  if (stale) {
20285
- await fsPromises.rm(lockPath, { force: true });
20285
+ await fs$1.rm(lockPath, { force: true });
20286
20286
  continue;
20287
20287
  }
20288
20288
  }
@@ -22634,7 +22634,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
22634
22634
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
22635
22635
  if (!minimalTestGateway) (async () => {
22636
22636
  const { recoverPendingDeliveries } = await import("./delivery-queue-5cgQEnOW.js").then((n) => n.n);
22637
- const { deliverOutboundPayloads } = await import("./deliver-DuqANTNs.js").then((n) => n.n);
22637
+ const { deliverOutboundPayloads } = await import("./deliver-B05oD9oA.js").then((n) => n.n);
22638
22638
  await recoverPendingDeliveries({
22639
22639
  deliver: deliverOutboundPayloads,
22640
22640
  log: log.child("delivery-recovery"),