activeclaw 2026.2.9 → 2026.2.10

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 (225) hide show
  1. package/dist/{accounts-C2elk6PC.js → accounts-xJh3pJei.js} +9 -9
  2. package/dist/{acp-cli-BHTkhOOK.js → acp-cli-BpJwIyLl.js} +4 -4
  3. package/dist/{acp-cli-BOqmKps_.js → acp-cli-D_40K9Gr.js} +15 -15
  4. package/dist/{agent-CVe9csik.js → agent-DkZpDQJb.js} +12 -12
  5. package/dist/{agent-DplJM2iA.js → agent-FTQXFOHA.js} +10 -10
  6. package/dist/{agent-scope-GWSAY_lJ.js → agent-scope-BEf5crnU.js} +1 -1
  7. package/dist/{agent-scope-bNHJh30H.js → agent-scope-CPiO6Aw7.js} +12 -12
  8. package/dist/{agent-scope-3Vx285VQ.js → agent-scope-D8miw9q_.js} +1 -1
  9. package/dist/{agent-scope-D3me2AZa.js → agent-scope-DQuy3dwI.js} +1 -1
  10. package/dist/{archive-CXhvR9nU.js → archive-BixfOVSf.js} +9 -9
  11. package/dist/{audit-VCa9vZUY.js → audit-CGlFTiEB.js} +23 -23
  12. package/dist/{audit-DZUtH-Nt.js → audit-CY-yopxa.js} +8 -8
  13. package/dist/{auth-BvIPpm7G.js → auth-D_PS9etv.js} +1 -1
  14. package/dist/{auth-health-CToniips.js → auth-health-BGd7tGq0.js} +1 -1
  15. package/dist/{auth-health-Cx5exPMV.js → auth-health-d7BMZlWG.js} +1 -1
  16. package/dist/{auth-profiles-FJ3VY25a.js → auth-profiles-Bv1AEm-Y.js} +1 -1
  17. package/dist/build-info.json +3 -3
  18. package/dist/bundled/boot-md/handler.js +10 -10
  19. package/dist/bundled/session-memory/handler.js +10 -10
  20. package/dist/{call-BLDHRggD.js → call-7yrB6v4I.js} +1 -1
  21. package/dist/{call-LDoK5_Jv.js → call-Ccyb4kQR.js} +11 -11
  22. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  23. package/dist/{channel-options-_MKOfqan.js → channel-options-DwA7SVbf.js} +7 -7
  24. package/dist/{channel-options-ByiQNOTJ.js → channel-options-DwTe763m.js} +3 -3
  25. package/dist/{channel-selection-DqqM1jFv.js → channel-selection-La1tQIxQ.js} +2 -2
  26. package/dist/{channel-selection-DAHCVAX4.js → channel-selection-RZimme3j.js} +1 -1
  27. package/dist/{channels-cli-Cc7g9t97.js → channels-cli-CsLF44Xf.js} +26 -26
  28. package/dist/{channels-cli-dHm4C9tg.js → channels-cli-ENsD3dK4.js} +48 -48
  29. package/dist/{channels-status-issues-CIvi5Dko.js → channels-status-issues-B3KkflfR.js} +1 -1
  30. package/dist/{channels-status-issues-DFhI_u0p.js → channels-status-issues-DmIFbKRs.js} +1 -1
  31. package/dist/{chrome-CF16STk9.js → chrome-BN9o1yns.js} +7 -7
  32. package/dist/{chrome-UrBfjc6F.js → chrome-Db7w64LF.js} +7 -7
  33. package/dist/{chrome-Dm-EgOjJ.js → chrome-XHJ9uNgs.js} +5 -5
  34. package/dist/{clack-prompter-BCiBkJVr.js → clack-prompter-IfLZ3uDJ.js} +4 -4
  35. package/dist/cli/daemon-cli.js +1 -1
  36. package/dist/{cli-BXVQxcpm.js → cli-CBL6jLH_.js} +21 -21
  37. package/dist/{cli-ChBVn7aR.js → cli-Dxi8xMCj.js} +36 -36
  38. package/dist/{client-6xKrRC-1.js → client-Cam-Cwyu.js} +2 -2
  39. package/dist/{command-options-Zeat4Qbm.js → command-options-_12DJE1t.js} +3 -3
  40. package/dist/{commands-BFfaY2r9.js → commands-CjEGXOZ_.js} +3 -3
  41. package/dist/{completion-cli-BYQOTb3_.js → completion-cli-DZlpcsto.js} +40 -40
  42. package/dist/{completion-cli-DyCmQ6EC.js → completion-cli-DeeDoOCJ.js} +1 -1
  43. package/dist/{config-DuOV0jZh.js → config-B00lvFac.js} +2 -2
  44. package/dist/{config-C6Od01-b.js → config-BqGVMf1y.js} +2 -2
  45. package/dist/{config-5nrp_Vu5.js → config-DiNnQcwe.js} +10 -10
  46. package/dist/{config-DssMzgXt.js → config-XBdA0ciN.js} +2 -2
  47. package/dist/{config-guard-DJuKG5j3.js → config-guard-CmgZJTGV.js} +21 -21
  48. package/dist/{configure-BsYuK_Kc.js → configure-89VjxHbW.js} +18 -18
  49. package/dist/{configure-DAraHgDw.js → configure-DB_qIT8D.js} +8 -8
  50. package/dist/{control-service-BNpv08hT.js → control-service-CAXvnE0u.js} +5 -5
  51. package/dist/{control-service-BL9NP7JP.js → control-service-IRAmbcbN.js} +1 -1
  52. package/dist/{cron-cli-E_r-cKMN.js → cron-cli-DKp-JxRS.js} +16 -16
  53. package/dist/{cron-cli-CyYUj-LH.js → cron-cli-DhUWcYdk.js} +6 -6
  54. package/dist/{daemon-cli-DZDIZ0M-.js → daemon-cli-Ctp4o7qg.js} +16 -16
  55. package/dist/{daemon-cli-MGPsiBcm.js → daemon-cli-DfLos4-7.js} +7 -7
  56. package/dist/{daemon-runtime-DJzKTLqv.js → daemon-runtime-CVte5WIX.js} +11 -11
  57. package/dist/{daemon-runtime-CxQ1vIcj.js → daemon-runtime-c0uXH4Dl.js} +1 -1
  58. package/dist/{deliver-DD8Syx3t.js → deliver-B-MU3Szq.js} +10 -10
  59. package/dist/{deliver-ClNVlrrz.js → deliver-BXVnDeja.js} +3 -3
  60. package/dist/{deliver-DRy_Piku.js → deliver-CT6KiDqO.js} +2 -2
  61. package/dist/{deliver-CUzkySCA.js → deliver-hf-WKyWd.js} +5 -5
  62. package/dist/{deps-CMw5TIE3.js → deps-BoJcAXaY.js} +2 -2
  63. package/dist/{deps-C0FUEdGv.js → deps-CaDXl7AZ.js} +2 -2
  64. package/dist/{devices-cli-B343ESvy.js → devices-cli-Cm7U1py9.js} +4 -4
  65. package/dist/{devices-cli-Dlpp2Bpf.js → devices-cli-DQJuKnqz.js} +13 -13
  66. package/dist/{directory-cli-DgdU5RWy.js → directory-cli-67kzd4I5.js} +5 -5
  67. package/dist/{directory-cli-DStVmSxy.js → directory-cli-BqVg6pQq.js} +14 -14
  68. package/dist/{dispatcher-BMY38O6j.js → dispatcher-Rf7W2dBd.js} +4 -4
  69. package/dist/{dns-cli-C1-d9JM_.js → dns-cli-BXAWgd6S.js} +11 -11
  70. package/dist/{dns-cli-edebp5SN.js → dns-cli-Dqj7O6Q_.js} +3 -3
  71. package/dist/{docs-cli-BxHh0OdP.js → docs-cli-CamBqzb5.js} +1 -1
  72. package/dist/{docs-cli-krgDVS3d.js → docs-cli-NONeCqqB.js} +6 -6
  73. package/dist/{doctor-B5xT9CV4.js → doctor-BkGTzeZj.js} +43 -43
  74. package/dist/{doctor-DuML_miY.js → doctor-Bytc7n21.js} +18 -18
  75. package/dist/entry.js +1 -1
  76. package/dist/{env-BxRc6wWv.js → env-DqiOM57_.js} +1 -1
  77. package/dist/{exec-Cv_Ofd1m.js → exec-BSMwiIMp.js} +1 -1
  78. package/dist/{exec-approvals-cli-QKMXtfNU.js → exec-approvals-cli-Bn-YY4Vi.js} +23 -23
  79. package/dist/{exec-approvals-cli-CmXG5_Q5.js → exec-approvals-cli-DhXj3hQX.js} +6 -6
  80. package/dist/extensionAPI.js +22 -22
  81. package/dist/{gateway-cli-V_dvW_hJ.js → gateway-cli-DRJQ8rTD.js} +135 -135
  82. package/dist/{gateway-cli-BpaPqRTM.js → gateway-cli-KkK4A0D8.js} +44 -44
  83. package/dist/{gateway-rpc-BHAE9xXJ.js → gateway-rpc-3B5y445n.js} +1 -1
  84. package/dist/{gateway-rpc-B4Wurkir.js → gateway-rpc-sLO5Psk7.js} +3 -3
  85. package/dist/{github-copilot-auth-CmgVG7Gb.js → github-copilot-auth-BJOEuPdX.js} +8 -8
  86. package/dist/{github-copilot-auth-BenHcDDG.js → github-copilot-auth-BtMu5l0m.js} +5 -5
  87. package/dist/{gmail-setup-utils-DSktB6l0.js → gmail-setup-utils-CHcssBOA.js} +1 -1
  88. package/dist/{gmail-setup-utils-TwmZ8mMs.js → gmail-setup-utils-CTDfMXTW.js} +3 -3
  89. package/dist/{health-format-DFhzeh1b.js → health-format-D6ogrdc9.js} +8 -8
  90. package/dist/{health-format-D151p64n.js → health-format-I_hcV0x3.js} +14 -14
  91. package/dist/{help-format-DAj7l5uV.js → help-format-rtF4QeRM.js} +1 -1
  92. package/dist/{hooks-cli-mEq9e_de.js → hooks-cli-BbeYZaya.js} +23 -23
  93. package/dist/{hooks-cli-CUjjzKcp.js → hooks-cli-rwazn-4_.js} +61 -61
  94. package/dist/{hooks-status-U2JQ8wza.js → hooks-status-B3y3_Ypf.js} +5 -5
  95. package/dist/{hooks-status-BrIvQK2p.js → hooks-status-Br-2bK2G.js} +1 -1
  96. package/dist/{image-BGhlwUcs.js → image-BVLNmAgW.js} +3 -3
  97. package/dist/{image-BByTK3t0.js → image-Ds4NLGPR.js} +3 -3
  98. package/dist/{image-k4cY_IKa.js → image-DxmrpIUn.js} +10 -10
  99. package/dist/{image-CHRalJF2.js → image-rOFfK3PJ.js} +3 -3
  100. package/dist/index.js +88 -88
  101. package/dist/{installs-CRSjQxbR.js → installs-C9WW834H.js} +21 -21
  102. package/dist/{links-C591fM9M.js → links-D6CUlrWZ.js} +1 -1
  103. package/dist/llm-slug-generator.js +10 -10
  104. package/dist/{loader-BTR4VGE9.js → loader-CZRfriRQ.js} +29 -29
  105. package/dist/{logging-MMRGFxGI.js → logging-BhXRnaAc.js} +1 -1
  106. package/dist/{login-qr-CYGosTZf.js → login-qr-CGEu5TU-.js} +1 -1
  107. package/dist/{login-qr-DxwM3Wcw.js → login-qr-CPEsT6dN.js} +1 -1
  108. package/dist/{login-qr-C2zCFC0_.js → login-qr-DH150tTp.js} +1 -1
  109. package/dist/{login-qr-CQLEtsFG.js → login-qr-DXiuhBc8.js} +5 -5
  110. package/dist/{logs-cli-D065Q9Ej.js → logs-cli-ClgkHnfT.js} +5 -5
  111. package/dist/{logs-cli-BJm2UpZ1.js → logs-cli-CoWZ_Lzs.js} +14 -14
  112. package/dist/{manager-CMTN4ZRM.js → manager-CcVYv0N5.js} +2 -2
  113. package/dist/{manager-C6GZI3No.js → manager-D6EbxDV4.js} +4 -4
  114. package/dist/{manager-BHbv6kNQ.js → manager-DOqexxfO.js} +15 -15
  115. package/dist/{manager-DM_QdSUV.js → manager-DYo4PlVM.js} +2 -2
  116. package/dist/{manifest-registry-3It8Z8yN.js → manifest-registry-C0ApY9d8.js} +1 -1
  117. package/dist/{message-channel-Cu61-7H6.js → message-channel-DIvXZ2w4.js} +1 -1
  118. package/dist/{model-auth-SZQ9GSFA.js → model-auth-ioeR_zLX.js} +1 -1
  119. package/dist/{model-selection-DSXkS3Uu.js → model-selection-CezC36lH.js} +1 -1
  120. package/dist/{model-selection-NPMD6wNp.js → model-selection-lT7g9ysC.js} +4 -4
  121. package/dist/{models-cli-BtWKT0MB.js → models-cli-C0_ekrlc.js} +45 -45
  122. package/dist/{models-cli-DcuyUIwv.js → models-cli-CwqJkYET.js} +23 -23
  123. package/dist/{node-cli-CO2WOpKq.js → node-cli-BxBGSuPE.js} +7 -7
  124. package/dist/{node-cli-CTm9wM4m.js → node-cli-SEsdX8-y.js} +29 -29
  125. package/dist/{node-service-CM5vkdIo.js → node-service-OjXvN5Ee.js} +1 -1
  126. package/dist/{nodes-cli-CCcFmR_s.js → nodes-cli-By6yeCTB.js} +5 -5
  127. package/dist/{nodes-cli-C8Lamzfr.js → nodes-cli-jihJL52P.js} +18 -18
  128. package/dist/{nodes-screen-lykd2cny.js → nodes-screen-A8K8mlHX.js} +2 -2
  129. package/dist/{note-5WqioBRA.js → note-B5QlVszL.js} +2 -2
  130. package/dist/{onboard-channels-B_k5nbDK.js → onboard-channels-DNlBXz4a.js} +7 -7
  131. package/dist/{onboard-channels-B_nZbDqG.js → onboard-channels-DYUwMESI.js} +4 -4
  132. package/dist/{onboard-skills-BeyUY0aV.js → onboard-skills-Djn43Fx2.js} +12 -12
  133. package/dist/{onboard-skills-BXZ4QIB4.js → onboard-skills-DwIf2ayU.js} +8 -8
  134. package/dist/{onboarding-C0eU8uVL.js → onboarding-DzjDuLJ0.js} +37 -37
  135. package/dist/{openclaw-root-9ILYSmJ9.js → openclaw-root-CBSq79BF.js} +5 -5
  136. package/dist/{openclaw-root-93W6UrUK.js → openclaw-root-Dw6gumSU.js} +3 -3
  137. package/dist/{pairing-cli-j81iKxmQ.js → pairing-cli-CRQDpj8f.js} +6 -6
  138. package/dist/{pairing-cli-CV3Fi8Ul.js → pairing-cli-XrcX3iD7.js} +14 -14
  139. package/dist/{pairing-labels-C1gYNpBx.js → pairing-labels-CWFEtSc3.js} +1 -1
  140. package/dist/{pairing-labels-CHxlh3tT.js → pairing-labels-K_6MMQA_.js} +1 -1
  141. package/dist/{pairing-store-C5bI2uOn.js → pairing-store-C6EhvkMA.js} +2 -2
  142. package/dist/{pairing-store-CO6umWFP.js → pairing-store-CgXR3ZWJ.js} +1 -1
  143. package/dist/{path-env-BgLvMbz_.js → path-env-CvL55Ntz.js} +1 -1
  144. package/dist/{paths-BIFtPbjx.js → paths-DL6EIRTw.js} +1 -1
  145. package/dist/{pi-embedded-CLZcbynY.js → pi-embedded-BtNK8X-L.js} +20 -20
  146. package/dist/{pi-embedded-helpers-DswdoKvB.js → pi-embedded-helpers-BbWRSUnc.js} +7 -7
  147. package/dist/{pi-embedded-helpers-aRE0ahwI.js → pi-embedded-helpers-Bkpd4fTr.js} +2 -2
  148. package/dist/{pi-embedded-helpers-C-Q-0H33.js → pi-embedded-helpers-Dx2dOx7N.js} +8 -8
  149. package/dist/{pi-embedded-helpers-DDVMJlkH.js → pi-embedded-helpers-WA1Uq3tV.js} +7 -7
  150. package/dist/{pi-tools.policy-B5XNSHCf.js → pi-tools.policy-CCQVTuZw.js} +4 -4
  151. package/dist/{plugin-auto-enable-DOx-bCgl.js → plugin-auto-enable-BvBr0yMV.js} +5 -5
  152. package/dist/{plugin-auto-enable-DwytyoHT.js → plugin-auto-enable-lZwe2yX5.js} +1 -1
  153. package/dist/{plugins-CXDOnert.js → plugins-5W5E71Ut.js} +4 -4
  154. package/dist/{plugins-B7F0Ly9G.js → plugins-Db5BiELK.js} +1 -1
  155. package/dist/{plugins-cli-CjittBBs.js → plugins-cli-l1TkWMZx.js} +42 -42
  156. package/dist/{plugins-cli-trxh13-k.js → plugins-cli-mSMFtuzL.js} +22 -22
  157. package/dist/{program-c0kZz_nN.js → program-CaHfkQ0p.js} +46 -46
  158. package/dist/{progress-DIQJt9Va.js → progress-COZ_ycun.js} +1 -1
  159. package/dist/{prompt-style-CjQRlDx4.js → prompt-style-CghhrkxS.js} +1 -1
  160. package/dist/{pw-ai-COWYvUfG.js → pw-ai-BtArcIEo.js} +7 -7
  161. package/dist/{pw-ai-C9e4lsYZ.js → pw-ai-BxJ-KCIy.js} +1 -1
  162. package/dist/{pw-ai-CsvaObGM.js → pw-ai-DMeydD_d.js} +1 -1
  163. package/dist/{qmd-manager-CAXjRwd6.js → qmd-manager-2PsT4eTr.js} +19 -19
  164. package/dist/{qmd-manager-BQh8e-46.js → qmd-manager-BzY2LQTT.js} +3 -3
  165. package/dist/{qmd-manager-BM-1x46_.js → qmd-manager-C9YWFeG6.js} +1 -1
  166. package/dist/{qmd-manager-Bs18wYIN.js → qmd-manager-CpsjQyaZ.js} +1 -1
  167. package/dist/{register.subclis-CFcnR7W8.js → register.subclis-C0SIOLju.js} +28 -28
  168. package/dist/{reply-BUHI5pXf.js → reply-swCg9iXH.js} +127 -127
  169. package/dist/{routes-CSlSTRsY.js → routes-B4QQiFju.js} +1 -1
  170. package/dist/{routes-CserrUab.js → routes-BqZyywjQ.js} +19 -19
  171. package/dist/{rpc-Bag0Uule.js → rpc-Blt6MJ4F.js} +1 -1
  172. package/dist/{rpc-C3XyDrXa.js → rpc-D_Pp8HB_.js} +3 -3
  173. package/dist/{run-main-DN34y3WG.js → run-main-D9PO9-U8.js} +49 -49
  174. package/dist/{sandbox-CTZxQzEn.js → sandbox-Aks-9EcZ.js} +5 -5
  175. package/dist/{sandbox-CGlEY-RT.js → sandbox-DxAKZfZd.js} +26 -26
  176. package/dist/{sandbox-cli-BzGe2cWN.js → sandbox-cli-149xhJPJ.js} +18 -18
  177. package/dist/{sandbox-cli-Cb18XBXE.js → sandbox-cli-C99Thxi8.js} +7 -7
  178. package/dist/{security-cli-BUg11RRK.js → security-cli-BclMtAZ6.js} +33 -33
  179. package/dist/{security-cli-CXyvz9Fo.js → security-cli-iqYLMOz3.js} +11 -11
  180. package/dist/{server-context-8Qt35QdF.js → server-context-DT3SRl5J.js} +5 -5
  181. package/dist/{server-node-events-BNw4w95N.js → server-node-events-BbWvPZe5.js} +23 -23
  182. package/dist/{server-node-events-D5itxoZj.js → server-node-events-CUQHYPok.js} +39 -39
  183. package/dist/{service-Cd4BxKuo.js → service-DPsnpYzk.js} +16 -16
  184. package/dist/{service-audit-BRMQq36C.js → service-audit-DWlZlYl6.js} +13 -13
  185. package/dist/{service-audit-BpQrn5Ks.js → service-audit-x6jCN-6a.js} +1 -1
  186. package/dist/{shared-ILguacOr.js → shared-DQO8Xdjp.js} +2 -2
  187. package/dist/{shared-gOyV38rM.js → shared-DvAp_MsR.js} +2 -2
  188. package/dist/{skill-scanner-DrVEHfC6.js → skill-scanner-zYmZ2Coy.js} +5 -5
  189. package/dist/{skills-C_rNI0Jc.js → skills-D5UZZZSY.js} +1 -1
  190. package/dist/{skills-cli-DHghbc62.js → skills-cli-3PxJU4R0.js} +12 -12
  191. package/dist/{skills-cli-vaRLo4cS.js → skills-cli-ggyLBtAY.js} +5 -5
  192. package/dist/{skills-Bau1zXIA.js → skills-pqbmJf1e.js} +6 -6
  193. package/dist/{skills-status-CJMt5NLm.js → skills-status-DjtPPMnY.js} +1 -1
  194. package/dist/{skills-status-BkAjWh29.js → skills-status-d-tVLIaC.js} +3 -3
  195. package/dist/{sqlite-Btrgi7-j.js → sqlite-CDfAET9Y.js} +12 -12
  196. package/dist/{sqlite-BSGTqtyx.js → sqlite-HepBVDoX.js} +1 -1
  197. package/dist/{status-DZ9rJ3dY.js → status-BoK_Exgh.js} +20 -20
  198. package/dist/{status-BjRAcHpu.js → status-DADQEBbg.js} +3 -3
  199. package/dist/{status-BiwDwls4.js → status-DJYrqIJa.js} +4 -4
  200. package/dist/{subsystem-Bh1Y_6Uv.js → subsystem-BbfPHMjH.js} +2 -2
  201. package/dist/{system-cli-CdXY44WQ.js → system-cli-Clqsx8U5.js} +5 -5
  202. package/dist/{system-cli-DVES5fvn.js → system-cli-JNECg6i0.js} +14 -14
  203. package/dist/{systemd-D6wTPnHi.js → systemd-Dd6y2wnN.js} +7 -7
  204. package/dist/{systemd-linger-BxjTrgoH.js → systemd-linger-CblmG_UI.js} +2 -2
  205. package/dist/{table-DEnmtvl5.js → table-DTm1PXe-.js} +2 -2
  206. package/dist/{tailscale-Cu-2HNvU.js → tailscale-WFi900xf.js} +2 -2
  207. package/dist/{tool-display-DskiU8Kt.js → tool-display-DwOJbBjC.js} +1 -1
  208. package/dist/{tui-Dvvu-l5k.js → tui-BdJWZdto.js} +5 -5
  209. package/dist/{tui-_kotMBV7.js → tui-CJPKiYWz.js} +9 -9
  210. package/dist/{tui-cli-Cr_Ne_S0.js → tui-cli-D3n-O9zB.js} +11 -11
  211. package/dist/{tui-cli-BenxYvT_.js → tui-cli-DuNJ1OqY.js} +23 -23
  212. package/dist/{tui-formatters-B4pCnF0N.js → tui-formatters-C-dAVvRi.js} +4 -4
  213. package/dist/{tui-formatters-BxM6uwtn.js → tui-formatters-C3NarH24.js} +3 -3
  214. package/dist/{update-JB16aPIY.js → update-DymgbepH.js} +5 -5
  215. package/dist/{update-cli-C-TWZbOn.js → update-cli-AcMtIZbG.js} +69 -69
  216. package/dist/{update-cli-BHKdzY2U.js → update-cli-B-3XbteQ.js} +36 -36
  217. package/dist/{update-runner-7YSPb3A4.js → update-runner-B7twibOm.js} +8 -8
  218. package/dist/{update-runner-D0k9HftN.js → update-runner-BiHI3sto.js} +29 -29
  219. package/dist/{utils-es4ygvQ-.js → utils-l-o5S4c-.js} +1 -1
  220. package/dist/{webhooks-cli-BvkUb4ZO.js → webhooks-cli-CVIE9TtX.js} +5 -5
  221. package/dist/{webhooks-cli-CZKnZxrS.js → webhooks-cli-DjdfcB16.js} +11 -11
  222. package/dist/{widearea-dns-2ah0bkAj.js → widearea-dns-mquEd9kr.js} +1 -1
  223. package/dist/{ws-log-D7MkvKhg.js → ws-log-B2H596h5.js} +1 -1
  224. package/dist/{wsl-uqfIGnkl.js → wsl-Cwo7X0Un.js} +1 -1
  225. package/package.json +1 -1
