openclaw-multi-auto 1.6.6 → 1.6.7

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 (230) hide show
  1. package/dist/{accounts-4vg8osA5.js → accounts-BPt-s1cW.js} +7 -7
  2. package/dist/{accounts-BgOnManD.js → accounts-CC3alHma.js} +1 -1
  3. package/dist/{accounts-CXo4Ac3z.js → accounts-CNIODbBr.js} +1 -1
  4. package/dist/{acp-cli-B2w71bEK.js → acp-cli-DjB0ovMh.js} +8 -8
  5. package/dist/{agent-scope-BbO_VBbv.js → agent-scope-CNJUPFcR.js} +17 -17
  6. package/dist/{agents.config-y8kHMoox.js → agents.config-Dh5Lcv4N.js} +2 -2
  7. package/dist/{api-key-rotation-CzacqD3s.js → api-key-rotation-PzGuOQm_.js} +1 -1
  8. package/dist/{audio-preflight-CiANHFx-.js → audio-preflight-DOYiMo_d.js} +34 -34
  9. package/dist/{audio-transcription-runner-B9-J1DUd.js → audio-transcription-runner-sLK1yiya.js} +23 -23
  10. package/dist/{audit-BBbzzHkv.js → audit-BSvn3dTQ.js} +29 -29
  11. package/dist/{auth-B_YGaEcP.js → auth-C_LDvTxu.js} +1 -1
  12. package/dist/{auth-choice-CV87PVB8.js → auth-choice-Bu5kPuhF.js} +11 -11
  13. package/dist/{auth-choice-gf8aEhcg.js → auth-choice-fpoHu7pV.js} +13 -13
  14. package/dist/{auth-choice.apply-helpers-IK7zIZHi.js → auth-choice.apply-helpers-RNa-mjTS.js} +1 -1
  15. package/dist/{auth-token-D2V9CMur.js → auth-token-CktupXSw.js} +1 -1
  16. package/dist/{bonjour-discovery-BC_XEtg4.js → bonjour-discovery-DvVDs7rm.js} +1 -1
  17. package/dist/{browser-cli-BEWtuR6r.js → browser-cli-DuYjaYLJ.js} +12 -12
  18. package/dist/build-info.json +3 -3
  19. package/dist/{call-YJ9zjeji.js → call-eK-5ynwM.js} +10 -10
  20. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  21. package/dist/{channel-account-context-CJ_25Q5X.js → channel-account-context-BQD0zpuF.js} +5 -5
  22. package/dist/{channel-activity-BHb0aL0J.js → channel-activity-w-iWKqZg.js} +1 -1
  23. package/dist/{channel-options-8OGfdfdc.js → channel-options-o5oDDArl.js} +3 -3
  24. package/dist/{channel-selection-D21oKnM0.js → channel-selection-HaUsJ3kL.js} +1 -1
  25. package/dist/{channel-web-BXHQWjc6.js → channel-web-JuhY6j_M.js} +16 -16
  26. package/dist/{channels-cli-ByTcIaZC.js → channels-cli-aZhDWAhv.js} +92 -92
  27. package/dist/{channels-status-issues-Cva3QRlu.js → channels-status-issues-Bi69DlUp.js} +1 -1
  28. package/dist/{chrome-DBMFZ1ho.js → chrome-CQR5U4Oc.js} +4 -4
  29. package/dist/{clawbot-cli-DpZDxNOd.js → clawbot-cli-DJzN7m49.js} +11 -11
  30. package/dist/cli/daemon-cli.js +1 -1
  31. package/dist/{cli-bsDX2k8k.js → cli-fGEJw7Bh.js} +72 -72
  32. package/dist/{client-D9sBKoZI.js → client-BEwDNigg.js} +2 -2
  33. package/dist/{command-secret-targets-SH5qP5X_.js → command-secret-targets-qpSAI_K2.js} +4 -4
  34. package/dist/{commands-DUzVNM-Q.js → commands-BaXA2bSJ.js} +1 -1
  35. package/dist/{commands-registry-C2INbVUe.js → commands-registry-D-nkNP-x.js} +3 -3
  36. package/dist/{completion-cli-4GVy2WHG.js → completion-cli-D-Vt6klA.js} +12 -12
  37. package/dist/{config-cli-ByWpkmkG.js → config-cli-D7CkjeZo.js} +7 -7
  38. package/dist/{config-guard-ofLFxSQh.js → config-guard-B1hrQ4RG.js} +16 -16
  39. package/dist/{config-validation-9QNDxE74.js → config-validation-CZ59Kb8S.js} +3 -3
  40. package/dist/{configure-JiVnjIlt.js → configure-BTMq-WnT.js} +17 -17
  41. package/dist/{control-ui-assets-D7bG2PFs.js → control-ui-assets-DR9xNC3f.js} +1 -1
  42. package/dist/{cron-cli-DuHdcQFw.js → cron-cli-CvFNRfgv.js} +11 -11
  43. package/dist/{daemon-cli-Do_4dH0e.js → daemon-cli-Bb7Q2DPz.js} +15 -15
  44. package/dist/{daemon-install-helpers-Pex1FHrG.js → daemon-install-helpers-BYWgt_7u.js} +11 -11
  45. package/dist/{daemon-install-C0_0OAHU.js → daemon-install-mDWE60H-.js} +4 -4
  46. package/dist/{deliver-B05oD9oA.js → deliver-DuqANTNs.js} +7 -7
  47. package/dist/deliver-runtime-CBjIBIWj.js +61 -0
  48. package/dist/deps-send-discord.runtime-Ch7m0GFO.js +36 -0
  49. package/dist/deps-send-imessage.runtime-BBXNUMFu.js +35 -0
  50. package/dist/deps-send-signal.runtime-DVVQsW-M.js +34 -0
  51. package/dist/deps-send-slack.runtime-Bm60sFNH.js +32 -0
  52. package/dist/{deps-send-telegram.runtime-IVPYXaID.js → deps-send-telegram.runtime-TOpNwBFj.js} +16 -16
  53. package/dist/deps-send-whatsapp.runtime-B2i2JcV5.js +118 -0
  54. package/dist/{devices-cli-D0SxzElB.js → devices-cli-DVXzYwja.js} +8 -8
  55. package/dist/{diagnostic-v2TGEcgC.js → diagnostic-CL9h6IXx.js} +1 -1
  56. package/dist/{diagnostics-CBcbp7BB.js → diagnostics-CwWdfrvB.js} +5 -5
  57. package/dist/{directory-cli-A0q9Ftjc.js → directory-cli-DL2TKoz1.js} +7 -7
  58. package/dist/{dns-cli-hyt6Wvvq.js → dns-cli-DOHzu8H-.js} +5 -5
  59. package/dist/{dock-SpSqP4RS.js → dock-BR4hdehX.js} +4 -4
  60. package/dist/{docs-cli-CJfXaxzc.js → docs-cli-D1S8CZJy.js} +4 -4
  61. package/dist/{doctor-completion-CDRZEttH.js → doctor-completion-CkEHCVMO.js} +2 -2
  62. package/dist/{doctor-config-flow-kZl_wy2A.js → doctor-config-flow-DQNZsEku.js} +15 -15
  63. package/dist/{enable-B27E5MMW.js → enable-V7r6GCwn.js} +1 -1
  64. package/dist/{exec-approvals-allowlist-BOUCQu6B.js → exec-approvals-allowlist-CtUT02un.js} +1 -1
  65. package/dist/{exec-approvals-cli-_cqBqjTA.js → exec-approvals-cli-CsCqi3wl.js} +16 -16
  66. package/dist/{exec-safe-bin-runtime-policy-CkhpnueN.js → exec-safe-bin-runtime-policy-CSBwsuHS.js} +2 -2
  67. package/dist/{fetch-guard-NyNh7p-s.js → fetch-guard-Ca0W-yZr.js} +1 -1
  68. package/dist/{fs-safe-mG29clJ9.js → fs-safe-D_adQJX4.js} +24 -24
  69. package/dist/{gateway-cli-94YTdTAa.js → gateway-cli-C5cq5Fv9.js} +152 -152
  70. package/dist/{gateway-rpc-NhXLPpJx.js → gateway-rpc-C32KFHnD.js} +1 -1
  71. package/dist/{health-B99KJscL.js → health-yuGFUIWJ.js} +11 -11
  72. package/dist/{hooks-cli-C01QhY4h.js → hooks-cli-CXWcvFYo.js} +80 -80
  73. package/dist/{hooks-status-CZNGtyrM.js → hooks-status-Bjjm7teR.js} +1 -1
  74. package/dist/{image-BaqqhHHh.js → image-CDKYPK1-.js} +5 -5
  75. package/dist/{image-ops-CKnT_r12.js → image-ops-BTwvusXV.js} +10 -10
  76. package/dist/image-runtime-Csw6M1GE.js +55 -0
  77. package/dist/index.js +82 -82
  78. package/dist/{inspect-XHunUBlV.js → inspect-lNlGLW_c.js} +4 -4
  79. package/dist/{install-safe-path-om__n8TQ.js → install-safe-path-BNRYD-KJ.js} +25 -25
  80. package/dist/{installs-Z0VR0SY2.js → installs-BB_8nllr.js} +9 -9
  81. package/dist/{ipv4-NJiClroF.js → ipv4-CPzn5xIX.js} +1 -1
  82. package/dist/{ir-ChJe1hY6.js → ir-BdjoGJyL.js} +8 -8
  83. package/dist/{issue-format-G-7IkANX.js → issue-format-D_MHPECu.js} +1 -1
  84. package/dist/{json-files-D6M304Qd.js → json-files-DIEpaxUj.js} +8 -8
  85. package/dist/{lifecycle-core-BcIuIPMF.js → lifecycle-core-C2u5W-Xd.js} +5 -5
  86. package/dist/{local-roots-BCYAjsgu.js → local-roots-_noFNwvo.js} +3 -3
  87. package/dist/{login-D7cZyPrd.js → login-CbJ7lelX.js} +3 -3
  88. package/dist/{login-qr-DPVFxhjZ.js → login-qr-9cwofnkY.js} +6 -6
  89. package/dist/{logs-cli-CtEDxmDk.js → logs-cli-RYm8XZEC.js} +9 -9
  90. package/dist/{manager-CSnZM2Iw.js → manager-Dbz9CyPw.js} +14 -14
  91. package/dist/{manager-runtime-aMwRbhZ3.js → manager-runtime-DsniMUxY.js} +9 -9
  92. package/dist/{manifest-registry-D74D25g7.js → manifest-registry-QfHOpQrg.js} +1 -1
  93. package/dist/{memory-cli-CCMIlraX.js → memory-cli-CLBPPSow.js} +12 -12
  94. package/dist/{model-CnHxvu4o.js → model-CfB7nuUK.js} +2 -2
  95. package/dist/{model-catalog-QXAt20Vy.js → model-catalog-BH55qLYK.js} +3 -3
  96. package/dist/{model-picker-ByrLHc9_.js → model-picker-D3xDEPDv.js} +4 -4
  97. package/dist/{model-selection-DqSNdtby.js → model-selection-DZM1M4yx.js} +16 -16
  98. package/dist/{models-cli-C0mrlgSL.js → models-cli-DlFeSGXD.js} +81 -81
  99. package/dist/{models-config-5EhgxVMQ.js → models-config-BLJwyO9D.js} +6 -6
  100. package/dist/{node-cli-DdKfRYhS.js → node-cli-Dcn7Lxvr.js} +33 -33
  101. package/dist/{node-command-policy-D-hu0n3w.js → node-command-policy-DfcI_g5B.js} +1 -1
  102. package/dist/{node-service--hFCI8Ok.js → node-service-CIXWfpdM.js} +1 -1
  103. package/dist/{nodes-cli-BmjFvKQh.js → nodes-cli-CtIY3Wdi.js} +16 -16
  104. package/dist/{nodes-screen-CCNot0xV.js → nodes-screen-DgLXnfNX.js} +7 -7
  105. package/dist/{npm-pack-install-DSR8-nhr.js → npm-pack-install-BmT2Qku8.js} +18 -18
  106. package/dist/{npm-resolution-dr4H2dBm.js → npm-resolution-Ch4kSz-J.js} +4 -4
  107. package/dist/{onboard-channels-QzPuUsu5.js → onboard-channels-CZMeimvm.js} +21 -21
  108. package/dist/{onboard-custom-pyXzjp5z.js → onboard-custom-Bk9lP_gS.js} +4 -4
  109. package/dist/{onboard-helpers-ByC3v1-U.js → onboard-helpers-C51uqagK.js} +10 -10
  110. package/dist/{onboard-hooks-C2cFv3_-.js → onboard-hooks-B4RFbzBs.js} +4 -4
  111. package/dist/{onboard-CyDS1PdS.js → onboard-pvZeQwGW.js} +6 -6
  112. package/dist/{onboard-remote-DHZv5w4W.js → onboard-remote-CmB2v7g1.js} +4 -4
  113. package/dist/{onboard-skills-D_R383gZ.js → onboard-skills-B52kyElD.js} +4 -4
  114. package/dist/{onboarding-Df6qbE08.js → onboarding-BQS8Nd_E.js} +14 -14
  115. package/dist/{onboarding.finalize-DkEbxmLj.js → onboarding.finalize-1BqhSubV.js} +85 -85
  116. package/dist/{onboarding.gateway-config-DttU83Zb.js → onboarding.gateway-config-BIkI8VxE.js} +18 -18
  117. package/dist/{onboarding.secret-input-BJILGy22.js → onboarding.secret-input-Dz6lMbgK.js} +1 -1
  118. package/dist/{openai-model-default-uuDOWnTl.js → openai-model-default-LC7S-YJ9.js} +2 -2
  119. package/dist/{openclaw-root-DeEQQJyX.js → openclaw-root-DG6I1Pl4.js} +8 -8
  120. package/dist/{outbound-B0HGMG3V.js → outbound-C2sayF6_.js} +3 -3
  121. package/dist/{outbound-attachment-Ccf9O8B8.js → outbound-attachment-BMKxLFNL.js} +2 -2
  122. package/dist/{pairing-cli-L76jWxbm.js → pairing-cli-BiogXen1.js} +8 -8
  123. package/dist/{pairing-labels-D9vsJ1yc.js → pairing-labels-OxEX3p5e.js} +1 -1
  124. package/dist/{pairing-store-qlIFCeZB.js → pairing-store-CxcCXceV.js} +3 -3
  125. package/dist/{path-alias-guards-BzAaCM2k.js → path-alias-guards-CY88Htx_.js} +3 -3
  126. package/dist/{path-safety-BtMBl7vC.js → path-safety-dy_YlK3a.js} +1 -1
  127. package/dist/{paths-1ThfklTP.js → paths-C48pWRFv.js} +9 -9
  128. package/dist/{pi-embedded-helpers-DXrnVbBZ.js → pi-embedded-helpers-CuG0ngBL.js} +6 -6
  129. package/dist/{pi-model-discovery-BKbDxeIp.js → pi-model-discovery-Drm3mYtt.js} +1 -1
  130. package/dist/{pi-model-discovery-runtime-CpLmZvoC.js → pi-model-discovery-runtime-CCZ87Xog.js} +5 -5
  131. package/dist/{pi-tools.before-tool-call.runtime-81kH9GUj.js → pi-tools.before-tool-call.runtime-CxMxsbgT.js} +5 -5
  132. package/dist/{pi-tools.policy-BC7YGcon.js → pi-tools.policy-DaB-Ff9f.js} +5 -5
  133. package/dist/{plugin-auto-enable-CIeegxhY.js → plugin-auto-enable-DOlffoVt.js} +3 -3
  134. package/dist/{plugin-registry-D8JSGXQX.js → plugin-registry-DfKKSRKU.js} +3 -3
  135. package/dist/plugin-sdk/signal.js +2 -2
  136. package/dist/{plugins-TLur5wHC.js → plugins-DaN4Jp7R.js} +2 -2
  137. package/dist/{plugins-cli-e8svgZ6i.js → plugins-cli-540srne6.js} +82 -82
  138. package/dist/{ports-CfTWPxj9.js → ports-B6f6PDVD.js} +2 -2
  139. package/dist/{ports-BE9ZTYml.js → ports-DX1Cxj7W.js} +1 -1
  140. package/dist/{program-context-DNYbQrvx.js → program-context-iEkoyF3D.js} +41 -41
  141. package/dist/{prompt-select-styled-B7A4T4-F.js → prompt-select-styled-C1MS6ea1.js} +40 -40
  142. package/dist/{provider-auth-helpers-DolkcfyF.js → provider-auth-helpers-BeZKOpzW.js} +5 -5
  143. package/dist/{proxy-env-hdF2jCzB.js → proxy-env-R4DbTLy-.js} +1 -1
  144. package/dist/{push-apns-COJt9ulg.js → push-apns-wRpQOiqI.js} +5 -5
  145. package/dist/{pw-ai-CICkGw_S.js → pw-ai-DP_aLfwB.js} +18 -18
  146. package/dist/{qmd-manager-CT6j2ntm.js → qmd-manager-DP6UdQoL.js} +20 -20
  147. package/dist/{qr-cli-CKPDy5Oq.js → qr-cli-7lXeTSek.js} +2 -2
  148. package/dist/{query-expansion-DmxOigqX.js → query-expansion-bOaotSTR.js} +12 -12
  149. package/dist/{redact-snapshot-C6NRnnHx.js → redact-snapshot-D6W9dz8Q.js} +1 -1
  150. package/dist/{register.agent-D4BrsIbk.js → register.agent-Bjkfci3x.js} +97 -97
  151. package/dist/register.configure-BEkx9CQc.js +164 -0
  152. package/dist/{register.maintenance-x2-poSUG.js → register.maintenance-ErXA_uuU.js} +93 -93
  153. package/dist/{register.message-NeUR5N0O.js → register.message-vHhFsp94.js} +73 -73
  154. package/dist/{register.onboard-Cdh-N4A9.js → register.onboard-BgvfFczx.js} +18 -18
  155. package/dist/{register.setup-B3ADFeTG.js → register.setup-Bel3kQD6.js} +21 -21
  156. package/dist/{register.status-health-sessions-zRCJ2e-L.js → register.status-health-sessions-BEhwEKZV.js} +86 -86
  157. package/dist/{reply-BFrmGuXU.js → reply-9D8ZuOqr.js} +149 -149
  158. package/dist/{rpc-DUJUbW2t.js → rpc-BSqhmmbX.js} +1 -1
  159. package/dist/{runtime-DTxtPm0I.js → runtime-BHbS8ZHw.js} +3 -3
  160. package/dist/{runtime-config-collectors-BEvlZaJw.js → runtime-config-collectors-CXxR70dG.js} +1 -1
  161. package/dist/{runtime-whatsapp-login.runtime-DLNWSVqX.js → runtime-whatsapp-login.runtime-BkF8zMbl.js} +7 -7
  162. package/dist/runtime-whatsapp-outbound.runtime-CdzmGvC6.js +32 -0
  163. package/dist/{sandbox-C0HLb5d5.js → sandbox-HvaJFfqL.js} +18 -18
  164. package/dist/{sandbox-cli-CHpGeoro.js → sandbox-cli-Cyu9YZx0.js} +25 -25
  165. package/dist/{secrets-cli-DgQQmw65.js → secrets-cli-B-aLO0SY.js} +11 -11
  166. package/dist/{security-cli-W-7xXDn1.js → security-cli-DZTjYQ-D.js} +42 -42
  167. package/dist/{send-tsYgRPrs.js → send-7ekhdACO.js} +5 -5
  168. package/dist/{send-CJrrDXqE.js → send-BcAN5-hD.js} +11 -11
  169. package/dist/{send-BUFnD0eE.js → send-BlhxqBI9.js} +6 -6
  170. package/dist/{send-Ddtb8gLT.js → send-C9SevGlM.js} +4 -4
  171. package/dist/{send-D3BV3zCy.js → send-CVzWMFl1.js} +8 -8
  172. package/dist/{server-Bzgq55gk.js → server-ChrqZt3H.js} +20 -20
  173. package/dist/{server-context-DCpD_bA8.js → server-context-BhpOEoCB.js} +12 -12
  174. package/dist/{server-lifecycle-B2SzHMkK.js → server-lifecycle-BYHavdLd.js} +2 -2
  175. package/dist/{server-middleware-C_u_M_FK.js → server-middleware-BzsDWK_f.js} +1 -1
  176. package/dist/{server-node-events-BS0Yy6SL.js → server-node-events-CN7o3YoN.js} +73 -73
  177. package/dist/{service-DhcBUav5.js → service-qQCNqvmY.js} +15 -15
  178. package/dist/{session-D6FZ4tQ8.js → session-CdQJLohq.js} +1 -1
  179. package/dist/{sessions-CRTJuMXp.js → sessions-Fm2Lx117.js} +15 -15
  180. package/dist/{shared-DOUEV_Eq.js → shared-26KZSqMI.js} +1 -1
  181. package/dist/{shared-BXXG3vT8.js → shared-CWdEWtsZ.js} +3 -3
  182. package/dist/{skill-commands-BgzZkiJz.js → skill-commands-De4NUpNz.js} +5 -5
  183. package/dist/{skill-scanner-DcrwF2Fr.js → skill-scanner-BtrQE0gO.js} +6 -6
  184. package/dist/{skills-4CjDh8J_.js → skills-Sy3onNq_.js} +3 -3
  185. package/dist/{skills-cli-CRB7e30Z.js → skills-cli-DiN4xbFz.js} +5 -5
  186. package/dist/{skills-install-DOKJADrz.js → skills-install-DksQkSIq.js} +6 -6
  187. package/dist/{skills-status-BWqCvt0g.js → skills-status-BZptMdLx.js} +1 -1
  188. package/dist/{slash-commands.runtime-DSjg6jg8.js → slash-commands.runtime-Becs7mLt.js} +11 -11
  189. package/dist/slash-dispatch.runtime-BGHMR1xK.js +113 -0
  190. package/dist/{slash-skill-commands.runtime-DwvIfTev.js → slash-skill-commands.runtime-BqcgqTMM.js} +15 -15
  191. package/dist/{status-BiX1kbtY.js → status-CaG5OT-N.js} +26 -26
  192. package/dist/{status.update-QMbtfb38.js → status.update-DR8lt70f.js} +2 -2
  193. package/dist/{store-s4dlu9ZQ.js → store-B7o63XvV.js} +5 -5
  194. package/dist/subagent-registry-runtime-0qZtQB7_.js +113 -0
  195. package/dist/{system-cli-Dz6Xu0cZ.js → system-cli-CpyvQedP.js} +9 -9
  196. package/dist/{system-run-command-MvTaWm_5.js → system-run-command-B7_IasTx.js} +1 -1
  197. package/dist/{systemd-V-rr1rHU.js → systemd-DotMzkho.js} +9 -9
  198. package/dist/{systemd-hints-BanLoKAv.js → systemd-hints-B1n_Cmj7.js} +6 -6
  199. package/dist/{systemd-linger-CWkk4GBp.js → systemd-linger-la785pXY.js} +1 -1
  200. package/dist/{tables-D6c57Lrs.js → tables-B3d05drH.js} +1 -1
  201. package/dist/{tailnet-DuRcvzVE.js → tailnet-CSHZafwU.js} +1 -1
  202. package/dist/{target-errors-u7pjywIy.js → target-errors-CCgPtzPv.js} +4 -4
  203. package/dist/{tool-images-6ceVT7-i.js → tool-images-Bhog1Yix.js} +1 -1
  204. package/dist/{tui-DIVVG-0Y.js → tui-DoROfmXy.js} +6 -6
  205. package/dist/{tui-cli-DdB0uJii.js → tui-cli-Axgy0FU4.js} +32 -32
  206. package/dist/{update-cli-B0ekEE4A.js → update-cli-Dudao0uZ.js} +102 -102
  207. package/dist/{update-runner-gVTOOfSH.js → update-runner-B_J4-cY6.js} +16 -16
  208. package/dist/{update-C4nonzOq.js → update-xgJWkTh1.js} +3 -3
  209. package/dist/web-QKn04c6k.js +117 -0
  210. package/dist/{webhooks-cli-D2omOmfe.js → webhooks-cli-HRhGQtAq.js} +6 -6
  211. package/dist/{whatsapp-actions-Ds8L0msY.js → whatsapp-actions-s6qkgp-7.js} +17 -17
  212. package/dist/{with-timeout-DW6XbMi-.js → with-timeout-OltBBBXv.js} +3 -3
  213. package/dist/{workspace-B7XBLNce.js → workspace-B3uGN7Xe.js} +1 -1
  214. package/dist/{workspace-dirs-Ds-g-s99.js → workspace-dirs-0V-76Wmq.js} +1 -1
  215. package/dist/{ws-BNW54x9_.js → ws-BrCPoV7j.js} +2 -2
  216. package/dist/{wsl-CgxzAzRe.js → wsl-wYxPJ8EO.js} +2 -2
  217. package/package.json +1 -1
  218. package/scripts/create-instance.sh +58 -15
  219. package/dist/deliver-runtime-DGrrnFpY.js +0 -61
  220. package/dist/deps-send-discord.runtime-DAPWkSXf.js +0 -36
  221. package/dist/deps-send-imessage.runtime-DWqR6W7h.js +0 -35
  222. package/dist/deps-send-signal.runtime-Ce60L81Z.js +0 -34
  223. package/dist/deps-send-slack.runtime-s0pqdhHR.js +0 -32
  224. package/dist/deps-send-whatsapp.runtime-bRJ5Zed1.js +0 -118
  225. package/dist/image-runtime-D9iVXh4M.js +0 -55
  226. package/dist/register.configure-B8qyHllb.js +0 -164
  227. package/dist/runtime-whatsapp-outbound.runtime-bK_Rub3q.js +0 -32
  228. package/dist/slash-dispatch.runtime-DcGK4xow.js +0 -113
  229. package/dist/subagent-registry-runtime-D5KDyK6C.js +0 -113
  230. package/dist/web-C0Ki9gxL.js +0 -117
