openclaw-multi-auto 1.7.6 → 1.7.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 (248) hide show
  1. package/dist/{acp-cli-DMujSgSt.js → acp-cli-D2FsuxI4.js} +11 -11
  2. package/dist/{agent-CaQagdQ7.js → agent-B8D73rdQ.js} +8 -8
  3. package/dist/{agent-QkWi9ww5.js → agent-BomWJjOy.js} +7 -7
  4. package/dist/{agent-scope-sd1-3XH0.js → agent-scope-DmTcOjk4.js} +16 -16
  5. package/dist/{agents.config-DpC62EoF.js → agents.config-Crwrvv0Y.js} +3 -3
  6. package/dist/{audio-preflight-ByLQ-O2o.js → audio-preflight-CUgcQtbA.js} +1 -1
  7. package/dist/{audio-preflight-CKN-13f6.js → audio-preflight-CZHCr2-5.js} +1 -1
  8. package/dist/{audio-preflight-CxMkqmsz.js → audio-preflight-DUZyiet9.js} +10 -10
  9. package/dist/{audio-preflight-BK4MI6Gs.js → audio-preflight-GAYJDgGF.js} +1 -1
  10. package/dist/{audit-COOnp_TQ.js → audit-CX3KlHoS.js} +18 -18
  11. package/dist/{audit-membership-runtime-o16tAd90.js → audit-membership-runtime-DOqwbA7L.js} +1 -1
  12. package/dist/{auth-choice-CgIbQGAr.js → auth-choice-CuOI0DLZ.js} +8 -8
  13. package/dist/{auth-choice-B7hFRxC4.js → auth-choice-DZC8_SXk.js} +19 -19
  14. package/dist/{auth-choice-options-CaiEtgdy.js → auth-choice-options-C_poWj2I.js} +1 -1
  15. package/dist/{auth-choice-prompt-CyE2_iHL.js → auth-choice-prompt-Bjt463U7.js} +1 -1
  16. package/dist/{auth-choice.apply-helpers-BwI7_FDv.js → auth-choice.apply-helpers-BFZ8hPRq.js} +2 -2
  17. package/dist/{auth-choice.preferred-provider-BJFK05is.js → auth-choice.preferred-provider-CzDq9Lvp.js} +5 -5
  18. package/dist/{auth-profiles.runtime-Bp6HfAW4.js → auth-profiles.runtime-BEes_Rco.js} +1 -1
  19. package/dist/{auth-profiles.runtime-firEabaJ.js → auth-profiles.runtime-BWD0iDWZ.js} +10 -10
  20. package/dist/{auth-profiles.runtime-DHFZjArZ.js → auth-profiles.runtime-DNqCx0L5.js} +1 -1
  21. package/dist/{auth-profiles.runtime-DEhTAVAo.js → auth-profiles.runtime-IXde-3_L.js} +1 -1
  22. package/dist/{auth-token-Ca2ISBq6.js → auth-token-CnWG4-cB.js} +1 -1
  23. package/dist/{bonjour-discovery-CgQeXj94.js → bonjour-discovery-Cnl-PHZ4.js} +1 -1
  24. package/dist/{browser-cli-DfrP5czU.js → browser-cli-DLSYDvK2.js} +11 -11
  25. package/dist/build-info.json +3 -3
  26. package/dist/bundled/boot-md/handler.js +2 -2
  27. package/dist/bundled/session-memory/handler.js +1 -1
  28. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  29. package/dist/{channel-account-context-F18H2wEh.js → channel-account-context-DMK0G0sK.js} +7 -7
  30. package/dist/{channel-options-DR0IjcQw.js → channel-options-CsQMEhUD.js} +3 -3
  31. package/dist/{channel-web-B3yCvpab.js → channel-web-D7txUcfH.js} +4 -4
  32. package/dist/channels/plugins/actions/discord.js +1 -1
  33. package/dist/channels/plugins/actions/signal.js +1 -1
  34. package/dist/channels/plugins/actions/telegram.js +1 -1
  35. package/dist/channels/plugins/agent-tools/whatsapp-login.js +1 -1
  36. package/dist/{channels-cli-C9jvVDlM.js → channels-cli-DK-EFHka.js} +33 -33
  37. package/dist/{channels-status-issues-C6mRI9nP.js → channels-status-issues-B-PoQaOZ.js} +1 -1
  38. package/dist/{clack-prompter-CakorHf3.js → clack-prompter-COY2Efgu.js} +1 -1
  39. package/dist/{clawbot-cli-De1V5wKt.js → clawbot-cli-CYVkuLnO.js} +12 -12
  40. package/dist/{cleanup-utils-DZ-HVi66.js → cleanup-utils-DksMdp7C.js} +4 -4
  41. package/dist/cli/daemon-cli.js +1 -1
  42. package/dist/{cli-5Ap2oull.js → cli-BXEJJp6e.js} +10 -10
  43. package/dist/{cmd-argv-Dz5qUtqp.js → cmd-argv-BdNFwuhe.js} +1 -1
  44. package/dist/{compact.runtime-CH24Vvny.js → compact.runtime-BCHQpekB.js} +1 -1
  45. package/dist/{compact.runtime-Dy7P2p35.js → compact.runtime-D9Tmp5YS.js} +1 -1
  46. package/dist/{compact.runtime-Bi0KAZxx.js → compact.runtime-Do9SwMzP.js} +10 -10
  47. package/dist/{compact.runtime-DoEYdXjJ.js → compact.runtime-pgjSlzSY.js} +1 -1
  48. package/dist/{completion-cli-DetW6vGx.js → completion-cli-BnHZnvaD.js} +12 -12
  49. package/dist/{config-cli-JmabBPbR.js → config-cli-BTyfFTwL.js} +13 -13
  50. package/dist/{config-guard-D0ly1tu3.js → config-guard-DXvConn_.js} +12 -12
  51. package/dist/{config-validation-DtOoaTl7.js → config-validation-ZC7mw4HJ.js} +3 -3
  52. package/dist/{configure-DNZVKth2.js → configure--3s3LTcF.js} +52 -52
  53. package/dist/{control-ui-assets-B9I2TpME.js → control-ui-assets-D5CuaZfV.js} +1 -1
  54. package/dist/{cron-cli-hA-3anvP.js → cron-cli-BTeTdxk8.js} +11 -11
  55. package/dist/{daemon-cli-CgEObThe.js → daemon-cli-TvT5eeIP.js} +13 -13
  56. package/dist/{daemon-install-e324s4no.js → daemon-install-CUvnebOQ.js} +16 -16
  57. package/dist/{daemon-install-plan.shared-g5FPfccc.js → daemon-install-plan.shared-BfFSRwqA.js} +12 -12
  58. package/dist/{deliver-runtime-6WeFOxSI.js → deliver-runtime-Bm3VqH55.js} +1 -1
  59. package/dist/{deliver-runtime-CI-THBhi.js → deliver-runtime-CRO5x8jL.js} +10 -10
  60. package/dist/{deliver-runtime-DLAZp9H3.js → deliver-runtime-CjrGc3oj.js} +1 -1
  61. package/dist/{deliver-runtime-CqyJiuFQ.js → deliver-runtime-D4aWAXZ9.js} +1 -1
  62. package/dist/{deps-B6HgPp5e.js → deps-Cgw7M-k3.js} +6 -6
  63. package/dist/{device-bootstrap-oW1bwgs7.js → device-bootstrap-DSXbseT6.js} +1 -1
  64. package/dist/{device-pairing-CMxl0D-M.js → device-pairing-RZV6Mnep.js} +1 -1
  65. package/dist/{devices-cli-BPpKKc7g.js → devices-cli-DnvmJ-Sg.js} +11 -11
  66. package/dist/{diagnostics-iZHasrpQ.js → diagnostics-1AwcyuKi.js} +5 -5
  67. package/dist/{directory-cli-BP8WHXBG.js → directory-cli-CO5of3mT.js} +10 -10
  68. package/dist/{discord-C5GTGVrg.js → discord-DKZdsbTR.js} +42 -42
  69. package/dist/{dns-cli-CQl7AkL3.js → dns-cli-s2wuP3H0.js} +10 -10
  70. package/dist/{docs-cli-BWb05s-1.js → docs-cli-CZA-gAQf.js} +3 -3
  71. package/dist/{doctor-completion-CA3Zcz0O.js → doctor-completion-DvnTlsPK.js} +2 -2
  72. package/dist/{doctor-config-flow-C53lW8fK.js → doctor-config-flow-DOEjAAYV.js} +10 -10
  73. package/dist/{enable-CmddFDJP.js → enable-BSbXEyXD.js} +1 -1
  74. package/dist/{exec-approvals-cli-Cyhhh2cy.js → exec-approvals-cli-CsNqvj8p.js} +18 -18
  75. package/dist/extensionAPI.js +1 -1
  76. package/dist/{fetch-ggeyBJ4j.js → fetch-CGW2R_wh.js} +2 -2
  77. package/dist/{gateway-cli-vQfsLSPv.js → gateway-cli-Bq7xXLEB.js} +101 -101
  78. package/dist/{gateway-install-token-CQHd6wSt.js → gateway-install-token-C40ge2lh.js} +3 -3
  79. package/dist/{gateway-rpc-DrDqntyT.js → gateway-rpc-DUJcLoxb.js} +1 -1
  80. package/dist/{health-CTOG7Tdy.js → health-D_dD9-ET.js} +7 -7
  81. package/dist/{hooks-cli-CvrIbP3A.js → hooks-cli-YvIgaujr.js} +18 -18
  82. package/dist/{hooks-status-BiuMKGQP.js → hooks-status-C3wWva3H.js} +1 -1
  83. package/dist/{image-runtime-DuwNoMsX.js → image-runtime-Brryt_BU.js} +1 -1
  84. package/dist/{image-runtime-BwzYRCA5.js → image-runtime-CReMeTZL.js} +1 -1
  85. package/dist/{image-runtime-CidKJsqA.js → image-runtime-Cr6qZmyh.js} +1 -1
  86. package/dist/{image-runtime-Cen4jnt5.js → image-runtime-Cx4HaqrI.js} +10 -10
  87. package/dist/index.js +21 -21
  88. package/dist/{inspect-C0iPD7zZ.js → inspect-D3lV5ful.js} +4 -4
  89. package/dist/{install-safe-path-CnIWvuEU.js → install-safe-path-BvwKN_9n.js} +33 -33
  90. package/dist/{installs-BcQMkw3V.js → installs-BC5ieRDB.js} +8 -8
  91. package/dist/{ipv4-DHZnIX-K.js → ipv4-CwqOzc5W.js} +1 -1
  92. package/dist/{issue-format-CtBob7pd.js → issue-format-34LidjQQ.js} +1 -1
  93. package/dist/{launchd-D7vxtTg7.js → launchd-BLFV2ME0.js} +13 -13
  94. package/dist/{lifecycle-core-CKec6MyM.js → lifecycle-core-C07n1IOr.js} +6 -6
  95. package/dist/line/send.js +1 -1
  96. package/dist/llm-slug-generator.js +1 -1
  97. package/dist/{logging-B7i4YBpx.js → logging-DPEdtuNl.js} +1 -1
  98. package/dist/{login-CQ5pGFeF.js → login-BLC4Op_m.js} +3 -3
  99. package/dist/{login-rVmwSeBs.js → login-CIjIxi5t.js} +2 -2
  100. package/dist/{login-DC00cCmn.js → login-CKmmxErc.js} +2 -2
  101. package/dist/{login-qr-FW_sLvPl.js → login-qr-D2jYdV8v.js} +2 -2
  102. package/dist/{login-qr-D3WKyrcm.js → login-qr-Djgtmdpd.js} +2 -2
  103. package/dist/{login-qr-C8iDYxXx.js → login-qr-DpxxtTBd.js} +11 -11
  104. package/dist/{login-qr-DB7lXNdD.js → login-qr-KVA4wuh0.js} +2 -2
  105. package/dist/{login-BEOnxdap.js → login-xsvrgJJt.js} +2 -2
  106. package/dist/{logs-cli-B8u30MKC.js → logs-cli-BKhTgUSN.js} +11 -11
  107. package/dist/{manager-runtime-DDc_xR6t.js → manager-runtime-B4ZbE6hq.js} +10 -10
  108. package/dist/{manager-runtime-DV0_pZDZ.js → manager-runtime-BBxiBzvv.js} +1 -1
  109. package/dist/{manager-runtime-DON5nkey.js → manager-runtime-CvM8JTRt.js} +1 -1
  110. package/dist/{manager-runtime-C04JB-55.js → manager-runtime-D9AEoM1M.js} +1 -1
  111. package/dist/{manager.runtime-y1RqEqxK.js → manager.runtime-BV-CBNb2.js} +2 -2
  112. package/dist/{manager.runtime-CynsHdcO.js → manager.runtime-CF3GyuMb.js} +7 -7
  113. package/dist/{manager.runtime-B8hc-v_R.js → manager.runtime-DbQBNTV4.js} +7 -7
  114. package/dist/{manager.runtime-sDKQexj4.js → manager.runtime-lHLhN5ro.js} +16 -16
  115. package/dist/{model-picker-iMZicrZb.js → model-picker-C5sQCeTo.js} +5 -5
  116. package/dist/{model-selection-qaBek98Q.js → model-selection-BQm6_iuT.js} +43 -43
  117. package/dist/{model-selection-Coo7zMJO.js → model-selection-CNRMBWfR.js} +43 -43
  118. package/dist/{models-cli-CHWqnmnX.js → models-cli-B7OdTj93.js} +21 -21
  119. package/dist/{node-cli-D2EGwHd2.js → node-cli-ArOhWB3h.js} +22 -22
  120. package/dist/{node-command-policy-C9YoIlNR.js → node-command-policy-BVIbeciX.js} +1 -1
  121. package/dist/{node-service-D7xRD6Op.js → node-service-ESc5ToCS.js} +1 -1
  122. package/dist/{nodes-cli-BaWA_a27.js → nodes-cli-BLneGv8c.js} +13 -13
  123. package/dist/{npm-pack-install-C7ntuYO8.js → npm-pack-install-DI_0G-Ju.js} +23 -23
  124. package/dist/{npm-resolution-BL-LzQ8q.js → npm-resolution-DowD_x7i.js} +3 -3
  125. package/dist/{onboard-1Vbkq-0q.js → onboard-Da0Gqg8E.js} +10 -10
  126. package/dist/{onboard-channels-C_RZQliP.js → onboard-channels-Dub92d1X.js} +16 -16
  127. package/dist/{onboard-custom-CyUm7NIR.js → onboard-custom-iC39HaRY.js} +5 -5
  128. package/dist/{onboard-hooks-Bx20a5uy.js → onboard-hooks-DUll1iq8.js} +4 -4
  129. package/dist/{onboard-remote-Dtm07eUX.js → onboard-remote-Cyc407f2.js} +3 -3
  130. package/dist/{onboard-skills-BOBtFqTc.js → onboard-skills-BqnqjDI3.js} +3 -3
  131. package/dist/{onboarding-CAQDdLGu.js → onboarding-BgeTWLi_.js} +17 -17
  132. package/dist/{onboarding.finalize-BAUMJZlu.js → onboarding.finalize-C4jEsWtC.js} +25 -25
  133. package/dist/{onboarding.gateway-config-BRSWuajr.js → onboarding.gateway-config-C2XdEUF3.js} +14 -14
  134. package/dist/{onboarding.secret-input-D75Xjj5j.js → onboarding.secret-input-OwIXA7An.js} +1 -1
  135. package/dist/{openai-codex-oauth-BjOz2DJZ.js → openai-codex-oauth-BUnBFHjs.js} +3 -3
  136. package/dist/{openclaw-root-dlCz9toZ.js → openclaw-root-B5jXk2td.js} +8 -8
  137. package/dist/{outbound-send-deps-Bid3Xegx.js → outbound-send-deps-dRaNZNE7.js} +1 -1
  138. package/dist/{pairing-cli-Dm_fH3zm.js → pairing-cli-pEJPQw6E.js} +10 -10
  139. package/dist/{path-alias-guards-B6owPyQX.js → path-alias-guards-BEqdGdn9.js} +3 -3
  140. package/dist/{path-safety-DN7L46Yk.js → path-safety-TRhr8lhQ.js} +1 -1
  141. package/dist/{pi-model-discovery-runtime-BRs3OnbK.js → pi-model-discovery-runtime-BkRq7f9h.js} +10 -10
  142. package/dist/{pi-model-discovery-runtime-Do-8n2s8.js → pi-model-discovery-runtime-BujN_d1_.js} +1 -1
  143. package/dist/{pi-model-discovery-runtime-DsZRIFOj.js → pi-model-discovery-runtime-CDKkuBYh.js} +1 -1
  144. package/dist/{pi-model-discovery-runtime-Q0BoklY3.js → pi-model-discovery-runtime-DeRljgTs.js} +1 -1
  145. package/dist/{pi-tools.before-tool-call.runtime-DpSw9nu5.js → pi-tools.before-tool-call.runtime-BYooFUjV.js} +1 -1
  146. package/dist/{pi-tools.before-tool-call.runtime-l0nSxXys.js → pi-tools.before-tool-call.runtime-DgAiY2la.js} +1 -1
  147. package/dist/{pi-tools.before-tool-call.runtime-Cz99nK1_.js → pi-tools.before-tool-call.runtime-Dt7ZWya_.js} +10 -10
  148. package/dist/{pi-tools.before-tool-call.runtime-B_uML_Gt.js → pi-tools.before-tool-call.runtime-PhxG0y1R.js} +1 -1
  149. package/dist/{plugin-install-plan-tegfcs_j.js → plugin-install-plan-q0pKUAmp.js} +1 -1
  150. package/dist/{plugin-registry-D1UVdXNl.js → plugin-registry-DrrKSvdi.js} +2 -2
  151. package/dist/{plugins-cli-DMTK-3PI.js → plugins-cli-BWuwmlNA.js} +21 -21
  152. package/dist/{plugins-BVbKGpQJ.js → plugins-om7vnHk0.js} +9 -9
  153. package/dist/{ports-CrZzXxTl.js → ports-CVD9jTxH.js} +2 -2
  154. package/dist/{probe-auth-H1_HjX3c.js → probe-auth-CRm2yob0.js} +1 -1
  155. package/dist/{program-context--XQiK-Vv.js → program-context-BnNrq2_o.js} +42 -42
  156. package/dist/{prompt-select-styled-BzWw9bIh.js → prompt-select-styled-FpCuoi_9.js} +32 -32
  157. package/dist/{provider-auth-helpers-B5U-h2Ob.js → provider-auth-helpers-Dzq3SbTh.js} +4 -4
  158. package/dist/{provider-wizard-BgHYhBzK.js → provider-wizard-CRYUkbUG.js} +1 -1
  159. package/dist/{push-apns-DQdHdrq8.js → push-apns-6Yefl4vF.js} +3 -3
  160. package/dist/{pw-ai-R41XeePP.js → pw-ai-3ual6adI.js} +1 -1
  161. package/dist/{pw-ai-8OpaEmr4.js → pw-ai-Brk_ehKR.js} +15 -15
  162. package/dist/{pw-ai-B9F20k6L.js → pw-ai-C_IaVhUm.js} +1 -1
  163. package/dist/{pw-ai-DzdseGw2.js → pw-ai-CzFFsGR7.js} +1 -1
  164. package/dist/{qmd-manager-BMkECKpc.js → qmd-manager-Clny9vcj.js} +19 -19
  165. package/dist/{qr-cli-CZy0bldy.js → qr-cli-TsbdBlkh.js} +11 -11
  166. package/dist/{query-expansion-AnOnkIqf.js → query-expansion-BNb6Vys6.js} +48 -48
  167. package/dist/{redact-snapshot-lCMXNHo3.js → redact-snapshot-sudZsVoX.js} +1 -1
  168. package/dist/{register.agent-2yZ4uAHT.js → register.agent-BcYbZ3eF.js} +43 -43
  169. package/dist/{register.backup-Byyque4N.js → register.backup-DbtBtW_J.js} +26 -26
  170. package/dist/register.configure-CPWCrXrC.js +87 -0
  171. package/dist/{register.maintenance-BZ_V3Ubt.js → register.maintenance-Cdn2TwrI.js} +33 -33
  172. package/dist/{register.message-CJwTd37H.js → register.message-cHCXxeA6.js} +13 -13
  173. package/dist/{register.onboard-BY0T1WHb.js → register.onboard-Dbig7G2G.js} +17 -17
  174. package/dist/{register.setup-CA3ZUrN-.js → register.setup-DjHUcAcm.js} +18 -18
  175. package/dist/{register.status-health-sessions-PN0jxAPA.js → register.status-health-sessions-BMxJK45p.js} +26 -26
  176. package/dist/{reply-gX1XTS9Y.js → reply-Cf5Mm7vB.js} +226 -226
  177. package/dist/{restart-stale-pids-B6E7QavX.js → restart-stale-pids-ZfbSMILU.js} +2 -2
  178. package/dist/{rpc-B2PO3N0W.js → rpc-8YrBMBoD.js} +1 -1
  179. package/dist/{runtime-whatsapp-login.runtime-BAgknLYS.js → runtime-whatsapp-login.runtime-6yfwX0nq.js} +3 -3
  180. package/dist/{runtime-whatsapp-login.runtime-DKMtq6l9.js → runtime-whatsapp-login.runtime-Bo1HalYB.js} +12 -12
  181. package/dist/{runtime-whatsapp-login.runtime-C_E260pb.js → runtime-whatsapp-login.runtime-Br3SxDXL.js} +3 -3
  182. package/dist/{runtime-whatsapp-login.runtime-Dsz-DNfa.js → runtime-whatsapp-login.runtime-vKFKNi8Z.js} +3 -3
  183. package/dist/{runtime-whatsapp-outbound.runtime-3elssz_a.js → runtime-whatsapp-outbound.runtime-BKesQQli.js} +2 -2
  184. package/dist/{runtime-whatsapp-outbound.runtime-Dv1HN4ha.js → runtime-whatsapp-outbound.runtime-Ch2o56Ey.js} +11 -11
  185. package/dist/{runtime-whatsapp-outbound.runtime-BdHcgl-R.js → runtime-whatsapp-outbound.runtime-L3Qkst0n.js} +2 -2
  186. package/dist/{runtime-whatsapp-outbound.runtime-BeZMBTt6.js → runtime-whatsapp-outbound.runtime-SAT-C6UE.js} +2 -2
  187. package/dist/{sandbox-cli-SCYkP_qN.js → sandbox-cli-CoRe21Si.js} +10 -10
  188. package/dist/{secret-file-CuiwToxK.js → secret-file-7smmAVRV.js} +1 -1
  189. package/dist/{secrets-cli-C5O6Jw_4.js → secrets-cli-CHT1AjCX.js} +11 -11
  190. package/dist/{security-cli-CL4qtb9H.js → security-cli-DRqdmCtr.js} +20 -20
  191. package/dist/{send-hZxe8sP9.js → send-CHZ7WuOb.js} +2 -2
  192. package/dist/{send-BvAlpSvh.js → send-CXnKWzde.js} +1 -1
  193. package/dist/{send-DxYxezcL.js → send-DGQUY-kp.js} +1 -1
  194. package/dist/{send-t1epz3bc.js → send-pxKoZnv6.js} +1 -1
  195. package/dist/{server-Cnc4lO11.js → server-DiTziwvC.js} +10 -10
  196. package/dist/{server-node-events-aTSoNGTe.js → server-node-events-p5ykMQz-.js} +14 -14
  197. package/dist/{service-LNrViUVb.js → service-RXVSlLiU.js} +13 -13
  198. package/dist/{session-CndmPe2D.js → session-CXOhppV3.js} +2 -2
  199. package/dist/{session--tqRfZQU.js → session-CbQ43pUq.js} +1 -1
  200. package/dist/{session-BUpAKttt.js → session-D0j0Q_PW.js} +1 -1
  201. package/dist/{session-D7nweu0t.js → session-kt-bqE_z.js} +1 -1
  202. package/dist/{shared-c6JUv5At.js → shared-CoL161wD.js} +1 -1
  203. package/dist/{skill-scanner-DaUNX-tW.js → skill-scanner-BzjuMMKN.js} +6 -6
  204. package/dist/{skills-vhlUaliH.js → skills-Jz-BSwRd.js} +2 -2
  205. package/dist/{skills-cli-YqsScIM5.js → skills-cli-YajvWbjO.js} +11 -11
  206. package/dist/{skills-install-BnRu7wO4.js → skills-install-DFkV3GsC.js} +6 -6
  207. package/dist/{skills-status-DHMQ6A2H.js → skills-status-PMeXzDbC.js} +1 -1
  208. package/dist/{slash-commands.runtime-AZCJXo7S.js → slash-commands.runtime-BYfxn_xu.js} +1 -1
  209. package/dist/{slash-commands.runtime-C8j-n-bX.js → slash-commands.runtime-DoT9bJKb.js} +1 -1
  210. package/dist/{slash-commands.runtime-D9GHahMO.js → slash-commands.runtime-_LrsMaI1.js} +10 -10
  211. package/dist/{slash-commands.runtime-YWtbFO1w.js → slash-commands.runtime-eZUYakkd.js} +1 -1
  212. package/dist/{slash-dispatch.runtime-BA-MMy0P.js → slash-dispatch.runtime--9HmQuIE.js} +1 -1
  213. package/dist/{slash-dispatch.runtime-DyUU1AG5.js → slash-dispatch.runtime-Cu8ghe1h.js} +1 -1
  214. package/dist/{slash-dispatch.runtime-QxpHMagD.js → slash-dispatch.runtime-D7ogJeRu.js} +1 -1
  215. package/dist/{slash-dispatch.runtime-DcISuJb0.js → slash-dispatch.runtime-neG4499W.js} +10 -10
  216. package/dist/{slash-skill-commands.runtime-Cv1NPjj6.js → slash-skill-commands.runtime-8dS5PTaH.js} +1 -1
  217. package/dist/{slash-skill-commands.runtime-Cm8K1kWM.js → slash-skill-commands.runtime-BZqnnkHJ.js} +1 -1
  218. package/dist/{slash-skill-commands.runtime-Dt6QQJcX.js → slash-skill-commands.runtime-D0ohJN-V.js} +10 -10
  219. package/dist/{slash-skill-commands.runtime-Cgu35QuS.js → slash-skill-commands.runtime-iwoxGLKu.js} +1 -1
  220. package/dist/{status-D9mVTxuB.js → status-1patzIRq.js} +1 -1
  221. package/dist/{status-QQiIsfFq.js → status-BaLZ1uQV.js} +21 -21
  222. package/dist/{status.update-DY13od-q.js → status.update-DrzJ1YWu.js} +3 -3
  223. package/dist/{subagent-registry-runtime-DKOXxZgH.js → subagent-registry-runtime-9WfVik2h.js} +1 -1
  224. package/dist/{subagent-registry-runtime-CNgez4Yd.js → subagent-registry-runtime-BPxjP8o9.js} +1 -1
  225. package/dist/{subagent-registry-runtime-CoeW8s2P.js → subagent-registry-runtime-BTW1zlrG.js} +10 -10
  226. package/dist/{subagent-registry-runtime-N50VG-ay.js → subagent-registry-runtime-Z0fdsGSq.js} +1 -1
  227. package/dist/{system-cli-DMu6SZhn.js → system-cli-CndWL3sF.js} +11 -11
  228. package/dist/{systemd-DSK6B3bg.js → systemd-D47rkLi7.js} +11 -11
  229. package/dist/{systemd-hints-DsQTPBGt.js → systemd-hints-DHfXVo8k.js} +6 -6
  230. package/dist/{systemd-linger-BPISBIWJ.js → systemd-linger-DwmFZpci.js} +1 -1
  231. package/dist/{tui-DzNNH2rc.js → tui-CzYnfJxE.js} +2 -2
  232. package/dist/{tui-cli-D5JgcWb9.js → tui-cli-D47N0Kfm.js} +11 -11
  233. package/dist/{update-DL_359AR.js → update-BiUnc38r.js} +2 -2
  234. package/dist/{update-cli-BfjWjK3A.js → update-cli-CeqH2oQ-.js} +45 -45
  235. package/dist/{update-runner-CfkBU1BA.js → update-runner-oqYBjs5t.js} +16 -16
  236. package/dist/{web-BHO-XtPY.js → web-BRvkjVpk.js} +14 -14
  237. package/dist/{web-RzQ9jrtt.js → web-B_EVHbEP.js} +4 -4
  238. package/dist/{web-rZyV5Fxs.js → web-Bl0ih6N1.js} +4 -4
  239. package/dist/{web-B4n02Xhe.js → web-CXyjF_si.js} +4 -4
  240. package/dist/{webhooks-cli-C0kgprJJ.js → webhooks-cli-CnTKcfvh.js} +10 -10
  241. package/dist/{whatsapp-actions-JJEG8eF3.js → whatsapp-actions-BUvGEDSk.js} +2 -2
  242. package/dist/{whatsapp-actions-BC06Ug_d.js → whatsapp-actions-BXO9Bi7a.js} +11 -11
  243. package/dist/{whatsapp-actions-De9-kJMP.js → whatsapp-actions-Cpf6YROk.js} +2 -2
  244. package/dist/{whatsapp-actions-BmDvJijd.js → whatsapp-actions-pQqLTCXJ.js} +2 -2
  245. package/dist/{workspace-BTsqd19h.js → workspace-CWne7yqK.js} +1 -1
  246. package/package.json +1 -1
  247. package/scripts/create-instance.sh +10 -11
  248. package/dist/register.configure-CrATD0tr.js +0 -87
