wednesdayai 0.4.12-dev.729 → 0.4.12-dev.730

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 (443) hide show
  1. package/dist/{acp-cli-I7YUgqCR.js → acp-cli-BP69XOSe.js} +13 -13
  2. package/dist/{agent-scope-Ppgyx_kd.js → agent-scope-CxydHZjT.js} +21 -21
  3. package/dist/{agent-turn-enqueue-CW_401rj.js → agent-turn-enqueue-D-72TPFG.js} +5 -5
  4. package/dist/{agent-turn-enqueue-DoWWsxog.js → agent-turn-enqueue-DKRQcdxb.js} +6 -6
  5. package/dist/{agent-turn-execute-A0TURQhp.js → agent-turn-execute-Bh97uBaG.js} +194 -194
  6. package/dist/{agent-turn-recovery-adapter-BNI0O8Mj.js → agent-turn-recovery-adapter-DZsBJig8.js} +3 -3
  7. package/dist/{agent-turn-recovery-adapter-CJ4g6khf.js → agent-turn-recovery-adapter-TZIfB8s6.js} +1 -1
  8. package/dist/{agent-turn-runner-BVBnEVO0.js → agent-turn-runner-Bv9LuLHR.js} +2 -2
  9. package/dist/{agent-turn-runner-B10CqZVv.js → agent-turn-runner-Cea0N8hZ.js} +5 -5
  10. package/dist/{agent-turn-runner-CM3MQTJU.js → agent-turn-runner-DtRDx5nj.js} +1 -1
  11. package/dist/{agent-turn-runner-DzGi5c4M.js → agent-turn-runner-rlaI8UZh.js} +2 -2
  12. package/dist/{agents-CqGOYUmk.js → agents-CcRZaVIM.js} +20 -20
  13. package/dist/{agents.config-CfQTsYDc.js → agents.config-BIAN7yD0.js} +3 -3
  14. package/dist/{agents.config-iuJI5Qb7.js → agents.config-BR-2_pQX.js} +1 -1
  15. package/dist/{api-uxkyeSmH.js → api-CoJEjegK.js} +1 -1
  16. package/dist/{api-key-rotation-CtZSwE0N.js → api-key-rotation-BfX7mRma.js} +1 -1
  17. package/dist/{artifacts-BjWykx-p.js → artifacts-mmiw3Aqi.js} +1 -1
  18. package/dist/{audio-preflight-BYkASiuL.js → audio-preflight-BeM0QH9O.js} +38 -38
  19. package/dist/{audio-preflight-CLEofd1a.js → audio-preflight-CPGaMcl9.js} +6 -6
  20. package/dist/{audio-transcription-runner-C6aQCxFd.js → audio-transcription-runner-1caiMqoM.js} +1 -1
  21. package/dist/{audio-transcription-runner-0S6456vW.js → audio-transcription-runner-BQ-xozUJ.js} +26 -26
  22. package/dist/{audit-DdxXEcHv.js → audit-DEW5Bp17.js} +33 -33
  23. package/dist/{audit-D7HwuhC3.js → audit-vLZ-GPkj.js} +3 -3
  24. package/dist/{auth-CZ7-R3rC.js → auth-CzqOUm43.js} +4 -4
  25. package/dist/{auth-choice-rhHVvoEZ.js → auth-choice-BgRokiZf.js} +17 -17
  26. package/dist/{auth-choice-_Ngg8dJn.js → auth-choice-DG23ZlyE.js} +13 -13
  27. package/dist/{auth-choice-DzVb3c4S.js → auth-choice-DIu_6W5c.js} +1 -1
  28. package/dist/{auth-choice.apply-helpers-BMrtYUQo.js → auth-choice.apply-helpers-BuqGJPas.js} +1 -1
  29. package/dist/{auth-token-DFBrANaQ.js → auth-token-Die78Dee.js} +2 -2
  30. package/dist/{banner-BqEUBSwB.js → banner-CpVH8pYW.js} +4 -4
  31. package/dist/{bonjour-discovery-CojQUMEO.js → bonjour-discovery-DsPDdJ75.js} +3 -3
  32. package/dist/{browser-cli-BOoKWbUB.js → browser-cli-Cfne-bZg.js} +21 -21
  33. package/dist/build-info.json +3 -3
  34. package/dist/bundled/boot-md/handler.js +2 -2
  35. package/dist/bundled/session-journal/handler.js +2 -2
  36. package/dist/bundled/session-memory/handler.js +2 -2
  37. package/dist/{call-BGJB7J3q.js → call-5i352x9j.js} +12 -12
  38. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  39. package/dist/{channel-account-context-B0BYG0hd.js → channel-account-context-BRw1RtQ_.js} +7 -7
  40. package/dist/{channel-activity-CUFBYpfH.js → channel-activity-C08pUdDN.js} +2 -2
  41. package/dist/{channel-options-C3u2Sg1X.js → channel-options-BAPGXbiT.js} +3 -3
  42. package/dist/{channel-options-C1IIAhgv.js → channel-options-Cz9kTenL.js} +1 -1
  43. package/dist/{channel-selection-A64KNpWH.js → channel-selection-EeyjFzad.js} +1 -1
  44. package/dist/{channels-cli-YNVo_J7T.js → channels-cli-BidTgEPd.js} +123 -123
  45. package/dist/{channels-cli-Dz1fY7Ks.js → channels-cli-DRrzM0ls.js} +22 -22
  46. package/dist/{channels-status-issues-BLHnC4d_.js → channels-status-issues-Cab9ixM6.js} +1 -1
  47. package/dist/{chrome-93M6AryA.js → chrome-BLqsc9fh.js} +6 -6
  48. package/dist/{chunk-BIErRWoV.js → chunk-CyVpre5Y.js} +3 -3
  49. package/dist/{clack-prompter-shjXV_CK.js → clack-prompter-ThJZQZ7f.js} +5 -5
  50. package/dist/{clawbot-cli-Cts0cOiE.js → clawbot-cli-wZlRKczI.js} +17 -17
  51. package/dist/cli/daemon-cli.js +1 -1
  52. package/dist/cli-BdacdmTo.js +166 -0
  53. package/dist/{cli-DKuWVT_o.js → cli-CmSRQF8z.js} +18 -18
  54. package/dist/{client-CcJEvW7d.js → client-EEggbMMG.js} +3 -3
  55. package/dist/{client-profiles-CDNULV1v.js → client-profiles-L4VajtTA.js} +2 -2
  56. package/dist/{clipboard-ueGeqjzM.js → clipboard-DHS-_ANO.js} +1 -1
  57. package/dist/{command-queue-g1tNC8Vs.js → command-queue-C9EZpC0r.js} +1 -1
  58. package/dist/{command-queue-BXX9dOOY.js → command-queue-Df8m2C14.js} +1 -1
  59. package/dist/{command-registry-D7a2MHeF.js → command-registry-DJ2RcG6i.js} +14 -14
  60. package/dist/{command-secret-targets-BX0CPQr-.js → command-secret-targets-BLUddYry.js} +4 -4
  61. package/dist/{commands-B4ce9Pyw.js → commands-DcCuNsWv.js} +1 -1
  62. package/dist/{commands-registry-CcbNhUWz.js → commands-registry-Dh2bmHYX.js} +3 -3
  63. package/dist/{completion-cli-Bw457ikU.js → completion-cli-CF1KcRLT.js} +16 -16
  64. package/dist/{completion-cli-BDOVwJNU.js → completion-cli-CSlJsSsc.js} +1 -1
  65. package/dist/{config-B_l7dU75.js → config-Wy1wQZjq.js} +58 -58
  66. package/dist/{config-cli-DdgtqEUK.js → config-cli-CeTT4CIX.js} +1 -1
  67. package/dist/{config-cli-BS_Dn2U3.js → config-cli-DzLfLd1l.js} +15 -15
  68. package/dist/{config-guard-D8pceOYu.js → config-guard-CxJY7cYj.js} +4 -4
  69. package/dist/{config-validation-bWS01yvf.js → config-validation-tSgClPKz.js} +4 -4
  70. package/dist/{configure-DyjgsBKI.js → configure-BvTYT92W.js} +3 -3
  71. package/dist/{configure-B3bu-lE9.js → configure-DY6FxXGJ.js} +25 -25
  72. package/dist/{control-ui-assets-Dz1n0dDI.js → control-ui-assets-CUNJ-wZT.js} +3 -3
  73. package/dist/{controller-CqvurxyG.js → controller-BSfjG3lf.js} +1 -1
  74. package/dist/{credentials-DcWx5UdN.js → credentials-CZpBSFEO.js} +1 -1
  75. package/dist/{cron-cli-stdpJx8z.js → cron-cli-CaLjTgrD.js} +16 -16
  76. package/dist/{daemon-cli-C2KlymGb.js → daemon-cli-kHqIPg4E.js} +19 -19
  77. package/dist/{daemon-install-Bb0jLWtP.js → daemon-install-D6QY6h-a.js} +11 -11
  78. package/dist/{daemon-install-helpers-D9sQQxjq.js → daemon-install-helpers-BpCzt6Hc.js} +13 -13
  79. package/dist/{deliver-DUBuu2uJ.js → deliver-CKHf6BfA.js} +11 -11
  80. package/dist/{deliver-C2Wz9PWj.js → deliver-iL5dyQ_w.js} +1 -1
  81. package/dist/{devices-cli-BhvJltFw.js → devices-cli-ysWdBZx4.js} +14 -14
  82. package/dist/{diagnostic-DuMnWlrO.js → diagnostic-CsiKdkkn.js} +4 -4
  83. package/dist/{diagnostic-C5wYymNQ.js → diagnostic-DBsNslQA.js} +1 -1
  84. package/dist/{diagnostics-brY1xU9j.js → diagnostics-DXe05OkI.js} +5 -5
  85. package/dist/{directory-cli-Brg7vqSd.js → directory-cli-Cnuwint-.js} +13 -13
  86. package/dist/{dm-policy-shared-yJEiBvgY.js → dm-policy-shared-BFynL_iX.js} +5 -5
  87. package/dist/{dns-cli-LuV21OdM.js → dns-cli-NCsBWdX6.js} +12 -12
  88. package/dist/{docs-cli-DjorWzOU.js → docs-cli-N_pc80nZ.js} +12 -12
  89. package/dist/{doctor-completion-C3mNG21F.js → doctor-completion-B1eLtCOM.js} +3 -3
  90. package/dist/{doctor-completion-BJHSi6k4.js → doctor-completion-B1qmR3tQ.js} +1 -1
  91. package/dist/{doctor-config-flow-CTSGH57H.js → doctor-config-flow-DDN0ovwf.js} +19 -19
  92. package/dist/{enable-Cg6VGOzr.js → enable-B1kzYvA6.js} +2 -2
  93. package/dist/entry.js +4 -4
  94. package/dist/{exec-B6VJhiff.js → exec-DtX60IXR.js} +2 -2
  95. package/dist/{exec-approvals-BsebcahG.js → exec-approvals-C4CZ1V0m.js} +2 -2
  96. package/dist/{exec-approvals-allowlist-BJCk_TPq.js → exec-approvals-allowlist-DlF01Fkm.js} +1 -1
  97. package/dist/{exec-approvals-cli-CpZFCJhK.js → exec-approvals-cli-DDsgcVGo.js} +26 -26
  98. package/dist/{exec-safe-bin-runtime-policy-DNVd_94E.js → exec-safe-bin-runtime-policy-BH45jyJz.js} +2 -2
  99. package/dist/{extension-relay-auth-Dicdw7Xi.js → extension-relay-auth-DeehlFvz.js} +10 -10
  100. package/dist/extensionAPI.js +2 -2
  101. package/dist/{fetch-B6tx3m8j.js → fetch-COk8GnL3.js} +5 -5
  102. package/dist/{fetch-guard-D9Baq9VL.js → fetch-guard-BpcmLYcl.js} +3 -3
  103. package/dist/{frontmatter-DTtFYkCc.js → frontmatter-pi3glMFx.js} +2 -2
  104. package/dist/{fs-safe-DDz2ygyq.js → fs-safe-DSWE-pxQ.js} +25 -25
  105. package/dist/{gateway-cli-DNzVSEgi.js → gateway-cli-BeaoqfXG.js} +41 -41
  106. package/dist/{gateway-cli-DCEGccnP.js → gateway-cli-yWMVCCLt.js} +222 -222
  107. package/dist/{gateway-rpc-c8XzfYDl.js → gateway-rpc-C2PqTIDi.js} +3 -3
  108. package/dist/{globals-NHZhvbUb.js → globals-DzEfsMsj.js} +11 -11
  109. package/dist/{gmail-setup-utils-D4Dn4Vqi.js → gmail-setup-utils-uAAzkjJP.js} +3 -3
  110. package/dist/{health-CohIvGFu.js → health-DDFoa_vd.js} +11 -11
  111. package/dist/{health-B9kSP1yr.js → health-DFxVZQP8.js} +2 -2
  112. package/dist/{health-format-BS-M5J8K.js → health-format-B1ElAx-F.js} +1 -1
  113. package/dist/{heartbeat-tick-CNXKuUx8.js → heartbeat-tick-CVUubxop.js} +2 -2
  114. package/dist/{help-format-Bsgr8mqL.js → help-format-aPNS9ayu.js} +1 -1
  115. package/dist/{helpers-BYFW2nSK.js → helpers-BNMarGmo.js} +1 -1
  116. package/dist/{hooks-cli-BC7PXwrl.js → hooks-cli-Il6c46Hj.js} +111 -111
  117. package/dist/{hooks-cli-UgeEAR7U.js → hooks-cli-WT_iEJLp.js} +19 -19
  118. package/dist/{hooks-status-n4KWKh1Y.js → hooks-status-xDCStRjI.js} +3 -3
  119. package/dist/{image-ops-BXRKcOTd.js → image-ops-CAEEQmlt.js} +11 -11
  120. package/dist/{incident-install-DRZu7hrx.js → incident-install-K_JM0Dou.js} +13 -13
  121. package/dist/index.js +22 -22
  122. package/dist/{inspect-C2g9LrbN.js → inspect-DNbhm85u.js} +4 -4
  123. package/dist/{install-safe-path-BqxzjzC-.js → install-safe-path-D7s18Vq0.js} +25 -25
  124. package/dist/{installs-yixcXYPn.js → installs-ttC39JR4.js} +10 -10
  125. package/dist/{ipv4-BcWFaVPH.js → ipv4-vPs-MXPy.js} +2 -2
  126. package/dist/{ir-CnD8edWb.js → ir-DkcivUQx.js} +8 -8
  127. package/dist/{issue-format-YjkCmJ-x.js → issue-format-C5dvpWCs.js} +1 -1
  128. package/dist/{lifecycle-core-BH4dnQtI.js → lifecycle-core-D4FpkyNE.js} +9 -9
  129. package/dist/{links-DtN6Zip4.js → links-DMJmXnBC.js} +1 -1
  130. package/dist/{live-repair-CbBURFc-.js → live-repair-Bz_jXKsv.js} +12 -12
  131. package/dist/llm-slug-generator.js +2 -2
  132. package/dist/{log-tail-DSgUyVuy.js → log-tail-3lDge34F.js} +7 -7
  133. package/dist/{logger-TMWfboh4.js → logger-BH0Ng0XL.js} +2 -2
  134. package/dist/{logging-DXugoHqu.js → logging-CSynrPc7.js} +1 -1
  135. package/dist/{logs-cli-BhvP6zOH.js → logs-cli-BpRiX5pm.js} +20 -20
  136. package/dist/{manager-DeJU6IQ3.js → manager-B9U2B9ZD.js} +17 -17
  137. package/dist/{manager-B2ZPvPP9.js → manager-CJIpzjld.js} +10 -10
  138. package/dist/{manager-Bw3BvR19.js → manager-DPzBUqR_.js} +1 -1
  139. package/dist/{markdown-tables-Cvm3FY0g.js → markdown-tables-DDn13kBS.js} +2 -2
  140. package/dist/{memory-cli-DWRwQYct.js → memory-cli-DhTo1Zod.js} +19 -19
  141. package/dist/{model-iLCMc1K1.js → model-DK1--R8G.js} +2 -2
  142. package/dist/{model-catalog-IZAm7vxT.js → model-catalog-Bo-Fyihc.js} +4 -4
  143. package/dist/{model-picker-TEQP1kqG.js → model-picker-yfyn372D.js} +4 -4
  144. package/dist/{models-C8nsMRLQ.js → models-DQ8P8kP3.js} +24 -24
  145. package/dist/{models-cli-C_tHirnw.js → models-cli-BgcR4Exx.js} +18 -18
  146. package/dist/{models-cli-B4xLIOFc.js → models-cli-DYWhxPkO.js} +111 -111
  147. package/dist/{models-config-COyV_5JN.js → models-config-DJTO7ngW.js} +7 -7
  148. package/dist/{node-cli-1r7DXmyR.js → node-cli-DWicnGBi.js} +3 -3
  149. package/dist/{node-cli-CcOYQNYG.js → node-cli-TVPaLcV6.js} +43 -43
  150. package/dist/{node-command-policy-DQ3xpsxF.js → node-command-policy-DXW0gACZ.js} +1 -1
  151. package/dist/{node-service-D4loK5LL.js → node-service-B2PMocVE.js} +1 -1
  152. package/dist/{nodes-cli-duW7tvW5.js → nodes-cli-D7zwQnbg.js} +26 -26
  153. package/dist/{nodes-screen-Cj7gGqy5.js → nodes-screen-BNh2me3N.js} +8 -8
  154. package/dist/{note-CzdXZOFH.js → note-CIEfvmda.js} +2 -2
  155. package/dist/{npm-pack-install-DC954ztS.js → npm-pack-install-DcfhfmQD.js} +23 -23
  156. package/dist/{npm-resolution-DjNRsPrE.js → npm-resolution-CfUBQFfN.js} +1 -1
  157. package/dist/{npm-resolution-7CvMNako.js → npm-resolution-D4Qm28gZ.js} +5 -5
  158. package/dist/{oauth-tls-preflight-D5qAcith.js → oauth-tls-preflight-S1P1M9Ik.js} +1 -1
  159. package/dist/{onboard-BRwdSaEZ.js → onboard-BvD9jey6.js} +2 -2
  160. package/dist/{onboard-DOq-9xkW.js → onboard-CBNCu0qo.js} +11 -11
  161. package/dist/{onboard-channels-DtFBZO3K.js → onboard-channels-Cfm1xNhD.js} +1 -1
  162. package/dist/{onboard-channels-RKPslaou.js → onboard-channels-F6-jE9Q4.js} +24 -24
  163. package/dist/{onboard-custom-B_IbBJHN.js → onboard-custom-DOGTl-wh.js} +4 -4
  164. package/dist/{onboard-helpers-CV2_sx_X.js → onboard-helpers-CrNbGK-_.js} +14 -14
  165. package/dist/{onboard-hooks-PDzAZcds.js → onboard-hooks-HF8fUNGq.js} +8 -8
  166. package/dist/{onboard-remote-Cc7ortQZ.js → onboard-remote-C3wAKiOr.js} +5 -5
  167. package/dist/{onboard-skills-D2WP55Qf.js → onboard-skills-_Y4g6XMV.js} +4 -4
  168. package/dist/{onboarding-CZB-jEDP.js → onboarding-D7zNU656.js} +18 -18
  169. package/dist/{onboarding-CUNJUHYe.js → onboarding-DAAosO4y.js} +3 -3
  170. package/dist/{onboarding.finalize-tQDsF0Ht.js → onboarding.finalize-DRyZQ35t.js} +23 -23
  171. package/dist/{onboarding.finalize-zo8Tr42K.js → onboarding.finalize-DswgDFUV.js} +119 -119
  172. package/dist/{onboarding.gateway-config-CcAYavIB.js → onboarding.gateway-config-B966E_Je.js} +18 -18
  173. package/dist/{onboarding.secret-input-hdMynEhM.js → onboarding.secret-input-rEXj_hwb.js} +1 -1
  174. package/dist/{openai-model-default-DgwEDHMc.js → openai-model-default-C7JSp9AY.js} +2 -2
  175. package/dist/{openclaw-root-CboPaWH8.js → openclaw-root-COWNwQGN.js} +2 -2
  176. package/dist/{operator-commands-DPTwKc1Q.js → operator-commands-Bt-GMvlt.js} +7 -7
  177. package/dist/{operator-commands-5zFJBNls.js → operator-commands-WclkbpNn.js} +2 -2
  178. package/dist/{outbound-attachment-eSRdTa0O.js → outbound-attachment-BqLrqvUz.js} +2 -2
  179. package/dist/{outbound-message-hooks-DCmApMZ7.js → outbound-message-hooks-BaL31mgo.js} +5 -5
  180. package/dist/{pairing-cli-BwAqmcbZ.js → pairing-cli--mX6NBbQ.js} +12 -12
  181. package/dist/{pairing-labels-Cmy5jzFo.js → pairing-labels-Cga04_F-.js} +1 -1
  182. package/dist/{pairing-store-C_emmXE4.js → pairing-store-baQ6verU.js} +3 -3
  183. package/dist/{path-alias-guards-Dn6kxDaO.js → path-alias-guards-CwFH4u4Y.js} +3 -3
  184. package/dist/{path-safety-BevSBibF.js → path-safety-bfKwXs6i.js} +1 -1
  185. package/dist/{pi-embedded-BXlLe43L.js → pi-embedded-C9hhorcY.js} +4 -4
  186. package/dist/{pi-embedded-w8WHdwfz.js → pi-embedded-DnsjQY9z.js} +4 -4
  187. package/dist/{pi-embedded-helpers-DIrkDh67.js → pi-embedded-helpers-BN8Yurrq.js} +8 -8
  188. package/dist/{pi-embedded-helpers-CGmQ4q3V.js → pi-embedded-helpers-CTXJgU8t.js} +1 -1
  189. package/dist/{pi-embedded-recovery-adapter-C-NuyPbb.js → pi-embedded-recovery-adapter-DZGloafF.js} +7 -7
  190. package/dist/{pi-embedded-recovery-adapter-B2XOvHxn.js → pi-embedded-recovery-adapter-bRl54qXI.js} +35 -35
  191. package/dist/{pi-embedded-utils-BdxZbV9G.js → pi-embedded-utils-CKNzzRk4.js} +1 -1
  192. package/dist/{pi-embedded-utils-CPX6p6Wq.js → pi-embedded-utils-DbCTbP_M.js} +2 -2
  193. package/dist/{pi-model-discovery-xwVo_Za1.js → pi-model-discovery-YsMuufO6.js} +1 -1
  194. package/dist/{pi-tools.policy-CeC8xqRL.js → pi-tools.policy-D4DT9S9M.js} +1 -1
  195. package/dist/{pid-alive-C13jc975.js → pid-alive-BkVX-P5U.js} +1 -1
  196. package/dist/{plugin-owned-work-recovery-adapter-CTpAqPxI.js → plugin-owned-work-recovery-adapter-qw7iAOXJ.js} +9 -9
  197. package/dist/{plugin-registry-B2PFGUgH.js → plugin-registry-Bb5cRSlw.js} +1 -1
  198. package/dist/{plugin-registry-B9UcnywB.js → plugin-registry-CctiIjXS.js} +4 -4
  199. package/dist/plugin-sdk/{agent-turn-execute-CvcGPIWd.js → agent-turn-execute-DLOD3wIK.js} +12 -12
  200. package/dist/plugin-sdk/{agent-turn-execute-Du5-PizP.js → agent-turn-execute-DiYinYcI.js} +2 -2
  201. package/dist/plugin-sdk/{agent-turn-runner-Dy2l1QuN.js → agent-turn-runner-BB3xBOkd.js} +3 -3
  202. package/dist/plugin-sdk/{agent-turn-runner-L6nWVyBs.js → agent-turn-runner-CP3CvHV_.js} +4 -4
  203. package/dist/plugin-sdk/{agent-turn-runner-BeIHlu2z.js → agent-turn-runner-Dz8mhXhJ.js} +1 -1
  204. package/dist/plugin-sdk/{audio-preflight-CVnT3CVi.js → audio-preflight-CdnIoP9g.js} +5 -5
  205. package/dist/plugin-sdk/{audio-transcription-runner-ff3d2MOe.js → audio-transcription-runner-ErPyMiHI.js} +1 -1
  206. package/dist/plugin-sdk/{chrome-D_wgFXHF.js → chrome-2r09CGaD.js} +8 -8
  207. package/dist/plugin-sdk/{command-detection-BRxqdaeL.js → command-detection-BHkl3aqL.js} +8 -8
  208. package/dist/plugin-sdk/{command-queue-CoRZcHy1.js → command-queue-BBOur699.js} +1 -1
  209. package/dist/plugin-sdk/{deliver-Cysu3ebt.js → deliver-0l2lZQiz.js} +3 -3
  210. package/dist/plugin-sdk/{deliver-BPg9MhVY.js → deliver-oSzFg9Zh.js} +1 -1
  211. package/dist/plugin-sdk/{diagnostic-CxHjTbyN.js → diagnostic-DQU_mY9i.js} +1 -1
  212. package/dist/plugin-sdk/index.js +2 -2
  213. package/dist/plugin-sdk/{pi-embedded-helpers-3gQz4b-b.js → pi-embedded-helpers-CNresdUf.js} +3 -3
  214. package/dist/plugin-sdk/{pi-embedded-utils-B49ia5m9.js → pi-embedded-utils-BEsRXBxc.js} +1 -1
  215. package/dist/plugin-sdk/{provider-dispatcher-B6b1Tdf0.js → provider-dispatcher-B8jJvLuR.js} +12 -12
  216. package/dist/plugin-sdk/{provider-dispatcher-B_iAXu2L.js → provider-dispatcher-hEp4znDa.js} +2 -2
  217. package/dist/plugin-sdk/{provider-image-VB9UOYSc.js → provider-image-CLWV4QQx.js} +4 -4
  218. package/dist/plugin-sdk/{provider-image-BKK0zQaJ.js → provider-image-WXG9I5WJ.js} +1 -1
  219. package/dist/plugin-sdk/{pw-ai-Zbmk8kti.js → pw-ai-kQB2ywnc.js} +1 -1
  220. package/dist/plugin-sdk/{runs-BmnkOAK5.js → runs-BcvvvV1J.js} +5 -5
  221. package/dist/plugin-sdk/{runs-Cr3XjmfA.js → runs-DE0G2LLI.js} +3 -3
  222. package/dist/plugin-sdk/{send-BrY7hRBo.js → send-CAiazzHI.js} +1 -1
  223. package/dist/plugin-sdk/{send-BcjKhfe8.js → send-Cn7YLM0P.js} +2 -2
  224. package/dist/plugin-sdk/{subagent-registry-BKwSNawW.js → subagent-registry-DD2djKv0.js} +2 -2
  225. package/dist/plugin-sdk/{subagent-registry-CIa1HABo.js → subagent-registry-UCbHoVJ2.js} +12 -12
  226. package/dist/plugin-sdk/testing.js +12 -12
  227. package/dist/plugin-sdk/{tools-DaFWYu0p.js → tools-yY7tjcsw.js} +35 -35
  228. package/dist/{plugins-cli-1_-Vf-1l.js → plugins-cli-6xqfmKxn.js} +114 -114
  229. package/dist/{plugins-cli-DksAX0ZH.js → plugins-cli-BhFLmnOz.js} +19 -19
  230. package/dist/{polling-timeout-CkFkpq_s.js → polling-timeout-x98FlzJG.js} +3 -3
  231. package/dist/{ports-dAGF3BJj.js → ports-B3y3yrTs.js} +2 -2
  232. package/dist/{ports-CLSVg-y-.js → ports-BzAUXaPL.js} +3 -3
  233. package/dist/{program-CBA0lcpg.js → program-C9Qgghl2.js} +110 -110
  234. package/dist/{program-context-DT5nb3SH.js → program-context-1o3YvOVB.js} +22 -22
  235. package/dist/{progress-C9R_51fN.js → progress-B5oGktxz.js} +2 -2
  236. package/dist/{prompt-select-styled-6JwLDntm.js → prompt-select-styled-BQSHxNZN.js} +50 -50
  237. package/dist/{prompt-select-styled-NPt5vMpO.js → prompt-select-styled-Nu1AAYTo.js} +7 -7
  238. package/dist/{prompt-style-B28wDUyJ.js → prompt-style-0wL61aMk.js} +1 -1
  239. package/dist/{provider-auth-helpers-CEgvqik4.js → provider-auth-helpers-SxWqAhy1.js} +6 -6
  240. package/dist/{provider-image-g7zj1qnV.js → provider-image-BNv43756.js} +1 -1
  241. package/dist/{provider-image-aaxt6RAc.js → provider-image-GRI3ijiz.js} +6 -6
  242. package/dist/{proxy-CkTukFRT.js → proxy-ZTZCSX-m.js} +1 -1
  243. package/dist/{proxy-env-C4AxlnMs.js → proxy-env-CCYLPZqe.js} +1 -1
  244. package/dist/{proxy-fetch-1FMAlfeR.js → proxy-fetch-CZr5_YhZ.js} +1 -1
  245. package/dist/{push-apns-CFg1Pls0.js → push-apns-BBk7vMkD.js} +2 -2
  246. package/dist/{push-apns-CzI1yOz3.js → push-apns-CQyCSGes.js} +10 -10
  247. package/dist/{pw-ai-CdFOuZvs.js → pw-ai-DbW_Bkcx.js} +1 -1
  248. package/dist/{pw-ai-Dt33khMR.js → pw-ai-ge-z9mqK.js} +20 -20
  249. package/dist/{qmd-manager-BhetUUi5.js → qmd-manager-CUcr1mRz.js} +25 -25
  250. package/dist/{qr-cli-B_Pgraov.js → qr-cli-DGwCKU0G.js} +8 -8
  251. package/dist/{query-expansion-DMbjUCTJ.js → query-expansion-B4NP6yYt.js} +14 -14
  252. package/dist/{reconcile-bundled-BoVqHall.js → reconcile-bundled-4XBos81c.js} +3 -3
  253. package/dist/{recorder-BvsmIV06.js → recorder-B0k_MKgq.js} +4 -4
  254. package/dist/{recovery-adapter-B4vChz-g.js → recovery-adapter-BIlkWPdE.js} +3 -3
  255. package/dist/{recovery-adapter-CKVSN97E.js → recovery-adapter-Bo68TZ6b.js} +2 -2
  256. package/dist/{recovery-adapter-CceBubi1.js → recovery-adapter-Ch6Lpdvn.js} +3 -3
  257. package/dist/{recovery-adapter-mRcci7h2.js → recovery-adapter-DwNfvaLJ.js} +1 -1
  258. package/dist/{recovery-adapter-AyGJinhV.js → recovery-adapter-oenmjmOn.js} +7 -7
  259. package/dist/{recovery-prompt-DqlKavmj.js → recovery-prompt-TDeXDlMW.js} +1 -1
  260. package/dist/{redact-snapshot-DN2rZBNX.js → redact-snapshot-A7NLIiwR.js} +5 -5
  261. package/dist/{register.agent-DutRzrDw.js → register.agent-B9Hg0vf2.js} +21 -21
  262. package/dist/{register.agent-Bn9JYMpq.js → register.agent-D3_1aKeG.js} +124 -124
  263. package/dist/register.configure-4XbHAmwj.js +170 -0
  264. package/dist/{register.configure-xWvz_EH_.js → register.configure-DAnWVJBA.js} +22 -22
  265. package/dist/{register.maintenance-C-WBHuPN.js → register.maintenance-CC3S9JmF.js} +131 -131
  266. package/dist/{register.maintenance-CVWnFB5G.js → register.maintenance-Chb5KnZ1.js} +24 -24
  267. package/dist/{register.message-DeS_ZYNe.js → register.message-Bq38RXah.js} +104 -104
  268. package/dist/{register.message-CAfIrnM2.js → register.message-DLtovAgJ.js} +19 -19
  269. package/dist/{register.onboard-C0OyLZD3.js → register.onboard-4vT5Xjc4.js} +2 -2
  270. package/dist/{register.onboard-DD2wOgqE.js → register.onboard-BMXxAu95.js} +23 -23
  271. package/dist/{register.setup-BbohcO_k.js → register.setup-D2bCcb0v.js} +2 -2
  272. package/dist/{register.setup-CBDKdAuo.js → register.setup-fpmCv1_b.js} +28 -28
  273. package/dist/{register.status-health-sessions-B6c4a4og.js → register.status-health-sessions-Ds4IsnQw.js} +121 -121
  274. package/dist/{register.status-health-sessions-8pYJLyOn.js → register.status-health-sessions-RCBhd23C.js} +21 -21
  275. package/dist/{register.subclis-Cl9g9lxA.js → register.subclis-BkKWZGVK.js} +34 -34
  276. package/dist/{replay-DTUqQwQf.js → replay-SxJXbQMf.js} +1 -1
  277. package/dist/{replies-zxrU3Tlk.js → replies-CI-WAhGv.js} +4 -4
  278. package/dist/{reply-CBqjA8n7.js → reply-Ct_Nttkg.js} +27 -27
  279. package/dist/{reply-directives-C7J_kRAY.js → reply-directives-DjJmEA55.js} +2 -2
  280. package/dist/{reply-prefix-DQs4kcQX.js → reply-prefix-EVut-MnZ.js} +1 -1
  281. package/dist/{resolve-route-c5P6_dQM.js → resolve-route-B5nwCVT3.js} +5 -5
  282. package/dist/{rpc-DzvZPivH.js → rpc-Dg7Qb-TD.js} +3 -3
  283. package/dist/{run-main-D4QMp_dA.js → run-main-DFrkQ_9h.js} +123 -123
  284. package/dist/{runs-aQfLgwCB.js → runs-DD81n7Ms.js} +3 -3
  285. package/dist/{runs-DSFjMpng.js → runs-fddM4kFw.js} +7 -7
  286. package/dist/{runtime-Cr79MQoI.js → runtime-B9bvj6Qk.js} +4 -4
  287. package/dist/{runtime-config-collectors-do8FUpaL.js → runtime-config-collectors-0bUIcOaI.js} +1 -1
  288. package/dist/{runtime-guard-B1qwuALe.js → runtime-guard-D9TCGAy5.js} +1 -1
  289. package/dist/{sandbox-BWNy2kKu.js → sandbox-CTl9v7Zl.js} +19 -19
  290. package/dist/{sandbox-Cwa9IoDE.js → sandbox-DOTsK9wx.js} +1 -1
  291. package/dist/{sandbox-cli-OzJuP-NO.js → sandbox-cli-Dbco2fmj.js} +29 -29
  292. package/dist/{sandbox-cli-D7bBMoyk.js → sandbox-cli-Dni8o7vC.js} +2 -2
  293. package/dist/{secrets-cli-CuDyP904.js → secrets-cli-DF_Gm1ne.js} +18 -18
  294. package/dist/{security-cli-DG2tPUA1.js → security-cli-Csr_oecn.js} +4 -4
  295. package/dist/{security-cli-CuUjDnHc.js → security-cli-PByAeZXI.js} +46 -46
  296. package/dist/{send-DnUxCZe9.js → send-BgWc92i5.js} +7 -7
  297. package/dist/{send-2z5d8MNL.js → send-Byoa_3gu.js} +1 -1
  298. package/dist/{send-CCM9Q6bQ.js → send-CrP3wO_5.js} +15 -15
  299. package/dist/{send-D7jSVo_g.js → send-DLkrlosm.js} +6 -6
  300. package/dist/{send-B7qZuE28.js → send-DiY7W1su.js} +14 -14
  301. package/dist/{send-D20u05DD.js → send-wFJCwq2b.js} +6 -6
  302. package/dist/{server-DwmiIbpy.js → server-BL9VNWdw.js} +26 -26
  303. package/dist/{server-C7fLuSa8.js → server-CDY9yWOl.js} +4 -4
  304. package/dist/{server-context-DynQOaQg.js → server-context-9rNFuDom.js} +12 -12
  305. package/dist/{server-context-8stiwx24.js → server-context-Bj1ur5Oz.js} +2 -2
  306. package/dist/{server-lifecycle-BIVcQYRv.js → server-lifecycle-Bp3jx730.js} +1 -1
  307. package/dist/{server-lifecycle-D6K5clGz.js → server-lifecycle-DSO272t7.js} +3 -3
  308. package/dist/{server-middleware-v9W3NbYv.js → server-middleware-DYNp96xm.js} +1 -1
  309. package/dist/{server-node-events-BMt_M17o.js → server-node-events-BwK321yc.js} +104 -104
  310. package/dist/{server-node-events-BSBNXNIr.js → server-node-events-DgxhwOwJ.js} +19 -19
  311. package/dist/{service-sEfdnvlL.js → service-Bgu5Jb1v.js} +15 -15
  312. package/dist/{session-consumer-agents-UmHVjny8.js → session-consumer-agents-DAH-kXNx.js} +1 -1
  313. package/dist/{session-consumer-claim-sweep-Cj9dsF9C.js → session-consumer-claim-sweep-BSXd3X9B.js} +9 -9
  314. package/dist/{session-cost-usage-LPAN7gwx.js → session-cost-usage-EMOsv4X6.js} +3 -3
  315. package/dist/{session-key-DOZk0n1g.js → session-key-DUkQn_1S.js} +1 -1
  316. package/dist/{session-key-resolution-hIMY6OcY.js → session-key-resolution-CJwcMEFa.js} +5 -5
  317. package/dist/{session-meta-BDUMkHJb.js → session-meta-fp99Ucj0.js} +2 -2
  318. package/dist/{session-storage-Q7_7zqHG.js → session-storage-Cv--6bmD.js} +8 -8
  319. package/dist/{session-utils-DgeX06NV.js → session-utils-CqNuZUiP.js} +8 -8
  320. package/dist/{session-visibility-nhFy_Gw1.js → session-visibility-DDVDfSgP.js} +1 -1
  321. package/dist/{sessions-BxMxYroM.js → sessions-07wpEhac.js} +6 -6
  322. package/dist/{sessions-DZ8P5diO.js → sessions-BZDMSv9h.js} +18 -18
  323. package/dist/{sessions-C_jFLMEh.js → sessions-BwZJJVht.js} +6 -6
  324. package/dist/{sessions-claims-status-t1wpfQOP.js → sessions-claims-status-oxEV_8dP.js} +13 -13
  325. package/dist/{shared-CJ6JfVC4.js → shared-CMnRp0WD.js} +4 -4
  326. package/dist/{shared-obDhggWf.js → shared-D-BmVOFv.js} +2 -2
  327. package/dist/{skill-commands-B7CuemwQ.js → skill-commands-D8oby-tg.js} +7 -7
  328. package/dist/{skill-scanner-BxTzIAOh.js → skill-scanner-CZtMQPss.js} +7 -7
  329. package/dist/{skills-cli-BbHYlMC7.js → skills-cli-n5H-N1cq.js} +11 -11
  330. package/dist/{skills-install-DVhyMvdI.js → skills-install--byu1k9q.js} +10 -10
  331. package/dist/{skills-DeS5IuN9.js → skills-is3ptAyK.js} +7 -7
  332. package/dist/{skills-status-C7Zpodqv.js → skills-status-W21GYLbg.js} +4 -4
  333. package/dist/{status-B_6KFA2c.js → status-BfyTowAG.js} +38 -38
  334. package/dist/{status-KfElvy9J.js → status-D4HIujTf.js} +5 -5
  335. package/dist/{status.update-BMspb099.js → status.update-B1eq7pdk.js} +2 -2
  336. package/dist/{store-DJzisOaQ.js → store-DhI4pUSq.js} +7 -7
  337. package/dist/{subsystem-CnWdoPKw.js → subsystem-hb8IlZoK.js} +1 -1
  338. package/dist/{supervisor-BQDbdMGN.js → supervisor-Zyuzbqyy.js} +2 -2
  339. package/dist/{supervisor-recovery-adapter-N6EUk8-8.js → supervisor-recovery-adapter-DTYM-NtU.js} +9 -9
  340. package/dist/{system-cli-B0-oIiYA.js → system-cli-_hIBzh2q.js} +15 -15
  341. package/dist/{system-run-command-CM2z0iTS.js → system-run-command-s2Tv4J5i.js} +2 -2
  342. package/dist/{systemd-5fQ38YAS.js → systemd-T59ZX7hx.js} +11 -11
  343. package/dist/{systemd-hints-Bg_lvqW1.js → systemd-hints-CvSycleX.js} +9 -9
  344. package/dist/{systemd-linger-C20mA76T.js → systemd-linger-DO8CH_6c.js} +2 -2
  345. package/dist/{table-Dh1-mIyu.js → table-D3ffCcko.js} +2 -2
  346. package/dist/{tables-DR5pT4X-.js → tables-B4TgPkaN.js} +1 -1
  347. package/dist/{tailnet-CzWmlGVj.js → tailnet-WoH6OAwd.js} +1 -1
  348. package/dist/{tailscale-CvPUJvZS.js → tailscale-CZstSM_6.js} +2 -2
  349. package/dist/{task-pipeline-boot-Ce3PbnWC.js → task-pipeline-boot-KeVASmJb.js} +19 -19
  350. package/dist/{task-pipeline-boot-BrIBh2as.js → task-pipeline-boot-fQcIficV.js} +103 -103
  351. package/dist/{task-runlog-retention-Ccy6500r.js → task-runlog-retention-BL9X61tX.js} +2 -2
  352. package/dist/{task-runlog-retention-CKaDA84s.js → task-runlog-retention-_NAHcblu.js} +5 -5
  353. package/dist/{tasks-Bb8K1o9w.js → tasks-COKlHjUw.js} +13 -13
  354. package/dist/{tokens-ZXYKMPyD.js → tokens-Cv29oi2m.js} +1 -1
  355. package/dist/{tool-display-DorcgRYO.js → tool-display-C4RBYVSp.js} +1 -1
  356. package/dist/{tool-loop-detection-I5BtAA42.js → tool-loop-detection-HY9HSq9r.js} +2 -2
  357. package/dist/{trash-n9DbVlPq.js → trash-C7Ej284e.js} +3 -3
  358. package/dist/{tui-ryPvmZxo.js → tui-cfhCpw02.js} +9 -9
  359. package/dist/{tui-cli-CUysqEul.js → tui-cli-B2wBAyhp.js} +4 -4
  360. package/dist/{tui-cli-DWng-d8I.js → tui-cli-BWFTsmKk.js} +34 -34
  361. package/dist/{tui-AmM0FZrJ.js → tui-kMJhhJ7-.js} +1 -1
  362. package/dist/{update-DHDJZALz.js → update-DuRR-bjT.js} +3 -3
  363. package/dist/{update-cli-BiiWrX-b.js → update-cli-BVU7mNge.js} +141 -141
  364. package/dist/{update-cli-BoBS_5AA.js → update-cli-DcR4OrvV.js} +24 -24
  365. package/dist/{update-runner-tH30mnIz.js → update-runner-BChTTDr6.js} +18 -18
  366. package/dist/{update-runner-W_Tfzgw5.js → update-runner-Bv7o_DkR.js} +1 -1
  367. package/dist/{user-run-recording-8SPArkeP.js → user-run-recording-CXcaMyeC.js} +2 -2
  368. package/dist/{validation-cli-DHYbbZSf.js → validation-cli-BtMLqpQV.js} +103 -103
  369. package/dist/{validation-cli-lq97iRX5.js → validation-cli-DWr4aaEj.js} +19 -19
  370. package/dist/{web-cli-DI1nu_Wf.js → web-cli-BaKAD5an.js} +3 -3
  371. package/dist/{web-client-assets-OrZLUEre.js → web-client-assets-QQcA7AGj.js} +1 -1
  372. package/dist/{webhooks-cli-hHB0C7Z_.js → webhooks-cli-DskNYYRT.js} +13 -13
  373. package/dist/{widearea-dns-C8y2THbl.js → widearea-dns-B-wnhlHs.js} +1 -1
  374. package/dist/{with-timeout-DaYVHGfP.js → with-timeout-CQ_KubTO.js} +2 -2
  375. package/dist/{with-timeout-CJixlkca.js → with-timeout-CumbEUij.js} +6 -6
  376. package/dist/{workspace-sbrDBGDT.js → workspace-CbjGomBJ.js} +3 -3
  377. package/dist/{workspace-dirs-BHMnsvJx.js → workspace-dirs-DTAkF1kC.js} +1 -1
  378. package/dist/{ws-DIjS49am.js → ws-Bq_zwewv.js} +2 -2
  379. package/dist/{wsl-BJW8nTyL.js → wsl-CgXDjE09.js} +2 -2
  380. package/extensions/acpx/package.json +1 -1
  381. package/extensions/anthropic/package.json +1 -1
  382. package/extensions/bifrost/package.json +1 -1
  383. package/extensions/bluebubbles/package.json +1 -1
  384. package/extensions/copilot-proxy/package.json +1 -1
  385. package/extensions/deepgram/package.json +1 -1
  386. package/extensions/deepinfra/package.json +1 -1
  387. package/extensions/diagnostics-otel/package.json +1 -1
  388. package/extensions/diffs/package.json +1 -1
  389. package/extensions/discord/package.json +1 -1
  390. package/extensions/dream-cycle/package.json +1 -1
  391. package/extensions/elevenlabs/package.json +1 -1
  392. package/extensions/feishu/package.json +1 -1
  393. package/extensions/gemini-search/package.json +1 -1
  394. package/extensions/google/package.json +1 -1
  395. package/extensions/google-gemini-cli-auth/package.json +1 -1
  396. package/extensions/googlechat/package.json +1 -1
  397. package/extensions/grok-search/package.json +1 -1
  398. package/extensions/groq/package.json +1 -1
  399. package/extensions/imessage/package.json +1 -1
  400. package/extensions/irc/package.json +1 -1
  401. package/extensions/kimi-search/package.json +1 -1
  402. package/extensions/learning-core/package.json +1 -1
  403. package/extensions/line/package.json +1 -1
  404. package/extensions/llm-task/package.json +1 -1
  405. package/extensions/lobster/package.json +1 -1
  406. package/extensions/matrix/CHANGELOG.md +1 -1
  407. package/extensions/matrix/package.json +1 -1
  408. package/extensions/mattermost/package.json +1 -1
  409. package/extensions/memory-core/package.json +1 -1
  410. package/extensions/memory-lancedb/package.json +1 -1
  411. package/extensions/minimax/package.json +1 -1
  412. package/extensions/minimax-portal-auth/package.json +1 -1
  413. package/extensions/mistral/package.json +1 -1
  414. package/extensions/moonshot/package.json +1 -1
  415. package/extensions/msteams/CHANGELOG.md +1 -1
  416. package/extensions/msteams/package.json +1 -1
  417. package/extensions/nextcloud-talk/package.json +1 -1
  418. package/extensions/nostr/CHANGELOG.md +1 -1
  419. package/extensions/nostr/package.json +1 -1
  420. package/extensions/open-prose/package.json +1 -1
  421. package/extensions/openai/package.json +1 -1
  422. package/extensions/openai-realtime/package.json +1 -1
  423. package/extensions/openrouter/package.json +1 -1
  424. package/extensions/perplexity-search/package.json +1 -1
  425. package/extensions/searxng-search/package.json +1 -1
  426. package/extensions/signal/package.json +1 -1
  427. package/extensions/slack/package.json +1 -1
  428. package/extensions/synology-chat/package.json +1 -1
  429. package/extensions/telegram/package.json +1 -1
  430. package/extensions/tlon/package.json +1 -1
  431. package/extensions/twitch/CHANGELOG.md +1 -1
  432. package/extensions/twitch/package.json +1 -1
  433. package/extensions/voice-call/CHANGELOG.md +1 -1
  434. package/extensions/voice-call/package.json +1 -1
  435. package/extensions/whatsapp/package.json +1 -1
  436. package/extensions/zai/package.json +1 -1
  437. package/extensions/zalo/CHANGELOG.md +1 -1
  438. package/extensions/zalo/package.json +1 -1
  439. package/extensions/zalouser/CHANGELOG.md +1 -1
  440. package/extensions/zalouser/package.json +1 -1
  441. package/package.json +1 -1
  442. package/dist/cli-Bao_Zkv0.js +0 -166
  443. package/dist/register.configure-CE9sH5t0.js +0 -170