@@ -1,60 +1,60 @@
1
1
  import { g as resolveStateDir, r as STATE_DIR, t as CONFIG_PATH, y as resolveRequiredHomeDir } from "./paths-DVBShlw6.js";
2
- import { A as logVerbose, D as info, E as danger, F as warn, I as colorize, L as isRich, M as setVerbose, N as shouldLogVerbose, P as success, R as theme, T as setActivePluginRegistry, U as normalizeLogLevel, b as normalizeAnyChannelId, c as defaultRuntime, m as CHAT_CHANNEL_ORDER, t as createSubsystemLogger, w as requireActivePluginRegistry, x as normalizeChannelId, z as getChildLogger } from "./subsystem-Bh1Y_6Uv.js";
3
- import { C as shortenHomePath, D as truncateUtf16Safe, E as toWhatsappJid, S as shortenHomeInString, T as sliceUtf16Safe, b as resolveUserPath, d as isPlainObject, f as isRecord, h as normalizeE164, i as clampInt, l as escapeRegExp, m as jidToE164, p as isSelfChatMode, r as clamp, t as CONFIG_DIR, w as sleep, y as resolveJidToE164 } from "./utils-es4ygvQ-.js";
4
- import { A as parseImageSizeError, B as normalizeElevatedLevel, C as isFailoverAssistantError, D as isRawApiErrorPayload, E as isRateLimitAssistantError, F as sanitizeGoogleTurnOrdering, G as resolveResponseUsageMode, H as normalizeThinkLevel, I as formatThinkingLevels, K as supportsXHighThinking, L as formatXHighModelHint, M as buildBootstrapContextFiles, N as ensureSessionHeader, O as isTimeoutErrorMessage, P as resolveBootstrapMaxChars, S as isContextOverflowError, T as isLikelyContextOverflowError, U as normalizeUsageDisplay, V as normalizeReasoningLevel, W as normalizeVerboseLevel, _ as getApiErrorPayloadFingerprint, a as isMessagingToolDuplicateNormalized, b as isCloudCodeAssistFormatError, c as sanitizeImageBlocks, d as isAntigravityClaude, f as isGoogleModelApi, g as formatRawAssistantErrorForUi, h as formatAssistantErrorText, j as sanitizeUserFacingText, k as parseImageDimensionError, l as sanitizeToolResultImages, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as isAuthAssistantError, w as isFailoverErrorMessage, x as isCompactionFailureError, y as isBillingAssistantError } from "./pi-embedded-helpers-DDVMJlkH.js";
2
+ import { A as logVerbose, D as info, E as danger, F as warn, I as colorize, L as isRich, M as setVerbose, N as shouldLogVerbose, P as success, R as theme, T as setActivePluginRegistry, U as normalizeLogLevel, b as normalizeAnyChannelId, c as defaultRuntime, m as CHAT_CHANNEL_ORDER, t as createSubsystemLogger, w as requireActivePluginRegistry, x as normalizeChannelId, z as getChildLogger } from "./subsystem-BbfPHMjH.js";
3
+ import { C as shortenHomePath, D as truncateUtf16Safe, E as toWhatsappJid, S as shortenHomeInString, T as sliceUtf16Safe, b as resolveUserPath, d as isPlainObject, f as isRecord, h as normalizeE164, i as clampInt, l as escapeRegExp, m as jidToE164, p as isSelfChatMode, r as clamp, t as CONFIG_DIR, w as sleep, y as resolveJidToE164 } from "./utils-l-o5S4c-.js";
4
+ import { A as parseImageSizeError, B as normalizeElevatedLevel, C as isFailoverAssistantError, D as isRawApiErrorPayload, E as isRateLimitAssistantError, F as sanitizeGoogleTurnOrdering, G as resolveResponseUsageMode, H as normalizeThinkLevel, I as formatThinkingLevels, K as supportsXHighThinking, L as formatXHighModelHint, M as buildBootstrapContextFiles, N as ensureSessionHeader, O as isTimeoutErrorMessage, P as resolveBootstrapMaxChars, S as isContextOverflowError, T as isLikelyContextOverflowError, U as normalizeUsageDisplay, V as normalizeReasoningLevel, W as normalizeVerboseLevel, _ as getApiErrorPayloadFingerprint, a as isMessagingToolDuplicateNormalized, b as isCloudCodeAssistFormatError, c as sanitizeImageBlocks, d as isAntigravityClaude, f as isGoogleModelApi, g as formatRawAssistantErrorForUi, h as formatAssistantErrorText, j as sanitizeUserFacingText, k as parseImageDimensionError, l as sanitizeToolResultImages, m as classifyFailoverReason, n as validateGeminiTurns, o as normalizeTextForComparison, p as BILLING_ERROR_USER_MESSAGE, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as downgradeOpenAIReasoningBlocks, v as isAuthAssistantError, w as isFailoverErrorMessage, x as isCompactionFailureError, y as isBillingAssistantError } from "./pi-embedded-helpers-WA1Uq3tV.js";
5
5
  import { _ as isCronRunSessionKey, a as buildAgentPeerSessionKey, b as resolveThreadParentSessionKey, c as normalizeAccountId$3, d as resolveAgentIdFromSessionKey, f as resolveThreadSessionKeys, g as isAcpSessionKey, i as buildAgentMainSessionKey, l as normalizeAgentId, n as DEFAULT_AGENT_ID, o as buildGroupHistoryKey, p as sanitizeAgentId, r as DEFAULT_MAIN_KEY, s as classifySessionKeyShape, t as DEFAULT_ACCOUNT_ID$1, u as normalizeMainKey, v as isSubagentSessionKey, y as parseAgentSessionKey } from "./session-key-BWxPj0z_.js";