@@ -1,10 +1,10 @@
1
1
  import { g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-tuenh9TL.js";
2
2
  import { A as theme, M as getLogger, N as getResolvedLoggerSettings, O as colorize, S as logVerbose, a as setConsoleSubsystemFilter, c as sanitizeForLog, j as getChildLogger, k as isRich, n as runtimeForLogger, o as setConsoleTimestampPrefix, p as defaultRuntime, t as createSubsystemLogger, w as setVerbose } from "./subsystem-G54saDcg.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-B8zCe27d.js";
4
- import { $c as parseSessionLabel, $h as isTrustedProxyAddress, $i as buildOutboundSessionContext, $l as enqueueCommandInLane, $p as resolveAgentMainSessionKey, $s as validateDeviceTokenRotateParams, $t as getRemoteSkillEligibility, Aa as triggerOpenClawRestart, Ac as validateSessionsListParams, Ad as normalizePollInput, Ai as resolveAgentIdentity, Am as cleanStaleLockFiles, Ap as archiveFileOnDisk, Ar as runBeforeToolCallHook, As as validateChatHistoryParams, Ba as normalizeCronJobPatch, Bc as validateTalkConfigParams, Bd as setTtsProvider, Bn as dispatchInboundMessage, Bo as resolveSystemRunApprovalRuntimeContext, Bp as stripInlineDirectiveTagsFromMessageForDisplay, Bs as validateConnectParams, Ca as deferGatewayRestartUntilIdle, Cc as validatePushTestParams, Cg as collectExplicitAllowlist, Ci as lookupContextTokens, Cl as ensureExecApprovals, Cm as GATEWAY_CLIENT_IDS, Cr as buildDefaultToolPolicyPipelineSteps, Cs as validateAgentsFilesListParams, Cu as stripHeartbeatToken, Da as scheduleGatewaySigusr1Restart, Dc as validateSendParams, Dh as mergeGatewayTailscaleConfig, Dm as normalizeGatewayClientMode, Dp as mergeDeliveryContext, Dr as resolveGroupToolPolicy, Ds as validateChannelsLogoutParams, Du as isSilentReplyText, E_ as parseByteSize, Ea as markGatewaySigusr1RestartHandled, Ec as validateSecretsResolveResult, Eg as PROFILE_OPTIONS, Eh as mergeGatewayAuthConfig, Ei as sleepWithAbort, El as mergeExecApprovalsSocketDefaults, Em as hasGatewayClientCap, Ep as deliveryContextFromSession, Er as resolveEffectiveToolPolicy, Es as validateAgentsUpdateParams, F as resolveDefaultModelForAgent, F_ as looksLikeAvatarPath, Fa as summarizeRestartSentinel, Fc as validateSessionsUsageParams, Fd as resolveTtsAutoMode, Fh as authorizeWsControlUiGatewayConnect, Fp as readSessionPreviewItemsFromTranscript, Fr as initSubagentRegistry, Fs as validateConfigPatchParams, G as withProgress, Ga as normalizeOptionalAgentId, Gc as validateWebLoginStartParams, Gh as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, Gn as DEFAULT_INPUT_TIMEOUT_MS, Go as missingSystemRunApprovalBinding, Gr as resolveIngressWorkspaceOverrideForSpawnedRun, Gs as validateCronRunsParams, Gt as resolveAssistantAvatarUrl, Gv as normalizeThinkLevel, H as createPluginRuntime, Ha as resolveCronStaggerMs, Hc as validateToolsCatalogParams, Hd as OPENAI_TTS_MODELS, Hh as readGatewayTokenEnv, Hn as getTotalPendingReplies, Ho as resolveSystemRunCommandRequest, Hp as jsonUtf8Bytes, Hr as resolveAgentTimeoutMs, Hs as validateCronListParams, Ht as CONTROL_UI_AVATAR_PREFIX, Hv as normalizeElevatedLevel, I as resolveHooksGmailModel, Ic as validateSkillsBinsParams, Id as resolveTtsConfig, Ih as isLocalDirectRequest, Il as saveExecApprovals, In as buildHistoryContextFromEntries, Ip as resolveSessionTranscriptCandidates, Is as validateConfigSchemaLookupParams, Iv as DEFAULT_MODEL, Ja as normalizePayloadToSystemText, Jc as validateWizardNextParams, Jh as normalizeRateLimitClientIp, Jl as resolveUserTimezone, Jm as createBrowserRouteDispatcher, Jn as normalizeMimeList, Jr as getAgentRunContext, Js as validateDevicePairApproveParams, Jt as resolveExecApprovalCommandDisplay, Ka as normalizeOptionalSessionKey, Kc as validateWebLoginWaitParams, Kh as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, Kn as extractFileContentFromSource, Kr as clearAgentRunContext, Ks as validateCronStatusParams, Kv as normalizeUsageDisplay, La as writeRestartSentinel, Lc as validateSkillsInstallParams, Ld as resolveTtsPrefsPath, Lh as resolveGatewayAuth, Lp as stripEnvelopeFromMessage, Lr as listDescendantRunsForRequester, Ls as validateConfigSchemaLookupResult, Lu as isRestartEnabled, Lv as DEFAULT_PROVIDER, M as resolveAllowedModelRef, M_ as AVATAR_MAX_BYTES, Ma as formatDoctorNonInteractiveHint, Mc as validateSessionsPreviewParams, Md as isTtsEnabled, Mm as readJsonFile, Mp as capArrayByJsonBytes, Mr as countActiveDescendantRuns, Ms as validateChatSendParams, N_ as isAvatarHttpUrl, Na as formatRestartSentinelMessage, Nc as validateSessionsResetParams, Nd as isTtsProviderConfigured, Nh as assertGatewayAuthConfigured, Nm as writeJsonAtomic, Np as cleanupArchivedSessionTranscripts, Ns as validateConfigApplyParams, Oa as setGatewaySigusr1RestartPolicy, Oc as validateSessionsCompactParams, Og as listCoreToolSections, Oh as resolveConfiguredSecretInputString, Oi as clearSessionQueues, Ol as normalizeExecApprovals, On as resolveAgentAvatar, Op as normalizeSessionDeliveryFields, Or as resolveSubagentToolPolicy, Os as validateChannelsStatusParams, Ou as getAcpSessionManager, P as resolveConfiguredModelRef, P_ as isAvatarImageDataUrl, Pc as validateSessionsResolveParams, Pd as resolveTtsApiKey, Ph as authorizeHttpGatewayConnect, Pi as normalizeGroupActivation, Pn as createReplyPrefixOptions, Pp as readSessionMessages, Ps as validateConfigGetParams, Pv as normalizeSecretInput, Q_ as ensureControlUiAllowedOriginsForNonLoopbackBind, Qa as normalizeLegacyDeliveryInput, Qc as errorShape, Qi as resolveSessionDeliveryTarget, Qn as resolveSendPolicy, Qp as canonicalizeMainSessionAlias, Qs as validateDeviceTokenRevokeParams, R as resolveSubagentConfiguredModelSelection, Ra as normalizeHttpWebhookUrl, Rc as validateSkillsStatusParams, Rd as resolveTtsProviderOrder, Rl as getPluginToolMeta, Rp as stripEnvelopeFromMessages, Rs as validateConfigSchemaParams, Rv as formatThinkingLevels, Sa as consumeGatewaySigusr1RestartAuthorization, Sc as validatePollParams, Sf as runGlobalGatewayStopSafely, Sh as SsrFBlockedError, Sm as GATEWAY_CLIENT_CAPS, So as evaluateGatewayAuthSurfaceStates, Sr as applyToolPolicyPipeline, Ss as validateAgentsFilesGetParams, T as isCliProvider, T_ as parseDurationMs, Ta as isGatewaySigusr1RestartExternallyAllowed, Tc as validateSecretsResolveParams, Tg as resolveToolProfilePolicy, Th as ensureGatewayStartupAuth, Ti as computeBackoff, Tm as GATEWAY_CLIENT_NAMES, Tn as unbindThreadBindingsBySessionKey, To as isKnownSecretTargetId, Ts as validateAgentsListParams, Tu as SILENT_REPLY_TOKEN, Ua as resolveDefaultCronStaggerMs, Uc as validateUpdateRunParams, Ud as OPENAI_TTS_VOICES, Ui as ensureOutboundSessionEntry, Un as DEFAULT_INPUT_IMAGE_MAX_BYTES, Uo as buildSystemRunApprovalBinding, Us as validateCronRemoveParams, Ut as buildControlUiAvatarUrl, Uv as normalizeFastMode, V as loadOpenClawPlugins, Va as normalizeCronStaggerMs, Vc as validateTalkModeParams, Vd as textToSpeech, Vh as readGatewayPasswordEnv, Vi as parseTimeoutMsWithFallback, Vn as createReplyDispatcher, Vp as normalizeInputProvenance, Vs as validateCronAddParams, Wc as validateWakeParams, Wh as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, Wi as resolveOutboundSessionRoute, Wn as DEFAULT_INPUT_IMAGE_MIMES, Wo as matchSystemRunApprovalBinding, Wr as normalizeSpawnedRunMetadata, Ws as validateCronRunParams, Wt as normalizeControlUiBasePath, Wv as normalizeReasoningLevel, X_ as applyMergePatch, Xc as validateWizardStatusParams, Xh as isLoopbackAddress, Xm as startBrowserControlServiceFromConfig, Xr as registerAgentRunContext, Xs as validateDevicePairRejectParams, Xu as readChannelAllowFromStoreSync, Ya as normalizeRequiredName, Yc as validateWizardStartParams, Yh as isLocalishHost, Ym as createBrowserControlContext, Yn as resolveInputFileLimits, Yo as buildExecApprovalPendingReplyPayload, Yp as mergeSessionEntry, Yr as onAgentEvent, Ys as validateDevicePairListParams, Yt as sanitizeExecApprovalDisplayText, Yv as supportsXHighThinking, Z_ as applyLegacyMigrations, Za as parseAbsoluteTimeMs, Zc as ErrorCodes, Zh as isLoopbackHost, Zi as resolveOutboundTarget, Zl as clearBootstrapSnapshot, Zn as normalizeSendPolicy, Zo as ToolInputError, Zp as setSessionRuntimeModel, Zs as validateDevicePairRemoveParams, _c as validateNodePairVerifyParams, _i as migrateAndPruneGatewaySessionStoreKey, _l as requestHeartbeatNow, _m as isGatewayMessageChannel, _o as clearSecretsRuntimeSnapshot, _p as loadSessionStore, _s as validateAgentIdentityParams, _t as handleSlackHttpRequest, a as runCliAgent, aa as normalizeReplyPayloadsForDelivery, ac as validateExecApprovalsSetParams, ad as enqueueSystemEvent, ag as resolveGatewayListenHosts, ai as resolvePreferredSessionKeyForSessionIdMatches, al as normalizeDeviceMetadataForAuth, an as setSkillsRemoteRegistry, au as setCommandLaneConcurrency, b_ as OpenClawSchema, bc as validateNodePendingEnqueueParams, bm as normalizeMessageChannel, bn as registerSkillsChangeListener, bo as resolveCommandSecretsFromActiveRuntimeSnapshot, bs as validateAgentsCreateParams, bu as getMachineDisplayName, ca as applyPluginAutoEnable, cc as validateNodeDescribeParams, cg as pickPrimaryTailnetIPv4, cl as loadGatewayTlsRuntime$1, cn as rejectNodePairing, cs as ADMIN_SCOPE$3, ct as loadCronStore, cv as buildTalkConfigResponse, d as parseVerboseOverride, d_ as loadConfig, da as buildChannelUiCatalog, dc as validateNodeInvokeResultParams, dg as disableTailscaleFunnel, di as canonicalizeSpawnedByForAgent, dl as normalizeDevicePublicKeyBase64Url, dn as updatePairedNodeMetadata, do as getHookType, dp as resolveAgentSessionDirs, dr as waitForActiveEmbeddedRuns, dt as buildTelegramExecApprovalButtons, dv as VERSION, ea as deliverOutboundPayloads, ec as validateExecApprovalRequestParams, eg as isValidIPv4, eh as movePathToTrash, ei as readLatestAssistantReply, el as ConnectErrorDetailCodes, em as resolveExplicitAgentSessionKey, en as primeRemoteSkillsCache, eu as getActiveTaskCount, f_ as parseConfigJson5, fc as validateNodeListParams, ff as loadModelCatalog, fg as disableTailscaleServe, fl as publicKeyRawBase64UrlFromPem, fn as verifyNodeToken, fo as isExternalHookSession, fr as waitForEmbeddedPiRunEnd, fs as WRITE_SCOPE, ft as resolveExecApprovalSessionTarget, fu as isDiagnosticsEnabled, fv as resolveRuntimeServiceVersion, g_ as resolveConfigSnapshotHash, ga as resolveMessageChannelSelection, gc as validateNodePairRequestParams, gg as getTailnetHostname, gi as loadSessionEntry, gm as isGatewayCliClient, go as activateSecretsRuntimeSnapshot, gp as archiveRemovedSessionTranscripts, gr as resolveFastModeState, gs as formatValidationErrors, h_ as readConfigFileSnapshotForWrite, ha as resetDirectoryCache, hc as validateNodePairRejectParams, hd as getChannelActivity, hi as loadCombinedSessionStoreForGateway, hm as isDeliverableMessageChannel, ho as persistBrowserProxyFiles, hr as resolveBootstrapWarningSignaturesSeen, i as setCliSessionId, ic as validateExecApprovalsNodeSetParams, ig as resolveGatewayBindHost, ii as resolveNestedAgentLane, il as buildDeviceAuthPayloadV3, in as removeRemoteNodeInfo, ip as estimateBase64DecodedBytes, ir as stopSubagentsForRequester, iu as resetAllLanes, ja as consumeRestartSentinel, jc as validateSessionsPatchParams, jd as getTtsProvider, jl as readExecApprovalsSnapshot, jm as createAsyncLock, jp as archiveSessionTranscripts, jr as createOpenClawTools, js as validateChatInjectParams, k as normalizeModelSelection, ka as setPreRestartDeferralCheck, kc as validateSessionsDeleteParams, kg as resolveCoreToolProfiles, ks as validateChatAbortParams, kt as handleReset, kv as isPidAlive, l_ as migrateLegacyConfig, lc as validateNodeEventParams, lf as registerUnhandledRejectionHandler, lg as pickPrimaryTailnetIPv6, ll as deriveDeviceIdFromPublicKey, ln as renamePairedNode, lo as buildSafeExternalPrompt, lr as abortEmbeddedPiRun, ls as APPROVALS_SCOPE$1, lt as resolveCronStorePath, lu as startDiagnosticHeartbeat, lv as resolveAgentMaxConcurrent, m_ as readConfigFileSnapshot, ma as maybeResolveIdLikeTarget, mc as validateNodePairListParams, mg as enableTailscaleServe, mi as listSessionsFromStore, ml as verifyDeviceSignature, mm as INTERNAL_MESSAGE_CHANNEL, mo as applyBrowserProxyPaths, mp as parseSessionThreadInfo, ms as isNodeRoleMethod, mt as resolveAgentOutboundIdentity, mu as resolveMemoryBackendConfig, n as buildBareSessionResetPrompt, nc as validateExecApprovalsGetParams, ng as pickPrimaryLanIPv4, nl as resolveDeviceAuthConnectErrorDetailCode, nm as resolveMainSessionKeyFromConfig, nn as refreshRemoteBinsForConnectedNodes, nu as getTotalQueueSize, oc as validateLogsTailParams, od as isSystemEventContextChanged, of as extractTextFromChatContent, og as resolveRequestClientIp, oh as rawDataToString, oi as applyModelOverrideToSessionEntry, on as approveNodePairing, ot as sendTypingTelegram, ou as waitForActiveTasks, p_ as readBestEffortConfig, pc as validateNodePairApproveParams, pg as enableTailscaleFunnel, pi as listAgentsForGateway, po as closeTrackedBrowserTabsForSessions, pp as extractDeliveryInfo, ps as authorizeOperatorScopesForMethod, pu as getMemorySearchManager, q as formatHelpExamples, qa as normalizeOptionalText$1, qc as validateWizardCancelParams, qh as createAuthRateLimiter, qn as extractImageContentFromSource, qo as toSystemRunApprovalMismatchError, qr as emitAgentEvent, qs as validateCronUpdateParams, qv as normalizeVerboseLevel, r as getCliSessionId, rc as validateExecApprovalsNodeGetParams, rg as resolveClientIp, rl as buildDeviceAuthPayload, rm as snapshotSessionOrigin, rn as refreshRemoteNodeBins, rr as isAbortRequestText, rs as callGateway, ru as markGatewayDraining, sa as resolveOutboundChannelPlugin, sc as validateModelsListParams, sf as fetchWithSsrFGuard, sh as cleanOldMedia, si as loadProviderUsageSummary, sl as normalizeDeviceAuthScopes, sn as listNodePairing, sr as runEmbeddedPiAgent, su as CommandLane, tc as validateExecApprovalResolveParams, tg as normalizeHostHeader, ti as resolveAnnounceTargetFromKey, tl as resolveAuthConnectErrorDetailCode, tm as resolveMainSessionKey, tn as recordRemoteNodeInfo, u as applyVerboseOverride, u_ as createConfigIO, uc as validateNodeInvokeParams, ug as safeEqualSecret, ul as loadOrCreateDeviceIdentity, un as requestNodePairing, uo as detectSuspiciousPatterns, ur as getActiveEmbeddedRunCount, us as PAIRING_SCOPE$1, ut as saveCronStore, uu as stopDiagnosticHeartbeat, uv as resolveSubagentMaxConcurrent, v_ as writeConfigFile, va as runWithModelFallback, vc as validateNodePendingAckParams, vi as resolveGatewaySessionStoreTarget, vn as listAgentWorkspaceDirs, vo as getActiveSecretsRuntimeSnapshot, vs as validateAgentParams, w as getModelRefStatus, wa as emitGatewayRestart, wc as validateRequestFrame, wg as mergeAlsoAllowPolicy, wm as GATEWAY_CLIENT_MODES, wn as resolveSessionAuthProfileOverride, ws as validateAgentsFilesSetParams, x as buildAllowedModelSet, xa as resolveFailoverReasonFromError, xc as validateNodeRenameParams, xf as getGlobalHookRunner, xl as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS, xo as GATEWAY_AUTH_SURFACE_PATHS, xp as updateSessionStore, xr as resolveToolLoopDetectionConfig, xs as validateAgentsDeleteParams, y_ as validateConfigObjectWithPlugins, yc as validateNodePendingDrainParams, yi as resolveSessionModelRef, yl as setHeartbeatsEnabled, ym as isWebchatClient, yn as getSkillsSnapshotVersion, yo as prepareSecretsRuntimeSnapshot, yr as resolveCronStyleNow, ys as validateAgentWaitParams, yu as resolveMemorySearchConfig, z as resolveThinkingDefault, za as normalizeCronJobCreate, zc as validateSkillsUpdateParams, zd as setTtsEnabled, zl as resolvePluginTools, zn as formatZonedTimestamp, zo as resolveSystemRunApprovalRequestContext, zp as stripInlineDirectiveTagsForDisplay, zs as validateConfigSetParams, zv as formatXHighModelHint } from "./reply-gX1XTS9Y.js";
5
- import { C as DEFAULT_MEMORY_FILENAME, D as ensureAgentWorkspace, E as DEFAULT_USER_FILENAME, M as resolveWorkspaceTemplateDir, S as DEFAULT_MEMORY_ALT_FILENAME, T as DEFAULT_TOOLS_FILENAME, _ as DEFAULT_AGENTS_FILENAME, a as resolveAgentDir, b as DEFAULT_HEARTBEAT_FILENAME, d as resolveAgentWorkspaceDir, f as resolveDefaultAgentId, h as resolveSessionAgentId, i as resolveAgentConfig, j as resolveDefaultAgentWorkspaceDir, k as isWorkspaceOnboardingCompleted, l as resolveAgentModelFallbacksOverride, n as listAgentEntries, r as listAgentIds, u as resolveAgentSkillsFilter, w as DEFAULT_SOUL_FILENAME, x as DEFAULT_IDENTITY_FILENAME, y as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-sd1-3XH0.js";
4
+ import { $c as parseSessionLabel, $h as isTrustedProxyAddress, $i as buildOutboundSessionContext, $l as enqueueCommandInLane, $p as resolveAgentMainSessionKey, $s as validateDeviceTokenRotateParams, $t as getRemoteSkillEligibility, Aa as triggerOpenClawRestart, Ac as validateSessionsListParams, Ad as normalizePollInput, Ai as resolveAgentIdentity, Am as cleanStaleLockFiles, Ap as archiveFileOnDisk, Ar as runBeforeToolCallHook, As as validateChatHistoryParams, Ba as normalizeCronJobPatch, Bc as validateTalkConfigParams, Bd as setTtsProvider, Bn as dispatchInboundMessage, Bo as resolveSystemRunApprovalRuntimeContext, Bp as stripInlineDirectiveTagsFromMessageForDisplay, Bs as validateConnectParams, Ca as deferGatewayRestartUntilIdle, Cc as validatePushTestParams, Cg as collectExplicitAllowlist, Ci as lookupContextTokens, Cl as ensureExecApprovals, Cm as GATEWAY_CLIENT_IDS, Cr as buildDefaultToolPolicyPipelineSteps, Cs as validateAgentsFilesListParams, Cu as stripHeartbeatToken, Da as scheduleGatewaySigusr1Restart, Dc as validateSendParams, Dh as mergeGatewayTailscaleConfig, Dm as normalizeGatewayClientMode, Dp as mergeDeliveryContext, Dr as resolveGroupToolPolicy, Ds as validateChannelsLogoutParams, Du as isSilentReplyText, E_ as parseByteSize, Ea as markGatewaySigusr1RestartHandled, Ec as validateSecretsResolveResult, Eg as PROFILE_OPTIONS, Eh as mergeGatewayAuthConfig, Ei as sleepWithAbort, El as mergeExecApprovalsSocketDefaults, Em as hasGatewayClientCap, Ep as deliveryContextFromSession, Er as resolveEffectiveToolPolicy, Es as validateAgentsUpdateParams, F as resolveDefaultModelForAgent, F_ as looksLikeAvatarPath, Fa as summarizeRestartSentinel, Fc as validateSessionsUsageParams, Fd as resolveTtsAutoMode, Fh as authorizeWsControlUiGatewayConnect, Fp as readSessionPreviewItemsFromTranscript, Fr as initSubagentRegistry, Fs as validateConfigPatchParams, G as withProgress, Ga as normalizeOptionalAgentId, Gc as validateWebLoginStartParams, Gh as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH, Gn as DEFAULT_INPUT_TIMEOUT_MS, Go as missingSystemRunApprovalBinding, Gr as resolveIngressWorkspaceOverrideForSpawnedRun, Gs as validateCronRunsParams, Gt as resolveAssistantAvatarUrl, Gv as normalizeThinkLevel, H as createPluginRuntime, Ha as resolveCronStaggerMs, Hc as validateToolsCatalogParams, Hd as OPENAI_TTS_MODELS, Hh as readGatewayTokenEnv, Hn as getTotalPendingReplies, Ho as resolveSystemRunCommandRequest, Hp as jsonUtf8Bytes, Hr as resolveAgentTimeoutMs, Hs as validateCronListParams, Ht as CONTROL_UI_AVATAR_PREFIX, Hv as normalizeElevatedLevel, I as resolveHooksGmailModel, Ic as validateSkillsBinsParams, Id as resolveTtsConfig, Ih as isLocalDirectRequest, Il as saveExecApprovals, In as buildHistoryContextFromEntries, Ip as resolveSessionTranscriptCandidates, Is as validateConfigSchemaLookupParams, Iv as DEFAULT_MODEL, Ja as normalizePayloadToSystemText, Jc as validateWizardNextParams, Jh as normalizeRateLimitClientIp, Jl as resolveUserTimezone, Jm as createBrowserRouteDispatcher, Jn as normalizeMimeList, Jr as getAgentRunContext, Js as validateDevicePairApproveParams, Jt as resolveExecApprovalCommandDisplay, Ka as normalizeOptionalSessionKey, Kc as validateWebLoginWaitParams, Kh as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, Kn as extractFileContentFromSource, Kr as clearAgentRunContext, Ks as validateCronStatusParams, Kv as normalizeUsageDisplay, La as writeRestartSentinel, Lc as validateSkillsInstallParams, Ld as resolveTtsPrefsPath, Lh as resolveGatewayAuth, Lp as stripEnvelopeFromMessage, Lr as listDescendantRunsForRequester, Ls as validateConfigSchemaLookupResult, Lu as isRestartEnabled, Lv as DEFAULT_PROVIDER, M as resolveAllowedModelRef, M_ as AVATAR_MAX_BYTES, Ma as formatDoctorNonInteractiveHint, Mc as validateSessionsPreviewParams, Md as isTtsEnabled, Mm as readJsonFile, Mp as capArrayByJsonBytes, Mr as countActiveDescendantRuns, Ms as validateChatSendParams, N_ as isAvatarHttpUrl, Na as formatRestartSentinelMessage, Nc as validateSessionsResetParams, Nd as isTtsProviderConfigured, Nh as assertGatewayAuthConfigured, Nm as writeJsonAtomic, Np as cleanupArchivedSessionTranscripts, Ns as validateConfigApplyParams, Oa as setGatewaySigusr1RestartPolicy, Oc as validateSessionsCompactParams, Og as listCoreToolSections, Oh as resolveConfiguredSecretInputString, Oi as clearSessionQueues, Ol as normalizeExecApprovals, On as resolveAgentAvatar, Op as normalizeSessionDeliveryFields, Or as resolveSubagentToolPolicy, Os as validateChannelsStatusParams, Ou as getAcpSessionManager, P as resolveConfiguredModelRef, P_ as isAvatarImageDataUrl, Pc as validateSessionsResolveParams, Pd as resolveTtsApiKey, Ph as authorizeHttpGatewayConnect, Pi as normalizeGroupActivation, Pn as createReplyPrefixOptions, Pp as readSessionMessages, Ps as validateConfigGetParams, Pv as normalizeSecretInput, Q_ as ensureControlUiAllowedOriginsForNonLoopbackBind, Qa as normalizeLegacyDeliveryInput, Qc as errorShape, Qi as resolveSessionDeliveryTarget, Qn as resolveSendPolicy, Qp as canonicalizeMainSessionAlias, Qs as validateDeviceTokenRevokeParams, R as resolveSubagentConfiguredModelSelection, Ra as normalizeHttpWebhookUrl, Rc as validateSkillsStatusParams, Rd as resolveTtsProviderOrder, Rl as getPluginToolMeta, Rp as stripEnvelopeFromMessages, Rs as validateConfigSchemaParams, Rv as formatThinkingLevels, Sa as consumeGatewaySigusr1RestartAuthorization, Sc as validatePollParams, Sf as runGlobalGatewayStopSafely, Sh as SsrFBlockedError, Sm as GATEWAY_CLIENT_CAPS, So as evaluateGatewayAuthSurfaceStates, Sr as applyToolPolicyPipeline, Ss as validateAgentsFilesGetParams, T as isCliProvider, T_ as parseDurationMs, Ta as isGatewaySigusr1RestartExternallyAllowed, Tc as validateSecretsResolveParams, Tg as resolveToolProfilePolicy, Th as ensureGatewayStartupAuth, Ti as computeBackoff, Tm as GATEWAY_CLIENT_NAMES, Tn as unbindThreadBindingsBySessionKey, To as isKnownSecretTargetId, Ts as validateAgentsListParams, Tu as SILENT_REPLY_TOKEN, Ua as resolveDefaultCronStaggerMs, Uc as validateUpdateRunParams, Ud as OPENAI_TTS_VOICES, Ui as ensureOutboundSessionEntry, Un as DEFAULT_INPUT_IMAGE_MAX_BYTES, Uo as buildSystemRunApprovalBinding, Us as validateCronRemoveParams, Ut as buildControlUiAvatarUrl, Uv as normalizeFastMode, V as loadOpenClawPlugins, Va as normalizeCronStaggerMs, Vc as validateTalkModeParams, Vd as textToSpeech, Vh as readGatewayPasswordEnv, Vi as parseTimeoutMsWithFallback, Vn as createReplyDispatcher, Vp as normalizeInputProvenance, Vs as validateCronAddParams, Wc as validateWakeParams, Wh as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, Wi as resolveOutboundSessionRoute, Wn as DEFAULT_INPUT_IMAGE_MIMES, Wo as matchSystemRunApprovalBinding, Wr as normalizeSpawnedRunMetadata, Ws as validateCronRunParams, Wt as normalizeControlUiBasePath, Wv as normalizeReasoningLevel, X_ as applyMergePatch, Xc as validateWizardStatusParams, Xh as isLoopbackAddress, Xm as startBrowserControlServiceFromConfig, Xr as registerAgentRunContext, Xs as validateDevicePairRejectParams, Xu as readChannelAllowFromStoreSync, Ya as normalizeRequiredName, Yc as validateWizardStartParams, Yh as isLocalishHost, Ym as createBrowserControlContext, Yn as resolveInputFileLimits, Yo as buildExecApprovalPendingReplyPayload, Yp as mergeSessionEntry, Yr as onAgentEvent, Ys as validateDevicePairListParams, Yt as sanitizeExecApprovalDisplayText, Yv as supportsXHighThinking, Z_ as applyLegacyMigrations, Za as parseAbsoluteTimeMs, Zc as ErrorCodes, Zh as isLoopbackHost, Zi as resolveOutboundTarget, Zl as clearBootstrapSnapshot, Zn as normalizeSendPolicy, Zo as ToolInputError, Zp as setSessionRuntimeModel, Zs as validateDevicePairRemoveParams, _c as validateNodePairVerifyParams, _i as migrateAndPruneGatewaySessionStoreKey, _l as requestHeartbeatNow, _m as isGatewayMessageChannel, _o as clearSecretsRuntimeSnapshot, _p as loadSessionStore, _s as validateAgentIdentityParams, _t as handleSlackHttpRequest, a as runCliAgent, aa as normalizeReplyPayloadsForDelivery, ac as validateExecApprovalsSetParams, ad as enqueueSystemEvent, ag as resolveGatewayListenHosts, ai as resolvePreferredSessionKeyForSessionIdMatches, al as normalizeDeviceMetadataForAuth, an as setSkillsRemoteRegistry, au as setCommandLaneConcurrency, b_ as OpenClawSchema, bc as validateNodePendingEnqueueParams, bm as normalizeMessageChannel, bn as registerSkillsChangeListener, bo as resolveCommandSecretsFromActiveRuntimeSnapshot, bs as validateAgentsCreateParams, bu as getMachineDisplayName, ca as applyPluginAutoEnable, cc as validateNodeDescribeParams, cg as pickPrimaryTailnetIPv4, cl as loadGatewayTlsRuntime$1, cn as rejectNodePairing, cs as ADMIN_SCOPE$3, ct as loadCronStore, cv as buildTalkConfigResponse, d as parseVerboseOverride, d_ as loadConfig, da as buildChannelUiCatalog, dc as validateNodeInvokeResultParams, dg as disableTailscaleFunnel, di as canonicalizeSpawnedByForAgent, dl as normalizeDevicePublicKeyBase64Url, dn as updatePairedNodeMetadata, do as getHookType, dp as resolveAgentSessionDirs, dr as waitForActiveEmbeddedRuns, dt as buildTelegramExecApprovalButtons, dv as VERSION, ea as deliverOutboundPayloads, ec as validateExecApprovalRequestParams, eg as isValidIPv4, eh as movePathToTrash, ei as readLatestAssistantReply, el as ConnectErrorDetailCodes, em as resolveExplicitAgentSessionKey, en as primeRemoteSkillsCache, eu as getActiveTaskCount, f_ as parseConfigJson5, fc as validateNodeListParams, ff as loadModelCatalog, fg as disableTailscaleServe, fl as publicKeyRawBase64UrlFromPem, fn as verifyNodeToken, fo as isExternalHookSession, fr as waitForEmbeddedPiRunEnd, fs as WRITE_SCOPE, ft as resolveExecApprovalSessionTarget, fu as isDiagnosticsEnabled, fv as resolveRuntimeServiceVersion, g_ as resolveConfigSnapshotHash, ga as resolveMessageChannelSelection, gc as validateNodePairRequestParams, gg as getTailnetHostname, gi as loadSessionEntry, gm as isGatewayCliClient, go as activateSecretsRuntimeSnapshot, gp as archiveRemovedSessionTranscripts, gr as resolveFastModeState, gs as formatValidationErrors, h_ as readConfigFileSnapshotForWrite, ha as resetDirectoryCache, hc as validateNodePairRejectParams, hd as getChannelActivity, hi as loadCombinedSessionStoreForGateway, hm as isDeliverableMessageChannel, ho as persistBrowserProxyFiles, hr as resolveBootstrapWarningSignaturesSeen, i as setCliSessionId, ic as validateExecApprovalsNodeSetParams, ig as resolveGatewayBindHost, ii as resolveNestedAgentLane, il as buildDeviceAuthPayloadV3, in as removeRemoteNodeInfo, ip as estimateBase64DecodedBytes, ir as stopSubagentsForRequester, iu as resetAllLanes, ja as consumeRestartSentinel, jc as validateSessionsPatchParams, jd as getTtsProvider, jl as readExecApprovalsSnapshot, jm as createAsyncLock, jp as archiveSessionTranscripts, jr as createOpenClawTools, js as validateChatInjectParams, k as normalizeModelSelection, ka as setPreRestartDeferralCheck, kc as validateSessionsDeleteParams, kg as resolveCoreToolProfiles, ks as validateChatAbortParams, kt as handleReset, kv as isPidAlive, l_ as migrateLegacyConfig, lc as validateNodeEventParams, lf as registerUnhandledRejectionHandler, lg as pickPrimaryTailnetIPv6, ll as deriveDeviceIdFromPublicKey, ln as renamePairedNode, lo as buildSafeExternalPrompt, lr as abortEmbeddedPiRun, ls as APPROVALS_SCOPE$1, lt as resolveCronStorePath, lu as startDiagnosticHeartbeat, lv as resolveAgentMaxConcurrent, m_ as readConfigFileSnapshot, ma as maybeResolveIdLikeTarget, mc as validateNodePairListParams, mg as enableTailscaleServe, mi as listSessionsFromStore, ml as verifyDeviceSignature, mm as INTERNAL_MESSAGE_CHANNEL, mo as applyBrowserProxyPaths, mp as parseSessionThreadInfo, ms as isNodeRoleMethod, mt as resolveAgentOutboundIdentity, mu as resolveMemoryBackendConfig, n as buildBareSessionResetPrompt, nc as validateExecApprovalsGetParams, ng as pickPrimaryLanIPv4, nl as resolveDeviceAuthConnectErrorDetailCode, nm as resolveMainSessionKeyFromConfig, nn as refreshRemoteBinsForConnectedNodes, nu as getTotalQueueSize, oc as validateLogsTailParams, od as isSystemEventContextChanged, of as extractTextFromChatContent, og as resolveRequestClientIp, oh as rawDataToString, oi as applyModelOverrideToSessionEntry, on as approveNodePairing, ot as sendTypingTelegram, ou as waitForActiveTasks, p_ as readBestEffortConfig, pc as validateNodePairApproveParams, pg as enableTailscaleFunnel, pi as listAgentsForGateway, po as closeTrackedBrowserTabsForSessions, pp as extractDeliveryInfo, ps as authorizeOperatorScopesForMethod, pu as getMemorySearchManager, q as formatHelpExamples, qa as normalizeOptionalText$1, qc as validateWizardCancelParams, qh as createAuthRateLimiter, qn as extractImageContentFromSource, qo as toSystemRunApprovalMismatchError, qr as emitAgentEvent, qs as validateCronUpdateParams, qv as normalizeVerboseLevel, r as getCliSessionId, rc as validateExecApprovalsNodeGetParams, rg as resolveClientIp, rl as buildDeviceAuthPayload, rm as snapshotSessionOrigin, rn as refreshRemoteNodeBins, rr as isAbortRequestText, rs as callGateway, ru as markGatewayDraining, sa as resolveOutboundChannelPlugin, sc as validateModelsListParams, sf as fetchWithSsrFGuard, sh as cleanOldMedia, si as loadProviderUsageSummary, sl as normalizeDeviceAuthScopes, sn as listNodePairing, sr as runEmbeddedPiAgent, su as CommandLane, tc as validateExecApprovalResolveParams, tg as normalizeHostHeader, ti as resolveAnnounceTargetFromKey, tl as resolveAuthConnectErrorDetailCode, tm as resolveMainSessionKey, tn as recordRemoteNodeInfo, u as applyVerboseOverride, u_ as createConfigIO, uc as validateNodeInvokeParams, ug as safeEqualSecret, ul as loadOrCreateDeviceIdentity, un as requestNodePairing, uo as detectSuspiciousPatterns, ur as getActiveEmbeddedRunCount, us as PAIRING_SCOPE$1, ut as saveCronStore, uu as stopDiagnosticHeartbeat, uv as resolveSubagentMaxConcurrent, v_ as writeConfigFile, va as runWithModelFallback, vc as validateNodePendingAckParams, vi as resolveGatewaySessionStoreTarget, vn as listAgentWorkspaceDirs, vo as getActiveSecretsRuntimeSnapshot, vs as validateAgentParams, w as getModelRefStatus, wa as emitGatewayRestart, wc as validateRequestFrame, wg as mergeAlsoAllowPolicy, wm as GATEWAY_CLIENT_MODES, wn as resolveSessionAuthProfileOverride, ws as validateAgentsFilesSetParams, x as buildAllowedModelSet, xa as resolveFailoverReasonFromError, xc as validateNodeRenameParams, xf as getGlobalHookRunner, xl as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS, xo as GATEWAY_AUTH_SURFACE_PATHS, xp as updateSessionStore, xr as resolveToolLoopDetectionConfig, xs as validateAgentsDeleteParams, y_ as validateConfigObjectWithPlugins, yc as validateNodePendingDrainParams, yi as resolveSessionModelRef, yl as setHeartbeatsEnabled, ym as isWebchatClient, yn as getSkillsSnapshotVersion, yo as prepareSecretsRuntimeSnapshot, yr as resolveCronStyleNow, ys as validateAgentWaitParams, yu as resolveMemorySearchConfig, z as resolveThinkingDefault, za as normalizeCronJobCreate, zc as validateSkillsUpdateParams, zd as setTtsEnabled, zl as resolvePluginTools, zn as formatZonedTimestamp, zo as resolveSystemRunApprovalRequestContext, zp as stripInlineDirectiveTagsForDisplay, zs as validateConfigSetParams, zv as formatXHighModelHint } from "./reply-Cf5Mm7vB.js";
5
+ import { C as DEFAULT_MEMORY_FILENAME, D as ensureAgentWorkspace, E as DEFAULT_USER_FILENAME, M as resolveWorkspaceTemplateDir, S as DEFAULT_MEMORY_ALT_FILENAME, T as DEFAULT_TOOLS_FILENAME, _ as DEFAULT_AGENTS_FILENAME, a as resolveAgentDir, b as DEFAULT_HEARTBEAT_FILENAME, d as resolveAgentWorkspaceDir, f as resolveDefaultAgentId, h as resolveSessionAgentId, i as resolveAgentConfig, j as resolveDefaultAgentWorkspaceDir, k as isWorkspaceOnboardingCompleted, l as resolveAgentModelFallbacksOverride, n as listAgentEntries, r as listAgentIds, u as resolveAgentSkillsFilter, w as DEFAULT_SOUL_FILENAME, x as DEFAULT_IDENTITY_FILENAME, y as DEFAULT_BOOTSTRAP_FILENAME } from "./agent-scope-DmTcOjk4.js";
6
6
  import { C as isCronRunSessionKey, E as parseAgentSessionKey, S as isAcpSessionKey, 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, v as normalizeOptionalAccountId } from "./session-key-DjKQluAa.js";
7
- 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-dlCz9toZ.js";
7
+ 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-B5jXk2td.js";
8
8
  import { i as logWarn, t as logDebug } from "./logger-BohkHL0S.js";
9
9
  import { n as runExec, t as runCommandWithTimeout } from "./exec-CNtAq7Md.js";
10
10
  import { a as hasConfiguredSecretInput } from "./types.secrets-d7ZFrG7U.js";
@@ -14,16 +14,16 @@ import "./boolean-B938tROv.js";
14
14
  import { n as logAcceptedEnvOption, t as isTruthyEnvValue } from "./env-CQxWwTMn.js";
15
15
  import "./env-overrides-BYyMsIvB.js";
16
16
  import { A as triggerInternalHook, D as clearInternalHooks, O as createInternalHookEvent, b as canonicalizePathVariant, h as createEmptyPluginRegistry, k as registerInternalHook, t as CHANNEL_IDS, u as getActivePluginRegistry, v as PROTECTED_PLUGIN_ROUTE_PREFIXES, y as canonicalizePathForSecurity } from "./registry-aHEgjCIQ.js";
17
- import { T as isTestDefaultMemorySlotDisabled, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-vhlUaliH.js";
17
+ import { T as isTestDefaultMemorySlotDisabled, i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-Jz-BSwRd.js";
18
18
  import { f as hasBinary } from "./frontmatter-BngyYhS0.js";
19
- import { Y as buildChannelAccountBindings, b as resolveWhatsAppAccount, bt as resolveAccountEntry, g as resolveChannelDefaultAccountId, m as normalizeWhatsAppTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BVbKGpQJ.js";
20
- import { $ as writeFileWithinRoot, J as openFileWithinRoot, N as detectMime, W as SafeOpenError, Z as readLocalFileSafely } from "./query-expansion-AnOnkIqf.js";
19
+ import { Y as buildChannelAccountBindings, b as resolveWhatsAppAccount, bt as resolveAccountEntry, g as resolveChannelDefaultAccountId, m as normalizeWhatsAppTarget, n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-om7vnHk0.js";
20
+ import { $ as writeFileWithinRoot, J as openFileWithinRoot, N as detectMime, W as SafeOpenError, Z as readLocalFileSafely } from "./query-expansion-BNb6Vys6.js";
21
21
  import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-owRpqMhM.js";
22
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-B6owPyQX.js";
23
- import "./fetch-ggeyBJ4j.js";
22
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-BEqdGdn9.js";
23
+ import "./fetch-CGW2R_wh.js";
24
24
  import { o as isErrno, r as formatErrorMessage } from "./errors-DNKaAVHN.js";
25
- import { d as inspectPortUsage, l as ensurePortAvailable, m as formatPortDiagnostics } from "./cmd-argv-Dz5qUtqp.js";
26
- import { t as cleanStaleGatewayProcessesSync } from "./restart-stale-pids-B6E7QavX.js";
25
+ import { d as inspectPortUsage, l as ensurePortAvailable, m as formatPortDiagnostics } from "./cmd-argv-BdNFwuhe.js";
26
+ import { t as cleanStaleGatewayProcessesSync } from "./restart-stale-pids-ZfbSMILU.js";
27
27
  import "./delivery-queue-B7zSt4zY.js";
28
28
  import { a as resolveSessionTranscriptPath, c as resolveSessionTranscriptsDirForAgent, i as resolveSessionFilePathOptions, l as resolveStorePath, r as resolveSessionFilePath } from "./paths-CfmKJcO5.js";
29
29
  import { c as formatUsd, d as deriveSessionTotalTokens, f as hasNonzeroUsage, i as loadSessionUsageTimeSeries, n as loadCostUsageSummary, r as loadSessionCostSummary, s as formatTokenCount, t as discoverAllSessions } from "./session-cost-usage-C2jrTKxW.js";
@@ -31,59 +31,59 @@ import "./prompt-style-DlcWUCNR.js";
31
31
  import { t as formatDocsLink } from "./links-BpKafJs4.js";
32
32
  import { n as runCommandWithRuntime } from "./cli-utils-BSURvrmb.js";
33
33
  import { i as onHeartbeatEvent, r as getLastHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-DRnbwSep.js";
34
- import { n as createOutboundSendDeps, t as createDefaultDeps } from "./deps-B6HgPp5e.js";
34
+ import { n as createOutboundSendDeps, t as createDefaultDeps } from "./deps-Cgw7M-k3.js";
35
35
  import { t as ensureOpenClawCliOnPath } from "./path-env-_M4X1ggC.js";
36
36
  import "./runtime-guard-C4h47dl7.js";
37
- import { n as waitForPortBindable, t as forceFreePortAndWait } from "./ports-CrZzXxTl.js";
38
- import { t as createOutboundSendDeps$1 } from "./outbound-send-deps-Bid3Xegx.js";
39
- import { a as resolveAgentOutboundTarget, i as resolveAgentDeliveryPlan, n as agentCommandFromIngress } from "./agent-CaQagdQ7.js";
40
- import { t as buildWorkspaceSkillStatus } from "./skills-status-DHMQ6A2H.js";
37
+ import { n as waitForPortBindable, t as forceFreePortAndWait } from "./ports-CVD9jTxH.js";
38
+ import { t as createOutboundSendDeps$1 } from "./outbound-send-deps-dRaNZNE7.js";
39
+ import { a as resolveAgentOutboundTarget, i as resolveAgentDeliveryPlan, n as agentCommandFromIngress } from "./agent-B8D73rdQ.js";
40
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-PMeXzDbC.js";
41
41
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-GYTW9RSz.js";
42
- import { t as readSecretFromFile } from "./secret-file-CuiwToxK.js";
42
+ import { t as readSecretFromFile } from "./secret-file-7smmAVRV.js";
43
43
  import { n as inheritOptionFromParent } from "./command-options-B_WRgMFd.js";
44
44
  import { t as WizardCancelledError } from "./prompts-88Dfc7Av.js";
45
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-DpC62EoF.js";
46
- import { t as isWithinDir } from "./path-safety-DN7L46Yk.js";
47
- import "./install-safe-path-CnIWvuEU.js";
48
- import "./skill-scanner-DaUNX-tW.js";
49
- import { n as formatConfigIssueLines } from "./issue-format-CtBob7pd.js";
50
- import { t as buildChannelAccountSnapshot } from "./status-D9mVTxuB.js";
51
- import "./channels-status-issues-C6mRI9nP.js";
52
- import { n as verifyDeviceBootstrapToken } from "./device-bootstrap-oW1bwgs7.js";
53
- 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-lCMXNHo3.js";
54
- import "./daemon-install-plan.shared-g5FPfccc.js";
55
- import "./gateway-install-token-CQHd6wSt.js";
45
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-Crwrvv0Y.js";
46
+ import { t as isWithinDir } from "./path-safety-TRhr8lhQ.js";
47
+ import "./install-safe-path-BvwKN_9n.js";
48
+ import "./skill-scanner-BzjuMMKN.js";
49
+ import { n as formatConfigIssueLines } from "./issue-format-34LidjQQ.js";
50
+ import { t as buildChannelAccountSnapshot } from "./status-1patzIRq.js";
51
+ import "./channels-status-issues-B-PoQaOZ.js";
52
+ import { n as verifyDeviceBootstrapToken } from "./device-bootstrap-DSXbseT6.js";
53
+ 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-sudZsVoX.js";
54
+ import "./daemon-install-plan.shared-BfFSRwqA.js";
55
+ import "./gateway-install-token-C40ge2lh.js";
56
56
  import "./runtime-parse-l56zRsXX.js";
57
- import { p as scheduleDetachedLaunchdRestartHandoff } from "./launchd-D7vxtTg7.js";
58
- import { c as isGatewayArgv, l as parseProcCmdline } from "./service-LNrViUVb.js";
59
- import "./systemd-DSK6B3bg.js";
60
- import "./lifecycle-core-CKec6MyM.js";
61
- import "./systemd-hints-DsQTPBGt.js";
57
+ import { p as scheduleDetachedLaunchdRestartHandoff } from "./launchd-BLFV2ME0.js";
58
+ import { c as isGatewayArgv, l as parseProcCmdline } from "./service-RXVSlLiU.js";
59
+ import "./systemd-D47rkLi7.js";
60
+ import "./lifecycle-core-C07n1IOr.js";
61
+ import "./systemd-hints-DHfXVo8k.js";
62
62
  import { t as parsePort$1 } from "./parse-port-C_3w9_cU.js";
63
- import { n as addGatewayServiceCommands } from "./daemon-cli-CgEObThe.js";
64
- import { r as probeGateway } from "./probe-auth-H1_HjX3c.js";
65
- import "./diagnostics-iZHasrpQ.js";
66
- import "./inspect-C0iPD7zZ.js";
67
- import { a as rejectDevicePairing, c as revokeDeviceToken, d as updatePairedDeviceMetadata, f as verifyDeviceToken, i as listDevicePairing, l as rotateDeviceToken, n as ensureDeviceToken, o as removePairedDevice, p as roleScopesAllow, r as getPairedDevice, s as requestDevicePairing, t as approveDevicePairing, u as summarizeDeviceTokens } from "./device-pairing-CMxl0D-M.js";
63
+ import { n as addGatewayServiceCommands } from "./daemon-cli-TvT5eeIP.js";
64
+ import { r as probeGateway } from "./probe-auth-CRm2yob0.js";
65
+ import "./diagnostics-1AwcyuKi.js";
66
+ import "./inspect-D3lV5ful.js";
67
+ import { a as rejectDevicePairing, c as revokeDeviceToken, d as updatePairedDeviceMetadata, f as verifyDeviceToken, i as listDevicePairing, l as rotateDeviceToken, n as ensureDeviceToken, o as removePairedDevice, p as roleScopesAllow, r as getPairedDevice, s as requestDevicePairing, t as approveDevicePairing, u as summarizeDeviceTokens } from "./device-pairing-RZV6Mnep.js";
68
68
  import "./table-DpnYa9iY.js";
69
69
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-clEQGTnj.js";
70
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-c6JUv5At.js";
71
- import { t as discoverGatewayBeacons } from "./bonjour-discovery-CgQeXj94.js";
72
- import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-QQiIsfFq.js";
73
- import { a as styleHealthChannelLine, c as startHeartbeatRunner, l as resolveCronSession, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-CTOG7Tdy.js";
74
- import { a as resolveControlUiRootOverrideSync, n as isPackageProvenControlUiRootSync, o as resolveControlUiRootSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-B9I2TpME.js";
75
- import { m as normalizeUpdateChannel, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-F18H2wEh.js";
76
- import "./onboarding.secret-input-D75Xjj5j.js";
77
- import { t as runOnboardingWizard } from "./onboarding-CAQDdLGu.js";
78
- import { a as resolveApnsAuthConfigFromEnv, c as shouldClearStoredApnsRegistration, d as parseMessageWithAttachments, f as formatForLog, g as setGatewayWsLogStyle, h as summarizeAgentEventForWsLog, l as resolveApnsRelayConfigFromEnv, m as shouldLogWs, n as loadApnsRegistration, o as sendApnsAlert, p as logWs, r as normalizeApnsEnvironment, s as sendApnsBackgroundWake, t as clearApnsRegistrationIfCurrent, u as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-DQdHdrq8.js";
70
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-CoL161wD.js";
71
+ import { t as discoverGatewayBeacons } from "./bonjour-discovery-Cnl-PHZ4.js";
72
+ import { n as getStatusSummary, r as pickGatewaySelfPresence } from "./status-BaLZ1uQV.js";
73
+ import { a as styleHealthChannelLine, c as startHeartbeatRunner, l as resolveCronSession, n as getHealthSnapshot, s as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-D_dD9-ET.js";
74
+ import { a as resolveControlUiRootOverrideSync, n as isPackageProvenControlUiRootSync, o as resolveControlUiRootSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-D5CuaZfV.js";
75
+ import { m as normalizeUpdateChannel, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-DMK0G0sK.js";
76
+ import "./onboarding.secret-input-OwIXA7An.js";
77
+ import { t as runOnboardingWizard } from "./onboarding-BgeTWLi_.js";
78
+ import { a as resolveApnsAuthConfigFromEnv, c as shouldClearStoredApnsRegistration, d as parseMessageWithAttachments, f as formatForLog, g as setGatewayWsLogStyle, h as summarizeAgentEventForWsLog, l as resolveApnsRelayConfigFromEnv, m as shouldLogWs, n as loadApnsRegistration, o as sendApnsAlert, p as logWs, r as normalizeApnsEnvironment, s as sendApnsBackgroundWake, t as clearApnsRegistrationIfCurrent, u as normalizeRpcAttachmentsToChatAttachments } from "./push-apns-6Yefl4vF.js";
79
79
  import { _ as buildGogWatchStartArgs, g as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, w as resolveGmailHookRuntimeConfig } from "./gmail-setup-utils-CzxzkzZ7.js";
80
- import { f as normalizeStoredCronJobs, h as computePreviousRunAtMs, m as computeNextRunAtMs, p as coerceFiniteScheduleNumber, t as runGatewayUpdate } from "./update-runner-CfkBU1BA.js";
81
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-C9YoIlNR.js";
82
- import { _ as resolveHookTargetAgentId, a as getHookAgentPolicyError, b as resolveFunctionModuleExport, c as normalizeAgentPayload, d as normalizeWakePayload, f as readJsonBody, g as resolveHookSessionKey, h as resolveHookIdempotencyKey, i as extractHookToken, l as normalizeHookDispatchSessionKey, m as resolveHookDeliver, n as collectEnabledInsecureOrDangerousFlags, o as getHookChannelError, p as resolveHookChannel, s as isHookAgentAllowed, u as normalizeHookHeaders, v as resolveHooksConfig, y as applyHookMappings } from "./audit-COOnp_TQ.js";
83
- import "./node-service-D7xRD6Op.js";
84
- import "./status.update-DY13od-q.js";
85
- import { t as installSkill } from "./skills-install-BnRu7wO4.js";
86
- import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-BTsqd19h.js";
80
+ import { f as normalizeStoredCronJobs, h as computePreviousRunAtMs, m as computeNextRunAtMs, p as coerceFiniteScheduleNumber, t as runGatewayUpdate } from "./update-runner-oqYBjs5t.js";
81
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-BVIbeciX.js";
82
+ import { _ as resolveHookTargetAgentId, a as getHookAgentPolicyError, b as resolveFunctionModuleExport, c as normalizeAgentPayload, d as normalizeWakePayload, f as readJsonBody, g as resolveHookSessionKey, h as resolveHookIdempotencyKey, i as extractHookToken, l as normalizeHookDispatchSessionKey, m as resolveHookDeliver, n as collectEnabledInsecureOrDangerousFlags, o as getHookChannelError, p as resolveHookChannel, s as isHookAgentAllowed, u as normalizeHookHeaders, v as resolveHooksConfig, y as applyHookMappings } from "./audit-CX3KlHoS.js";
83
+ import "./node-service-ESc5ToCS.js";
84
+ import "./status.update-DrzJ1YWu.js";
85
+ import { t as installSkill } from "./skills-install-DFkV3GsC.js";
86
+ import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CWne7yqK.js";
87
87
  import { fileURLToPath, pathToFileURL } from "node:url";
88
88
  import * as fsSync from "node:fs";
89
89
  import fs from "node:fs";
@@ -91,7 +91,7 @@ import os from "node:os";
91
91
  import path from "node:path";
92
92
  import chalk from "chalk";
93
93
  import { isDeepStrictEqual } from "node:util";
94
- import fsPromises from "node:fs/promises";
94
+ import fs$1 from "node:fs/promises";
95
95
  import { exec, spawn, spawnSync } from "node:child_process";
96
96
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
97
97
  import { z } from "zod";
@@ -1272,7 +1272,7 @@ function resolveCheckIntervalMs(cfg) {
1272
1272
  }
1273
1273
  async function readState(statePath) {
1274
1274
  try {
1275
- const raw = await fsPromises.readFile(statePath, "utf-8");
1275
+ const raw = await fs$1.readFile(statePath, "utf-8");
1276
1276
  const parsed = JSON.parse(raw);
1277
1277
  return parsed && typeof parsed === "object" ? parsed : {};
1278
1278
  } catch {
@@ -1353,7 +1353,7 @@ async function runAutoUpdateCommand(params) {
1353
1353
  path.join(params.root, "dist", "index.mjs")
1354
1354
  ];
1355
1355
  for (const candidate of candidates) try {
1356
- await fsPromises.access(candidate);
1356
+ await fs$1.access(candidate);
1357
1357
  argv.push(execPath, candidate, ...baseArgs);
1358
1358
  break;
1359
1359
  } catch {}
@@ -4687,7 +4687,7 @@ function resolveCronRunLogPath(params) {
4687
4687
  }
4688
4688
  const writesByPath = /* @__PURE__ */ new Map();
4689
4689
  async function setSecureFileMode(filePath) {
4690
- await fsPromises.chmod(filePath, 384).catch(() => void 0);
4690
+ await fs$1.chmod(filePath, 384).catch(() => void 0);
4691
4691
  }
4692
4692
  const DEFAULT_CRON_RUN_LOG_MAX_BYTES = 2e6;
4693
4693
  const DEFAULT_CRON_RUN_LOG_KEEP_LINES = 2e3;
@@ -4711,30 +4711,30 @@ async function drainPendingWrite(filePath) {
4711
4711
  if (pending) await pending.catch(() => void 0);
4712
4712
  }
4713
4713
  async function pruneIfNeeded(filePath, opts) {
4714
- const stat = await fsPromises.stat(filePath).catch(() => null);
4714
+ const stat = await fs$1.stat(filePath).catch(() => null);
4715
4715
  if (!stat || stat.size <= opts.maxBytes) return;
4716
- const lines = (await fsPromises.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4716
+ const lines = (await fs$1.readFile(filePath, "utf-8").catch(() => "")).split("\n").map((l) => l.trim()).filter(Boolean);
4717
4717
  const kept = lines.slice(Math.max(0, lines.length - opts.keepLines));
4718
4718
  const { randomBytes } = await import("node:crypto");
4719
4719
  const tmp = `${filePath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
4720
- await fsPromises.writeFile(tmp, `${kept.join("\n")}\n`, {
4720
+ await fs$1.writeFile(tmp, `${kept.join("\n")}\n`, {
4721
4721
  encoding: "utf-8",
4722
4722
  mode: 384
4723
4723
  });
4724
4724
  await setSecureFileMode(tmp);
4725
- await fsPromises.rename(tmp, filePath);
4725
+ await fs$1.rename(tmp, filePath);
4726
4726
  await setSecureFileMode(filePath);
4727
4727
  }
4728
4728
  async function appendCronRunLog(filePath, entry, opts) {
4729
4729
  const resolved = path.resolve(filePath);
4730
4730
  const next = (writesByPath.get(resolved) ?? Promise.resolve()).catch(() => void 0).then(async () => {
4731
4731
  const runDir = path.dirname(resolved);
4732
- await fsPromises.mkdir(runDir, {
4732
+ await fs$1.mkdir(runDir, {
4733
4733
  recursive: true,
4734
4734
  mode: 448
4735
4735
  });
4736
- await fsPromises.chmod(runDir, 448).catch(() => void 0);
4737
- await fsPromises.appendFile(resolved, `${JSON.stringify(entry)}\n`, {
4736
+ await fs$1.chmod(runDir, 448).catch(() => void 0);
4737
+ await fs$1.appendFile(resolved, `${JSON.stringify(entry)}\n`, {
4738
4738
  encoding: "utf-8",
4739
4739
  mode: 384
4740
4740
  });
@@ -4832,7 +4832,7 @@ function filterRunLogEntries(entries, opts) {
4832
4832
  async function readCronRunLogEntriesPage(filePath, opts) {
4833
4833
  await drainPendingWrite(filePath);
4834
4834
  const limit = Math.max(1, Math.min(200, Math.floor(opts?.limit ?? 50)));
4835
- const raw = await fsPromises.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4835
+ const raw = await fs$1.readFile(path.resolve(filePath), "utf-8").catch(() => "");
4836
4836
  const statuses = normalizeRunStatuses(opts);
4837
4837
  const deliveryStatuses = normalizeDeliveryStatuses(opts);
4838
4838
  const query = opts?.query?.trim().toLowerCase() ?? "";
@@ -4868,7 +4868,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4868
4868
  const query = opts.query?.trim().toLowerCase() ?? "";
4869
4869
  const sortDir = opts.sortDir === "asc" ? "asc" : "desc";
4870
4870
  const runsDir = path.resolve(path.dirname(path.resolve(opts.storePath)), "runs");
4871
- const jsonlFiles = (await fsPromises.readdir(runsDir, { withFileTypes: true }).catch(() => [])).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map((entry) => path.join(runsDir, entry.name));
4871
+ 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));
4872
4872
  if (jsonlFiles.length === 0) return {
4873
4873
  entries: [],
4874
4874
  total: 0,
@@ -4879,7 +4879,7 @@ async function readCronRunLogEntriesPageAll(opts) {
4879
4879
  };
4880
4880
  await Promise.all(jsonlFiles.map((f) => drainPendingWrite(f)));
4881
4881
  const filtered = filterRunLogEntries((await Promise.all(jsonlFiles.map(async (filePath) => {
4882
- return parseAllRunLogEntries(await fsPromises.readFile(filePath, "utf-8").catch(() => ""));
4882
+ return parseAllRunLogEntries(await fs$1.readFile(filePath, "utf-8").catch(() => ""));
4883
4883
  }))).flat(), {
4884
4884
  statuses,
4885
4885
  deliveryStatuses,
@@ -9380,7 +9380,7 @@ function resolveWorkspaceFilePathResultOrThrow(params) {
9380
9380
  }
9381
9381
  async function resolveWorkspaceRealPath(workspaceDir) {
9382
9382
  try {
9383
- return await fsPromises.realpath(workspaceDir);
9383
+ return await fs$1.realpath(workspaceDir);
9384
9384
  } catch {
9385
9385
  return path.resolve(workspaceDir);
9386
9386
  }
@@ -9409,7 +9409,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9409
9409
  };
9410
9410
  let candidateLstat;
9411
9411
  try {
9412
- candidateLstat = await fsPromises.lstat(candidatePath);
9412
+ candidateLstat = await fs$1.lstat(candidatePath);
9413
9413
  } catch (err) {
9414
9414
  return resolveWorkspaceFilePathResultOrThrow({
9415
9415
  error: err,
@@ -9420,7 +9420,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9420
9420
  if (candidateLstat.isSymbolicLink()) {
9421
9421
  let targetReal;
9422
9422
  try {
9423
- targetReal = await fsPromises.realpath(candidatePath);
9423
+ targetReal = await fs$1.realpath(candidatePath);
9424
9424
  } catch (err) {
9425
9425
  return resolveWorkspaceFilePathResultOrThrow({
9426
9426
  error: err,
@@ -9430,7 +9430,7 @@ async function resolveAgentWorkspaceFilePath(params) {
9430
9430
  }
9431
9431
  let targetStat;
9432
9432
  try {
9433
- targetStat = await fsPromises.stat(targetReal);
9433
+ targetStat = await fs$1.stat(targetReal);
9434
9434
  } catch (err) {
9435
9435
  return resolveWorkspaceFilePathResultOrThrow({
9436
9436
  error: err,
@@ -9468,13 +9468,13 @@ async function resolveAgentWorkspaceFilePath(params) {
9468
9468
  return {
9469
9469
  kind: "ready",
9470
9470
  requestPath,
9471
- ioPath: await fsPromises.realpath(candidatePath).catch(() => candidatePath),
9471
+ ioPath: await fs$1.realpath(candidatePath).catch(() => candidatePath),
9472
9472
  workspaceReal
9473
9473
  };
9474
9474
  }
9475
9475
  async function statFileSafely(filePath) {
9476
9476
  try {
9477
- const [stat, lstat] = await Promise.all([fsPromises.stat(filePath), fsPromises.lstat(filePath)]);
9477
+ const [stat, lstat] = await Promise.all([fs$1.stat(filePath), fs$1.lstat(filePath)]);
9478
9478
  if (lstat.isSymbolicLink() || !stat.isFile()) return null;
9479
9479
  if (stat.nlink > 1) return null;
9480
9480
  if (!sameFileIdentity(stat, lstat)) return null;
@@ -9568,7 +9568,7 @@ function respondAgentNotFound(respond, agentId) {
9568
9568
  async function moveToTrashBestEffort(pathname) {
9569
9569
  if (!pathname) return;
9570
9570
  try {
9571
- await fsPromises.access(pathname);
9571
+ await fs$1.access(pathname);
9572
9572
  } catch {
9573
9573
  return;
9574
9574
  }
@@ -9644,7 +9644,7 @@ const agentsHandlers = {
9644
9644
  dir: workspaceDir,
9645
9645
  ensureBootstrapFiles: !Boolean(nextConfig.agents?.defaults?.skipBootstrap)
9646
9646
  });
9647
- await fsPromises.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
9647
+ await fs$1.mkdir(resolveSessionTranscriptsDirForAgent(agentId), { recursive: true });
9648
9648
  await writeConfigFile(nextConfig);
9649
9649
  const safeName = sanitizeIdentityLine(rawName);
9650
9650
  const emoji = resolveOptionalStringParam(params.emoji);
@@ -9657,7 +9657,7 @@ const agentsHandlers = {
9657
9657
  ...avatar ? [`- Avatar: ${sanitizeIdentityLine(avatar)}`] : [],
9658
9658
  ""
9659
9659
  ];
9660
- await fsPromises.appendFile(identityPath, lines.join("\n"), "utf-8");
9660
+ await fs$1.appendFile(identityPath, lines.join("\n"), "utf-8");
9661
9661
  respond(true, {
9662
9662
  ok: true,
9663
9663
  agentId,
@@ -9692,9 +9692,9 @@ const agentsHandlers = {
9692
9692
  });
9693
9693
  if (avatar) {
9694
9694
  const workspace = workspaceDir ?? resolveAgentWorkspaceDir(nextConfig, agentId);
9695
- await fsPromises.mkdir(workspace, { recursive: true });
9695
+ await fs$1.mkdir(workspace, { recursive: true });
9696
9696
  const identityPath = path.join(workspace, DEFAULT_IDENTITY_FILENAME);
9697
- await fsPromises.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
9697
+ await fs$1.appendFile(identityPath, `\n- Avatar: ${sanitizeIdentityLine(avatar)}\n`, "utf-8");
9698
9698
  }
9699
9699
  respond(true, {
9700
9700
  ok: true,
@@ -9818,7 +9818,7 @@ const agentsHandlers = {
9818
9818
  const resolved = resolveAgentWorkspaceFileOrRespondError(params, respond);
9819
9819
  if (!resolved) return;
9820
9820
  const { agentId, workspaceDir, name } = resolved;
9821
- await fsPromises.mkdir(workspaceDir, { recursive: true });
9821
+ await fs$1.mkdir(workspaceDir, { recursive: true });
9822
9822
  const filePath = path.join(workspaceDir, name);
9823
9823
  const resolvedPath = await resolveWorkspaceFilePathOrRespond({
9824
9824
  respond,
@@ -12633,14 +12633,14 @@ function isRollingLogFile(file) {
12633
12633
  return ROLLING_LOG_RE.test(path.basename(file));
12634
12634
  }
12635
12635
  async function resolveLogFile(file) {
12636
- if (await fsPromises.stat(file).catch(() => null)) return file;
12636
+ if (await fs$1.stat(file).catch(() => null)) return file;
12637
12637
  if (!isRollingLogFile(file)) return file;
12638
12638
  const dir = path.dirname(file);
12639
- const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => null);
12639
+ const entries = await fs$1.readdir(dir, { withFileTypes: true }).catch(() => null);
12640
12640
  if (!entries) return file;
12641
12641
  return (await Promise.all(entries.filter((entry) => entry.isFile() && ROLLING_LOG_RE.test(entry.name)).map(async (entry) => {
12642
12642
  const fullPath = path.join(dir, entry.name);
12643
- const fileStat = await fsPromises.stat(fullPath).catch(() => null);
12643
+ const fileStat = await fs$1.stat(fullPath).catch(() => null);
12644
12644
  return fileStat ? {
12645
12645
  path: fullPath,
12646
12646
  mtimeMs: fileStat.mtimeMs
@@ -12648,7 +12648,7 @@ async function resolveLogFile(file) {
12648
12648
  }))).filter((entry) => Boolean(entry)).toSorted((a, b) => b.mtimeMs - a.mtimeMs)[0]?.path ?? file;
12649
12649
  }
12650
12650
  async function readLogSlice(params) {
12651
- const stat = await fsPromises.stat(params.file).catch(() => null);
12651
+ const stat = await fs$1.stat(params.file).catch(() => null);
12652
12652
  if (!stat) return {
12653
12653
  cursor: 0,
12654
12654
  size: 0,
@@ -12686,7 +12686,7 @@ async function readLogSlice(params) {
12686
12686
  truncated,
12687
12687
  reset
12688
12688
  };
12689
- const handle = await fsPromises.open(params.file, "r");
12689
+ const handle = await fs$1.open(params.file, "r");
12690
12690
  try {
12691
12691
  let prefix = "";
12692
12692
  if (start > 0) {
@@ -13983,7 +13983,7 @@ const nodeHandlers = {
13983
13983
  const p = params;
13984
13984
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
13985
13985
  await respondUnavailableOnThrow(respond, async () => {
13986
- const { handleNodeEvent } = await import("./server-node-events-aTSoNGTe.js");
13986
+ const { handleNodeEvent } = await import("./server-node-events-p5ykMQz-.js");
13987
13987
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
13988
13988
  await handleNodeEvent({
13989
13989
  deps: context.deps,
@@ -17404,7 +17404,7 @@ async function startGmailWatcherWithLogs(params) {
17404
17404
  async function startBrowserControlServerIfEnabled() {
17405
17405
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
17406
17406
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
17407
- const mod = override ? await import(override) : await import("./server-Cnc4lO11.js");
17407
+ const mod = override ? await import(override) : await import("./server-DiTziwvC.js");
17408
17408
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
17409
17409
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
17410
17410
  if (!start) return null;
@@ -17436,7 +17436,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
17436
17436
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
17437
17437
  const candidate = path.join(rootReal, rel);
17438
17438
  try {
17439
- const st = await fsPromises.lstat(candidate);
17439
+ const st = await fs$1.lstat(candidate);
17440
17440
  if (st.isSymbolicLink()) return null;
17441
17441
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
17442
17442
  } catch {}
@@ -17472,8 +17472,8 @@ async function resolveA2uiRoot() {
17472
17472
  for (const dir of candidates) try {
17473
17473
  const indexPath = path.join(dir, "index.html");
17474
17474
  const bundlePath = path.join(dir, "a2ui.bundle.js");
17475
- await fsPromises.stat(indexPath);
17476
- await fsPromises.stat(bundlePath);
17475
+ await fs$1.stat(indexPath);
17476
+ await fs$1.stat(bundlePath);
17477
17477
  return dir;
17478
17478
  } catch {}
17479
17479
  return null;
@@ -17482,7 +17482,7 @@ async function resolveA2uiRootReal() {
17482
17482
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
17483
17483
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
17484
17484
  const root = await resolveA2uiRoot();
17485
- cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
17485
+ cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
17486
17486
  cachedA2uiResolvedAtMs = Date.now();
17487
17487
  resolvingA2uiRoot = null;
17488
17488
  return cachedA2uiRootReal;
@@ -20892,13 +20892,13 @@ function normalizeBasePath(rawPath) {
20892
20892
  }
20893
20893
  async function prepareCanvasRoot(rootDir) {
20894
20894
  await ensureDir(rootDir);
20895
- const rootReal = await fsPromises.realpath(rootDir);
20895
+ const rootReal = await fs$1.realpath(rootDir);
20896
20896
  try {
20897
20897
  const indexPath = path.join(rootReal, "index.html");
20898
- await fsPromises.stat(indexPath);
20898
+ await fs$1.stat(indexPath);
20899
20899
  } catch {
20900
20900
  try {
20901
- await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
20901
+ await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
20902
20902
  } catch {}
20903
20903
  }
20904
20904
  return rootReal;
@@ -21198,7 +21198,7 @@ async function resolveGatewayOwnerStatus(pid, payload, platform, port) {
21198
21198
  }
21199
21199
  async function readLockPayload(lockPath) {
21200
21200
  try {
21201
- const raw = await fsPromises.readFile(lockPath, "utf8");
21201
+ const raw = await fs$1.readFile(lockPath, "utf8");
21202
21202
  const parsed = JSON.parse(raw);
21203
21203
  if (typeof parsed.pid !== "number") return null;
21204
21204
  if (typeof parsed.createdAt !== "string") return null;
@@ -21233,11 +21233,11 @@ async function acquireGatewayLock(opts = {}) {
21233
21233
  const platform = opts.platform ?? process.platform;
21234
21234
  const port = opts.port;
21235
21235
  const { lockPath, configPath } = resolveGatewayLockPath(env);
21236
- await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
21236
+ await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
21237
21237
  const startedAt = Date.now();
21238
21238
  let lastPayload = null;
21239
21239
  while (Date.now() - startedAt < timeoutMs) try {
21240
- const handle = await fsPromises.open(lockPath, "wx");
21240
+ const handle = await fs$1.open(lockPath, "wx");
21241
21241
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
21242
21242
  const payload = {
21243
21243
  pid: process.pid,
@@ -21251,7 +21251,7 @@ async function acquireGatewayLock(opts = {}) {
21251
21251
  configPath,
21252
21252
  release: async () => {
21253
21253
  await handle.close().catch(() => void 0);
21254
- await fsPromises.rm(lockPath, { force: true });
21254
+ await fs$1.rm(lockPath, { force: true });
21255
21255
  }
21256
21256
  };
21257
21257
  } catch (err) {
@@ -21260,7 +21260,7 @@ async function acquireGatewayLock(opts = {}) {
21260
21260
  const ownerPid = lastPayload?.pid;
21261
21261
  const ownerStatus = ownerPid ? await resolveGatewayOwnerStatus(ownerPid, lastPayload, platform, port) : "unknown";
21262
21262
  if (ownerStatus === "dead" && ownerPid) {
21263
- await fsPromises.rm(lockPath, { force: true });
21263
+ await fs$1.rm(lockPath, { force: true });
21264
21264
  continue;
21265
21265
  }
21266
21266
  if (ownerStatus !== "alive") {
@@ -21270,13 +21270,13 @@ async function acquireGatewayLock(opts = {}) {
21270
21270
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
21271
21271
  }
21272
21272
  if (!stale) try {
21273
- const st = await fsPromises.stat(lockPath);
21273
+ const st = await fs$1.stat(lockPath);
21274
21274
  stale = Date.now() - st.mtimeMs > staleMs;
21275
21275
  } catch {
21276
21276
  stale = false;
21277
21277
  }
21278
21278
  if (stale) {
21279
- await fsPromises.rm(lockPath, { force: true });
21279
+ await fs$1.rm(lockPath, { force: true });
21280
21280
  continue;
21281
21281
  }
21282
21282
  }
@@ -23793,7 +23793,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
23793
23793
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
23794
23794
  if (!minimalTestGateway) (async () => {
23795
23795
  const { recoverPendingDeliveries } = await import("./delivery-queue-B7zSt4zY.js").then((n) => n.n);
23796
- const { deliverOutboundPayloads } = await import("./reply-gX1XTS9Y.js").then((n) => n.ta);
23796
+ const { deliverOutboundPayloads } = await import("./reply-Cf5Mm7vB.js").then((n) => n.ta);
23797
23797
  await recoverPendingDeliveries({
23798
23798
  deliver: deliverOutboundPayloads,
23799
23799
  log: log.child("delivery-recovery"),
@@ -1,9 +1,9 @@
1
- import { Hh as readGatewayTokenEnv, It as randomToken, Kg as resolveSecretRefValues, Lh as resolveGatewayAuth, Mh as hasAmbiguousGatewayAuthModeConfig, m_ as readConfigFileSnapshot, sv as collectConfigServiceEnvVars, v_ as writeConfigFile, wv as loadAuthProfileStoreForSecretsRuntime } from "./reply-gX1XTS9Y.js";
1
+ import { Hh as readGatewayTokenEnv, It as randomToken, Kg as resolveSecretRefValues, Lh as resolveGatewayAuth, Mh as hasAmbiguousGatewayAuthModeConfig, m_ as readConfigFileSnapshot, sv as collectConfigServiceEnvVars, v_ as writeConfigFile, wv as loadAuthProfileStoreForSecretsRuntime } from "./reply-Cf5Mm7vB.js";
2
2
  import { a as hasConfiguredSecretInput, d as resolveSecretInputRef } from "./types.secrets-d7ZFrG7U.js";
3
3
  import { t as formatCliCommand } from "./command-format-p_4ya3m0.js";
4
- import { Mt as secretRefKey } from "./plugins-BVbKGpQJ.js";
4
+ import { Mt as secretRefKey } from "./plugins-om7vnHk0.js";
5
5
  import { l as resolveGatewayLaunchAgentLabel } from "./constants-D-pfuSKJ.js";
6
- import { f as resolveGatewayProgramArguments, n as resolveDaemonInstallRuntimeInputs, t as emitDaemonInstallRuntimeWarning, u as buildServiceEnvironment } from "./daemon-install-plan.shared-g5FPfccc.js";
6
+ import { f as resolveGatewayProgramArguments, n as resolveDaemonInstallRuntimeInputs, t as emitDaemonInstallRuntimeWarning, u as buildServiceEnvironment } from "./daemon-install-plan.shared-BfFSRwqA.js";
7
7
  //#region src/commands/daemon-install-helpers.ts
8
8
  function collectAuthProfileServiceEnvVars(params) {
9
9
  const authStore = params.authStore ?? loadAuthProfileStoreForSecretsRuntime();
@@ -1,4 +1,4 @@
1
- import { G as withProgress, Tm as GATEWAY_CLIENT_NAMES, rs as callGateway, wm as GATEWAY_CLIENT_MODES } from "./reply-gX1XTS9Y.js";
1
+ import { G as withProgress, Tm as GATEWAY_CLIENT_NAMES, rs as callGateway, wm as GATEWAY_CLIENT_MODES } from "./reply-Cf5Mm7vB.js";
2
2
  //#region src/cli/gateway-rpc.ts
3
3
  function addGatewayClientOptions(cmd) {
4
4
  return cmd.option("--url <url>", "Gateway WebSocket URL (defaults to gateway.remote.url when configured)").option("--token <token>", "Gateway token (if required)").option("--timeout <ms>", "Timeout in ms", "30000").option("--expect-final", "Wait for final response (agent)", false);