@@ -1,128 +1,128 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { Dt as sliceUtf16Safe, Et as sleep$1, H as openBoundaryFileSync, L as isBlockedObjectKey, N as INCLUDE_KEY, O as normalizeLogLevel, Ot as truncateUtf16Safe, Q as normalizeWindowsPathForComparison, St as resolveUserPath, Tt as shortenHomePath, V as openBoundaryFile, _t as isRecord$1, a as logVerbose, c as shouldLogVerbose, ct as CONFIG_DIR, ht as escapeRegExp, kt as resolvePreferredOpenClawTmpDir, m as getChildLogger, p as theme, t as danger, tt as isDangerousHostEnvVarName, u as warn, ut as clampInt, vt as normalizeE164, wt as shortenHomeInString, x as appendFileLog } from "./globals-NHZhvbUb.js";
2
+ import { Dt as sliceUtf16Safe, Et as sleep$1, H as openBoundaryFileSync, L as isBlockedObjectKey, N as INCLUDE_KEY, O as normalizeLogLevel, Ot as truncateUtf16Safe, Q as normalizeWindowsPathForComparison, St as resolveUserPath, Tt as shortenHomePath, V as openBoundaryFile, _t as isRecord$1, a as logVerbose, c as shouldLogVerbose, ct as CONFIG_DIR, ht as escapeRegExp, kt as resolvePreferredOpenClawTmpDir, m as getChildLogger, p as theme, t as danger, tt as isDangerousHostEnvVarName, u as warn, ut as clampInt, vt as normalizeE164, wt as shortenHomeInString, x as appendFileLog } from "./globals-DzEfsMsj.js";
3
3
  import { g as resolveStateDir, r as STATE_DIR, u as resolveGatewayPort, y as resolveRequiredHomeDir } from "./paths-BMo6kTge.js";