@@ -6,7 +6,7 @@ import { _ as normalizeAccountId, g as DEFAULT_ACCOUNT_ID, v as normalizeOptiona
6
6
  import { t as formatCliCommand } from "./command-format-Gp1OUMPH.js";
7
7
  import fs from "node:fs";
8
8
  import path from "node:path";
9
- import fs$1 from "node:fs/promises";
9
+ import fsPromises from "node:fs/promises";
10
10
 
11
11
  //#region src/routing/account-lookup.ts
12
12
  function resolveAccountEntry(accounts, accountId) {
@@ -105,14 +105,14 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
105
105
  maybeRestoreCredsFromBackup(resolvedAuthDir);
106
106
  const credsPath = resolveWebCredsPath(resolvedAuthDir);
107
107
  try {
108
- await fs$1.access(resolvedAuthDir);
108
+ await fsPromises.access(resolvedAuthDir);
109
109
  } catch {
110
110
  return false;
111
111
  }
112
112
  try {
113
- const stats = await fs$1.stat(credsPath);
113
+ const stats = await fsPromises.stat(credsPath);
114
114
  if (!stats.isFile() || stats.size <= 1) return false;
115
- const raw = await fs$1.readFile(credsPath, "utf-8");
115
+ const raw = await fsPromises.readFile(credsPath, "utf-8");
116
116
  JSON.parse(raw);
117
117
  return true;
118
118
  } catch {
@@ -120,7 +120,7 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
120
120
  }
121
121
  }
122
122
  async function clearLegacyBaileysAuthState(authDir) {
123
- const entries = await fs$1.readdir(authDir, { withFileTypes: true });
123
+ const entries = await fsPromises.readdir(authDir, { withFileTypes: true });
124
124
  const shouldDelete = (name) => {
125
125
  if (name === "oauth.json") return false;
126
126
  if (name === "creds.json" || name === "creds.json.bak") return true;
@@ -130,7 +130,7 @@ async function clearLegacyBaileysAuthState(authDir) {
130
130
  await Promise.all(entries.map(async (entry) => {
131
131
  if (!entry.isFile()) return;
132
132
  if (!shouldDelete(entry.name)) return;
133
- await fs$1.rm(path.join(authDir, entry.name), { force: true });
133
+ await fsPromises.rm(path.join(authDir, entry.name), { force: true });
134
134
  }));
135
135
  }
136
136
  async function logoutWeb(params) {
@@ -141,7 +141,7 @@ async function logoutWeb(params) {
141
141
  return false;
142
142
  }
143
143
  if (params.isLegacyAuthDir) await clearLegacyBaileysAuthState(resolvedAuthDir);
144
- else await fs$1.rm(resolvedAuthDir, {
144
+ else await fsPromises.rm(resolvedAuthDir, {
145
145
  recursive: true,
146
146
  force: true
147
147
  });
@@ -1,5 +1,5 @@
1
1
  import { _ as normalizeAccountId } from "./session-key-CIXZm7v4.js";
2
- import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-4vg8osA5.js";
2
+ import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-BPt-s1cW.js";
3
3
 
4
4
  //#region src/imessage/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("imessage");
@@ -1,5 +1,5 @@
1
1
  import { _ as normalizeAccountId } from "./session-key-CIXZm7v4.js";
2
- import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-4vg8osA5.js";
2
+ import { v as createAccountListHelpers, y as resolveAccountEntry } from "./accounts-BPt-s1cW.js";
3
3
 
4
4
  //#region src/signal/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("signal");
@@ -1,26 +1,26 @@
1
1
  import "./paths-BBP4yd-2.js";
2
2
  import { p as theme } from "./globals-BawKHR8h.js";
3
3
  import { S as shortenHomePath, y as resolveUserPath } from "./utils-CokqDAE4.js";
4
- import "./agent-scope-BbO_VBbv.js";
4
+ import "./agent-scope-CNJUPFcR.js";
5
5
  import { d as defaultRuntime } from "./subsystem-BiaB_3Ei.js";
6
- import "./openclaw-root-DeEQQJyX.js";
6
+ import "./openclaw-root-DG6I1Pl4.js";
7
7
  import "./logger-fgPrvtjf.js";
8
8
  import "./exec-Cu2obwh9.js";
9
- import { $t as loadConfig } from "./model-selection-DqSNdtby.js";
9
+ import { $t as loadConfig } from "./model-selection-DZM1M4yx.js";
10
10
  import "./registry-CTtrVpZB.js";
11
11
  import "./github-copilot-token-b6kJVrW-.js";
12
12
  import "./boolean-BsqeuxE6.js";
13
13
  import "./env-CNF75H3c.js";
14
14
  import "./host-env-security-DkAVVuaw.js";
15
15
  import { r as VERSION } from "./env-vars-ausEv-bN.js";
16
- import "./manifest-registry-D74D25g7.js";
16
+ import "./manifest-registry-QfHOpQrg.js";
17
17
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-S2KEwruz.js";
18
18
  import { r as isKnownCoreToolId } from "./tool-catalog-IBWCA-2a.js";
19
- import "./tailnet-DuRcvzVE.js";
20
- import "./ws-BNW54x9_.js";
19
+ import "./tailnet-CSHZafwU.js";
20
+ import "./ws-BrCPoV7j.js";
21
21
  import { n as resolveWindowsSpawnProgram, t as materializeWindowsSpawnProgram } from "./windows-spawn-Bo-pPi83.js";
22
- import { t as GatewayClient } from "./client-D9sBKoZI.js";
23
- import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-YJ9zjeji.js";
22
+ import { t as GatewayClient } from "./client-BEwDNigg.js";
23
+ import { s as resolveGatewayCredentialsWithSecretInputs, t as buildGatewayConnectionDetails } from "./call-eK-5ynwM.js";
24
24
  import "./pairing-token-9FncM-ur.js";
25
25
  import { t as formatDocsLink } from "./links-3lq_eIAs.js";
26
26
  import { t as isMainModule } from "./is-main-D5LnS2LP.js";
@@ -2,13 +2,13 @@ import { g as resolveStateDir, y as resolveRequiredHomeDir } from "./paths-BBP4y
2
2
  import { h as pathExists, y as resolveUserPath } from "./utils-CokqDAE4.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-BiaB_3Ei.js";
4
4
  import { E as parseAgentSessionKey, T as isSubagentSessionKey, c as normalizeAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, w as isCronSessionKey } from "./session-key-CIXZm7v4.js";
5
- import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveOpenClawPackageRoot } from "./openclaw-root-DeEQQJyX.js";
5
+ import { _ as normalizeSkillFilter, i as openBoundaryFile, t as resolveOpenClawPackageRoot } from "./openclaw-root-DG6I1Pl4.js";
6
6
  import { t as runCommandWithTimeout } from "./exec-Cu2obwh9.js";
7
7
  import { fileURLToPath } from "node:url";
8
8
  import fs from "node:fs";
9
9
  import os from "node:os";
10
10
  import path from "node:path";
11
- import fs$1 from "node:fs/promises";
11
+ import fsPromises from "node:fs/promises";
12
12
 
13
13
  //#region src/config/model-input.ts
14
14
  function resolveAgentModelPrimaryValue(model) {
@@ -150,7 +150,7 @@ async function loadTemplate(name) {
150
150
  const templateDir = await resolveWorkspaceTemplateDir();
151
151
  const templatePath = path.join(templateDir, name);
152
152
  try {
153
- return stripFrontMatter(await fs$1.readFile(templatePath, "utf-8"));
153
+ return stripFrontMatter(await fsPromises.readFile(templatePath, "utf-8"));
154
154
  } catch {
155
155
  throw new Error(`Missing workspace template: ${name} (${templatePath}). Ensure docs/reference/templates are packaged.`);
156
156
  }
@@ -165,7 +165,7 @@ async function loadTemplate(name) {
165
165
  }
166
166
  async function writeFileIfMissing(filePath, content) {
167
167
  try {
168
- await fs$1.writeFile(filePath, content, {
168
+ await fsPromises.writeFile(filePath, content, {
169
169
  encoding: "utf-8",
170
170
  flag: "wx"
171
171
  });
@@ -177,7 +177,7 @@ async function writeFileIfMissing(filePath, content) {
177
177
  }
178
178
  async function fileExists(filePath) {
179
179
  try {
180
- await fs$1.access(filePath);
180
+ await fsPromises.access(filePath);
181
181
  return true;
182
182
  } catch {
183
183
  return false;
@@ -201,7 +201,7 @@ function parseWorkspaceOnboardingState(raw) {
201
201
  }
202
202
  async function readWorkspaceOnboardingState(statePath) {
203
203
  try {
204
- return parseWorkspaceOnboardingState(await fs$1.readFile(statePath, "utf-8")) ?? { version: WORKSPACE_STATE_VERSION };
204
+ return parseWorkspaceOnboardingState(await fsPromises.readFile(statePath, "utf-8")) ?? { version: WORKSPACE_STATE_VERSION };
205
205
  } catch (err) {
206
206
  if (err.code !== "ENOENT") throw err;
207
207
  return { version: WORKSPACE_STATE_VERSION };
@@ -215,20 +215,20 @@ async function isWorkspaceOnboardingCompleted(dir) {
215
215
  return typeof state.onboardingCompletedAt === "string" && state.onboardingCompletedAt.trim().length > 0;
216
216
  }
217
217
  async function writeWorkspaceOnboardingState(statePath, state) {
218
- await fs$1.mkdir(path.dirname(statePath), { recursive: true });
218
+ await fsPromises.mkdir(path.dirname(statePath), { recursive: true });
219
219
  const payload = `${JSON.stringify(state, null, 2)}\n`;
220
220
  const tmpPath = `${statePath}.tmp-${process.pid}-${Date.now().toString(36)}`;
221
221
  try {
222
- await fs$1.writeFile(tmpPath, payload, { encoding: "utf-8" });
223
- await fs$1.rename(tmpPath, statePath);
222
+ await fsPromises.writeFile(tmpPath, payload, { encoding: "utf-8" });
223
+ await fsPromises.rename(tmpPath, statePath);
224
224
  } catch (err) {
225
- await fs$1.unlink(tmpPath).catch(() => {});
225
+ await fsPromises.unlink(tmpPath).catch(() => {});
226
226
  throw err;
227
227
  }
228
228
  }
229
229
  async function hasGitRepo(dir) {
230
230
  try {
231
- await fs$1.stat(path.join(dir, ".git"));
231
+ await fsPromises.stat(path.join(dir, ".git"));
232
232
  return true;
233
233
  } catch {
234
234
  return false;
@@ -258,7 +258,7 @@ async function ensureGitRepo(dir, isBrandNewWorkspace) {
258
258
  }
259
259
  async function ensureAgentWorkspace(params) {
260
260
  const dir = resolveUserPath(params?.dir?.trim() ? params.dir.trim() : DEFAULT_AGENT_WORKSPACE_DIR);
261
- await fs$1.mkdir(dir, { recursive: true });
261
+ await fsPromises.mkdir(dir, { recursive: true });
262
262
  if (!params?.ensureBootstrapFiles) return { dir };
263
263
  const agentsPath = path.join(dir, DEFAULT_AGENTS_FILENAME);
264
264
  const soulPath = path.join(dir, DEFAULT_SOUL_FILENAME);
@@ -285,7 +285,7 @@ async function ensureAgentWorkspace(params) {
285
285
  const paths = [...templatePaths, ...userContentPaths];
286
286
  return (await Promise.all(paths.map(async (p) => {
287
287
  try {
288
- await fs$1.access(p);
288
+ await fsPromises.access(p);
289
289
  return true;
290
290
  } catch {
291
291
  return false;
@@ -318,7 +318,7 @@ async function ensureAgentWorkspace(params) {
318
318
  if (!state.bootstrapSeededAt && bootstrapExists) markState({ bootstrapSeededAt: nowIso() });
319
319
  if (!state.onboardingCompletedAt && state.bootstrapSeededAt && !bootstrapExists) markState({ onboardingCompletedAt: nowIso() });
320
320
  if (!state.bootstrapSeededAt && !state.onboardingCompletedAt && !bootstrapExists) {
321
- const [identityContent, userContent] = await Promise.all([fs$1.readFile(identityPath, "utf-8"), fs$1.readFile(userPath, "utf-8")]);
321
+ const [identityContent, userContent] = await Promise.all([fsPromises.readFile(identityPath, "utf-8"), fsPromises.readFile(userPath, "utf-8")]);
322
322
  const hasUserContent = await (async () => {
323
323
  const indicators = [
324
324
  path.join(dir, "memory"),
@@ -326,7 +326,7 @@ async function ensureAgentWorkspace(params) {
326
326
  path.join(dir, ".git")
327
327
  ];
328
328
  for (const indicator of indicators) try {
329
- await fs$1.access(indicator);
329
+ await fsPromises.access(indicator);
330
330
  return true;
331
331
  } catch {}
332
332
  return false;
@@ -357,7 +357,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
357
357
  for (const name of candidates) {
358
358
  const filePath = path.join(resolvedDir, name);
359
359
  try {
360
- await fs$1.access(filePath);
360
+ await fsPromises.access(filePath);
361
361
  entries.push({
362
362
  name,
363
363
  filePath
@@ -370,7 +370,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
370
370
  for (const entry of entries) {
371
371
  let key = entry.filePath;
372
372
  try {
373
- key = await fs$1.realpath(entry.filePath);
373
+ key = await fsPromises.realpath(entry.filePath);
374
374
  } catch {}
375
375
  if (seen.has(key)) continue;
376
376
  seen.add(key);
@@ -1,5 +1,5 @@
1
- import { nn as identityHasValues, rn as loadAgentIdentityFromWorkspace } from "./reply-BFrmGuXU.js";
2
- import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-BbO_VBbv.js";
1
+ import { nn as identityHasValues, rn as loadAgentIdentityFromWorkspace } from "./reply-9D8ZuOqr.js";
2
+ import { a as resolveAgentDir, d as resolveDefaultAgentId, n as listAgentEntries, u as resolveAgentWorkspaceDir } from "./agent-scope-CNJUPFcR.js";
3
3
  import { c as normalizeAgentId } from "./session-key-CIXZm7v4.js";
4
4
 
5
5
  //#region src/commands/agents.config.ts
@@ -1,4 +1,4 @@
1
- import { d as normalizeProviderId } from "./model-selection-DqSNdtby.js";
1
+ import { d as normalizeProviderId } from "./model-selection-DZM1M4yx.js";
2
2
  import { r as formatErrorMessage } from "./errors-BkPBAjci.js";
3
3
 
4
4
  //#region src/infra/gemini-auth.ts
@@ -2,60 +2,60 @@ import "./paths-BBP4yd-2.js";
2
2
  import { a as logVerbose, c as shouldLogVerbose } from "./globals-BawKHR8h.js";
3
3
  import "./utils-CokqDAE4.js";
4
4
  import "./thinking-44rmAw5o.js";
5
- import "./agent-scope-BbO_VBbv.js";
5
+ import "./agent-scope-CNJUPFcR.js";
6
6
  import "./subsystem-BiaB_3Ei.js";
7
- import "./openclaw-root-DeEQQJyX.js";
7
+ import "./openclaw-root-DG6I1Pl4.js";
8
8
  import "./logger-fgPrvtjf.js";
9
9
  import "./exec-Cu2obwh9.js";
10
- import "./model-selection-DqSNdtby.js";
10
+ import "./model-selection-DZM1M4yx.js";
11
11
  import "./registry-CTtrVpZB.js";
12
12
  import "./github-copilot-token-b6kJVrW-.js";
13
13
  import "./boolean-BsqeuxE6.js";
14
14
  import "./env-CNF75H3c.js";
15
15
  import "./host-env-security-DkAVVuaw.js";
16
16
  import "./env-vars-ausEv-bN.js";
17
- import "./manifest-registry-D74D25g7.js";
18
- import "./dock-SpSqP4RS.js";
17
+ import "./manifest-registry-QfHOpQrg.js";
18
+ import "./dock-BR4hdehX.js";
19
19
  import "./message-channel-S2KEwruz.js";
20
- import "./plugins-TLur5wHC.js";
21
- import "./sessions-CRTJuMXp.js";
22
- import { d as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-B9-J1DUd.js";
23
- import "./image-BaqqhHHh.js";
24
- import "./models-config-5EhgxVMQ.js";
25
- import "./pi-embedded-helpers-DXrnVbBZ.js";
26
- import "./sandbox-C0HLb5d5.js";
20
+ import "./plugins-DaN4Jp7R.js";
21
+ import "./sessions-Fm2Lx117.js";
22
+ import { d as isAudioAttachment, i as normalizeMediaAttachments, o as resolveMediaAttachmentLocalRoots, t as runAudioTranscription } from "./audio-transcription-runner-sLK1yiya.js";
23
+ import "./image-CDKYPK1-.js";
24
+ import "./models-config-BLJwyO9D.js";
25
+ import "./pi-embedded-helpers-CuG0ngBL.js";
26
+ import "./sandbox-HvaJFfqL.js";
27
27
  import "./tool-catalog-IBWCA-2a.js";
28
- import "./chrome-DBMFZ1ho.js";
28
+ import "./chrome-CQR5U4Oc.js";
29
29
  import "./tailscale-OabIsy4o.js";
30
- import "./tailnet-DuRcvzVE.js";
31
- import "./ws-BNW54x9_.js";
32
- import "./auth-B_YGaEcP.js";
33
- import "./server-context-DCpD_bA8.js";
30
+ import "./tailnet-CSHZafwU.js";
31
+ import "./ws-BrCPoV7j.js";
32
+ import "./auth-C_LDvTxu.js";
33
+ import "./server-context-BhpOEoCB.js";
34
34
  import "./frontmatter-CPpXT7mj.js";
35
- import "./skills-4CjDh8J_.js";
36
- import "./path-alias-guards-BzAaCM2k.js";
37
- import "./paths-1ThfklTP.js";
35
+ import "./skills-Sy3onNq_.js";
36
+ import "./path-alias-guards-CY88Htx_.js";
37
+ import "./paths-C48pWRFv.js";
38
38
  import "./redact-sDsI6gV3.js";
39
39
  import "./errors-BkPBAjci.js";
40
- import "./fs-safe-mG29clJ9.js";
41
- import "./proxy-env-hdF2jCzB.js";
42
- import "./image-ops-CKnT_r12.js";
43
- import "./store-s4dlu9ZQ.js";
44
- import "./ports-CfTWPxj9.js";
40
+ import "./fs-safe-D_adQJX4.js";
41
+ import "./proxy-env-R4DbTLy-.js";
42
+ import "./image-ops-BTwvusXV.js";
43
+ import "./store-B7o63XvV.js";
44
+ import "./ports-B6f6PDVD.js";
45
45
  import "./trash--gw0enoo.js";
46
- import "./server-middleware-C_u_M_FK.js";
47
- import "./accounts-4vg8osA5.js";
48
- import "./accounts-BgOnManD.js";
46
+ import "./server-middleware-BzsDWK_f.js";
47
+ import "./accounts-BPt-s1cW.js";
48
+ import "./accounts-CC3alHma.js";
49
49
  import "./logging-D3KTM1pH.js";
50
- import "./accounts-CXo4Ac3z.js";
50
+ import "./accounts-CNIODbBr.js";
51
51
  import "./paths-D24h0XR4.js";
52
52
  import "./chat-envelope-DL2R5pK6.js";
53
- import "./tool-images-6ceVT7-i.js";
53
+ import "./tool-images-Bhog1Yix.js";
54
54
  import "./tool-display-D1uTM_Dm.js";
55
- import "./fetch-guard-NyNh7p-s.js";
56
- import "./api-key-rotation-CzacqD3s.js";
57
- import "./local-roots-BCYAjsgu.js";
58
- import "./model-catalog-QXAt20Vy.js";
55
+ import "./fetch-guard-Ca0W-yZr.js";
56
+ import "./api-key-rotation-PzGuOQm_.js";
57
+ import "./local-roots-_noFNwvo.js";
58
+ import "./model-catalog-BH55qLYK.js";
59
59
  import "./proxy-fetch-DVvCU_Cg.js";
60
60
 
61
61
  //#region src/media-understanding/audio-preflight.ts
@@ -1,23 +1,23 @@
1
1
  import { a as logVerbose, c as shouldLogVerbose, k as resolvePreferredOpenClawTmpDir } from "./globals-BawKHR8h.js";
2
- import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-BbO_VBbv.js";
2
+ import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue } from "./agent-scope-CNJUPFcR.js";
3
3
  import { n as runExec } from "./exec-Cu2obwh9.js";
4
- import { A as normalizeGoogleModelId, d as normalizeProviderId, dn as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, fn as isInboundPathAllowed, mn as resolveIMessageAttachmentRoots, nt as requireApiKey, pn as mergeInboundPathRoots, rt as resolveApiKeyForProvider } from "./model-selection-DqSNdtby.js";
5
- import { j as normalizeChatType } from "./plugins-TLur5wHC.js";
6
- import { t as describeImageWithModel } from "./image-BaqqhHHh.js";
4
+ import { A as normalizeGoogleModelId, d as normalizeProviderId, dn as DEFAULT_IMESSAGE_ATTACHMENT_ROOTS, fn as isInboundPathAllowed, mn as resolveIMessageAttachmentRoots, nt as requireApiKey, pn as mergeInboundPathRoots, rt as resolveApiKeyForProvider } from "./model-selection-DZM1M4yx.js";
5
+ import { j as normalizeChatType } from "./plugins-DaN4Jp7R.js";
6
+ import { t as describeImageWithModel } from "./image-CDKYPK1-.js";
7
7
  import { i as formatUncaughtError, n as extractErrorCode, s as readErrorName, t as collectErrorGraphCandidates } from "./errors-BkPBAjci.js";
8
- import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-CKnT_r12.js";
8
+ import { c as detectMime, f as isAudioFileName, m as kindFromMime, u as getFileExtension } from "./image-ops-BTwvusXV.js";
9
9
  import { n as fetchWithTimeout } from "./fetch-timeout-BTot-we4.js";
10
- import { t as fetchWithSsrFGuard } from "./fetch-guard-NyNh7p-s.js";
11
- import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-CzacqD3s.js";
12
- import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-BCYAjsgu.js";
13
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-QXAt20Vy.js";
10
+ import { t as fetchWithSsrFGuard } from "./fetch-guard-Ca0W-yZr.js";
11
+ import { n as executeWithApiKeyRotation, r as parseGeminiAuth, t as collectProviderApiKeysForExecution } from "./api-key-rotation-PzGuOQm_.js";
12
+ import { i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, r as MediaFetchError } from "./local-roots-_noFNwvo.js";
13
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BH55qLYK.js";
14
14
  import { n as resolveProxyFetchFromEnv } from "./proxy-fetch-DVvCU_Cg.js";
15
15
  import process$1 from "node:process";
16
16
  import { fileURLToPath } from "node:url";
17
17
  import { constants } from "node:fs";
18
18
  import os from "node:os";
19
19
  import path from "node:path";
20
- import fs$1 from "node:fs/promises";
20
+ import fsPromises from "node:fs/promises";
21
21
  import crypto from "node:crypto";
22
22
 
23
23
  //#region src/auto-reply/templating.ts
@@ -971,7 +971,7 @@ var MediaAttachmentCache = class {
971
971
  const size = await this.ensureLocalStat(entry);
972
972
  if (entry.resolvedPath) {
973
973
  if (size !== void 0 && size > params.maxBytes) throw new MediaUnderstandingSkipError("maxBytes", `Attachment ${params.attachmentIndex + 1} exceeds maxBytes ${params.maxBytes}`);
974
- const buffer = await fs$1.readFile(entry.resolvedPath);
974
+ const buffer = await fsPromises.readFile(entry.resolvedPath);
975
975
  entry.buffer = buffer;
976
976
  entry.bufferMime = entry.bufferMime ?? entry.attachment.mime ?? await detectMime({
977
977
  buffer,
@@ -1041,10 +1041,10 @@ var MediaAttachmentCache = class {
1041
1041
  prefix: "openclaw-media",
1042
1042
  extension: path.extname(bufferResult.fileName || "") || ""
1043
1043
  });
1044
- await fs$1.writeFile(tmpPath, bufferResult.buffer);
1044
+ await fsPromises.writeFile(tmpPath, bufferResult.buffer);
1045
1045
  entry.tempPath = tmpPath;
1046
1046
  entry.tempCleanup = async () => {
1047
- await fs$1.unlink(tmpPath).catch(() => {});
1047
+ await fsPromises.unlink(tmpPath).catch(() => {});
1048
1048
  };
1049
1049
  return {
1050
1050
  path: tmpPath,
@@ -1091,12 +1091,12 @@ var MediaAttachmentCache = class {
1091
1091
  if (entry.statSize !== void 0) return entry.statSize;
1092
1092
  try {
1093
1093
  const currentPath = entry.resolvedPath;
1094
- const stat = await fs$1.stat(currentPath);
1094
+ const stat = await fsPromises.stat(currentPath);
1095
1095
  if (!stat.isFile()) {
1096
1096
  entry.resolvedPath = void 0;
1097
1097
  return;
1098
1098
  }
1099
- const canonicalPath = await fs$1.realpath(currentPath).catch(() => currentPath);
1099
+ const canonicalPath = await fsPromises.realpath(currentPath).catch(() => currentPath);
1100
1100
  if (!isInboundPathAllowed({
1101
1101
  filePath: canonicalPath,
1102
1102
  roots: await this.getCanonicalLocalPathRoots()
@@ -1118,7 +1118,7 @@ var MediaAttachmentCache = class {
1118
1118
  if (this.canonicalLocalPathRoots) return await this.canonicalLocalPathRoots;
1119
1119
  this.canonicalLocalPathRoots = (async () => mergeInboundPathRoots(this.localPathRoots, await Promise.all(this.localPathRoots.map(async (root) => {
1120
1120
  if (root.includes("*")) return root;
1121
- return await fs$1.realpath(root).catch(() => root);
1121
+ return await fsPromises.realpath(root).catch(() => root);
1122
1122
  }))))();
1123
1123
  return await this.canonicalLocalPathRoots;
1124
1124
  }
@@ -1129,7 +1129,7 @@ var MediaAttachmentCache = class {
1129
1129
  async function fileExists(filePath) {
1130
1130
  if (!filePath) return false;
1131
1131
  try {
1132
- await fs$1.stat(filePath);
1132
+ await fsPromises.stat(filePath);
1133
1133
  return true;
1134
1134
  } catch {
1135
1135
  return false;
@@ -1237,7 +1237,7 @@ async function resolveCliOutput(params) {
1237
1237
  const commandId = commandBase(params.command);
1238
1238
  const fileOutput = commandId === "whisper-cli" ? resolveWhisperCppOutputPath(params.args) : commandId === "whisper" ? resolveWhisperOutputPath(params.args, params.mediaPath) : commandId === "parakeet-mlx" ? resolveParakeetOutputPath(params.args, params.mediaPath) : null;
1239
1239
  if (fileOutput && await fileExists(fileOutput)) try {
1240
- const content = await fs$1.readFile(fileOutput, "utf8");
1240
+ const content = await fsPromises.readFile(fileOutput, "utf8");
1241
1241
  if (content.trim()) return content.trim();
1242
1242
  } catch {}
1243
1243
  if (commandId === "gemini") {
@@ -1546,10 +1546,10 @@ async function runCliEntry(params) {
1546
1546
  timeoutMs
1547
1547
  });
1548
1548
  if (capability === "audio") assertMinAudioSize({
1549
- size: (await fs$1.stat(pathResult.path)).size,
1549
+ size: (await fsPromises.stat(pathResult.path)).size,
1550
1550
  attachmentIndex: params.attachmentIndex
1551
1551
  });
1552
- const outputDir = await fs$1.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "openclaw-media-cli-"));
1552
+ const outputDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "openclaw-media-cli-"));
1553
1553
  const mediaPath = pathResult.path;
1554
1554
  const outputBase = path.join(outputDir, path.parse(mediaPath).name);
1555
1555
  const templCtx = {
@@ -1583,7 +1583,7 @@ async function runCliEntry(params) {
1583
1583
  model: command
1584
1584
  };
1585
1585
  } finally {
1586
- await fs$1.rm(outputDir, {
1586
+ await fsPromises.rm(outputDir, {
1587
1587
  recursive: true,
1588
1588
  force: true
1589
1589
  }).catch(() => {});
@@ -1627,9 +1627,9 @@ function candidateBinaryNames(name) {
1627
1627
  }
1628
1628
  async function isExecutable(filePath) {
1629
1629
  try {
1630
- if (!(await fs$1.stat(filePath)).isFile()) return false;
1630
+ if (!(await fsPromises.stat(filePath)).isFile()) return false;
1631
1631
  if (process.platform === "win32") return true;
1632
- await fs$1.access(filePath, constants.X_OK);
1632
+ await fsPromises.access(filePath, constants.X_OK);
1633
1633
  return true;
1634
1634
  } catch {
1635
1635
  return false;
@@ -1,38 +1,38 @@
1
1
  import { g as resolveStateDir, m as resolveOAuthDir, o as resolveConfigPath } from "./paths-BBP4yd-2.js";
2
- import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-BbO_VBbv.js";
2
+ import { M as resolveAgentModelFallbackValues, N as resolveAgentModelPrimaryValue, d as resolveDefaultAgentId } from "./agent-scope-CNJUPFcR.js";
3
3
  import { c as normalizeAgentId } from "./session-key-CIXZm7v4.js";
4
- import { $r as MAX_INCLUDE_DEPTH, En as normalizeNetworkMode, Gt as inspectPathPermissions, Kt as safeStat, Qr as INCLUDE_KEY, Qt as createConfigIO, Tn as isDangerousNetworkMode, Ut as formatPermissionDetail, Wt as formatPermissionRemediation, fr as normalizeTrustedSafeBinDirs } from "./model-selection-DqSNdtby.js";
4
+ import { $r as MAX_INCLUDE_DEPTH, En as normalizeNetworkMode, Gt as inspectPathPermissions, Kt as safeStat, Qr as INCLUDE_KEY, Qt as createConfigIO, Tn as isDangerousNetworkMode, Ut as formatPermissionDetail, Wt as formatPermissionRemediation, fr as normalizeTrustedSafeBinDirs } from "./model-selection-DZM1M4yx.js";
5
5
  import { A as hasConfiguredSecretInput } from "./registry-CTtrVpZB.js";
6
6
  import { t as formatCliCommand } from "./command-format-Gp1OUMPH.js";
7
7
  import { i as isPathInside, n as MANIFEST_KEY, r as extensionUsesSkippedScannerPath } from "./legacy-names-BP9MiXaN.js";
8
- import { d as normalizePluginsConfig } from "./manifest-registry-D74D25g7.js";
9
- import { l as normalizeStringEntries } from "./dock-SpSqP4RS.js";
8
+ import { d as normalizePluginsConfig } from "./manifest-registry-QfHOpQrg.js";
9
+ import { l as normalizeStringEntries } from "./dock-BR4hdehX.js";
10
10
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-S2KEwruz.js";
11
- import { n as listChannelPlugins } from "./plugins-TLur5wHC.js";
12
- import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-C0HLb5d5.js";
13
- import { a as resolveGatewayAuth } from "./auth-B_YGaEcP.js";
11
+ import { n as listChannelPlugins } from "./plugins-DaN4Jp7R.js";
12
+ import { C as resolveToolProfilePolicy, f as resolveSandboxConfigForAgent, k as SANDBOX_BROWSER_SECURITY_HASH_EPOCH, l as execDockerRaw, m as resolveSandboxToolPolicyForAgent, u as getBlockedBindReason } from "./sandbox-HvaJFfqL.js";
13
+ import { a as resolveGatewayAuth } from "./auth-C_LDvTxu.js";
14
14
  import { t as resolveGatewayCredentialsFromConfig } from "./credentials-DWbOUxWG.js";
15
- import { a as resolveProfile, c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-DCpD_bA8.js";
16
- import { i as loadWorkspaceSkillEntries } from "./skills-4CjDh8J_.js";
15
+ import { a as resolveProfile, c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-BhpOEoCB.js";
16
+ import { i as loadWorkspaceSkillEntries } from "./skills-Sy3onNq_.js";
17
17
  import { r as formatErrorMessage } from "./errors-BkPBAjci.js";
18
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-DUzVNM-Q.js";
19
- import { t as GatewayClient } from "./client-D9sBKoZI.js";
20
- import { l as READ_SCOPE, t as buildGatewayConnectionDetails } from "./call-YJ9zjeji.js";
21
- import { i as readChannelAllowFromStore } from "./pairing-store-qlIFCeZB.js";
22
- import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-CkhpnueN.js";
23
- import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-BC7YGcon.js";
18
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled } from "./commands-BaXA2bSJ.js";
19
+ import { t as GatewayClient } from "./client-BEwDNigg.js";
20
+ import { l as READ_SCOPE, t as buildGatewayConnectionDetails } from "./call-eK-5ynwM.js";
21
+ import { i as readChannelAllowFromStore } from "./pairing-store-CxcCXceV.js";
22
+ import { r as resolveMergedSafeBinProfileFixtures, t as listInterpreterLikeSafeBins } from "./exec-safe-bin-runtime-policy-CSBwsuHS.js";
23
+ import { l as resolveDmAllowState, n as isToolAllowedByPolicies, o as pickSandboxToolPolicy } from "./pi-tools.policy-DaB-Ff9f.js";
24
24
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CN1u5zht.js";
25
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-Ds-g-s99.js";
25
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-0V-76Wmq.js";
26
26
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-D0u9YNYf.js";
27
27
  import { t as resolveChannelDefaultAccountId } from "./helpers-CvsgDup6.js";
28
- import { t as scanDirectoryWithSummary } from "./skill-scanner-DcrwF2Fr.js";
29
- import { r as resolveNodeCommandAllowlist, t as DEFAULT_DANGEROUS_NODE_COMMANDS } from "./node-command-policy-D-hu0n3w.js";
28
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-BtrQE0gO.js";
29
+ import { r as resolveNodeCommandAllowlist, t as DEFAULT_DANGEROUS_NODE_COMMANDS } from "./node-command-policy-DfcI_g5B.js";
30
30
  import { c as normalizeTelegramAllowFromEntry, s as isNumericTelegramUserId, t as isDiscordMutableAllowEntry } from "./mutable-allowlist-detectors-CsTC5ncA.js";
31
31
  import { t as inferParamBFromIdOrName } from "./model-param-b-By9uTH-E.js";
32
32
  import path from "node:path";
33
33
  import JSON5 from "json5";
34
- import * as fs$1 from "node:fs/promises";
35
- import fs from "node:fs/promises";
34
+ import * as fs from "node:fs/promises";
35
+ import fsPromises from "node:fs/promises";
36
36
  import { randomUUID } from "node:crypto";
37
37
  import { isIP } from "node:net";
38
38
 
@@ -1342,7 +1342,7 @@ async function collectIncludePathsRecursive(params) {
1342
1342
  if (visited.has(resolved)) continue;
1343
1343
  visited.add(resolved);
1344
1344
  result.push(resolved);
1345
- const rawText = await fs$1.readFile(resolved, "utf-8").catch(() => null);
1345
+ const rawText = await fs.readFile(resolved, "utf-8").catch(() => null);
1346
1346
  if (!rawText) continue;
1347
1347
  const nestedParsed = (() => {
1348
1348
  try {
@@ -1377,7 +1377,7 @@ function expandTilde(p, env) {
1377
1377
  }
1378
1378
  async function readPluginManifestExtensions(pluginPath) {
1379
1379
  const manifestPath = path.join(pluginPath, "package.json");
1380
- const raw = await fs.readFile(manifestPath, "utf-8").catch(() => "");
1380
+ const raw = await fsPromises.readFile(manifestPath, "utf-8").catch(() => "");
1381
1381
  if (!raw.trim()) return [];
1382
1382
  const extensions = JSON.parse(raw)?.[MANIFEST_KEY]?.extensions;
1383
1383
  if (!Array.isArray(extensions)) return [];
@@ -1399,7 +1399,7 @@ async function listInstalledPluginDirs(params) {
1399
1399
  };
1400
1400
  return {
1401
1401
  extensionsDir,
1402
- pluginDirs: (await fs.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1402
+ pluginDirs: (await fsPromises.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1403
1403
  params.onReadError?.(err);
1404
1404
  return [];
1405
1405
  })).filter((entry) => entry.isDirectory()).map((entry) => entry.name).filter(Boolean)
@@ -1462,7 +1462,7 @@ function isPinnedRegistrySpec(spec) {
1462
1462
  }
1463
1463
  async function readInstalledPackageVersion(dir) {
1464
1464
  try {
1465
- const raw = await fs.readFile(path.join(dir, "package.json"), "utf-8");
1465
+ const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
1466
1466
  const parsed = JSON.parse(raw);
1467
1467
  return typeof parsed.version === "string" ? parsed.version : void 0;
1468
1468
  } catch {
@@ -1498,10 +1498,10 @@ async function listWorkspaceSkillMarkdownFiles(workspaceDir) {
1498
1498
  const visitedDirs = /* @__PURE__ */ new Set();
1499
1499
  while (queue.length > 0 && skillFiles.length < MAX_WORKSPACE_SKILL_SCAN_FILES_PER_WORKSPACE) {
1500
1500
  const dir = queue.shift();
1501
- const dirRealPath = await fs.realpath(dir).catch(() => path.resolve(dir));
1501
+ const dirRealPath = await fsPromises.realpath(dir).catch(() => path.resolve(dir));
1502
1502
  if (visitedDirs.has(dirRealPath)) continue;
1503
1503
  visitedDirs.add(dirRealPath);
1504
- const entries = await fs.readdir(dir, { withFileTypes: true }).catch(() => []);
1504
+ const entries = await fsPromises.readdir(dir, { withFileTypes: true }).catch(() => []);
1505
1505
  for (const entry of entries) {
1506
1506
  if (entry.name.startsWith(".") || entry.name === "node_modules") continue;
1507
1507
  const fullPath = path.join(dir, entry.name);
@@ -1510,7 +1510,7 @@ async function listWorkspaceSkillMarkdownFiles(workspaceDir) {
1510
1510
  continue;
1511
1511
  }
1512
1512
  if (entry.isSymbolicLink()) {
1513
- const stat = await fs.stat(fullPath).catch(() => null);
1513
+ const stat = await fsPromises.stat(fullPath).catch(() => null);
1514
1514
  if (!stat) continue;
1515
1515
  if (stat.isDirectory()) {
1516
1516
  queue.push(fullPath);
@@ -1800,13 +1800,13 @@ async function collectWorkspaceSkillSymlinkEscapeFindings(params) {
1800
1800
  const seenSkillPaths = /* @__PURE__ */ new Set();
1801
1801
  for (const workspaceDir of workspaceDirs) {
1802
1802
  const workspacePath = path.resolve(workspaceDir);
1803
- const workspaceRealPath = await fs.realpath(workspacePath).catch(() => workspacePath);
1803
+ const workspaceRealPath = await fsPromises.realpath(workspacePath).catch(() => workspacePath);
1804
1804
  const skillFilePaths = await listWorkspaceSkillMarkdownFiles(workspacePath);
1805
1805
  for (const skillFilePath of skillFilePaths) {
1806
1806
  const canonicalSkillPath = path.resolve(skillFilePath);
1807
1807
  if (seenSkillPaths.has(canonicalSkillPath)) continue;
1808
1808
  seenSkillPaths.add(canonicalSkillPath);
1809
- const skillRealPath = await fs.realpath(canonicalSkillPath).catch(() => null);
1809
+ const skillRealPath = await fsPromises.realpath(canonicalSkillPath).catch(() => null);
1810
1810
  if (!skillRealPath) continue;
1811
1811
  if (isPathInside(workspaceRealPath, skillRealPath)) continue;
1812
1812
  escapedSkillFiles.push({
@@ -1,6 +1,6 @@
1
1
  import { c as readTailscaleWhoisIdentity } from "./tailscale-OabIsy4o.js";
2
2
  import { t as safeEqualSecret } from "./secret-equal-B7oJEPub.js";
3
- import { n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, u as resolveClientIp } from "./ws-BNW54x9_.js";
3
+ import { n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, u as resolveClientIp } from "./ws-BrCPoV7j.js";
4
4
  import { n as resolveGatewayCredentialsFromValues } from "./credentials-DWbOUxWG.js";
5
5
 
6
6
  //#region src/gateway/auth-rate-limit.ts