6
- import { a as logDebug, c as logWarn, i as spawnWithFallback, n as runExec, o as logError, r as formatSpawnError, s as logInfo, t as runCommandWithTimeout } from "./exec-Cv_Ofd1m.js";
7
- import { t as resolveOpenClawPackageRoot } from "./openclaw-root-93W6UrUK.js";
8
- import { C as loadWorkspaceBootstrapFiles, S as filterBootstrapFilesForSession, c as resolveDefaultAgentId, f as DEFAULT_AGENT_WORKSPACE_DIR, i as resolveAgentModelFallbacksOverride, l as resolveSessionAgentId, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_BOOTSTRAP_FILENAME, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentIds, x as ensureAgentWorkspace } from "./agent-scope-bNHJh30H.js";
9
- import { B as resolveApiKeyForProvider, Ct as resolveAuthProfileDisplayLabel, Dt as DEFAULT_MODEL, Et as DEFAULT_CONTEXT_TOKENS, G as getShellPathFromLoginShell, H as resolveEnvApiKey, L as getApiKeyForModel, Ot as DEFAULT_PROVIDER, R as getCustomProviderApiKey, St as normalizeSecretInput, U as resolveModelAuthMode, a as isCliProvider, at as resolveApiKeyForProfile, bt as resolveOpenClawAgentDir, d as resolveConfiguredModelRef, dt as listProfilesForProvider, et as resolveAuthProfileOrder, f as resolveDefaultModelForAgent, ft as markAuthProfileGood, h as resolveThinkingDefault, ht as ensureAuthProfileStore, m as resolveModelRefFromString, n as buildConfiguredAllowlistKeys, nt as markAuthProfileFailure, o as modelKey, q as resolveShellEnvFallbackTimeoutMs, r as buildModelAliasIndex, rt as markAuthProfileUsed, s as normalizeProviderId, t as buildAllowedModelSet, tt as isProfileInCooldown, x as normalizeGoogleModelId, yt as resolveAuthStorePathForDisplay, z as requireApiKey } from "./model-selection-NPMD6wNp.js";
6
+ import { a as logDebug, c as logWarn, i as spawnWithFallback, n as runExec, o as logError, r as formatSpawnError, s as logInfo, t as runCommandWithTimeout } from "./exec-BSMwiIMp.js";
7
+ import { t as resolveOpenClawPackageRoot } from "./openclaw-root-CBSq79BF.js";
8
+ import { C as loadWorkspaceBootstrapFiles, S as filterBootstrapFilesForSession, c as resolveDefaultAgentId, f as DEFAULT_AGENT_WORKSPACE_DIR, i as resolveAgentModelFallbacksOverride, l as resolveSessionAgentId, n as resolveAgentConfig, o as resolveAgentSkillsFilter, p as DEFAULT_BOOTSTRAP_FILENAME, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, u as resolveSessionAgentIds, x as ensureAgentWorkspace } from "./agent-scope-CPiO6Aw7.js";
9
+ import { B as resolveApiKeyForProvider, Ct as resolveAuthProfileDisplayLabel, Dt as DEFAULT_MODEL, Et as DEFAULT_CONTEXT_TOKENS, G as getShellPathFromLoginShell, H as resolveEnvApiKey, L as getApiKeyForModel, Ot as DEFAULT_PROVIDER, R as getCustomProviderApiKey, St as normalizeSecretInput, U as resolveModelAuthMode, a as isCliProvider, at as resolveApiKeyForProfile, bt as resolveOpenClawAgentDir, d as resolveConfiguredModelRef, dt as listProfilesForProvider, et as resolveAuthProfileOrder, f as resolveDefaultModelForAgent, ft as markAuthProfileGood, h as resolveThinkingDefault, ht as ensureAuthProfileStore, m as resolveModelRefFromString, n as buildConfiguredAllowlistKeys, nt as markAuthProfileFailure, o as modelKey, q as resolveShellEnvFallbackTimeoutMs, r as buildModelAliasIndex, rt as markAuthProfileUsed, s as normalizeProviderId, t as buildAllowedModelSet, tt as isProfileInCooldown, x as normalizeGoogleModelId, yt as resolveAuthStorePathForDisplay, z as requireApiKey } from "./model-selection-lT7g9ysC.js";
10
10
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-BW-SEg7E.js";
11
11
  import { t as formatCliCommand } from "./command-format-ChfKqObn.js";