4
4
  import { t as isPlainObject } from "./plain-object-CLm2c5Nu.js";
5
- import { m as defaultRuntime, p as createNonExitingRuntime, t as createSubsystemLogger } from "./subsystem-CnWdoPKw.js";
5
+ import { m as defaultRuntime, p as createNonExitingRuntime, t as createSubsystemLogger } from "./subsystem-hb8IlZoK.js";
6
6
  import { t as parseBooleanValue$1 } from "./boolean-C71HJEcH.js";
7
7
  import { r as isTruthyEnvValue } from "./entry.js";
8
- import { c as enqueueAgentTurn, d as mergeDelayedAgentTurn, f as peekDelayedAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, m as WORKSPACE_LANE_DENIED_REASON, o as clearDelayedReleaseHold, p as setDelayedReleaseHold } from "./agent-turn-enqueue-DoWWsxog.js";
9
- import { $ as isAvatarHttpUrl, $n as normalizeDeliveryContext, $t as createPluginRegistry, $u as normalizeResolvedSecretInputString, A as resolveExecPolicyPreset, Aa as setSessionRuntimeModel, Ac as buildModelAliasIndex, Al as resolveApiKeyForProvider, Ao as INTERNAL_MESSAGE_CHANNEL, Ar as parseInlineDirectives$1, Au as ensureAuthProfileStore, Ba as normalizeChannelId$1, Bc as parseModelRef, Bo as resolveMessageChannel, Bu as withFileLock, C as normalizeScpRemoteHost, Ca as resolveChannelResetConfig, Ci as drainPendingPrimaryWrites, Cl as buildAssistantMessage, Co as resolveChannelGroupPolicy, Cs as getConfigValueAtPath, Cu as dedupeProfileIds, Da as DEFAULT_RESET_TRIGGERS, Di as onSessionTranscriptUpdate, Dl as getApiKeyForModel, Do as resolveAccountEntry, Dr as stripLeadingInboundMetadata, Dt as safeStatSync, Ea as resolveThreadFlag, Ei as emitSessionTranscriptUpdate, El as buildUsageWithNoCost, Es as unsetConfigValueAtPath, Et as isPathInside, Fc as modelKey, Fo as isMarkdownCapableMessageChannel, Fr as hasInterSessionUserProvenance, Ga as createTelegramActionGate, Gl as isProfileInCooldown, Gn as updateLastRoute, Ha as getChannelDock, Ho as GATEWAY_CLIENT_IDS, Ht as getActivePluginRegistry, Ia as deriveSessionMetaPatch, Ic as normalizeModelRef$2, Ir as normalizeInputProvenance, Jn as isCacheEnabled, Jo as normalizeAtHashSlug, Jt as setActivePluginRegistry, Ka as listEnabledTelegramAccounts, Kc as resolveModelRefFromString, Kl as markAuthProfileFailure, Kn as updateSessionStore, Kt as requireActivePluginRegistry, Ku as normalizeSecretInput, Lo as listDeliverableMessageChannels, Lr as jsonUtf8Bytes, Lt as normalizeAnyChannelId, Lu as resolveAuthStorePathForDisplay, Ma as resolveAgentMainSessionKey, Ml as resolveEnvApiKey, Mn as getConfiguredSessionStorageRuntime, Mt as CHAT_CHANNEL_ORDER, Na as resolveExplicitAgentSessionKey, Nl as resolveModelAuthMode, Nn as isPreservationArmed, No as isGatewayMessageChannel, Oa as mergeSessionEntry, Oc as buildAllowedModelSet, Ol as getCustomProviderApiKey, Pa as resolveMainSessionKey, Pc as isCliProvider, Pn as loadSessionStore, Po as isInternalMessageChannel, Pr as applyInputProvenanceToUserMessage, Ps as buildEnforcedShellCommand, Q as isAvatarDataUrl, Qn as mergeDeliveryContext, Qo as acquireSessionWriteLock, Ra as getChannelPlugin, Rc as normalizeProviderId, Rn as readSessionUpdatedAt, Ro as normalizeMessageChannel, Rt as normalizeChannelId$2, Ru as resolveOpenClawAgentDir, S as resolveIMessageRemoteAttachmentRoots, Si as createPrimaryWriteInterceptor, Sl as createOllamaStreamFn, Sn as triggerInternalHook, So as normalizeDiscordToken, Ss as unsetConfigOverride, Ta as resolveSessionResetType, Tc as resolveAgentMaxConcurrent, Ti as hydrateSessionManagerFromDb, Tl as buildStreamErrorAssistantMessage, Ts as setConfigValueAtPath, Tt as discoverOpenClawPlugins, Tu as markAuthProfileGood, Ua as listChannelDocks, Uc as resolveConfiguredModelRef, Ul as resolveAuthProfileOrder, Uo as GATEWAY_CLIENT_MODES, Ut as getActivePluginRegistryKey, Vt as getActiveGatewayPluginRegistry, Vu as resolveAuthProfileDisplayLabel, Wa as normalizeSignalMessagingTarget, Wc as resolveDefaultModelForAgent, Wl as getSoonestCooldownExpiry, Wn as syncConfiguredSessionTranscriptToRuntime, Wo as GATEWAY_CLIENT_NAMES, Xa as resolveTelegramToken, Xc as resolveThinkingDefault, Xl as resolveApiKeyForProfile, Xn as deliveryContextFromSession, Xo as normalizeStringEntries, Xt as addRegisteredPluginApi, Ya as resolveTelegramAccount, Yc as resolveSubagentSpawnModelSelection, Yl as resolveProfilesUnavailableReason, Yn as resolveCacheTtlMs$1, Yo as normalizeHyphenSlug, Z as AVATAR_MAX_BYTES, Za as buildChannelAccountBindings, Zn as deliveryContextKey, Zo as normalizeStringEntriesLower, Zt as clearRegisteredPluginApis, _ as resolveTelegramCustomCommands, _i as resolveAndPersistSessionFile, _o as createDiscordActionGate, _t as normalizePluginsConfig, aa as toJsonValue$1, ad as DEFAULT_PROVIDER, an as normalizePluginHttpPath, ao as resolveSlackBotToken, ba as resolveSessionKey, bi as isJsonlSessionBackend, bn as createInternalHookEvent, bs as resetConfigOverrides, bt as resolveMemorySlotDecision, c as readConfigFileSnapshot, ca as formatUtcTimestamp, cd as resolveShellEnvFallbackTimeoutMs, cn as clearPluginCommands, da as resolveSenderLabel, dd as resolveOwnerDisplaySetting, dn as listPluginCommands, do as normalizeWhatsAppTarget, ds as listBufferedPluginTaskPasses, er as normalizeSessionDeliveryFields, es as resolveSessionLockMaxHoldFromTimeout, f as writeConfigFile, fa as derivePromptTokens, fc as mapStreamingModeToSlackLegacyDraftStreamMode, fi as extractDeliveryInfo, fn as matchPluginCommand, g as normalizeTelegramCommandName, ga as normalizeUsage, gi as resolveMirroredTranscriptText, go as resolveIMessageAccount, gs as RecoveryAdmissionError, h as TELEGRAM_COMMAND_NAME_PATTERN, ha as makeZeroUsageSnapshot, hc as resolveSlackStreamingMode, ht as isBundledChannelEnabledByChannelConfig, ia as mergePromptContributions, id as DEFAULT_MODEL, io as resolveSlackAppToken, ir as capArrayByJsonBytes, ja as canonicalizeMainSessionAlias, jc as findNormalizedProviderValue, jn as getActivePreservationLease, jo as isDeliverableMessageChannel, ka as resolveFreshSessionTotalTokens, kc as buildConfiguredAllowlistKeys, kl as requireApiKey, ko as resolveGroupSessionKey, la as formatZonedTimestamp, li as writeJsonAtomic, ln as executePluginCommand, lo as resolveSignalAccount, ls as discardBufferedPluginTaskPasses, lt as loadPluginManifestRegistry, ma as hasNonzeroUsage, mc as resolveSlackNativeStreaming, mi as appendAssistantMessageToSessionTranscript, mt as applyTestPluginDefaults, na as sha256, nd as splitTrailingAuthProfile, no as resolveSlackAccount, nt as isSupportedLocalAvatarExtension, o as loadConfig, oa as buildInboundMetaSystemPrompt, oc as applyMergePatch, on as buildPluginHealthReport, oo as listEnabledSignalAccounts, ot as validateJsonSchemaValue, p as validateConfigObjectWithPlugins, pa as deriveSessionTotalTokens, pc as resolveDiscordPreviewStreamMode, pi as parseSessionThreadInfo, pl as retryAsync, pn as registerPluginCommand, po as resolveWhatsAppAccount, ps as replaceBufferedPluginTaskPasses, pt as BUNDLED_ENABLED_BY_DEFAULT, qa as listTelegramAccountIds, qc as resolveReasoningDefault, ql as markAuthProfileUsed, qn as updateSessionStoreEntry, ra as createCurrentUserPromptEnvelope, rd as DEFAULT_CONTEXT_TOKENS, ro as resolveSlackReplyToMode, rr as archiveSessionTranscripts, sa as buildInboundUserContextPrefix, sd as getShellPathFromLoginShell, ta as sanitizeJsonb, tr as normalizeAccountId$3, ts as readTaskWorkStates, tt as isPathWithinRoot, ua as resolveTimezone, ui as parseDurationMs, un as getPluginCommandSpecs, uo as isWhatsAppGroupJid, vt as resolveEffectiveEnableState, w as parseNonNegativeByteSize, wa as resolveSessionResetPolicy, wc as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, wi as DB_SESSION_HYDRATION_LIMIT, wl as buildAssistantMessageWithZeroUsage, wo as resolveChannelGroupRequireMention, ws as parseConfigPath, wu as listProfilesForProvider, x as resolveIMessageAttachmentRoots, xa as evaluateSessionFreshness, xl as OLLAMA_NATIVE_BASE_URL, xo as resolveDiscordAccount, xs as setConfigOverride, y as isInboundPathAllowed, yi as withPreservationWriterPermit, yo as listEnabledDiscordAccounts, ys as getConfigOverrides, za as listChannelPlugins, zn as recordSessionMetaFromInbound, zo as resolveGatewayMessageChannel } from "./config-B_l7dU75.js";
8
+ import { c as enqueueAgentTurn, d as mergeDelayedAgentTurn, f as peekDelayedAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, m as WORKSPACE_LANE_DENIED_REASON, o as clearDelayedReleaseHold, p as setDelayedReleaseHold } from "./agent-turn-enqueue-DKRQcdxb.js";
9
+ import { $ as isAvatarHttpUrl, $n as normalizeDeliveryContext, $t as createPluginRegistry, $u as normalizeResolvedSecretInputString, A as resolveExecPolicyPreset, Aa as setSessionRuntimeModel, Ac as buildModelAliasIndex, Al as resolveApiKeyForProvider, Ao as INTERNAL_MESSAGE_CHANNEL, Ar as parseInlineDirectives$1, Au as ensureAuthProfileStore, Ba as normalizeChannelId$1, Bc as parseModelRef, Bo as resolveMessageChannel, Bu as withFileLock, C as normalizeScpRemoteHost, Ca as resolveChannelResetConfig, Ci as drainPendingPrimaryWrites, Cl as buildAssistantMessage, Co as resolveChannelGroupPolicy, Cs as getConfigValueAtPath, Cu as dedupeProfileIds, Da as DEFAULT_RESET_TRIGGERS, Di as onSessionTranscriptUpdate, Dl as getApiKeyForModel, Do as resolveAccountEntry, Dr as stripLeadingInboundMetadata, Dt as safeStatSync, Ea as resolveThreadFlag, Ei as emitSessionTranscriptUpdate, El as buildUsageWithNoCost, Es as unsetConfigValueAtPath, Et as isPathInside, Fc as modelKey, Fo as isMarkdownCapableMessageChannel, Fr as hasInterSessionUserProvenance, Ga as createTelegramActionGate, Gl as isProfileInCooldown, Gn as updateLastRoute, Ha as getChannelDock, Ho as GATEWAY_CLIENT_IDS, Ht as getActivePluginRegistry, Ia as deriveSessionMetaPatch, Ic as normalizeModelRef$2, Ir as normalizeInputProvenance, Jn as isCacheEnabled, Jo as normalizeAtHashSlug, Jt as setActivePluginRegistry, Ka as listEnabledTelegramAccounts, Kc as resolveModelRefFromString, Kl as markAuthProfileFailure, Kn as updateSessionStore, Kt as requireActivePluginRegistry, Ku as normalizeSecretInput, Lo as listDeliverableMessageChannels, Lr as jsonUtf8Bytes, Lt as normalizeAnyChannelId, Lu as resolveAuthStorePathForDisplay, Ma as resolveAgentMainSessionKey, Ml as resolveEnvApiKey, Mn as getConfiguredSessionStorageRuntime, Mt as CHAT_CHANNEL_ORDER, Na as resolveExplicitAgentSessionKey, Nl as resolveModelAuthMode, Nn as isPreservationArmed, No as isGatewayMessageChannel, Oa as mergeSessionEntry, Oc as buildAllowedModelSet, Ol as getCustomProviderApiKey, Pa as resolveMainSessionKey, Pc as isCliProvider, Pn as loadSessionStore, Po as isInternalMessageChannel, Pr as applyInputProvenanceToUserMessage, Ps as buildEnforcedShellCommand, Q as isAvatarDataUrl, Qn as mergeDeliveryContext, Qo as acquireSessionWriteLock, Ra as getChannelPlugin, Rc as normalizeProviderId, Rn as readSessionUpdatedAt, Ro as normalizeMessageChannel, Rt as normalizeChannelId$2, Ru as resolveOpenClawAgentDir, S as resolveIMessageRemoteAttachmentRoots, Si as createPrimaryWriteInterceptor, Sl as createOllamaStreamFn, Sn as triggerInternalHook, So as normalizeDiscordToken, Ss as unsetConfigOverride, Ta as resolveSessionResetType, Tc as resolveAgentMaxConcurrent, Ti as hydrateSessionManagerFromDb, Tl as buildStreamErrorAssistantMessage, Ts as setConfigValueAtPath, Tt as discoverOpenClawPlugins, Tu as markAuthProfileGood, Ua as listChannelDocks, Uc as resolveConfiguredModelRef, Ul as resolveAuthProfileOrder, Uo as GATEWAY_CLIENT_MODES, Ut as getActivePluginRegistryKey, Vt as getActiveGatewayPluginRegistry, Vu as resolveAuthProfileDisplayLabel, Wa as normalizeSignalMessagingTarget, Wc as resolveDefaultModelForAgent, Wl as getSoonestCooldownExpiry, Wn as syncConfiguredSessionTranscriptToRuntime, Wo as GATEWAY_CLIENT_NAMES, Xa as resolveTelegramToken, Xc as resolveThinkingDefault, Xl as resolveApiKeyForProfile, Xn as deliveryContextFromSession, Xo as normalizeStringEntries, Xt as addRegisteredPluginApi, Ya as resolveTelegramAccount, Yc as resolveSubagentSpawnModelSelection, Yl as resolveProfilesUnavailableReason, Yn as resolveCacheTtlMs$1, Yo as normalizeHyphenSlug, Z as AVATAR_MAX_BYTES, Za as buildChannelAccountBindings, Zn as deliveryContextKey, Zo as normalizeStringEntriesLower, Zt as clearRegisteredPluginApis, _ as resolveTelegramCustomCommands, _i as resolveAndPersistSessionFile, _o as createDiscordActionGate, _t as normalizePluginsConfig, aa as toJsonValue$1, ad as DEFAULT_PROVIDER, an as normalizePluginHttpPath, ao as resolveSlackBotToken, ba as resolveSessionKey, bi as isJsonlSessionBackend, bn as createInternalHookEvent, bs as resetConfigOverrides, bt as resolveMemorySlotDecision, c as readConfigFileSnapshot, ca as formatUtcTimestamp, cd as resolveShellEnvFallbackTimeoutMs, cn as clearPluginCommands, da as resolveSenderLabel, dd as resolveOwnerDisplaySetting, dn as listPluginCommands, do as normalizeWhatsAppTarget, ds as listBufferedPluginTaskPasses, er as normalizeSessionDeliveryFields, es as resolveSessionLockMaxHoldFromTimeout, f as writeConfigFile, fa as derivePromptTokens, fc as mapStreamingModeToSlackLegacyDraftStreamMode, fi as extractDeliveryInfo, fn as matchPluginCommand, g as normalizeTelegramCommandName, ga as normalizeUsage, gi as resolveMirroredTranscriptText, go as resolveIMessageAccount, gs as RecoveryAdmissionError, h as TELEGRAM_COMMAND_NAME_PATTERN, ha as makeZeroUsageSnapshot, hc as resolveSlackStreamingMode, ht as isBundledChannelEnabledByChannelConfig, ia as mergePromptContributions, id as DEFAULT_MODEL, io as resolveSlackAppToken, ir as capArrayByJsonBytes, ja as canonicalizeMainSessionAlias, jc as findNormalizedProviderValue, jn as getActivePreservationLease, jo as isDeliverableMessageChannel, ka as resolveFreshSessionTotalTokens, kc as buildConfiguredAllowlistKeys, kl as requireApiKey, ko as resolveGroupSessionKey, la as formatZonedTimestamp, li as writeJsonAtomic, ln as executePluginCommand, lo as resolveSignalAccount, ls as discardBufferedPluginTaskPasses, lt as loadPluginManifestRegistry, ma as hasNonzeroUsage, mc as resolveSlackNativeStreaming, mi as appendAssistantMessageToSessionTranscript, mt as applyTestPluginDefaults, na as sha256, nd as splitTrailingAuthProfile, no as resolveSlackAccount, nt as isSupportedLocalAvatarExtension, o as loadConfig, oa as buildInboundMetaSystemPrompt, oc as applyMergePatch, on as buildPluginHealthReport, oo as listEnabledSignalAccounts, ot as validateJsonSchemaValue, p as validateConfigObjectWithPlugins, pa as deriveSessionTotalTokens, pc as resolveDiscordPreviewStreamMode, pi as parseSessionThreadInfo, pl as retryAsync, pn as registerPluginCommand, po as resolveWhatsAppAccount, ps as replaceBufferedPluginTaskPasses, pt as BUNDLED_ENABLED_BY_DEFAULT, qa as listTelegramAccountIds, qc as resolveReasoningDefault, ql as markAuthProfileUsed, qn as updateSessionStoreEntry, ra as createCurrentUserPromptEnvelope, rd as DEFAULT_CONTEXT_TOKENS, ro as resolveSlackReplyToMode, rr as archiveSessionTranscripts, sa as buildInboundUserContextPrefix, sd as getShellPathFromLoginShell, ta as sanitizeJsonb, tr as normalizeAccountId$3, ts as readTaskWorkStates, tt as isPathWithinRoot, ua as resolveTimezone, ui as parseDurationMs, un as getPluginCommandSpecs, uo as isWhatsAppGroupJid, vt as resolveEffectiveEnableState, w as parseNonNegativeByteSize, wa as resolveSessionResetPolicy, wc as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, wi as DB_SESSION_HYDRATION_LIMIT, wl as buildAssistantMessageWithZeroUsage, wo as resolveChannelGroupRequireMention, ws as parseConfigPath, wu as listProfilesForProvider, x as resolveIMessageAttachmentRoots, xa as evaluateSessionFreshness, xl as OLLAMA_NATIVE_BASE_URL, xo as resolveDiscordAccount, xs as setConfigOverride, y as isInboundPathAllowed, yi as withPreservationWriterPermit, yo as listEnabledDiscordAccounts, ys as getConfigOverrides, za as listChannelPlugins, zn as recordSessionMetaFromInbound, zo as resolveGatewayMessageChannel } from "./config-Wy1wQZjq.js";
10
10
  import { t as VERSION } from "./version-D_9__Xw6.js";
11
- import { A as deriveSessionChatType, D as BACKGROUND_SESSION_KEY_SEGMENT, E as normalizeOptionalAccountId, F as isSubagentSessionKey, I as parseAgentSessionKey, L as resolveThreadParentSessionKey, M as isAcpSessionKey, O as HEARTBEAT_SESSION_KEY_SEGMENT, P as isCronSessionKey, S as toAgentStoreSessionKey, T as normalizeAccountId$4, _ as resolveConfiguredCanonicalIdentity, a as buildAgentMainSessionKey, b as sanitizeAgentId, d as isKnownAgentMainSessionKey, f as isValidAgentId, g as resolveCanonicalIdentity, h as resolveAgentIdFromSessionKey, j as getSubagentDepth, k as WAKE_GATE_SESSION_KEY_SEGMENT, m as normalizeMainKey, p as normalizeAgentId, r as DEVICE_SENDER_PREFIX, s as classifySessionKeyShape, t as DEFAULT_AGENT_ID, w as DEFAULT_ACCOUNT_ID, y as resolveThreadSessionKeys } from "./session-key-DOZk0n1g.js";
12
- import { D as filterBootstrapFilesForSession, E as ensureAgentWorkspace, F as resolveAgentModelPrimaryValue, I as toAgentModelListLike, P as resolveAgentModelFallbackValues, _ as DEFAULT_AGENT_WORKSPACE_DIR, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, h as resolveSessionAgentIds, i as resolveAgentConfig, k as loadWorkspaceBootstrapFiles, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-Ppgyx_kd.js";
13
- import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-TMWfboh4.js";
14
- import { n as runExec, t as runCommandWithTimeout } from "./exec-B6VJhiff.js";
15
- import { n as resolveOpenClawPackageRoot } from "./openclaw-root-CboPaWH8.js";
11
+ import { A as deriveSessionChatType, D as BACKGROUND_SESSION_KEY_SEGMENT, E as normalizeOptionalAccountId, F as isSubagentSessionKey, I as parseAgentSessionKey, L as resolveThreadParentSessionKey, M as isAcpSessionKey, O as HEARTBEAT_SESSION_KEY_SEGMENT, P as isCronSessionKey, S as toAgentStoreSessionKey, T as normalizeAccountId$4, _ as resolveConfiguredCanonicalIdentity, a as buildAgentMainSessionKey, b as sanitizeAgentId, d as isKnownAgentMainSessionKey, f as isValidAgentId, g as resolveCanonicalIdentity, h as resolveAgentIdFromSessionKey, j as getSubagentDepth, k as WAKE_GATE_SESSION_KEY_SEGMENT, m as normalizeMainKey, p as normalizeAgentId, r as DEVICE_SENDER_PREFIX, s as classifySessionKeyShape, t as DEFAULT_AGENT_ID, w as DEFAULT_ACCOUNT_ID, y as resolveThreadSessionKeys } from "./session-key-DUkQn_1S.js";
12
+ import { D as filterBootstrapFilesForSession, E as ensureAgentWorkspace, F as resolveAgentModelPrimaryValue, I as toAgentModelListLike, P as resolveAgentModelFallbackValues, _ as DEFAULT_AGENT_WORKSPACE_DIR, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, h as resolveSessionAgentIds, i as resolveAgentConfig, k as loadWorkspaceBootstrapFiles, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-CxydHZjT.js";
13
+ import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-BH0Ng0XL.js";
14
+ import { n as runExec, t as runCommandWithTimeout } from "./exec-DtX60IXR.js";
15
+ import { n as resolveOpenClawPackageRoot } from "./openclaw-root-COWNwQGN.js";
16
16
  import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken } from "./github-copilot-token-DS1iTsaA.js";
17
17
  import { t as formatCliCommand } from "./command-format-CUvskdil.js";
18
- import { c as resolveSessionFilePath, h as runTasksWithConcurrency, l as resolveSessionFilePathOptions, m as resolveStorePath, s as resolveDefaultSessionStorePath, u as resolveSessionTranscriptPath } from "./artifacts-BjWykx-p.js";
18
+ import { c as resolveSessionFilePath, h as runTasksWithConcurrency, l as resolveSessionFilePathOptions, m as resolveStorePath, s as resolveDefaultSessionStorePath, u as resolveSessionTranscriptPath } from "./artifacts-mmiw3Aqi.js";
19
19
  import { c as optionalStringEnum, f as applyTargetToParams, l as stringEnum, m as actionRequiresTarget, o as channelTargetSchema, p as actionHasTarget, s as channelTargetsSchema } from "./retry-policy-FBwX2QEP.js";
20
20
  import { n as resolveConversationLabel, r as normalizeChatType } from "./conversation-label-Bpw8crN9.js";
21
- import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-DnUxCZe9.js";
22
- import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-B7qZuE28.js";
21
+ import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-BgWc92i5.js";
22
+ import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-DiY7W1su.js";
23
23
  import { c as isDiagnosticsEnabled, s as emitDiagnosticEvent } from "./task-run-types-B6n0W8Rb.js";
24
24
  import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-dcExQ0l1.js";
25
25
  import { a as formatUncaughtError, c as readErrorName, i as formatErrorMessage, o as hasErrnoCode, r as formatErrorChainMessage, t as collectErrorGraphCandidates } from "./errors-DZFFjLFB.js";
26
26
  import { t as redactIdentifier } from "./redact-identifier-PPop_uPK.js";
27
27
  import { t as KeyedAsyncQueue } from "./keyed-async-queue-6pcDS9cI.js";
28
28
  import { t as CommandLane } from "./lanes-CfsxmqzN.js";
29
- import { i as getAgentTurnRuntime, o as tryGetAgentTurnRuntime } from "./agent-turn-runner-B10CqZVv.js";
30
- import { a as resolveSessionRunStore, n as deriveSessionRunId, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-BvsmIV06.js";
31
- import { A as isFailoverAssistantError, B as isTimeoutErrorMessage, C as formatRawAssistantErrorForUi, D as isCloudCodeAssistFormatError, E as isBillingAssistantError, F as isTransientHttpError, G as sanitizeGoogleTurnOrdering, H as ensureSessionHeader, I as parseImageDimensionError, L as parseImageSizeError, M as isLikelyContextOverflowError, N as isRateLimitAssistantError, O as isCompactionFailureError, P as isRawApiErrorPayload, R as sanitizeUserFacingText, S as formatBillingErrorMessage, T as isAuthAssistantError, U as resolveBootstrapMaxChars, V as buildBootstrapContextFiles, W as resolveBootstrapTotalMaxChars, _ as downgradeOpenAIReasoningBlocks, a as isMessagingToolDuplicateNormalized, b as classifyFailoverReason, c as sanitizeImageBlocks, d as canonicalizeBase64, f as estimateBase64DecodedBytes, g as downgradeOpenAIFunctionCallReasoningPairs, h as sanitizeToolCallIdsForCloudCodeAssist, j as isFailoverErrorMessage, k as isContextOverflowError, l as sanitizeToolResultImages, m as extractToolResultId, n as validateGeminiTurns, o as normalizeTextForComparison, p as extractToolCallsFromAssistant, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as resolveImageSanitizationLimits, v as isGoogleModelApi, w as getApiErrorPayloadFingerprint, x as formatAssistantErrorText, y as BILLING_ERROR_USER_MESSAGE, z as isAuthPermanentErrorMessage } from "./pi-embedded-helpers-DIrkDh67.js";
32
- import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as expandToolGroups, y as mergeAlsoAllowPolicy } from "./sandbox-BWNy2kKu.js";
33
- import { c as resolveExistingPathsWithinRoot, g as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as DEFAULT_UPLOAD_DIR } from "./extension-relay-auth-Dicdw7Xi.js";
34
- import { i as isLoopbackHost, u as resolveClientIp } from "./ws-DIjS49am.js";
35
- import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-DcWx5UdN.js";
36
- import { a as resolveBrowserControlAuth } from "./server-context-DynQOaQg.js";
37
- import { a as resolveSkillsPromptForRun, d as assertSandboxPath, f as resolveSandboxInputPath, g as applySkillEnvOverridesFromSnapshot, h as applySkillEnvOverrides, i as loadWorkspaceSkillEntries, m as resolveSandboxedMediaSource, o as skillsSnapshotSourceDiffers, r as buildWorkspaceSkillSnapshot, u as assertMediaNotDataUrl } from "./skills-DeS5IuN9.js";
38
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-Dn6kxDaO.js";
39
- import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-DDz2ygyq.js";
40
- import { a as isBlockedHostnameOrIp, l as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-C4AxlnMs.js";
41
- import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-BXRKcOTd.js";
42
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-DJzisOaQ.js";
43
- import { r as resolveBrowserConfig } from "./trash-n9DbVlPq.js";
44
- import { i as resolveLsofCommandSync } from "./ports-CLSVg-y-.js";
29
+ import { i as getAgentTurnRuntime, o as tryGetAgentTurnRuntime } from "./agent-turn-runner-Cea0N8hZ.js";
30
+ import { a as resolveSessionRunStore, n as deriveSessionRunId, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-B0k_MKgq.js";
31
+ import { A as isFailoverAssistantError, B as isTimeoutErrorMessage, C as formatRawAssistantErrorForUi, D as isCloudCodeAssistFormatError, E as isBillingAssistantError, F as isTransientHttpError, G as sanitizeGoogleTurnOrdering, H as ensureSessionHeader, I as parseImageDimensionError, L as parseImageSizeError, M as isLikelyContextOverflowError, N as isRateLimitAssistantError, O as isCompactionFailureError, P as isRawApiErrorPayload, R as sanitizeUserFacingText, S as formatBillingErrorMessage, T as isAuthAssistantError, U as resolveBootstrapMaxChars, V as buildBootstrapContextFiles, W as resolveBootstrapTotalMaxChars, _ as downgradeOpenAIReasoningBlocks, a as isMessagingToolDuplicateNormalized, b as classifyFailoverReason, c as sanitizeImageBlocks, d as canonicalizeBase64, f as estimateBase64DecodedBytes, g as downgradeOpenAIFunctionCallReasoningPairs, h as sanitizeToolCallIdsForCloudCodeAssist, j as isFailoverErrorMessage, k as isContextOverflowError, l as sanitizeToolResultImages, m as extractToolResultId, n as validateGeminiTurns, o as normalizeTextForComparison, p as extractToolCallsFromAssistant, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as resolveImageSanitizationLimits, v as isGoogleModelApi, w as getApiErrorPayloadFingerprint, x as formatAssistantErrorText, y as BILLING_ERROR_USER_MESSAGE, z as isAuthPermanentErrorMessage } from "./pi-embedded-helpers-BN8Yurrq.js";
32
+ import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, x as expandToolGroups, y as mergeAlsoAllowPolicy } from "./sandbox-CTl9v7Zl.js";
33
+ import { c as resolveExistingPathsWithinRoot, g as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as DEFAULT_UPLOAD_DIR } from "./extension-relay-auth-DeehlFvz.js";
34
+ import { i as isLoopbackHost, u as resolveClientIp } from "./ws-Bq_zwewv.js";
35
+ import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-CZpBSFEO.js";
36
+ import { a as resolveBrowserControlAuth } from "./server-context-9rNFuDom.js";
37
+ import { a as resolveSkillsPromptForRun, d as assertSandboxPath, f as resolveSandboxInputPath, g as applySkillEnvOverridesFromSnapshot, h as applySkillEnvOverrides, i as loadWorkspaceSkillEntries, m as resolveSandboxedMediaSource, o as skillsSnapshotSourceDiffers, r as buildWorkspaceSkillSnapshot, u as assertMediaNotDataUrl } from "./skills-is3ptAyK.js";
38
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-CwFH4u4Y.js";
39
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-DSWE-pxQ.js";
40
+ import { a as isBlockedHostnameOrIp, l as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-CCYLPZqe.js";
41
+ import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-CAEEQmlt.js";
42
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-DhI4pUSq.js";
43
+ import { r as resolveBrowserConfig } from "./trash-C7Ej284e.js";
44
+ import { i as resolveLsofCommandSync } from "./ports-BzAUXaPL.js";
45
45
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-B3a7Paj1.js";
46
46
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-B3f7Ri2X.js";
47
47
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking--vrOmrW7.js";
48
- import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-DQs4kcQX.js";
49
- import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-ZXYKMPyD.js";
50
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-CJixlkca.js";
51
- import { _ as buildPluginRuntimeIdentity, a as toInternalMessageReceivedContext, b as resolveProviderRuntimeIdentity, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, f as getGlobalHookRunner, g as promptBuildResultToContribution, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, p as initializeGlobalHookRunner, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext, v as buildPluginTurnIdentity, y as resolveProviderPromptCacheKey } from "./outbound-message-hooks-DCmApMZ7.js";
52
- import { C as logToolExecutionStarted, D as recordSystemPromptHashComparison, E as logWebhookReceived, F as resetCommandPollCount, M as stopDiagnosticHeartbeat, N as boundDiagnosticContent, O as refreshRunProgress, P as recordCommandPoll, S as logToolExecutionCompleted, T as logWebhookProcessed, c as logMessageQueued, f as logRunCompleted, j as startDiagnosticHeartbeat, m as logSessionStateChange, p as logRunStarted, s as logMessageProcessed, u as logModelCallError, w as logWebhookError, x as logToolExecutionBlocked } from "./diagnostic-DuMnWlrO.js";
48
+ import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-EVut-MnZ.js";
49
+ import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-Cv29oi2m.js";
50
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-CumbEUij.js";
51
+ import { _ as buildPluginRuntimeIdentity, a as toInternalMessageReceivedContext, b as resolveProviderRuntimeIdentity, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, f as getGlobalHookRunner, g as promptBuildResultToContribution, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, p as initializeGlobalHookRunner, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext, v as buildPluginTurnIdentity, y as resolveProviderPromptCacheKey } from "./outbound-message-hooks-BaL31mgo.js";
52
+ import { C as logToolExecutionStarted, D as recordSystemPromptHashComparison, E as logWebhookReceived, F as resetCommandPollCount, M as stopDiagnosticHeartbeat, N as boundDiagnosticContent, O as refreshRunProgress, P as recordCommandPoll, S as logToolExecutionCompleted, T as logWebhookProcessed, c as logMessageQueued, f as logRunCompleted, j as startDiagnosticHeartbeat, m as logSessionStateChange, p as logRunStarted, s as logMessageProcessed, u as logModelCallError, w as logWebhookError, x as logToolExecutionBlocked } from "./diagnostic-CsiKdkkn.js";
53
53
  import { d as redactChannelCorrelation, o as getDiagnosticSessionState } from "./diagnostic-session-state-1K1Ij_N0.js";
54
- import { i as enqueueCommandInLane, n as clearCommandLane, o as getCommandLaneSnapshots, s as getQueueSize, t as CommandLaneAbortedError, u as isQueuedCommandCancellation } from "./command-queue-g1tNC8Vs.js";
55
- import { $ as resolveTelegramMediaPlaceholder, A as releaseAccountOwner, B as buildTelegramGroupFrom, C as fingerprintTelegramToken, D as recordUpdate, E as recordState, F as resolveCronStorePath, G as describeReplyTarget, H as buildTelegramParentPeer, J as hasBotMention, K as expandTextLinks, L as buildGroupLabel, M as splitTelegramCaption, N as withTelegramApiErrorLogging, O as recordWebhook, P as loadCronStore, Q as resolveTelegramGroupAllowFromContext, R as buildSenderLabel, T as recordApiRequest, U as buildTelegramThreadParams, V as buildTelegramGroupPeerId, W as buildTypingThreadParams, X as resolveTelegramDirectPeerId, Y as normalizeForwardedContext, Z as resolveTelegramForumThreadId, _ as isTelegramEditMayHaveLandedError, a as reactMessageTelegram, at as normalizeDmAllowFromWithStore$1, b as renderTelegramHtmlText, c as sendStickerTelegram, ct as toLocationContext, d as wasSentByBot, dt as resolveTelegramTargetChatType, et as resolveTelegramReplyId, f as extractTelegramErrorText, g as isTelegramClientRejection, h as isSafeToRetrySendError, i as editMessageTelegram, it as normalizeAllowFrom$2, j as resolveTelegramFetch, k as registerAccount, lt as isVoiceCompatibleAudio, m as isRecoverableTelegramNetworkError, n as createForumTopicTelegram, nt as resolveTelegramThreadSpec, o as sendMessageTelegram, ot as resolveSenderAllowMatch$1, p as isDefiniteTelegramRequestNonDeliveryError, q as extractTelegramLocation, r as deleteMessageTelegram, rt as isSenderAllowed$1, s as sendPollTelegram, st as formatLocationText, t as buildInlineKeyboard, tt as resolveTelegramStreamMode, u as resolveTelegramVoiceSend, ut as parseTelegramTarget, v as markdownToTelegramChunks, w as getTelegramFleetSupervisor, x as wrapFileReferencesInHtml, y as markdownToTelegramHtml, z as buildSenderName } from "./send-CCM9Q6bQ.js";
56
- import { i as buildModelAliasLines, n as resolveModel } from "./model-iLCMc1K1.js";
57
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-xwVo_Za1.js";
54
+ import { i as enqueueCommandInLane, n as clearCommandLane, o as getCommandLaneSnapshots, s as getQueueSize, t as CommandLaneAbortedError, u as isQueuedCommandCancellation } from "./command-queue-C9EZpC0r.js";
55
+ import { $ as resolveTelegramMediaPlaceholder, A as releaseAccountOwner, B as buildTelegramGroupFrom, C as fingerprintTelegramToken, D as recordUpdate, E as recordState, F as resolveCronStorePath, G as describeReplyTarget, H as buildTelegramParentPeer, J as hasBotMention, K as expandTextLinks, L as buildGroupLabel, M as splitTelegramCaption, N as withTelegramApiErrorLogging, O as recordWebhook, P as loadCronStore, Q as resolveTelegramGroupAllowFromContext, R as buildSenderLabel, T as recordApiRequest, U as buildTelegramThreadParams, V as buildTelegramGroupPeerId, W as buildTypingThreadParams, X as resolveTelegramDirectPeerId, Y as normalizeForwardedContext, Z as resolveTelegramForumThreadId, _ as isTelegramEditMayHaveLandedError, a as reactMessageTelegram, at as normalizeDmAllowFromWithStore$1, b as renderTelegramHtmlText, c as sendStickerTelegram, ct as toLocationContext, d as wasSentByBot, dt as resolveTelegramTargetChatType, et as resolveTelegramReplyId, f as extractTelegramErrorText, g as isTelegramClientRejection, h as isSafeToRetrySendError, i as editMessageTelegram, it as normalizeAllowFrom$2, j as resolveTelegramFetch, k as registerAccount, lt as isVoiceCompatibleAudio, m as isRecoverableTelegramNetworkError, n as createForumTopicTelegram, nt as resolveTelegramThreadSpec, o as sendMessageTelegram, ot as resolveSenderAllowMatch$1, p as isDefiniteTelegramRequestNonDeliveryError, q as extractTelegramLocation, r as deleteMessageTelegram, rt as isSenderAllowed$1, s as sendPollTelegram, st as formatLocationText, t as buildInlineKeyboard, tt as resolveTelegramStreamMode, u as resolveTelegramVoiceSend, ut as parseTelegramTarget, v as markdownToTelegramChunks, w as getTelegramFleetSupervisor, x as wrapFileReferencesInHtml, y as markdownToTelegramHtml, z as buildSenderName } from "./send-CrP3wO_5.js";
56
+ import { i as buildModelAliasLines, n as resolveModel } from "./model-DK1--R8G.js";
57
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-YsMuufO6.js";
58
58
  import { n as docsSiteUrl, t as DOCS_SITE_URL } from "./docs-site-CaMj3dUw.js";
59
- import { t as ensureOpenClawModelsJson } from "./models-config-COyV_5JN.js";
60
- import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-BJCk_TPq.js";
61
- import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-DNVd_94E.js";
62
- import { n as resolveLearningWorkspaceDir, t as resolveSessionConsumerAgentIds } from "./session-consumer-agents-UmHVjny8.js";
63
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-IZAm7vxT.js";
59
+ import { t as ensureOpenClawModelsJson } from "./models-config-DJTO7ngW.js";
60
+ import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-DlF01Fkm.js";
61
+ import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-BH45jyJz.js";
62
+ import { n as resolveLearningWorkspaceDir, t as resolveSessionConsumerAgentIds } from "./session-consumer-agents-DAH-kXNx.js";
63
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-Bo-Fyihc.js";
64
64
  import { t as extractTextFromChatContent } from "./chat-content-D2V5ppab.js";
65
- import { a as formatReasoningMessage, d as stripThinkingTagsFromText, f as stripReasoningTagsFromText, l as stripDowngradedToolCallText, m as isInsideCode, n as extractAssistantThinking, o as inferToolMetaFromArgs, p as findCodeRegions, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-CPX6p6Wq.js";
66
- import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-DorcgRYO.js";
67
- import { a as coerceImageModelConfig, i as coerceImageAssistantText, o as decodeDataUrl, r as minimaxUnderstandImage, s as resolveProviderVisionModelFromConfig } from "./provider-image-aaxt6RAc.js";
68
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-B6tx3m8j.js";
69
- import { C as stripCarriedTranscriptFromBody, D as registerUnhandledRejectionHandler, a as resolveAutoImageModel, d as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, k as resolveAttachmentKind, l as applyTemplate, m as normalizeMediaUnderstandingChatType, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as resolveTimeoutMs$1, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, w as buildRandomTempFilePath } from "./audio-transcription-runner-0S6456vW.js";
65
+ import { a as formatReasoningMessage, d as stripThinkingTagsFromText, f as stripReasoningTagsFromText, l as stripDowngradedToolCallText, m as isInsideCode, n as extractAssistantThinking, o as inferToolMetaFromArgs, p as findCodeRegions, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-DbCTbP_M.js";
66
+ import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-C4RBYVSp.js";
67
+ import { a as coerceImageModelConfig, i as coerceImageAssistantText, o as decodeDataUrl, r as minimaxUnderstandImage, s as resolveProviderVisionModelFromConfig } from "./provider-image-GRI3ijiz.js";
68
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-COk8GnL3.js";
69
+ import { C as stripCarriedTranscriptFromBody, D as registerUnhandledRejectionHandler, a as resolveAutoImageModel, d as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, k as resolveAttachmentKind, l as applyTemplate, m as normalizeMediaUnderstandingChatType, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as resolveTimeoutMs$1, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, w as buildRandomTempFilePath } from "./audio-transcription-runner-BQ-xozUJ.js";
70
70
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-CWcs4Nwj.js";
71
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-D9Baq9VL.js";
72
- import { r as makeProxyFetch } from "./proxy-fetch-1FMAlfeR.js";
71
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BpcmLYcl.js";
72
+ import { r as makeProxyFetch } from "./proxy-fetch-CZr5_YhZ.js";
73
73
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-UMMlqxFg.js";
74
74
  import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-Drnnaax6.js";
75
- import { a as chunkText, c as resolveChunkDelivery, d as resolveTextChunkLimit, i as chunkMarkdownTextWithMode, l as resolveChunkMode, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as resolveChunkNewlinePacking } from "./chunk-BIErRWoV.js";
76
- import { n as resolveMarkdownTableMode } from "./markdown-tables-Cvm3FY0g.js";
77
- import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-CnD8edWb.js";
78
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-B4ce9Pyw.js";
79
- import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-CcbNhUWz.js";
80
- import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-8SPArkeP.js";
75
+ import { a as chunkText, c as resolveChunkDelivery, d as resolveTextChunkLimit, i as chunkMarkdownTextWithMode, l as resolveChunkMode, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as resolveChunkNewlinePacking } from "./chunk-CyVpre5Y.js";
76
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-DDn13kBS.js";
77
+ import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-DkcivUQx.js";
78
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-DcCuNsWv.js";
79
+ import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody } from "./commands-registry-Dh2bmHYX.js";
80
+ import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-CXcaMyeC.js";
81
81
  import { t as withTimeout$5 } from "./with-timeout-C5wK8tm-.js";
82
- import { _ as AcpRuntimeError, c as validateRuntimeCwdInput, d as validateRuntimePermissionProfileInput, f as isSessionIdentityPending, g as ACP_TURN_INTERRUPTED_MESSAGE, h as requireAcpRuntimeBackend, i as resolveSessionStorePathForAcp, l as validateRuntimeModeInput, m as getAcpRuntimeBackend, o as parseRuntimeTimeoutSecondsInput, p as resolveSessionIdentityFromMeta, r as readAcpSessionEntry, s as validateRuntimeConfigOptionInput, t as getAcpSessionManager, u as validateRuntimeModelInput, v as toAcpRuntimeError } from "./manager-B2ZPvPP9.js";
83
- import { bn as SESSION_LABEL_MAX_LENGTH, n as gatewayErrorReason, t as GatewayClient } from "./client-CcJEvW7d.js";
84
- import { b as resolveLeastPrivilegeOperatorScopesForMethod, i as callGatewayLeastPrivilege, n as callGateway, s as randomIdempotencyKey, t as buildGatewayConnectionDetails } from "./call-BGJB7J3q.js";
85
- import { C as endModelCall, D as onAgentEvent, O as registerAgentRunContext, S as createInlineCodeState, T as emitAgentEvent, _ as handleMessageEnd, b as emitEmbeddedAgentEvent, g as waitForEmbeddedPiRunEnd, h as setActiveEmbeddedRun, i as endInFlightEmbeddedAttempt, n as beginInFlightEmbeddedAttempt, p as queueEmbeddedPiMessage, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, u as isEmbeddedPiRunStreaming, v as handleMessageStart, w as clearAgentRunContext, x as buildCodeSpanIndex, y as handleMessageUpdate } from "./runs-DSFjMpng.js";
86
- import { _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as throwIfAborted, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as loadChannelOutboundAdapter, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as stampReplyActivity, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-DUBuu2uJ.js";
82
+ import { _ as AcpRuntimeError, c as validateRuntimeCwdInput, d as validateRuntimePermissionProfileInput, f as isSessionIdentityPending, g as ACP_TURN_INTERRUPTED_MESSAGE, h as requireAcpRuntimeBackend, i as resolveSessionStorePathForAcp, l as validateRuntimeModeInput, m as getAcpRuntimeBackend, o as parseRuntimeTimeoutSecondsInput, p as resolveSessionIdentityFromMeta, r as readAcpSessionEntry, s as validateRuntimeConfigOptionInput, t as getAcpSessionManager, u as validateRuntimeModelInput, v as toAcpRuntimeError } from "./manager-CJIpzjld.js";
83
+ import { bn as SESSION_LABEL_MAX_LENGTH, n as gatewayErrorReason, t as GatewayClient } from "./client-EEggbMMG.js";
84
+ import { b as resolveLeastPrivilegeOperatorScopesForMethod, i as callGatewayLeastPrivilege, n as callGateway, s as randomIdempotencyKey, t as buildGatewayConnectionDetails } from "./call-5i352x9j.js";
85
+ import { C as endModelCall, D as onAgentEvent, O as registerAgentRunContext, S as createInlineCodeState, T as emitAgentEvent, _ as handleMessageEnd, b as emitEmbeddedAgentEvent, g as waitForEmbeddedPiRunEnd, h as setActiveEmbeddedRun, i as endInFlightEmbeddedAttempt, n as beginInFlightEmbeddedAttempt, p as queueEmbeddedPiMessage, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, u as isEmbeddedPiRunStreaming, v as handleMessageStart, w as clearAgentRunContext, x as buildCodeSpanIndex, y as handleMessageUpdate } from "./runs-fddM4kFw.js";
86
+ import { _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as throwIfAborted, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, l as loadChannelOutboundAdapter, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as stampReplyActivity, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-CKHf6BfA.js";
87
87
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DhNeMUJa.js";
88
88
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-DTX8reSr.js";
89
89
  import { n as formatTimeAgo } from "./format-relative-BXoxEQVN.js";
90
- import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-C_emmXE4.js";
91
- import { a as maxAsk, d as requiresExecApproval, f as resolveExecApprovals, n as addAllowlistEntry, p as resolveExecApprovalsFromFile, s as minSecurity, u as recordAllowlistUse } from "./exec-approvals-BsebcahG.js";
92
- import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-Cj7gGqy5.js";
93
- import { a as detectRuntimeShell, c as sanitizeBinaryOutput, o as getShellConfig, s as killProcessTree, t as getProcessSupervisor } from "./supervisor-BQDbdMGN.js";
90
+ import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-baQ6verU.js";
91
+ import { a as maxAsk, d as requiresExecApproval, f as resolveExecApprovals, n as addAllowlistEntry, p as resolveExecApprovalsFromFile, s as minSecurity, u as recordAllowlistUse } from "./exec-approvals-C4CZ1V0m.js";
92
+ import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-BNh2me3N.js";
93
+ import { a as detectRuntimeShell, c as sanitizeBinaryOutput, o as getShellConfig, s as killProcessTree, t as getProcessSupervisor } from "./supervisor-Zyuzbqyy.js";
94
94
  import { t as killProcessTree$1 } from "./kill-tree-BzYPMyPM.js";
95
- import { n as formatExecCommand } from "./system-run-command-CM2z0iTS.js";
95
+ import { n as formatExecCommand } from "./system-run-command-s2Tv4J5i.js";
96
96
  import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-HcMgLgbC.js";
97
97
  import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-CWi4kD_x.js";
98
- import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, f as computeBackoff, p as sleepWithAbort, u as lookupContextTokens } from "./session-utils-DgeX06NV.js";
99
- import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-B7CuemwQ.js";
100
- import { t as redactConfigObject } from "./redact-snapshot-DN2rZBNX.js";
101
- import { a as createDiscordRetryRunner, i as normalizePollInput, n as recordChannelActivity, t as getChannelActivity } from "./channel-activity-CUFBYpfH.js";
98
+ import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, f as computeBackoff, p as sleepWithAbort, u as lookupContextTokens } from "./session-utils-CqNuZUiP.js";
99
+ import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-D8oby-tg.js";
100
+ import { t as redactConfigObject } from "./redact-snapshot-A7NLIiwR.js";
101
+ import { a as createDiscordRetryRunner, i as normalizePollInput, n as recordChannelActivity, t as getChannelActivity } from "./channel-activity-C08pUdDN.js";
102
102
  import { t as buildOutboundMediaLoadOptions } from "./load-options-7bromBH-.js";
103
- import { t as convertMarkdownTables } from "./tables-DR5pT4X-.js";
103
+ import { t as convertMarkdownTables } from "./tables-B4TgPkaN.js";
104
104
  import { p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./constants-DfoluqrP.js";
105
- import { n as loadCostUsageSummary, r as loadSessionCostSummary } from "./session-cost-usage-LPAN7gwx.js";
105
+ import { n as loadCostUsageSummary, r as loadSessionCostSummary } from "./session-cost-usage-EMOsv4X6.js";
106
106
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-DveW7KGA.js";
107
- import { a as normalizeHttpWebhookUrl, o as inferLegacyName, r as isPipelineHeartbeatInFlight } from "./heartbeat-tick-CNXKuUx8.js";
108
- import { a as resolvePinnedMainDmOwnerFromAllowlist, c as filterToolsByPolicy, d as resolveGroupToolPolicy, f as resolveSubagentToolPolicy, i as resolveDmGroupAccessWithLists, l as isToolAllowedByPolicies, n as readStoreAllowFromForDmPolicy, o as resolveCommandAuthorizedFromAuthorizers, s as resolveControlCommandGate, t as DM_GROUP_ACCESS_REASON, u as resolveEffectiveToolPolicy } from "./dm-policy-shared-yJEiBvgY.js";
109
- import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-C7J_kRAY.js";
110
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-A64KNpWH.js";
111
- import { i as applyPluginAutoEnable, r as resolveTelegramPollingTimeout } from "./polling-timeout-CkFkpq_s.js";
112
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-D20u05DD.js";
113
- import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-D7jSVo_g.js";
114
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-c5P6_dQM.js";
107
+ import { a as normalizeHttpWebhookUrl, o as inferLegacyName, r as isPipelineHeartbeatInFlight } from "./heartbeat-tick-CVUubxop.js";
108
+ import { a as resolvePinnedMainDmOwnerFromAllowlist, c as filterToolsByPolicy, d as resolveGroupToolPolicy, f as resolveSubagentToolPolicy, i as resolveDmGroupAccessWithLists, l as isToolAllowedByPolicies, n as readStoreAllowFromForDmPolicy, o as resolveCommandAuthorizedFromAuthorizers, s as resolveControlCommandGate, t as DM_GROUP_ACCESS_REASON, u as resolveEffectiveToolPolicy } from "./dm-policy-shared-BFynL_iX.js";
109
+ import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-DjJmEA55.js";
110
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-EeyjFzad.js";
111
+ import { i as applyPluginAutoEnable, r as resolveTelegramPollingTimeout } from "./polling-timeout-x98FlzJG.js";
112
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-wFJCwq2b.js";
113
+ import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-DLkrlosm.js";
114
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-B5nwCVT3.js";
115
115
  import { n as isSenderIdAllowed, r as mergeDmAllowFromSources, t as firstDefined$1 } from "./allow-from-BCcgW-r3.js";
116
116
  import { t as parseTimeoutMs } from "./parse-timeout-BCtc_WRB.js";
117
- import { t as createTelegramPollingTransport } from "./proxy-CkTukFRT.js";
117
+ import { t as createTelegramPollingTransport } from "./proxy-ZTZCSX-m.js";
118
118
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-Dk-YDcqh.js";
119
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-zxrU3Tlk.js";
120
- import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-BX0CPQr-.js";
121
- import { r as detectBinary } from "./onboard-helpers-CV2_sx_X.js";
122
- import { t as resolvePairingIdLabel } from "./pairing-labels-Cmy5jzFo.js";
123
- import { t as recordInboundSessionMetaSafe } from "./session-meta-BDUMkHJb.js";
124
- import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-DWRwQYct.js";
125
- import { r as resolveMemorySearchConfig } from "./manager-DeJU6IQ3.js";
119
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-CI-WAhGv.js";
120
+ import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-BLUddYry.js";
121
+ import { r as detectBinary } from "./onboard-helpers-CrNbGK-_.js";
122
+ import { t as resolvePairingIdLabel } from "./pairing-labels-Cga04_F-.js";
123
+ import { t as recordInboundSessionMetaSafe } from "./session-meta-fp99Ucj0.js";
124
+ import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-DhTo1Zod.js";
125
+ import { r as resolveMemorySearchConfig } from "./manager-B9U2B9ZD.js";
126
126
  import { i as resolveContextWindowInfo, n as CONTEXT_WINDOW_WARN_BELOW_TOKENS, r as evaluateContextWindowGuard, t as CONTEXT_WINDOW_HARD_MIN_TOKENS } from "./context-window-guard-D7TKNtXN.js";
127
127
  import { createRequire } from "node:module";
128
128
  import { execFileSync, spawn, spawnSync } from "node:child_process";
@@ -130,8 +130,8 @@ import { fileURLToPath } from "node:url";
130
130
  import os, { homedir } from "node:os";
131
131
  import path, { basename } from "node:path";
132
132
  import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
133
- import JSON5 from "json5";
134
- import fs$1 from "node:fs/promises";
133
+ import json5 from "json5";
134
+ import fsPromises from "node:fs/promises";
135
135
  import { inspect } from "node:util";
136
136
  import crypto, { createHash, createHmac, randomBytes, randomUUID, timingSafeEqual } from "node:crypto";
137
137
  import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
@@ -772,7 +772,7 @@ function resolveWorkspaceLane(params) {
772
772
  }
773
773
  async function pathExists(targetPath) {
774
774
  try {
775
- await fs$1.access(targetPath);
775
+ await fsPromises.access(targetPath);
776
776
  return true;
777
777
  } catch {
778
778
  return false;
@@ -780,7 +780,7 @@ async function pathExists(targetPath) {
780
780
  }
781
781
  async function getExistingPathState(targetPath) {
782
782
  try {
783
- const stats = await fs$1.lstat(targetPath);
783
+ const stats = await fsPromises.lstat(targetPath);
784
784
  if (stats.isSymbolicLink()) return "other";
785
785
  return stats.isDirectory() ? "directory" : "other";
786
786
  } catch {
@@ -789,7 +789,7 @@ async function getExistingPathState(targetPath) {
789
789
  }
790
790
  async function pathLexicallyExists(targetPath) {
791
791
  try {
792
- await fs$1.lstat(targetPath);
792
+ await fsPromises.lstat(targetPath);
793
793
  return true;
794
794
  } catch {
795
795
  return false;
@@ -856,7 +856,7 @@ async function resolveWorkspaceLaneForTurn(params) {
856
856
  const config = resolveWorkspaceLaneConfig(params.cfg, resolution.agentId);
857
857
  if ((config?.create ?? "on-first-message") !== "on-first-message") return resolution;
858
858
  const existed = pathState === "directory";
859
- if (!existed) await fs$1.mkdir(resolution.effectiveWorkspaceDir, { recursive: true });
859
+ if (!existed) await fsPromises.mkdir(resolution.effectiveWorkspaceDir, { recursive: true });
860
860
  for (const file of config?.copiedOnCreate ?? DEFAULT_COPIED_ON_CREATE_FILES) {
861
861
  const decision = await copyIfMissing({
862
862
  sourceRoot: resolution.personaWorkspaceDir,
@@ -4228,8 +4228,8 @@ const defaultDeps = {
4228
4228
  runEmbeddedPiAgent: (params) => runEmbeddedPiAgent(params),
4229
4229
  runDirectAnalysis,
4230
4230
  loadConfig,
4231
- mkdtemp: fs$1.mkdtemp,
4232
- rm: fs$1.rm,
4231
+ mkdtemp: fsPromises.mkdtemp,
4232
+ rm: fsPromises.rm,
4233
4233
  now: () => Date.now(),
4234
4234
  randomUUID: crypto.randomUUID
4235
4235
  };
@@ -5660,7 +5660,7 @@ async function imageResult(params) {
5660
5660
  }, params.label, params.imageSanitization);
5661
5661
  }
5662
5662
  async function imageResultFromFile(params) {
5663
- const buf = await fs$1.readFile(params.path);
5663
+ const buf = await fsPromises.readFile(params.path);
5664
5664
  const mimeType = await detectMime({ buffer: buf.slice(0, 256) }) ?? "image/png";
5665
5665
  return await imageResult({
5666
5666
  label: params.label,
@@ -6594,7 +6594,7 @@ async function routeReply(params) {
6594
6594
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
6595
6595
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
6596
6596
  try {
6597
- const { deliverOutboundPayloads } = await import("./deliver-DUBuu2uJ.js").then((n) => n.n);
6597
+ const { deliverOutboundPayloads } = await import("./deliver-CKHf6BfA.js").then((n) => n.n);
6598
6598
  const outboundSession = buildOutboundSessionContext({
6599
6599
  cfg,
6600
6600
  agentId: resolvedAgentId,
@@ -7531,7 +7531,7 @@ function normalizeSessionKey(value) {
7531
7531
  function readSessionStore(storePath) {
7532
7532
  try {
7533
7533
  const raw = fs.readFileSync(storePath, "utf-8");
7534
- const parsed = JSON5.parse(raw);
7534
+ const parsed = json5.parse(raw);
7535
7535
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
7536
7536
  } catch {}
7537
7537
  return {};
@@ -11737,7 +11737,7 @@ async function sendTranscriptEcho(params) {
11737
11737
  }
11738
11738
  const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
11739
11739
  try {
11740
- const { deliverOutboundPayloads } = await import("./deliver-DUBuu2uJ.js").then((n) => n.n);
11740
+ const { deliverOutboundPayloads } = await import("./deliver-CKHf6BfA.js").then((n) => n.n);
11741
11741
  await deliverOutboundPayloads({
11742
11742
  cfg,
11743
11743
  channel: normalizedChannel,
@@ -15772,7 +15772,7 @@ async function resolveSandboxWorkdir(params) {
15772
15772
  cwd: process.cwd(),
15773
15773
  root: params.sandbox.workspaceDir
15774
15774
  });
15775
- if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
15775
+ if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
15776
15776
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
15777
15777
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
15778
15778
  return {
@@ -17022,13 +17022,13 @@ async function validateScriptFileForShellBleed(params) {
17022
17022
  cwd: params.workdir,
17023
17023
  root: params.workdir
17024
17024
  });
17025
- stat = await fs$1.stat(absPath);
17025
+ stat = await fsPromises.stat(absPath);
17026
17026
  } catch {
17027
17027
  return;
17028
17028
  }
17029
17029
  if (!stat.isFile()) return;
17030
17030
  if (stat.size > 512 * 1024) return;
17031
- const content = await fs$1.readFile(absPath, "utf-8");
17031
+ const content = await fsPromises.readFile(absPath, "utf-8");
17032
17032
  const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
17033
17033
  if (first) {
17034
17034
  const idx = first.index;
@@ -26264,7 +26264,7 @@ async function emitResetCommandHooks(params) {
26264
26264
  try {
26265
26265
  const messages = [];
26266
26266
  if (sessionFile) {
26267
- const content = await fs$1.readFile(sessionFile, "utf-8");
26267
+ const content = await fsPromises.readFile(sessionFile, "utf-8");
26268
26268
  for (const line of content.split("\n")) {
26269
26269
  if (!line.trim()) continue;
26270
26270
  try {
@@ -27057,7 +27057,7 @@ async function createModelSelectionState(params) {
27057
27057
  }
27058
27058
  }
27059
27059
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
27060
- const { ensureAuthProfileStore } = await import("./config-B_l7dU75.js").then((n) => n.Hl);
27060
+ const { ensureAuthProfileStore } = await import("./config-Wy1wQZjq.js").then((n) => n.Hl);
27061
27061
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
27062
27062
  const providerKey = normalizeProviderId(provider);
27063
27063
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -30514,7 +30514,7 @@ async function readJsonlFromPath(jsonlPath) {
30514
30514
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
30515
30515
  throw new Error("jsonlPath outside allowed roots");
30516
30516
  }
30517
- const canonical = await fs$1.realpath(resolved).catch(() => resolved);
30517
+ const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
30518
30518
  if (!isInboundPathAllowed({
30519
30519
  filePath: canonical,
30520
30520
  roots
@@ -30522,7 +30522,7 @@ async function readJsonlFromPath(jsonlPath) {
30522
30522
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
30523
30523
  throw new Error("jsonlPath outside allowed roots");
30524
30524
  }
30525
- return await fs$1.readFile(canonical, "utf8");
30525
+ return await fsPromises.readFile(canonical, "utf8");
30526
30526
  }
30527
30527
  const CanvasToolSchema = Type.Object({
30528
30528
  action: stringEnum(CANVAS_ACTIONS),
@@ -31373,27 +31373,27 @@ function resolveRestartSentinelPath(env = process.env) {
31373
31373
  }
31374
31374
  async function writeRestartSentinel(payload, env = process.env) {
31375
31375
  const filePath = resolveRestartSentinelPath(env);
31376
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
31376
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
31377
31377
  const data = {
31378
31378
  version: 1,
31379
31379
  payload
31380
31380
  };
31381
- await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
31381
+ await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
31382
31382
  return filePath;
31383
31383
  }
31384
31384
  async function readRestartSentinel(env = process.env) {
31385
31385
  const filePath = resolveRestartSentinelPath(env);
31386
31386
  try {
31387
- const raw = await fs$1.readFile(filePath, "utf-8");
31387
+ const raw = await fsPromises.readFile(filePath, "utf-8");
31388
31388
  let parsed;
31389
31389
  try {
31390
31390
  parsed = JSON.parse(raw);
31391
31391
  } catch {
31392
- await fs$1.unlink(filePath).catch(() => {});
31392
+ await fsPromises.unlink(filePath).catch(() => {});
31393
31393
  return null;
31394
31394
  }
31395
31395
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
31396
- await fs$1.unlink(filePath).catch(() => {});
31396
+ await fsPromises.unlink(filePath).catch(() => {});
31397
31397
  return null;
31398
31398
  }
31399
31399
  return parsed;
@@ -31405,7 +31405,7 @@ async function consumeRestartSentinel(env = process.env) {
31405
31405
  const filePath = resolveRestartSentinelPath(env);
31406
31406
  const parsed = await readRestartSentinel(env);
31407
31407
  if (!parsed) return null;
31408
- await fs$1.unlink(filePath).catch(() => {});
31408
+ await fsPromises.unlink(filePath).catch(() => {});
31409
31409
  return parsed;
31410
31410
  }
31411
31411
  function formatRestartSentinelMessage(payload) {
@@ -41999,18 +41999,18 @@ function appendImagePathsToPrompt(prompt, paths) {
41999
41999
  return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
42000
42000
  }
42001
42001
  async function writeCliImages(images) {
42002
- const tempDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
42002
+ const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
42003
42003
  const paths = [];
42004
42004
  for (let i = 0; i < images.length; i += 1) {
42005
42005
  const image = images[i];
42006
42006
  const ext = resolveImageExtension(image.mimeType);
42007
42007
  const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
42008
42008
  const buffer = Buffer.from(image.data, "base64");
42009
- await fs$1.writeFile(filePath, buffer, { mode: 384 });
42009
+ await fsPromises.writeFile(filePath, buffer, { mode: 384 });
42010
42010
  paths.push(filePath);
42011
42011
  }
42012
42012
  const cleanup = async () => {
42013
- await fs$1.rm(tempDir, {
42013
+ await fsPromises.rm(tempDir, {
42014
42014
  recursive: true,
42015
42015
  force: true
42016
42016
  });
@@ -45983,7 +45983,7 @@ async function deliverSessionMaintenanceWarning(params) {
45983
45983
  return;
45984
45984
  }
45985
45985
  try {
45986
- const { deliverOutboundPayloads } = await import("./deliver-DUBuu2uJ.js").then((n) => n.n);
45986
+ const { deliverOutboundPayloads } = await import("./deliver-CKHf6BfA.js").then((n) => n.n);
45987
45987
  const outboundSession = buildOutboundSessionContext({
45988
45988
  cfg: params.cfg,
45989
45989
  sessionKey: params.sessionKey
@@ -46806,7 +46806,7 @@ async function stageSandboxMedia(params) {
46806
46806
  const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(workspaceDir, ".openclaw", "media", "remote-cache", sessionKey) : null;
46807
46807
  const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
46808
46808
  if (!effectiveWorkspaceDir) return;
46809
- await fs$1.mkdir(effectiveWorkspaceDir, { recursive: true });
46809
+ await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
46810
46810
  const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
46811
46811
  cfg,
46812
46812
  accountId: ctx.AccountId
@@ -46865,8 +46865,8 @@ async function stageLocalFileIntoRoot(params) {
46865
46865
  }
46866
46866
  async function stageRemoteFileIntoRoot(params) {
46867
46867
  const tmpRoot = resolvePreferredOpenClawTmpDir();
46868
- await fs$1.mkdir(tmpRoot, { recursive: true });
46869
- const tmpDir = await fs$1.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
46868
+ await fsPromises.mkdir(tmpRoot, { recursive: true });
46869
+ const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
46870
46870
  const tmpPath = path.join(tmpDir, "download");
46871
46871
  try {
46872
46872
  await scpFile(params.remoteHost, params.remotePath, tmpPath);
@@ -46877,7 +46877,7 @@ async function stageRemoteFileIntoRoot(params) {
46877
46877
  maxBytes: params.maxBytes
46878
46878
  });
46879
46879
  } finally {
46880
- await fs$1.rm(tmpDir, {
46880
+ await fsPromises.rm(tmpDir, {
46881
46881
  recursive: true,
46882
46882
  force: true
46883
46883
  }).catch(() => {});
@@ -47275,9 +47275,9 @@ function buildWorkspaceLaneActor(params) {
47275
47275
  channel: INTERNAL_MESSAGE_CHANNEL,
47276
47276
  senderId,
47277
47277
  laneSenderId: senderId,
47278
- isHeartbeat,
47279
- configuredIdentity,
47280
- inheritedCanonicalIdentity
47278
+ isHeartbeat: void 0,
47279
+ configuredIdentity: void 0,
47280
+ inheritedCanonicalIdentity: void 0
47281
47281
  })
47282
47282
  };
47283
47283
  }
@@ -51605,8 +51605,8 @@ async function describeStickerImage(params) {
51605
51605
  const { provider, model } = resolved;
51606
51606
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
51607
51607
  try {
51608
- const buffer = await fs$1.readFile(imagePath);
51609
- const { describeImageWithModel } = await import("./provider-image-aaxt6RAc.js").then((n) => n.n);
51608
+ const buffer = await fsPromises.readFile(imagePath);
51609
+ const { describeImageWithModel } = await import("./provider-image-GRI3ijiz.js").then((n) => n.n);
51610
51610
  return (await describeImageWithModel({
51611
51611
  buffer,
51612
51612
  fileName: "sticker.webp",
@@ -53196,7 +53196,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
53196
53196
  let transcript;
53197
53197
  let carry;
53198
53198
  if (needsPreflightTranscription) try {
53199
- const { transcribeFirstAudio } = await import("./audio-preflight-BYkASiuL.js");
53199
+ const { transcribeFirstAudio } = await import("./audio-preflight-BeM0QH9O.js");
53200
53200
  const uploadable = audioAttachments.filter((att) => typeof att.url === "string" && att.url.length > 0);
53201
53201
  if (uploadable.length > 0) {
53202
53202
  const preflight = await transcribeFirstAudio({
@@ -57893,23 +57893,23 @@ function createDefaultDeps() {
57893
57893
  };
57894
57894
  },
57895
57895
  sendMessageTelegram: async (...args) => {
57896
- const { sendMessageTelegram } = await import("./send-CCM9Q6bQ.js").then((n) => n.l);
57896
+ const { sendMessageTelegram } = await import("./send-CrP3wO_5.js").then((n) => n.l);
57897
57897
  return await sendMessageTelegram(...args);
57898
57898
  },
57899
57899
  sendMessageDiscord: async (...args) => {
57900
- const { sendMessageDiscord } = await import("./send-B7qZuE28.js").then((n) => n.t);
57900
+ const { sendMessageDiscord } = await import("./send-DiY7W1su.js").then((n) => n.t);
57901
57901
  return await sendMessageDiscord(...args);
57902
57902
  },
57903
57903
  sendMessageSlack: async (...args) => {
57904
- const { sendMessageSlack } = await import("./send-DnUxCZe9.js").then((n) => n.n);
57904
+ const { sendMessageSlack } = await import("./send-BgWc92i5.js").then((n) => n.n);
57905
57905
  return await sendMessageSlack(...args);
57906
57906
  },
57907
57907
  sendMessageSignal: async (...args) => {
57908
- const { sendMessageSignal } = await import("./send-D20u05DD.js").then((n) => n.i);
57908
+ const { sendMessageSignal } = await import("./send-wFJCwq2b.js").then((n) => n.i);
57909
57909
  return await sendMessageSignal(...args);
57910
57910
  },
57911
57911
  sendMessageIMessage: async (...args) => {
57912
- const { sendMessageIMessage } = await import("./send-D7jSVo_g.js").then((n) => n.n);
57912
+ const { sendMessageIMessage } = await import("./send-DLkrlosm.js").then((n) => n.n);
57913
57913
  return await sendMessageIMessage(...args);
57914
57914
  }
57915
57915
  };
@@ -58913,9 +58913,9 @@ async function agentCommandInternal(requestedOpts, runtime = defaultRuntime, dep
58913
58913
  }
58914
58914
  }
58915
58915
  if (modelRun) {
58916
- modelRunScratchDir = await fs$1.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "openclaw-model-run-"));
58916
+ modelRunScratchDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "openclaw-model-run-"));
58917
58917
  const scratchFile = path.join(modelRunScratchDir, "session.jsonl");
58918
- await fs$1.copyFile(sessionFile, scratchFile).catch(() => {});
58918
+ await fsPromises.copyFile(sessionFile, scratchFile).catch(() => {});
58919
58919
  sessionFile = scratchFile;
58920
58920
  }
58921
58921
  const startedAt = Date.now();
@@ -59032,7 +59032,7 @@ async function agentCommandInternal(requestedOpts, runtime = defaultRuntime, dep
59032
59032
  else if (!runThrew) if (result?.meta.error) await sessionRun?.fail(new Error(result.meta.error.message));
59033
59033
  else await sessionRun?.complete();
59034
59034
  clearAgentRunContext(runId);
59035
- if (modelRunScratchDir) await fs$1.rm(modelRunScratchDir, {
59035
+ if (modelRunScratchDir) await fsPromises.rm(modelRunScratchDir, {
59036
59036
  recursive: true,
59037
59037
  force: true,
59038
59038
  maxRetries: 10,
@@ -59186,10 +59186,10 @@ function estimateDurationSeconds(pcm) {
59186
59186
  return pcm.length / (bytesPerSample * SAMPLE_RATE);
59187
59187
  }
59188
59188
  async function writeWavFile(pcm) {
59189
- const tempDir = await fs$1.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
59189
+ const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
59190
59190
  const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
59191
59191
  const wav = buildWavBuffer(pcm);
59192
- await fs$1.writeFile(filePath, wav);
59192
+ await fsPromises.writeFile(filePath, wav);
59193
59193
  scheduleTempCleanup(tempDir);
59194
59194
  return {
59195
59195
  path: filePath,
@@ -59198,7 +59198,7 @@ async function writeWavFile(pcm) {
59198
59198
  }
59199
59199
  function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
59200
59200
  setTimeout(() => {
59201
- fs$1.rm(tempDir, {
59201
+ fsPromises.rm(tempDir, {
59202
59202
  recursive: true,
59203
59203
  force: true
59204
59204
  }).catch((err) => {
@@ -63527,7 +63527,7 @@ function normalizeAllowList$1(list) {
63527
63527
  async function detectRemoteHostFromCliPath(cliPath) {
63528
63528
  try {
63529
63529
  const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
63530
- const content = await fs$1.readFile(expanded, "utf8");
63530
+ const content = await fsPromises.readFile(expanded, "utf8");
63531
63531
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
63532
63532
  if (userHostMatch) return userHostMatch[1];
63533
63533
  return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
@@ -70285,7 +70285,7 @@ function readSlackExternalArgMenuToken(raw) {
70285
70285
  }
70286
70286
  let commandsRegistry;
70287
70287
  async function getCommandsRegistry() {
70288
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-CcbNhUWz.js").then((n) => n.n);
70288
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-Dh2bmHYX.js").then((n) => n.n);
70289
70289
  return commandsRegistry;
70290
70290
  }
70291
70291
  function encodeSlackCommandArgValue(parts) {
@@ -70615,14 +70615,14 @@ async function registerSlackMonitorSlashCommands(params) {
70615
70615
  const channelName = channelInfo?.name;
70616
70616
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
70617
70617
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
70618
- import("./resolve-route-c5P6_dQM.js").then((n) => n.r),
70618
+ import("./resolve-route-B5nwCVT3.js").then((n) => n.r),
70619
70619
  import("./inbound-context-DhNeMUJa.js").then((n) => n.n),
70620
70620
  Promise.resolve().then(() => provider_dispatcher_exports)
70621
70621
  ]);
70622
70622
  const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
70623
70623
  import("./conversation-label-Bpw8crN9.js").then((n) => n.t),
70624
- import("./reply-prefix-DQs4kcQX.js").then((n) => n.n),
70625
- import("./session-meta-BDUMkHJb.js").then((n) => n.n)
70624
+ import("./reply-prefix-EVut-MnZ.js").then((n) => n.n),
70625
+ import("./session-meta-fp99Ucj0.js").then((n) => n.n)
70626
70626
  ]);
70627
70627
  const route = resolveAgentRoute({
70628
70628
  cfg,
@@ -70687,9 +70687,9 @@ async function registerSlackMonitorSlashCommands(params) {
70687
70687
  });
70688
70688
  const deliverSlashPayloads = async (replies) => {
70689
70689
  const [{ deliverSlackSlashReplies }, { resolveChunkMode, resolveChunkNewlinePacking }, { resolveMarkdownTableMode }] = await Promise.all([
70690
- import("./replies-zxrU3Tlk.js").then((n) => n.r),
70691
- import("./chunk-BIErRWoV.js").then((n) => n.s),
70692
- import("./markdown-tables-Cvm3FY0g.js").then((n) => n.t)
70690
+ import("./replies-CI-WAhGv.js").then((n) => n.r),
70691
+ import("./chunk-CyVpre5Y.js").then((n) => n.s),
70692
+ import("./markdown-tables-DDn13kBS.js").then((n) => n.t)
70693
70693
  ]);
70694
70694
  await deliverSlackSlashReplies({
70695
70695
  replies,
@@ -70743,7 +70743,7 @@ async function registerSlackMonitorSlashCommands(params) {
70743
70743
  let nativeCommands = [];
70744
70744
  if (nativeEnabled) {
70745
70745
  reg = await getCommandsRegistry();
70746
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-B7CuemwQ.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
70746
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-D8oby-tg.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
70747
70747
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
70748
70748
  skillCommands,
70749
70749
  provider: "slack"
@@ -71262,7 +71262,7 @@ async function auditTelegramGroupMembership(params) {
71262
71262
  groups: [],
71263
71263
  elapsedMs: Date.now() - started
71264
71264
  };
71265
- const fetcher = params.proxyUrl ? (await import("./proxy-CkTukFRT.js").then((n) => n.n)).makeProxyFetch(params.proxyUrl) : fetch;
71265
+ const fetcher = params.proxyUrl ? (await import("./proxy-ZTZCSX-m.js").then((n) => n.n)).makeProxyFetch(params.proxyUrl) : fetch;
71266
71266
  const { fetchWithTimeout } = await import("./fetch-timeout-CWcs4Nwj.js").then((n) => n.r);
71267
71267
  const base = `${TELEGRAM_API_BASE$1}/bot${token}`;
71268
71268
  const groups = [];
@@ -73821,7 +73821,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
73821
73821
  let audioPreflightCarry;
73822
73822
  const audioConfigEnabled = cfg.tools?.media?.audio && cfg.tools.media.audio.enabled !== false;
73823
73823
  if (hasAudio && !hasUserText && !disableAudioPreflight && (isGroup && requireMention && mentionRegexes.length > 0 || audioConfigEnabled === true)) try {
73824
- const { transcribeFirstAudio } = await import("./audio-preflight-BYkASiuL.js");
73824
+ const { transcribeFirstAudio } = await import("./audio-preflight-BeM0QH9O.js");
73825
73825
  const preflight = await transcribeFirstAudio({
73826
73826
  ctx: {
73827
73827
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -75292,7 +75292,7 @@ function resolveCommandHashPath(accountId, botIdentity) {
75292
75292
  }
75293
75293
  async function readCachedCommandHash(accountId, botIdentity) {
75294
75294
  try {
75295
- return (await fs$1.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
75295
+ return (await fsPromises.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
75296
75296
  } catch {
75297
75297
  return null;
75298
75298
  }
@@ -75300,8 +75300,8 @@ async function readCachedCommandHash(accountId, botIdentity) {
75300
75300
  async function writeCachedCommandHash(accountId, botIdentity, hash) {
75301
75301
  const filePath = resolveCommandHashPath(accountId, botIdentity);
75302
75302
  try {
75303
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
75304
- await fs$1.writeFile(filePath, hash, "utf-8");
75303
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
75304
+ await fsPromises.writeFile(filePath, hash, "utf-8");
75305
75305
  } catch {}
75306
75306
  }
75307
75307
  function syncTelegramMenuCommands(params) {
@@ -76485,7 +76485,7 @@ function safeParseState(raw) {
76485
76485
  async function readTelegramUpdateOffset(params) {
76486
76486
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
76487
76487
  try {
76488
- const parsed = safeParseState(await fs$1.readFile(filePath, "utf-8"));
76488
+ const parsed = safeParseState(await fsPromises.readFile(filePath, "utf-8"));
76489
76489
  const expectedBotId = extractBotIdFromToken(params.botToken);
76490
76490
  if (expectedBotId && parsed?.botId && parsed.botId !== expectedBotId) return null;
76491
76491
  if (expectedBotId && parsed?.botId === null) return null;
@@ -76509,7 +76509,7 @@ async function writeTelegramUpdateOffset(params) {
76509
76509
  async function deleteTelegramUpdateOffset(params) {
76510
76510
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
76511
76511
  try {
76512
- await fs$1.unlink(filePath);
76512
+ await fsPromises.unlink(filePath);
76513
76513
  } catch (err) {
76514
76514
  if (err.code === "ENOENT") return;
76515
76515
  throw err;
@@ -78296,7 +78296,7 @@ function createPluginRuntime(options = {}) {
78296
78296
  workStates: readTaskWorkStates
78297
78297
  },
78298
78298
  resolveLearningWorkspaceDir: (agentId) => resolveLearningWorkspaceDir(loadConfig(), agentId),
78299
- sessions: { startUserRun: async (params) => (await import("./user-run-recording-8SPArkeP.js").then((n) => n.n)).startUserSessionRun(params) }
78299
+ sessions: { startUserRun: async (params) => (await import("./user-run-recording-CXcaMyeC.js").then((n) => n.n)).startUserSessionRun(params) }
78300
78300
  };
78301
78301
  Object.defineProperty(runtime, "analysis", {
78302
78302
  enumerable: true,
@@ -79206,7 +79206,7 @@ function resolvePluginWebSearchProviders(params) {
79206
79206
  //#endregion
79207
79207
  //#region src/agents/apply-patch-update.ts
79208
79208
  async function defaultReadFile(filePath) {
79209
- return fs$1.readFile(filePath, "utf8");
79209
+ return fsPromises.readFile(filePath, "utf8");
79210
79210
  }
79211
79211
  async function applyUpdateHunk(filePath, chunks, options) {
79212
79212
  const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
@@ -79527,7 +79527,7 @@ function resolvePatchFileOps(options) {
79527
79527
  const workspaceOnly = options.workspaceOnly !== false;
79528
79528
  return {
79529
79529
  readFile: async (filePath) => {
79530
- if (!workspaceOnly) return await fs$1.readFile(filePath, "utf8");
79530
+ if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
79531
79531
  const opened = await openBoundaryFile({
79532
79532
  absolutePath: filePath,
79533
79533
  rootPath: options.cwd,
@@ -79542,7 +79542,7 @@ function resolvePatchFileOps(options) {
79542
79542
  },
79543
79543
  writeFile: async (filePath, content) => {
79544
79544
  if (!workspaceOnly) {
79545
- await fs$1.writeFile(filePath, content, "utf8");
79545
+ await fsPromises.writeFile(filePath, content, "utf8");
79546
79546
  return;
79547
79547
  }
79548
79548
  const relative = toRelativeSandboxPath(options.cwd, filePath);
@@ -79553,8 +79553,8 @@ function resolvePatchFileOps(options) {
79553
79553
  encoding: "utf8"
79554
79554
  });
79555
79555
  },
79556
- remove: (filePath) => fs$1.rm(filePath),
79557
- mkdirp: (dir) => fs$1.mkdir(dir, { recursive: true }).then(() => {})
79556
+ remove: (filePath) => fsPromises.rm(filePath),
79557
+ mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
79558
79558
  };
79559
79559
  }
79560
79560
  async function ensureDir(filePath, ops) {
@@ -79833,7 +79833,7 @@ async function recordLoopOutcome(args) {
79833
79833
  if (!args.ctx?.sessionKey) return;
79834
79834
  try {
79835
79835
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-1K1Ij_N0.js").then((n) => n.n);
79836
- const { recordToolCallOutcome } = await import("./tool-loop-detection-I5BtAA42.js");
79836
+ const { recordToolCallOutcome } = await import("./tool-loop-detection-HY9HSq9r.js");
79837
79837
  recordToolCallOutcome(getDiagnosticSessionState({
79838
79838
  sessionKey: args.ctx.sessionKey,
79839
79839
  sessionId: args.ctx?.agentId
@@ -79860,8 +79860,8 @@ async function runBeforeToolCallHook(args) {
79860
79860
  const params = args.params;
79861
79861
  if (args.ctx?.sessionKey) {
79862
79862
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-1K1Ij_N0.js").then((n) => n.n);
79863
- const { logToolLoopAction } = await import("./diagnostic-DuMnWlrO.js").then((n) => n.r);
79864
- const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-I5BtAA42.js");
79863
+ const { logToolLoopAction } = await import("./diagnostic-CsiKdkkn.js").then((n) => n.r);
79864
+ const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-HY9HSq9r.js");
79865
79865
  const sessionState = getDiagnosticSessionState({
79866
79866
  sessionKey: args.ctx.sessionKey,
79867
79867
  sessionId: args.ctx?.agentId
@@ -80091,7 +80091,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
80091
80091
  if (!pathParam || !newText) throw err;
80092
80092
  try {
80093
80093
  const absolutePath = resolveHostEditPath(root, pathParam);
80094
- const content = await fs$1.readFile(absolutePath, "utf-8");
80094
+ const content = await fsPromises.readFile(absolutePath, "utf-8");
80095
80095
  const hasNew = content.includes(newText);
80096
80096
  const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
80097
80097
  if (hasNew && !stillHasOld) return {
@@ -80582,14 +80582,14 @@ function createSandboxEditOperations(params) {
80582
80582
  }
80583
80583
  async function writeHostFile(absolutePath, content) {
80584
80584
  const resolved = path.resolve(absolutePath);
80585
- await fs$1.mkdir(path.dirname(resolved), { recursive: true });
80586
- await fs$1.writeFile(resolved, content, "utf-8");
80585
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
80586
+ await fsPromises.writeFile(resolved, content, "utf-8");
80587
80587
  }
80588
80588
  function createHostWriteOperations(root, options) {
80589
80589
  if (!(options?.workspaceOnly ?? false)) return {
80590
80590
  mkdir: async (dir) => {
80591
80591
  const resolved = path.resolve(dir);
80592
- await fs$1.mkdir(resolved, { recursive: true });
80592
+ await fsPromises.mkdir(resolved, { recursive: true });
80593
80593
  },
80594
80594
  writeFile: writeHostFile
80595
80595
  };
@@ -80602,7 +80602,7 @@ function createHostWriteOperations(root, options) {
80602
80602
  cwd: root,
80603
80603
  root
80604
80604
  });
80605
- await fs$1.mkdir(resolved, { recursive: true });
80605
+ await fsPromises.mkdir(resolved, { recursive: true });
80606
80606
  },
80607
80607
  writeFile: async (absolutePath, content) => {
80608
80608
  await writeFileWithinRoot({
@@ -80618,12 +80618,12 @@ function createHostEditOperations(root, options) {
80618
80618
  if (!(options?.workspaceOnly ?? false)) return {
80619
80619
  readFile: async (absolutePath) => {
80620
80620
  const resolved = path.resolve(absolutePath);
80621
- return await fs$1.readFile(resolved);
80621
+ return await fsPromises.readFile(resolved);
80622
80622
  },
80623
80623
  writeFile: writeHostFile,
80624
80624
  access: async (absolutePath) => {
80625
80625
  const resolved = path.resolve(absolutePath);
80626
- await fs$1.access(resolved);
80626
+ await fsPromises.access(resolved);
80627
80627
  }
80628
80628
  };
80629
80629
  return {
@@ -81559,7 +81559,7 @@ async function repairSessionFileIfNeeded(params) {
81559
81559
  };
81560
81560
  let content;
81561
81561
  try {
81562
- content = await fs$1.readFile(sessionFile, "utf-8");
81562
+ content = await fsPromises.readFile(sessionFile, "utf-8");
81563
81563
  } catch (err) {
81564
81564
  if (err?.code === "ENOENT") return {
81565
81565
  repaired: false,
@@ -81607,15 +81607,15 @@ async function repairSessionFileIfNeeded(params) {
81607
81607
  const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
81608
81608
  const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
81609
81609
  try {
81610
- const stat = await fs$1.stat(sessionFile).catch(() => null);
81611
- await fs$1.writeFile(backupPath, content, "utf-8");
81612
- if (stat) await fs$1.chmod(backupPath, stat.mode);
81613
- await fs$1.writeFile(tmpPath, cleaned, "utf-8");
81614
- if (stat) await fs$1.chmod(tmpPath, stat.mode);
81615
- await fs$1.rename(tmpPath, sessionFile);
81610
+ const stat = await fsPromises.stat(sessionFile).catch(() => null);
81611
+ await fsPromises.writeFile(backupPath, content, "utf-8");
81612
+ if (stat) await fsPromises.chmod(backupPath, stat.mode);
81613
+ await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
81614
+ if (stat) await fsPromises.chmod(tmpPath, stat.mode);
81615
+ await fsPromises.rename(tmpPath, sessionFile);
81616
81616
  } catch (err) {
81617
81617
  try {
81618
- await fs$1.unlink(tmpPath);
81618
+ await fsPromises.unlink(tmpPath);
81619
81619
  } catch (cleanupErr) {
81620
81620
  params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
81621
81621
  }
@@ -83313,7 +83313,7 @@ async function prewarmSessionFile(sessionFile) {
83313
83313
  if (!isSessionManagerCacheEnabled()) return;
83314
83314
  if (isSessionManagerCached(sessionFile)) return;
83315
83315
  try {
83316
- const handle = await fs$1.open(sessionFile, "r");
83316
+ const handle = await fsPromises.open(sessionFile, "r");
83317
83317
  try {
83318
83318
  const buffer = Buffer$1.alloc(4096);
83319
83319
  await handle.read(buffer, 0, buffer.length, 0);
@@ -84064,7 +84064,7 @@ async function compactEmbeddedPiSessionDirect(params) {
84064
84064
  } catch (err) {
84065
84065
  return fail(describeUnknownError(err));
84066
84066
  }
84067
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
84067
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
84068
84068
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
84069
84069
  const sandbox = await resolveSandboxContext({
84070
84070
  config: params.config,
@@ -84073,7 +84073,7 @@ async function compactEmbeddedPiSessionDirect(params) {
84073
84073
  workspaceLane: params.workspaceLane
84074
84074
  });
84075
84075
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
84076
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
84076
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
84077
84077
  if (!(isPreservationArmed() || !isJsonlSessionBackend())) await ensureSessionHeader({
84078
84078
  sessionFile: params.sessionFile,
84079
84079
  sessionId: params.sessionId,
@@ -87810,7 +87810,7 @@ async function prepareSessionManagerForRun(params) {
87810
87810
  header.id = params.sessionId;
87811
87811
  header.cwd = params.cwd;
87812
87812
  sm.sessionId = params.sessionId;
87813
- await fs$1.writeFile(params.sessionFile, "", "utf-8");
87813
+ await fsPromises.writeFile(params.sessionFile, "", "utf-8");
87814
87814
  sm.flushed = false;
87815
87815
  }
87816
87816
  }
@@ -89498,7 +89498,7 @@ async function runEmbeddedAttempt(params) {
89498
89498
  const runAbortController = new AbortController();
89499
89499
  const currentUserTurnForStorage = resolveCurrentUserTurnForStorage(params);
89500
89500
  log$30.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"}`);
89501
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
89501
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
89502
89502
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
89503
89503
  const toolSessionKey = params.toolSessionKey?.trim() || sandboxSessionKey;
89504
89504
  const sandbox = params.skipSandbox ? null : await resolveSandboxContext({
@@ -89508,7 +89508,7 @@ async function runEmbeddedAttempt(params) {
89508
89508
  workspaceLane: params.workspaceLane
89509
89509
  });
89510
89510
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
89511
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
89511
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
89512
89512
  let restoreSkillEnv;
89513
89513
  const releaseWorkspaceCwd = params.skipCwdChange ? void 0 : acquireWorkspaceCwd(effectiveWorkspace);
89514
89514
  try {
@@ -89894,7 +89894,7 @@ async function runEmbeddedAttempt(params) {
89894
89894
  sessionFile: params.sessionFile,
89895
89895
  warn: (message) => log$30.warn(message)
89896
89896
  });
89897
- const hadSessionFile = await fs$1.stat(params.sessionFile).then(() => true).catch(() => false);
89897
+ const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
89898
89898
  if (!params.skipSessionManagerCache) await prewarmSessionFile(params.sessionFile);
89899
89899
  sessionManager = guardSessionManager(SessionManager.open(params.sessionFile), {
89900
89900
  agentId: sessionAgentId,
@@ -91303,7 +91303,7 @@ async function runEmbeddedPiAgent(params) {
91303
91303
  const copilotAuthRetry = authRetryPending;
91304
91304
  authRetryPending = false;
91305
91305
  attemptedThinking.add(thinkLevel);
91306
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
91306
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
91307
91307
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
91308
91308
  const attempt = await runEmbeddedAttempt({
91309
91309
  sessionId: params.sessionId,
@@ -92454,7 +92454,7 @@ async function runModelGate(spec, ctx) {
92454
92454
  const isolatedSessionId = randomNonce;
92455
92455
  const isolatedRunId = randomNonce;
92456
92456
  const tmpBaseDir = resolvePreferredOpenClawTmpDir();
92457
- tmpDir = await fs$1.mkdtemp(path.join(tmpBaseDir, "wake-gate-"));
92457
+ tmpDir = await fsPromises.mkdtemp(path.join(tmpBaseDir, "wake-gate-"));
92458
92458
  const sessionFile = path.join(tmpDir, "session.json");
92459
92459
  const workspaceDir = tmpDir;
92460
92460
  const prompt = spec.prompt ?? DEFAULT_MODEL_PROMPT;
@@ -92513,7 +92513,7 @@ async function runModelGate(spec, ctx) {
92513
92513
  log$1.warn("model gate error", { error: err instanceof Error ? err.message : String(err) });
92514
92514
  return { wake: false };
92515
92515
  } finally {
92516
- if (tmpDir) await fs$1.rm(tmpDir, {
92516
+ if (tmpDir) await fsPromises.rm(tmpDir, {
92517
92517
  recursive: true,
92518
92518
  force: true
92519
92519
  }).catch(() => void 0);
@@ -92812,7 +92812,7 @@ async function pruneHeartbeatTranscript(params) {
92812
92812
  if (!transcriptPath || typeof preHeartbeatSize !== "number" || preHeartbeatSize < 0) return;
92813
92813
  const pruneEnd = typeof postHeartbeatWriteSize === "number" && postHeartbeatWriteSize >= preHeartbeatSize ? postHeartbeatWriteSize : void 0;
92814
92814
  try {
92815
- const content = await fs$1.readFile(transcriptPath, "utf8");
92815
+ const content = await fsPromises.readFile(transcriptPath, "utf8");
92816
92816
  const currentBytes = Buffer.byteLength(content, "utf8");
92817
92817
  if (currentBytes <= preHeartbeatSize) return;
92818
92818
  const buf = Buffer.from(content, "utf8");
@@ -92840,10 +92840,10 @@ async function pruneHeartbeatTranscript(params) {
92840
92840
  const rewritten = preText + (keptRegionLines.length > 0 ? keptRegionLines.join("\n") + (heartbeatRegion.endsWith("\n") ? "\n" : "") : "") + concurrentTail;
92841
92841
  const tmp = `${transcriptPath}.${process.pid}.${randomBytes(8).toString("hex")}.tmp`;
92842
92842
  try {
92843
- await fs$1.writeFile(tmp, rewritten, "utf8");
92844
- await fs$1.rename(tmp, transcriptPath);
92843
+ await fsPromises.writeFile(tmp, rewritten, "utf8");
92844
+ await fsPromises.rename(tmp, transcriptPath);
92845
92845
  } catch (err) {
92846
- await fs$1.unlink(tmp).catch(() => {});
92846
+ await fsPromises.unlink(tmp).catch(() => {});
92847
92847
  throw err;
92848
92848
  }
92849
92849
  } catch (err) {
@@ -92865,7 +92865,7 @@ async function captureTranscriptState(params) {
92865
92865
  });
92866
92866
  return {
92867
92867
  transcriptPath,
92868
- preHeartbeatSize: (await fs$1.stat(transcriptPath)).size
92868
+ preHeartbeatSize: (await fsPromises.stat(transcriptPath)).size
92869
92869
  };
92870
92870
  } catch {
92871
92871
  return {};
@@ -92879,7 +92879,7 @@ async function captureTranscriptState(params) {
92879
92879
  async function withPostHeartbeatWriteSize(transcriptState) {
92880
92880
  if (!transcriptState.transcriptPath) return transcriptState;
92881
92881
  try {
92882
- const stat = await fs$1.stat(transcriptState.transcriptPath);
92882
+ const stat = await fsPromises.stat(transcriptState.transcriptPath);
92883
92883
  return {
92884
92884
  ...transcriptState,
92885
92885
  postHeartbeatWriteSize: stat.size
@@ -93001,7 +93001,7 @@ async function resolveHeartbeatPreflight(params) {
93001
93001
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, params.agentId);
93002
93002
  const heartbeatFilePath = path.join(workspaceDir, DEFAULT_HEARTBEAT_FILENAME);
93003
93003
  try {
93004
- if (isHeartbeatContentEffectivelyEmpty(await fs$1.readFile(heartbeatFilePath, "utf-8"))) return {
93004
+ if (isHeartbeatContentEffectivelyEmpty(await fsPromises.readFile(heartbeatFilePath, "utf-8"))) return {
93005
93005
  ...basePreflight,
93006
93006
  skipReason: "empty-heartbeat-file"
93007
93007
  };