12
12
  import { t as parseBooleanValue$1 } from "./boolean-BgXe2hyu.js";
13
- import { t as isTruthyEnvValue } from "./env-BxRc6wWv.js";
14
- import { A as resolveAgentMaxConcurrent, C as parseConfigPath, M as VERSION, S as getConfigValueAtPath, T as unsetConfigValueAtPath, _ as validateJsonSchemaValue, b as setConfigOverride, c as writeConfigFile, f as TELEGRAM_COMMAND_NAME_PATTERN, g as parseDurationMs, h as isSafeExecutableValue, i as loadConfig, l as validateConfigObjectWithPlugins, m as resolveTelegramCustomCommands, o as readConfigFileSnapshot, p as normalizeTelegramCommandName, s as resolveConfigSnapshotHash, v as getConfigOverrides, w as setConfigValueAtPath, x as unsetConfigOverride, y as resetConfigOverrides } from "./config-5nrp_Vu5.js";
15
- import { c as normalizePluginsConfig, l as resolveEnableState, n as discoverOpenClawPlugins, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-3It8Z8yN.js";
16
- import { _ as listEnabledDiscordAccounts, a as normalizeWhatsAppTarget, b as normalizeChatType, c as resolveTelegramAccount, d as listBindings, g as resolveSlackBotToken, h as resolveSlackAppToken, i as isWhatsAppGroupJid, l as resolveTelegramToken, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$1, s as listTelegramAccountIds, t as getChannelPlugin, v as resolveDiscordAccount, y as normalizeDiscordToken } from "./plugins-CXDOnert.js";
17
- import { A as resolveSessionResetPolicy, C as normalizeDeliveryContext, D as resolveSessionKey$1, G as resolveIMessageAccount, H as listChannelDocks, K as resolveChannelGroupPolicy, L as resolveMainSessionKey, M as resolveThreadFlag, N as DEFAULT_RESET_TRIGGERS, O as evaluateSessionFreshness, P as canonicalizeMainSessionAlias, S as mergeDeliveryContext, U as listEnabledSignalAccounts, V as getChannelDock, W as resolveSignalAccount, X as resolveGroupSessionKey, Y as buildGroupDisplayName, Z as resolveSandboxConfigForAgent, _ as updateSessionStoreEntry, a as ensureSandboxWorkspaceForSession, at as normalizeToolName, b as deliveryContextFromSession, c as resolveSandboxRuntimeStatus, d as loadSessionStore, dt as resolveConversationLabel, et as applyOwnerOnlyToolPolicy, f as readSessionUpdatedAt, g as updateSessionStore, h as updateLastRoute, j as resolveSessionResetType, k as resolveChannelResetConfig, l as appendAssistantMessageToSessionTranscript, nt as collectExplicitAllowlist, o as resolveSandboxContext, ot as resolveToolProfilePolicy, p as recordSessionMetaFromInbound, q as resolveChannelGroupRequireMention, rt as expandPolicyWithPluginGroups, st as stripPluginOnlyAllowlist, tt as buildPluginToolGroups, v as isCacheEnabled, w as normalizeSessionDeliveryFields, x as deliveryContextKey, y as resolveCacheTtlMs$1, z as deriveSessionMetaPatch } from "./sandbox-CGlEY-RT.js";
18
- import { _ as stripReasoningTagsFromText, a as decodeDataUrl, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as stripDowngradedToolCallText, o as resolveProviderVisionModelFromConfig, p as promoteThinkingTagsToBlocks, r as coerceImageAssistantText, s as extractAssistantText$1, t as describeImageWithModel, u as extractThinkingFromTaggedText, v as ensureOpenClawModelsJson, y as minimaxUnderstandImage } from "./image-k4cY_IKa.js";
13
+ import { t as isTruthyEnvValue } from "./env-DqiOM57_.js";
14
+ import { A as resolveAgentMaxConcurrent, C as parseConfigPath, M as VERSION, S as getConfigValueAtPath, T as unsetConfigValueAtPath, _ as validateJsonSchemaValue, b as setConfigOverride, c as writeConfigFile, f as TELEGRAM_COMMAND_NAME_PATTERN, g as parseDurationMs, h as isSafeExecutableValue, i as loadConfig, l as validateConfigObjectWithPlugins, m as resolveTelegramCustomCommands, o as readConfigFileSnapshot, p as normalizeTelegramCommandName, s as resolveConfigSnapshotHash, v as getConfigOverrides, w as setConfigValueAtPath, x as unsetConfigOverride, y as resetConfigOverrides } from "./config-DiNnQcwe.js";
15
+ import { c as normalizePluginsConfig, l as resolveEnableState, n as discoverOpenClawPlugins, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-C0ApY9d8.js";
16
+ import { _ as listEnabledDiscordAccounts, a as normalizeWhatsAppTarget, b as normalizeChatType, c as resolveTelegramAccount, d as listBindings, g as resolveSlackBotToken, h as resolveSlackAppToken, i as isWhatsAppGroupJid, l as resolveTelegramToken, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$1, s as listTelegramAccountIds, t as getChannelPlugin, v as resolveDiscordAccount, y as normalizeDiscordToken } from "./plugins-5W5E71Ut.js";
17
+ import { A as resolveSessionResetPolicy, C as normalizeDeliveryContext, D as resolveSessionKey$1, G as resolveIMessageAccount, H as listChannelDocks, K as resolveChannelGroupPolicy, L as resolveMainSessionKey, M as resolveThreadFlag, N as DEFAULT_RESET_TRIGGERS, O as evaluateSessionFreshness, P as canonicalizeMainSessionAlias, S as mergeDeliveryContext, U as listEnabledSignalAccounts, V as getChannelDock, W as resolveSignalAccount, X as resolveGroupSessionKey, Y as buildGroupDisplayName, Z as resolveSandboxConfigForAgent, _ as updateSessionStoreEntry, a as ensureSandboxWorkspaceForSession, at as normalizeToolName, b as deliveryContextFromSession, c as resolveSandboxRuntimeStatus, d as loadSessionStore, dt as resolveConversationLabel, et as applyOwnerOnlyToolPolicy, f as readSessionUpdatedAt, g as updateSessionStore, h as updateLastRoute, j as resolveSessionResetType, k as resolveChannelResetConfig, l as appendAssistantMessageToSessionTranscript, nt as collectExplicitAllowlist, o as resolveSandboxContext, ot as resolveToolProfilePolicy, p as recordSessionMetaFromInbound, q as resolveChannelGroupRequireMention, rt as expandPolicyWithPluginGroups, st as stripPluginOnlyAllowlist, tt as buildPluginToolGroups, v as isCacheEnabled, w as normalizeSessionDeliveryFields, x as deliveryContextKey, y as resolveCacheTtlMs$1, z as deriveSessionMetaPatch } from "./sandbox-DxAKZfZd.js";
18
+ import { _ as stripReasoningTagsFromText, a as decodeDataUrl, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as stripDowngradedToolCallText, o as resolveProviderVisionModelFromConfig, p as promoteThinkingTagsToBlocks, r as coerceImageAssistantText, s as extractAssistantText$1, t as describeImageWithModel, u as extractThinkingFromTaggedText, v as ensureOpenClawModelsJson, y as minimaxUnderstandImage } from "./image-DxmrpIUn.js";
19
19
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CV2V1HHz.js";
20
- import { O as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-Dm-EgOjJ.js";
21
- import { a as resolveSkillsPromptForRun, i as loadWorkspaceSkillEntries, l as applySkillEnvOverrides, n as buildWorkspaceSkillCommandSpecs, r as buildWorkspaceSkillSnapshot, s as resolvePluginSkillDirs, u as applySkillEnvOverridesFromSnapshot } from "./skills-Bau1zXIA.js";
22
- import { c as saveMediaBuffer, d as getFileExtension, f as imageMimeFromFormat, g as MAX_IMAGE_BYTES, h as kindFromMime, l as detectMime, m as isGifMedia, o as resizeToJpeg, p as isAudioFileName, r as getImageMetadata, s as getMediaDir, u as extensionForMime, v as mediaKindFromMime, y as SsrFBlockedError } from "./routes-CserrUab.js";
20
+ import { O as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-XHJ9uNgs.js";
21
+ import { a as resolveSkillsPromptForRun, i as loadWorkspaceSkillEntries, l as applySkillEnvOverrides, n as buildWorkspaceSkillCommandSpecs, r as buildWorkspaceSkillSnapshot, s as resolvePluginSkillDirs, u as applySkillEnvOverridesFromSnapshot } from "./skills-pqbmJf1e.js";
22
+ import { c as saveMediaBuffer, d as getFileExtension, f as imageMimeFromFormat, g as MAX_IMAGE_BYTES, h as kindFromMime, l as detectMime, m as isGifMedia, o as resizeToJpeg, p as isAudioFileName, r as getImageMetadata, s as getMediaDir, u as extensionForMime, v as mediaKindFromMime, y as SsrFBlockedError } from "./routes-BqZyywjQ.js";
23
23
  import { n as formatErrorMessage, r as formatUncaughtError, t as extractErrorCode } from "./errors-B0eT3jVv.js";
24
- import { i as resolveBrowserConfig } from "./server-context-8Qt35QdF.js";
24
+ import { i as resolveBrowserConfig } from "./server-context-DT3SRl5J.js";
25
25
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-DGRSvYuQ.js";
26
26
  import { a as isValidIPv4, s as pickPrimaryLanIPv4 } from "./ws-DtDKpbLR.js";
27
- import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-Cu61-7H6.js";
28
- import { a as logoutWeb, d as webAuthExists, i as logWebSelfId, n as resolveWhatsAppAccount, r as getWebAuthAgeMs, s as readWebSelfId } from "./accounts-C2elk6PC.js";
27
+ import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-DIvXZ2w4.js";
28
+ import { a as logoutWeb, d as webAuthExists, i as logWebSelfId, n as resolveWhatsAppAccount, r as getWebAuthAgeMs, s as readWebSelfId } from "./accounts-xJh3pJei.js";
29
29
  import { a as resolveSessionTranscriptsDirForAgent, n as resolveSessionFilePath, o as resolveStorePath, r as resolveSessionTranscriptPath } from "./paths-Bkhd_qY8.js";
30
30
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-C1hdue6u.js";
31
31
  import { n as redactSensitiveText } from "./redact-DAKeu7PA.js";
32
- import { n as resolveToolDisplay } from "./tool-display-DskiU8Kt.js";
33
- import { A as markdownToIR, B as resolveChunkMode, C as sendTypingSignal, D as resolveFetch, E as streamSignalEvents, F as chunkByNewline, G as HEARTBEAT_TOKEN, H as findFenceSpanAt, I as chunkMarkdownText, J as MediaFetchError, K as SILENT_REPLY_TOKEN, L as chunkMarkdownTextWithMode, M as loadWebMedia, N as loadWebMediaRaw, O as wrapFetchWithAbortSignal, P as resolveMarkdownTableMode, R as chunkText, S as sendReadReceiptSignal, T as signalRpcRequest, U as isSafeFenceBreak, V as resolveTextChunkLimit, W as parseFenceSpans, X as fetchWithTimeout, Y as fetchRemoteMedia, Z as fetchWithSsrFGuard, _ as throwIfAborted, b as parseInlineDirectives$1, c as applyReplyThreading, d as shouldSuppressMessagingToolReplies, f as createReplyToModeFilterForChannel, g as normalizeTargetForProvider, h as normalizeChannelTargetInput, j as markdownToIRWithMeta, k as chunkMarkdownIR, l as filterMessagingToolDuplicates, m as buildTargetResolverSignature, o as normalizeReplyPayloadsForDelivery, p as resolveReplyToMode, q as isSilentReplyText, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as isRenderablePayload, v as parseReplyDirectives, w as signalCheck, x as sendMessageSignal, y as splitMediaFromOutput, z as chunkTextWithMode } from "./deliver-DD8Syx3t.js";
34
- import { i as getMachineDisplayName, n as isWSL, t as createBrowserRouteDispatcher } from "./dispatcher-BMY38O6j.js";
35
- import { i as resolveMemorySearchConfig, n as resolveRetryConfig, r as retryAsync } from "./manager-BHbv6kNQ.js";
36
- import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-Btrgi7-j.js";
37
- import { _ as parseCommandArgs, b as serializeCommandArgs, d as findCommandByNativeName, f as listChatCommands, g as normalizeCommandBody, h as listNativeCommandSpecsForConfig, i as extractTextFromMessage, m as listNativeCommandSpecs, p as listChatCommandsForConfig, u as buildCommandTextFromArgs, v as resolveCommandArgChoices, x as shouldHandleTextCommands, y as resolveCommandArgMenu } from "./tui-formatters-B4pCnF0N.js";
38
- import { kt as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-6xKrRC-1.js";
39
- import { i as randomIdempotencyKey, n as callGateway } from "./call-LDoK5_Jv.js";
32
+ import { n as resolveToolDisplay } from "./tool-display-DwOJbBjC.js";
33
+ import { A as markdownToIR, B as resolveChunkMode, C as sendTypingSignal, D as resolveFetch, E as streamSignalEvents, F as chunkByNewline, G as HEARTBEAT_TOKEN, H as findFenceSpanAt, I as chunkMarkdownText, J as MediaFetchError, K as SILENT_REPLY_TOKEN, L as chunkMarkdownTextWithMode, M as loadWebMedia, N as loadWebMediaRaw, O as wrapFetchWithAbortSignal, P as resolveMarkdownTableMode, R as chunkText, S as sendReadReceiptSignal, T as signalRpcRequest, U as isSafeFenceBreak, V as resolveTextChunkLimit, W as parseFenceSpans, X as fetchWithTimeout, Y as fetchRemoteMedia, Z as fetchWithSsrFGuard, _ as throwIfAborted, b as parseInlineDirectives$1, c as applyReplyThreading, d as shouldSuppressMessagingToolReplies, f as createReplyToModeFilterForChannel, g as normalizeTargetForProvider, h as normalizeChannelTargetInput, j as markdownToIRWithMeta, k as chunkMarkdownIR, l as filterMessagingToolDuplicates, m as buildTargetResolverSignature, o as normalizeReplyPayloadsForDelivery, p as resolveReplyToMode, q as isSilentReplyText, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as isRenderablePayload, v as parseReplyDirectives, w as signalCheck, x as sendMessageSignal, y as splitMediaFromOutput, z as chunkTextWithMode } from "./deliver-B-MU3Szq.js";
34
+ import { i as getMachineDisplayName, n as isWSL, t as createBrowserRouteDispatcher } from "./dispatcher-Rf7W2dBd.js";
35
+ import { i as resolveMemorySearchConfig, n as resolveRetryConfig, r as retryAsync } from "./manager-DOqexxfO.js";
36
+ import { d as listMemoryFiles, f as normalizeExtraMemoryPaths } from "./sqlite-CDfAET9Y.js";
37
+ import { _ as parseCommandArgs, b as serializeCommandArgs, d as findCommandByNativeName, f as listChatCommands, g as normalizeCommandBody, h as listNativeCommandSpecsForConfig, i as extractTextFromMessage, m as listNativeCommandSpecs, p as listChatCommandsForConfig, u as buildCommandTextFromArgs, v as resolveCommandArgChoices, x as shouldHandleTextCommands, y as resolveCommandArgMenu } from "./tui-formatters-C-dAVvRi.js";
38
+ import { kt as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-Cam-Cwyu.js";
39
+ import { i as randomIdempotencyKey, n as callGateway } from "./call-Ccyb4kQR.js";
40
40
  import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact } from "./format-duration-CEmFWLyX.js";
41
41
  import { n as formatTimeAgo } from "./format-relative-Db7eqEu8.js";
42
- import { a as formatError$1, i as createWaSocket, n as startWebLoginWithQr, o as getStatusCode$1, r as waitForWebLogin, s as waitForWaConnection } from "./login-qr-CQLEtsFG.js";
43
- import { a as removeChannelAllowFromStoreEntry, c as listPairingChannels, i as readChannelAllowFromStore, o as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-C5bI2uOn.js";
44
- import { t as formatDocsLink } from "./links-C591fM9M.js";
42
+ import { a as formatError$1, i as createWaSocket, n as startWebLoginWithQr, o as getStatusCode$1, r as waitForWebLogin, s as waitForWaConnection } from "./login-qr-DXiuhBc8.js";
43
+ import { a as removeChannelAllowFromStoreEntry, c as listPairingChannels, i as readChannelAllowFromStore, o as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-C6EhvkMA.js";
44
+ import { t as formatDocsLink } from "./links-D6CUlrWZ.js";
45
45
  import { r as withManager } from "./cli-utils-R-ECs5cY.js";
46
- import { n as withProgress, r as withProgressTotals } from "./progress-DIQJt9Va.js";
47
- import { a as resolveSubagentToolPolicy, c as resolveNativeSkillsEnabled, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, o as isNativeCommandsExplicitlyDisabled, r as resolveEffectiveToolPolicy, s as resolveNativeCommandsEnabled, t as filterToolsByPolicy } from "./pi-tools.policy-B5XNSHCf.js";
48
- import { r as stylePromptTitle } from "./prompt-style-CjQRlDx4.js";
49
- import { t as resolvePairingIdLabel } from "./pairing-labels-C1gYNpBx.js";
46
+ import { n as withProgress, r as withProgressTotals } from "./progress-COZ_ycun.js";
47
+ import { a as resolveSubagentToolPolicy, c as resolveNativeSkillsEnabled, i as resolveGroupToolPolicy, n as isToolAllowedByPolicies, o as isNativeCommandsExplicitlyDisabled, r as resolveEffectiveToolPolicy, s as resolveNativeCommandsEnabled, t as filterToolsByPolicy } from "./pi-tools.policy-CCQVTuZw.js";
48
+ import { r as stylePromptTitle } from "./prompt-style-CghhrkxS.js";
49
+ import { t as resolvePairingIdLabel } from "./pairing-labels-K_6MMQA_.js";
50
50
  import { c as derivePromptTokens, d as normalizeUsage, l as deriveSessionTotalTokens, n as loadCostUsageSummary, o as extractToolCallNames, r as loadSessionCostSummary, s as hasToolCall, u as hasNonzeroUsage } from "./session-cost-usage-PvyVZz-g.js";
51
51
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd$1, t as estimateUsageCost } from "./usage-format-hd37en6b.js";
52
52
  import { a as evaluateShellAllowlist, d as requiresExecApproval, f as resolveExecApprovals, h as resolveSafeBins, o as maxAsk, p as resolveExecApprovalsFromFile, s as minSecurity, t as addAllowlistEntry, u as recordAllowlistUse } from "./exec-approvals-DGPTjO0N.js";
53
- import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as buildNodeShellCommand, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-lykd2cny.js";
54
- import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-BNpv08hT.js";
53
+ import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as buildNodeShellCommand, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-A8K8mlHX.js";
54
+ import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-CAXvnE0u.js";
55
55
  import { t as parseAbsoluteTimeMs } from "./parse-DqAvJRIf.js";
56
56
  import { d as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-CNTiY-ZN.js";
57
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DqqM1jFv.js";
57
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-La1tQIxQ.js";
58
58
  import { t as parseTimeoutMs } from "./parse-timeout-DV8NQQWk.js";
59
59
  import { createRequire } from "node:module";
60
60
  import process$1 from "node:process";
@@ -62,7 +62,7 @@ import { fileURLToPath } from "node:url";
62
62
  import fs, { constants, existsSync, mkdirSync, mkdtempSync, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
63
63
  import os, { homedir, tmpdir } from "node:os";
64
64
  import path from "node:path";
65
- import fs$1 from "node:fs/promises";
65
+ import fsPromises from "node:fs/promises";
66
66
  import { execSync, spawn, spawnSync } from "node:child_process";
67
67
  import { inspect } from "node:util";
68
68
  import crypto, { randomUUID } from "node:crypto";
@@ -1766,7 +1766,7 @@ var MediaAttachmentCache = class {
1766
1766
  const size = await this.ensureLocalStat(entry);
1767
1767
  if (entry.resolvedPath) {
1768
1768
  if (size !== void 0 && size > params.maxBytes) throw new MediaUnderstandingSkipError("maxBytes", `Attachment ${params.attachmentIndex + 1} exceeds maxBytes ${params.maxBytes}`);
1769
- const buffer = await fs$1.readFile(entry.resolvedPath);
1769
+ const buffer = await fsPromises.readFile(entry.resolvedPath);
1770
1770
  entry.buffer = buffer;
1771
1771
  entry.bufferMime = entry.bufferMime ?? entry.attachment.mime ?? await detectMime({
1772
1772
  buffer,
@@ -1834,10 +1834,10 @@ var MediaAttachmentCache = class {
1834
1834
  });
1835
1835
  const extension = path.extname(bufferResult.fileName || "") || "";
1836
1836
  const tmpPath = path.join(os.tmpdir(), `openclaw-media-${crypto.randomUUID()}${extension}`);
1837
- await fs$1.writeFile(tmpPath, bufferResult.buffer);
1837
+ await fsPromises.writeFile(tmpPath, bufferResult.buffer);
1838
1838
  entry.tempPath = tmpPath;
1839
1839
  entry.tempCleanup = async () => {
1840
- await fs$1.unlink(tmpPath).catch(() => {});
1840
+ await fsPromises.unlink(tmpPath).catch(() => {});
1841
1841
  };
1842
1842
  return {
1843
1843
  path: tmpPath,
@@ -1875,7 +1875,7 @@ var MediaAttachmentCache = class {
1875
1875
  if (!entry.resolvedPath) return;
1876
1876
  if (entry.statSize !== void 0) return entry.statSize;
1877
1877
  try {
1878
- const stat = await fs$1.stat(entry.resolvedPath);
1878
+ const stat = await fsPromises.stat(entry.resolvedPath);
1879
1879
  if (!stat.isFile()) {
1880
1880
  entry.resolvedPath = void 0;
1881
1881
  return;
@@ -2072,9 +2072,9 @@ function candidateBinaryNames(name) {
2072
2072
  }
2073
2073
  async function isExecutable(filePath) {
2074
2074
  try {
2075
- if (!(await fs$1.stat(filePath)).isFile()) return false;
2075
+ if (!(await fsPromises.stat(filePath)).isFile()) return false;
2076
2076
  if (process.platform === "win32") return true;
2077
- await fs$1.access(filePath, constants.X_OK);
2077
+ await fsPromises.access(filePath, constants.X_OK);
2078
2078
  return true;
2079
2079
  } catch {
2080
2080
  return false;
@@ -2111,7 +2111,7 @@ async function hasBinary(name) {
2111
2111
  async function fileExists(filePath) {
2112
2112
  if (!filePath) return false;
2113
2113
  try {
2114
- await fs$1.stat(filePath);
2114
+ await fsPromises.stat(filePath);
2115
2115
  return true;
2116
2116
  } catch {
2117
2117
  return false;
@@ -2426,7 +2426,7 @@ async function resolveCliOutput(params) {
2426
2426
  const commandId = commandBase(params.command);
2427
2427
  const fileOutput = commandId === "whisper-cli" ? resolveWhisperCppOutputPath(params.args) : commandId === "whisper" ? resolveWhisperOutputPath(params.args, params.mediaPath) : null;
2428
2428
  if (fileOutput && await fileExists(fileOutput)) try {
2429
- const content = await fs$1.readFile(fileOutput, "utf8");
2429
+ const content = await fsPromises.readFile(fileOutput, "utf8");
2430
2430
  if (content.trim()) return content.trim();
2431
2431
  } catch {}
2432
2432
  if (commandId === "gemini") {
@@ -2690,7 +2690,7 @@ async function runCliEntry(params) {
2690
2690
  maxBytes,
2691
2691
  timeoutMs
2692
2692
  });
2693
- const outputDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "openclaw-media-cli-"));
2693
+ const outputDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-media-cli-"));
2694
2694
  const mediaPath = pathResult.path;
2695
2695
  const outputBase = path.join(outputDir, path.parse(mediaPath).name);
2696
2696
  const templCtx = {
@@ -2724,7 +2724,7 @@ async function runCliEntry(params) {
2724
2724
  model: command
2725
2725
  };
2726
2726
  } finally {
2727
- await fs$1.rm(outputDir, {
2727
+ await fsPromises.rm(outputDir, {
2728
2728
  recursive: true,
2729
2729
  force: true
2730
2730
  }).catch(() => {});
@@ -4463,7 +4463,7 @@ async function createModelSelectionState(params) {
4463
4463
  }
4464
4464
  }
4465
4465
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
4466
- const { ensureAuthProfileStore } = await import("./model-selection-NPMD6wNp.js").then((n) => n.$);
4466
+ const { ensureAuthProfileStore } = await import("./model-selection-lT7g9ysC.js").then((n) => n.$);
4467
4467
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
4468
4468
  const providerKey = normalizeProviderId(provider);
4469
4469
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -8285,7 +8285,7 @@ async function getMemorySearchManager(params) {
8285
8285
  const cached = QMD_MANAGER_CACHE.get(cacheKey);
8286
8286
  if (cached) return { manager: cached };
8287
8287
  try {
8288
- const { QmdMemoryManager } = await import("./qmd-manager-CAXjRwd6.js");
8288
+ const { QmdMemoryManager } = await import("./qmd-manager-2PsT4eTr.js");
8289
8289
  const primary = await QmdMemoryManager.create({
8290
8290
  cfg: params.cfg,
8291
8291
  agentId: params.agentId,
@@ -8295,7 +8295,7 @@ async function getMemorySearchManager(params) {
8295
8295
  const wrapper = new FallbackMemoryManager({
8296
8296
  primary,
8297
8297
  fallbackFactory: async () => {
8298
- const { MemoryIndexManager } = await import("./manager-BHbv6kNQ.js").then((n) => n.t);
8298
+ const { MemoryIndexManager } = await import("./manager-DOqexxfO.js").then((n) => n.t);
8299
8299
  return await MemoryIndexManager.get(params);
8300
8300
  }
8301
8301
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -8308,7 +8308,7 @@ async function getMemorySearchManager(params) {
8308
8308
  }
8309
8309
  }
8310
8310
  try {
8311
- const { MemoryIndexManager } = await import("./manager-BHbv6kNQ.js").then((n) => n.t);
8311
+ const { MemoryIndexManager } = await import("./manager-DOqexxfO.js").then((n) => n.t);
8312
8312
  return { manager: await MemoryIndexManager.get(params) };
8313
8313
  } catch (err) {
8314
8314
  return {
@@ -8549,7 +8549,7 @@ async function imageResult(params) {
8549
8549
  }, params.label);
8550
8550
  }
8551
8551
  async function imageResultFromFile(params) {
8552
- const buf = await fs$1.readFile(params.path);
8552
+ const buf = await fsPromises.readFile(params.path);
8553
8553
  const mimeType = await detectMime({ buffer: buf.slice(0, 256) }) ?? "image/png";
8554
8554
  return await imageResult({
8555
8555
  label: params.label,
@@ -12634,7 +12634,7 @@ async function routeReply(params) {
12634
12634
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
12635
12635
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
12636
12636
  try {
12637
- const { deliverOutboundPayloads } = await import("./deliver-DD8Syx3t.js").then((n) => n.n);
12637
+ const { deliverOutboundPayloads } = await import("./deliver-B-MU3Szq.js").then((n) => n.n);
12638
12638
  return {
12639
12639
  ok: true,
12640
12640
  messageId: (await deliverOutboundPayloads({
@@ -17612,8 +17612,8 @@ async function describeStickerImage(params) {
17612
17612
  const { provider, model } = resolved;
17613
17613
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
17614
17614
  try {
17615
- const buffer = await fs$1.readFile(imagePath);
17616
- const { describeImageWithModel } = await import("./image-k4cY_IKa.js").then((n) => n.n);
17615
+ const buffer = await fsPromises.readFile(imagePath);
17616
+ const { describeImageWithModel } = await import("./image-DxmrpIUn.js").then((n) => n.n);
17617
17617
  return (await describeImageWithModel({
17618
17618
  buffer,
17619
17619
  fileName: "sticker.webp",
@@ -17970,7 +17970,7 @@ function createWhatsAppLoginTool() {
17970
17970
  force: Type.Optional(Type.Boolean())
17971
17971
  }),
17972
17972
  execute: async (_toolCallId, args) => {
17973
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-CQLEtsFG.js").then((n) => n.t);
17973
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-DXiuhBc8.js").then((n) => n.t);
17974
17974
  if ((args?.action ?? "start") === "wait") {
17975
17975
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
17976
17976
  return {
@@ -20574,7 +20574,7 @@ function formatExtraPaths(workspaceDir, extraPaths) {
20574
20574
  }
20575
20575
  async function checkReadableFile(pathname) {
20576
20576
  try {
20577
- await fs$1.access(pathname, fs.constants.R_OK);
20577
+ await fsPromises.access(pathname, fs.constants.R_OK);
20578
20578
  return { exists: true };
20579
20579
  } catch (err) {
20580
20580
  const code = err.code;
@@ -20591,7 +20591,7 @@ async function scanSessionFiles(agentId) {
20591
20591
  try {
20592
20592
  return {
20593
20593
  source: "sessions",
20594
- totalFiles: (await fs$1.readdir(sessionsDir, { withFileTypes: true })).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).length,
20594
+ totalFiles: (await fsPromises.readdir(sessionsDir, { withFileTypes: true })).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).length,
20595
20595
  issues
20596
20596
  };
20597
20597
  } catch (err) {
@@ -20623,7 +20623,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
20623
20623
  if (alt.issue) issues.push(alt.issue);
20624
20624
  const resolvedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
20625
20625
  for (const extraPath of resolvedExtraPaths) try {
20626
- if ((await fs$1.lstat(extraPath)).isSymbolicLink()) continue;
20626
+ if ((await fsPromises.lstat(extraPath)).isSymbolicLink()) continue;
20627
20627
  const extraCheck = await checkReadableFile(extraPath);
20628
20628
  if (extraCheck.issue) issues.push(extraCheck.issue);
20629
20629
  } catch (err) {
@@ -20633,7 +20633,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
20633
20633
  }
20634
20634
  let dirReadable = null;
20635
20635
  try {
20636
- await fs$1.access(memoryDir, fs.constants.R_OK);
20636
+ await fsPromises.access(memoryDir, fs.constants.R_OK);
20637
20637
  dirReadable = true;
20638
20638
  } catch (err) {
20639
20639
  const code = err.code;
@@ -23612,7 +23612,7 @@ function resolvePaths(baseDir) {
23612
23612
  }
23613
23613
  async function readJSON(filePath) {
23614
23614
  try {
23615
- const raw = await fs$1.readFile(filePath, "utf8");
23615
+ const raw = await fsPromises.readFile(filePath, "utf8");
23616
23616
  return JSON.parse(raw);
23617
23617
  } catch {
23618
23618
  return null;
@@ -23620,15 +23620,15 @@ async function readJSON(filePath) {
23620
23620
  }
23621
23621
  async function writeJSONAtomic(filePath, value) {
23622
23622
  const dir = path.dirname(filePath);
23623
- await fs$1.mkdir(dir, { recursive: true });
23623
+ await fsPromises.mkdir(dir, { recursive: true });
23624
23624
  const tmp = `${filePath}.${randomUUID()}.tmp`;
23625
- await fs$1.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
23625
+ await fsPromises.writeFile(tmp, JSON.stringify(value, null, 2), "utf8");
23626
23626
  try {
23627
- await fs$1.chmod(tmp, 384);
23627
+ await fsPromises.chmod(tmp, 384);
23628
23628
  } catch {}
23629
- await fs$1.rename(tmp, filePath);
23629
+ await fsPromises.rename(tmp, filePath);
23630
23630
  try {
23631
- await fs$1.chmod(filePath, 384);
23631
+ await fsPromises.chmod(filePath, 384);
23632
23632
  } catch {}
23633
23633
  }
23634
23634
  function pruneExpiredPending(pendingById, nowMs) {
@@ -26196,7 +26196,7 @@ async function ensureWorkspaceAndSessions(workspaceDir, runtime, options) {
26196
26196
  });
26197
26197
  runtime.log(`Workspace OK: ${shortenHomePath(ws.dir)}`);
26198
26198
  const sessionsDir = resolveSessionTranscriptsDirForAgent(options?.agentId);
26199
- await fs$1.mkdir(sessionsDir, { recursive: true });
26199
+ await fsPromises.mkdir(sessionsDir, { recursive: true });
26200
26200
  runtime.log(`Sessions OK: ${shortenHomePath(sessionsDir)}`);
26201
26201
  }
26202
26202
  function resolveNodeManagerOptions() {
@@ -26218,7 +26218,7 @@ function resolveNodeManagerOptions() {
26218
26218
  async function moveToTrash(pathname, runtime) {
26219
26219
  if (!pathname) return;
26220
26220
  try {
26221
- await fs$1.access(pathname);
26221
+ await fsPromises.access(pathname);
26222
26222
  } catch {
26223
26223
  return;
26224
26224
  }
@@ -26241,7 +26241,7 @@ async function detectBinary(name) {
26241
26241
  if (!isSafeExecutableValue(name)) return false;
26242
26242
  const resolved = name.startsWith("~") ? resolveUserPath(name) : name;
26243
26243
  if (path.isAbsolute(resolved) || resolved.startsWith(".") || resolved.includes("/") || resolved.includes("\\")) try {
26244
- await fs$1.access(resolved);
26244
+ await fsPromises.access(resolved);
26245
26245
  return true;
26246
26246
  } catch {
26247
26247
  return false;
@@ -26715,7 +26715,7 @@ function normalizeAllowList$2(list) {
26715
26715
  async function detectRemoteHostFromCliPath(cliPath) {
26716
26716
  try {
26717
26717
  const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
26718
- const content = await fs$1.readFile(expanded, "utf8");
26718
+ const content = await fsPromises.readFile(expanded, "utf8");
26719
26719
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
26720
26720
  if (userHostMatch) return userHostMatch[1];
26721
26721
  return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
@@ -38640,7 +38640,7 @@ function safeParseState(raw) {
38640
38640
  async function readTelegramUpdateOffset(params) {
38641
38641
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
38642
38642
  try {
38643
- return safeParseState(await fs$1.readFile(filePath, "utf-8"))?.lastUpdateId ?? null;
38643
+ return safeParseState(await fsPromises.readFile(filePath, "utf-8"))?.lastUpdateId ?? null;
38644
38644
  } catch (err) {
38645
38645
  if (err.code === "ENOENT") return null;
38646
38646
  return null;
@@ -38649,7 +38649,7 @@ async function readTelegramUpdateOffset(params) {
38649
38649
  async function writeTelegramUpdateOffset(params) {
38650
38650
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
38651
38651
  const dir = path.dirname(filePath);
38652
- await fs$1.mkdir(dir, {
38652
+ await fsPromises.mkdir(dir, {
38653
38653
  recursive: true,
38654
38654
  mode: 448
38655
38655
  });
@@ -38658,9 +38658,9 @@ async function writeTelegramUpdateOffset(params) {
38658
38658
  version: STORE_VERSION,
38659
38659
  lastUpdateId: params.updateId
38660
38660
  };
38661
- await fs$1.writeFile(tmp, `${JSON.stringify(payload, null, 2)}\n`, { encoding: "utf-8" });
38662
- await fs$1.chmod(tmp, 384);
38663
- await fs$1.rename(tmp, filePath);
38661
+ await fsPromises.writeFile(tmp, `${JSON.stringify(payload, null, 2)}\n`, { encoding: "utf-8" });
38662
+ await fsPromises.chmod(tmp, 384);
38663
+ await fsPromises.rename(tmp, filePath);
38664
38664
  }
38665
38665
 
38666
38666
  //#endregion
@@ -39558,7 +39558,7 @@ function resolvePluginTools(params) {
39558
39558
  //#endregion
39559
39559
  //#region src/agents/apply-patch-update.ts
39560
39560
  async function applyUpdateHunk(filePath, chunks) {
39561
- const originalLines = (await fs$1.readFile(filePath, "utf8").catch((err) => {
39561
+ const originalLines = (await fsPromises.readFile(filePath, "utf8").catch((err) => {
39562
39562
  throw new Error(`Failed to read file to update ${filePath}: ${err}`);
39563
39563
  })).split("\n");
39564
39564
  if (originalLines.length > 0 && originalLines[originalLines.length - 1] === "") originalLines.pop();
@@ -39728,7 +39728,7 @@ async function assertNoSymlink(relative, root) {
39728
39728
  for (const part of parts) {
39729
39729
  current = path.join(current, part);
39730
39730
  try {
39731
- if ((await fs$1.lstat(current)).isSymbolicLink()) throw new Error(`Symlink not allowed in sandbox path: ${current}`);
39731
+ if ((await fsPromises.lstat(current)).isSymbolicLink()) throw new Error(`Symlink not allowed in sandbox path: ${current}`);
39732
39732
  } catch (err) {
39733
39733
  if (err.code === "ENOENT") return;
39734
39734
  throw err;
@@ -39807,13 +39807,13 @@ async function applyPatch(input, options) {
39807
39807
  if (hunk.kind === "add") {
39808
39808
  const target = await resolvePatchPath(hunk.path, options);
39809
39809
  await ensureDir(target.resolved);
39810
- await fs$1.writeFile(target.resolved, hunk.contents, "utf8");
39810
+ await fsPromises.writeFile(target.resolved, hunk.contents, "utf8");
39811
39811
  recordSummary(summary, seen, "added", target.display);
39812
39812
  continue;
39813
39813
  }
39814
39814
  if (hunk.kind === "delete") {
39815
39815
  const target = await resolvePatchPath(hunk.path, options);
39816
- await fs$1.rm(target.resolved);
39816
+ await fsPromises.rm(target.resolved);
39817
39817
  recordSummary(summary, seen, "deleted", target.display);
39818
39818
  continue;
39819
39819
  }
@@ -39822,11 +39822,11 @@ async function applyPatch(input, options) {
39822
39822
  if (hunk.movePath) {
39823
39823
  const moveTarget = await resolvePatchPath(hunk.movePath, options);
39824
39824
  await ensureDir(moveTarget.resolved);
39825
- await fs$1.writeFile(moveTarget.resolved, applied, "utf8");
39826
- await fs$1.rm(target.resolved);
39825
+ await fsPromises.writeFile(moveTarget.resolved, applied, "utf8");
39826
+ await fsPromises.rm(target.resolved);
39827
39827
  recordSummary(summary, seen, "modified", moveTarget.display);
39828
39828
  } else {
39829
- await fs$1.writeFile(target.resolved, applied, "utf8");
39829
+ await fsPromises.writeFile(target.resolved, applied, "utf8");
39830
39830
  recordSummary(summary, seen, "modified", target.display);
39831
39831
  }
39832
39832
  }
@@ -39850,7 +39850,7 @@ function formatSummary(summary) {
39850
39850
  async function ensureDir(filePath) {
39851
39851
  const parent = path.dirname(filePath);
39852
39852
  if (!parent || parent === ".") return;
39853
- await fs$1.mkdir(parent, { recursive: true });
39853
+ await fsPromises.mkdir(parent, { recursive: true });
39854
39854
  }
39855
39855
  async function resolvePatchPath(filePath, options) {
39856
39856
  if (options.sandboxRoot) {
@@ -40541,7 +40541,7 @@ async function resolveSandboxWorkdir(params) {
40541
40541
  cwd: process.cwd(),
40542
40542
  root: params.sandbox.workspaceDir
40543
40543
  });
40544
- if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
40544
+ if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
40545
40545
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
40546
40546
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
40547
40547
  return {
@@ -43549,7 +43549,7 @@ function createCanvasTool() {
43549
43549
  });
43550
43550
  }
43551
43551
  case "a2ui_push": {
43552
- const jsonl = typeof params.jsonl === "string" && params.jsonl.trim() ? params.jsonl : typeof params.jsonlPath === "string" && params.jsonlPath.trim() ? await fs$1.readFile(params.jsonlPath.trim(), "utf8") : "";
43552
+ const jsonl = typeof params.jsonl === "string" && params.jsonl.trim() ? params.jsonl : typeof params.jsonlPath === "string" && params.jsonlPath.trim() ? await fsPromises.readFile(params.jsonlPath.trim(), "utf8") : "";
43553
43553
  if (!jsonl.trim()) throw new Error("jsonl or jsonlPath required");
43554
43554
  await invoke("canvas.a2ui.pushJSONL", { jsonl });
43555
43555
  return jsonResult({ ok: true });
@@ -44185,27 +44185,27 @@ function resolveRestartSentinelPath(env = process.env) {
44185
44185
  }
44186
44186
  async function writeRestartSentinel(payload, env = process.env) {
44187
44187
  const filePath = resolveRestartSentinelPath(env);
44188
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
44188
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
44189
44189
  const data = {
44190
44190
  version: 1,
44191
44191
  payload
44192
44192
  };
44193
- await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
44193
+ await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
44194
44194
  return filePath;
44195
44195
  }
44196
44196
  async function readRestartSentinel(env = process.env) {
44197
44197
  const filePath = resolveRestartSentinelPath(env);
44198
44198
  try {
44199
- const raw = await fs$1.readFile(filePath, "utf-8");
44199
+ const raw = await fsPromises.readFile(filePath, "utf-8");
44200
44200
  let parsed;
44201
44201
  try {
44202
44202
  parsed = JSON.parse(raw);
44203
44203
  } catch {
44204
- await fs$1.unlink(filePath).catch(() => {});
44204
+ await fsPromises.unlink(filePath).catch(() => {});
44205
44205
  return null;
44206
44206
  }
44207
44207
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
44208
- await fs$1.unlink(filePath).catch(() => {});
44208
+ await fsPromises.unlink(filePath).catch(() => {});
44209
44209
  return null;
44210
44210
  }
44211
44211
  return parsed;
@@ -44217,7 +44217,7 @@ async function consumeRestartSentinel(env = process.env) {
44217
44217
  const filePath = resolveRestartSentinelPath(env);
44218
44218
  const parsed = await readRestartSentinel(env);
44219
44219
  if (!parsed) return null;
44220
- await fs$1.unlink(filePath).catch(() => {});
44220
+ await fsPromises.unlink(filePath).catch(() => {});
44221
44221
  return parsed;
44222
44222
  }
44223
44223
  function formatRestartSentinelMessage(payload) {
@@ -45009,7 +45009,7 @@ async function resolveSandboxedImagePath(params) {
45009
45009
  const candidateRel = path.join("media", "inbound", name);
45010
45010
  const candidateAbs = path.join(params.sandboxRoot, candidateRel);
45011
45011
  try {
45012
- await fs$1.stat(candidateAbs);
45012
+ await fsPromises.stat(candidateAbs);
45013
45013
  } catch {
45014
45014
  throw err;
45015
45015
  }
@@ -52464,7 +52464,7 @@ async function repairSessionFileIfNeeded(params) {
52464
52464
  };
52465
52465
  let content;
52466
52466
  try {
52467
- content = await fs$1.readFile(sessionFile, "utf-8");
52467
+ content = await fsPromises.readFile(sessionFile, "utf-8");
52468
52468
  } catch (err) {
52469
52469
  if (err?.code === "ENOENT") return {
52470
52470
  repaired: false,
@@ -52512,15 +52512,15 @@ async function repairSessionFileIfNeeded(params) {
52512
52512
  const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
52513
52513
  const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
52514
52514
  try {
52515
- const stat = await fs$1.stat(sessionFile).catch(() => null);
52516
- await fs$1.writeFile(backupPath, content, "utf-8");
52517
- if (stat) await fs$1.chmod(backupPath, stat.mode);
52518
- await fs$1.writeFile(tmpPath, cleaned, "utf-8");
52519
- if (stat) await fs$1.chmod(tmpPath, stat.mode);
52520
- await fs$1.rename(tmpPath, sessionFile);
52515
+ const stat = await fsPromises.stat(sessionFile).catch(() => null);
52516
+ await fsPromises.writeFile(backupPath, content, "utf-8");
52517
+ if (stat) await fsPromises.chmod(backupPath, stat.mode);
52518
+ await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
52519
+ if (stat) await fsPromises.chmod(tmpPath, stat.mode);
52520
+ await fsPromises.rename(tmpPath, sessionFile);
52521
52521
  } catch (err) {
52522
52522
  try {
52523
- await fs$1.unlink(tmpPath);
52523
+ await fsPromises.unlink(tmpPath);
52524
52524
  } catch (cleanupErr) {
52525
52525
  params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
52526
52526
  }
@@ -53146,7 +53146,7 @@ function registerCleanupHandlers() {
53146
53146
  }
53147
53147
  async function readLockPayload(lockPath) {
53148
53148
  try {
53149
- const raw = await fs$1.readFile(lockPath, "utf8");
53149
+ const raw = await fsPromises.readFile(lockPath, "utf8");
53150
53150
  const parsed = JSON.parse(raw);
53151
53151
  if (typeof parsed.pid !== "number") return null;
53152
53152
  if (typeof parsed.createdAt !== "string") return null;
@@ -53164,10 +53164,10 @@ async function acquireSessionWriteLock(params) {
53164
53164
  const staleMs = params.staleMs ?? 1800 * 1e3;
53165
53165
  const sessionFile = path.resolve(params.sessionFile);
53166
53166
  const sessionDir = path.dirname(sessionFile);
53167
- await fs$1.mkdir(sessionDir, { recursive: true });
53167
+ await fsPromises.mkdir(sessionDir, { recursive: true });
53168
53168
  let normalizedDir = sessionDir;
53169
53169
  try {
53170
- normalizedDir = await fs$1.realpath(sessionDir);
53170
+ normalizedDir = await fsPromises.realpath(sessionDir);
53171
53171
  } catch {}
53172
53172
  const normalizedSessionFile = path.join(normalizedDir, path.basename(sessionFile));
53173
53173
  const lockPath = `${normalizedSessionFile}.lock`;
@@ -53181,7 +53181,7 @@ async function acquireSessionWriteLock(params) {
53181
53181
  if (current.count > 0) return;
53182
53182
  HELD_LOCKS.delete(normalizedSessionFile);
53183
53183
  await current.handle.close();
53184
- await fs$1.rm(current.lockPath, { force: true });
53184
+ await fsPromises.rm(current.lockPath, { force: true });
53185
53185
  } };
53186
53186
  }
53187
53187
  const startedAt = Date.now();
@@ -53189,7 +53189,7 @@ async function acquireSessionWriteLock(params) {
53189
53189
  while (Date.now() - startedAt < timeoutMs) {
53190
53190
  attempt += 1;
53191
53191
  try {
53192
- const handle = await fs$1.open(lockPath, "wx");
53192
+ const handle = await fsPromises.open(lockPath, "wx");
53193
53193
  await handle.writeFile(JSON.stringify({
53194
53194
  pid: process.pid,
53195
53195
  createdAt: (/* @__PURE__ */ new Date()).toISOString()
@@ -53206,7 +53206,7 @@ async function acquireSessionWriteLock(params) {
53206
53206
  if (current.count > 0) return;
53207
53207
  HELD_LOCKS.delete(normalizedSessionFile);
53208
53208
  await current.handle.close();
53209
- await fs$1.rm(current.lockPath, { force: true });
53209
+ await fsPromises.rm(current.lockPath, { force: true });
53210
53210
  } };
53211
53211
  } catch (err) {
53212
53212
  if (err.code !== "EEXIST") throw err;
@@ -53215,7 +53215,7 @@ async function acquireSessionWriteLock(params) {
53215
53215
  const stale = !Number.isFinite(createdAt) || Date.now() - createdAt > staleMs;
53216
53216
  const alive = payload?.pid ? isAlive(payload.pid) : false;
53217
53217
  if (stale || !alive) {
53218
- await fs$1.rm(lockPath, { force: true });
53218
+ await fsPromises.rm(lockPath, { force: true });
53219
53219
  continue;
53220
53220
  }
53221
53221
  const delay = Math.min(1e3, 50 * attempt);
@@ -53919,7 +53919,7 @@ async function prewarmSessionFile(sessionFile) {
53919
53919
  if (!isSessionManagerCacheEnabled()) return;
53920
53920
  if (isSessionManagerCached(sessionFile)) return;
53921
53921
  try {
53922
- const handle = await fs$1.open(sessionFile, "r");
53922
+ const handle = await fsPromises.open(sessionFile, "r");
53923
53923
  try {
53924
53924
  const buffer = Buffer$1.alloc(4096);
53925
53925
  await handle.read(buffer, 0, buffer.length, 0);
@@ -54116,7 +54116,7 @@ async function compactEmbeddedPiSessionDirect(params) {
54116
54116
  reason: describeUnknownError(err)
54117
54117
  };
54118
54118
  }
54119
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
54119
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
54120
54120
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
54121
54121
  const sandbox = await resolveSandboxContext({
54122
54122
  config: params.config,
@@ -54124,7 +54124,7 @@ async function compactEmbeddedPiSessionDirect(params) {
54124
54124
  workspaceDir: resolvedWorkspace
54125
54125
  });
54126
54126
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
54127
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
54127
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
54128
54128
  await ensureSessionHeader({
54129
54129
  sessionFile: params.sessionFile,
54130
54130
  sessionId: params.sessionId,
@@ -54571,12 +54571,12 @@ function getWriter$1(filePath) {
54571
54571
  const existing = writers$1.get(filePath);
54572
54572
  if (existing) return existing;
54573
54573
  const dir = path.dirname(filePath);
54574
- const ready = fs$1.mkdir(dir, { recursive: true }).catch(() => void 0);
54574
+ const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
54575
54575
  let queue = Promise.resolve();
54576
54576
  const writer = {
54577
54577
  filePath,
54578
54578
  write: (line) => {
54579
- queue = queue.then(() => ready).then(() => fs$1.appendFile(filePath, line, "utf8")).catch(() => void 0);
54579
+ queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
54580
54580
  }
54581
54581
  };
54582
54582
  writers$1.set(filePath, writer);
@@ -54718,12 +54718,12 @@ function getWriter(filePath) {
54718
54718
  const existing = writers.get(filePath);
54719
54719
  if (existing) return existing;
54720
54720
  const dir = path.dirname(filePath);
54721
- const ready = fs$1.mkdir(dir, { recursive: true }).catch(() => void 0);
54721
+ const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
54722
54722
  let queue = Promise.resolve();
54723
54723
  const writer = {
54724
54724
  filePath,
54725
54725
  write: (line) => {
54726
- queue = queue.then(() => ready).then(() => fs$1.appendFile(filePath, line, "utf8")).catch(() => void 0);
54726
+ queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
54727
54727
  }
54728
54728
  };
54729
54729
  writers.set(filePath, writer);
@@ -56345,7 +56345,7 @@ async function prepareSessionManagerForRun(params) {
56345
56345
  return;
56346
56346
  }
56347
56347
  if (params.hadSessionFile && header && !hasAssistant) {
56348
- await fs$1.writeFile(params.sessionFile, "", "utf-8");
56348
+ await fsPromises.writeFile(params.sessionFile, "", "utf-8");
56349
56349
  sm.fileEntries = [header];
56350
56350
  sm.byId?.clear?.();
56351
56351
  sm.labelsById?.clear?.();
@@ -56473,7 +56473,7 @@ async function loadImageFromRef(ref, workspaceDir, options) {
56473
56473
  return null;
56474
56474
  }
56475
56475
  if (ref.type === "path") try {
56476
- await fs$1.stat(targetPath);
56476
+ await fsPromises.stat(targetPath);
56477
56477
  } catch {
56478
56478
  log$3.debug(`Native image: file not found: ${targetPath}`);
56479
56479
  return null;
@@ -56643,7 +56643,7 @@ async function runEmbeddedAttempt(params) {
56643
56643
  const prevCwd = process.cwd();
56644
56644
  const runAbortController = new AbortController();
56645
56645
  log$3.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
56646
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
56646
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
56647
56647
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
56648
56648
  const sandbox = await resolveSandboxContext({
56649
56649
  config: params.config,
@@ -56651,7 +56651,7 @@ async function runEmbeddedAttempt(params) {
56651
56651
  workspaceDir: resolvedWorkspace
56652
56652
  });
56653
56653
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
56654
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
56654
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
56655
56655
  let restoreSkillEnv;
56656
56656
  process.chdir(effectiveWorkspace);
56657
56657
  try {
@@ -56870,7 +56870,7 @@ async function runEmbeddedAttempt(params) {
56870
56870
  sessionFile: params.sessionFile,
56871
56871
  warn: (message) => log$3.warn(message)
56872
56872
  });
56873
- const hadSessionFile = await fs$1.stat(params.sessionFile).then(() => true).catch(() => false);
56873
+ const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
56874
56874
  const transcriptPolicy = resolveTranscriptPolicy({
56875
56875
  modelApi: params.model?.api,
56876
56876
  provider: params.provider,
@@ -57520,7 +57520,7 @@ async function runEmbeddedPiAgent(params) {
57520
57520
  try {
57521
57521
  while (true) {
57522
57522
  attemptedThinking.add(thinkLevel);
57523
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
57523
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
57524
57524
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
57525
57525
  const attempt = await runEmbeddedAttempt({
57526
57526
  sessionId: params.sessionId,
@@ -62691,18 +62691,18 @@ function appendImagePathsToPrompt(prompt, paths) {
62691
62691
  return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
62692
62692
  }
62693
62693
  async function writeCliImages(images) {
62694
- const tempDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
62694
+ const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
62695
62695
  const paths = [];
62696
62696
  for (let i = 0; i < images.length; i += 1) {
62697
62697
  const image = images[i];
62698
62698
  const ext = resolveImageExtension(image.mimeType);
62699
62699
  const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
62700
62700
  const buffer = Buffer.from(image.data, "base64");
62701
- await fs$1.writeFile(filePath, buffer, { mode: 384 });
62701
+ await fsPromises.writeFile(filePath, buffer, { mode: 384 });
62702
62702
  paths.push(filePath);
62703
62703
  }
62704
62704
  const cleanup = async () => {
62705
- await fs$1.rm(tempDir, {
62705
+ await fsPromises.rm(tempDir, {
62706
62706
  recursive: true,
62707
62707
  force: true
62708
62708
  });
@@ -65139,7 +65139,7 @@ async function deliverSessionMaintenanceWarning(params) {
65139
65139
  return;
65140
65140
  }
65141
65141
  try {
65142
- const { deliverOutboundPayloads } = await import("./deliver-DD8Syx3t.js").then((n) => n.n);
65142
+ const { deliverOutboundPayloads } = await import("./deliver-B-MU3Szq.js").then((n) => n.n);
65143
65143
  await deliverOutboundPayloads({
65144
65144
  cfg: params.cfg,
65145
65145
  channel,
@@ -65450,7 +65450,7 @@ async function stageSandboxMedia(params) {
65450
65450
  };
65451
65451
  try {
65452
65452
  const destDir = sandbox ? path.join(effectiveWorkspaceDir, "media", "inbound") : effectiveWorkspaceDir;
65453
- await fs$1.mkdir(destDir, { recursive: true });
65453
+ await fsPromises.mkdir(destDir, { recursive: true });
65454
65454
  const usedNames = /* @__PURE__ */ new Set();
65455
65455
  const staged = /* @__PURE__ */ new Map();
65456
65456
  for (const raw of rawPaths) {
@@ -65482,7 +65482,7 @@ async function stageSandboxMedia(params) {
65482
65482
  usedNames.add(fileName);
65483
65483
  const dest = path.join(destDir, fileName);
65484
65484
  if (ctx.MediaRemoteHost) await scpFile(ctx.MediaRemoteHost, source, dest);
65485
- else await fs$1.copyFile(source, dest);
65485
+ else await fsPromises.copyFile(source, dest);
65486
65486
  const stagedPath = sandbox ? path.posix.join("media", "inbound", fileName) : dest;
65487
65487
  staged.set(source, stagedPath);
65488
65488
  }