wednesdayai 0.5.1-dev.37 → 0.5.1-dev.38

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 (418) hide show
  1. package/dist/{acp-cli-BCtWMJDr.js → acp-cli-DHAxJufY.js} +11 -11
  2. package/dist/{agent-scope-BXqrHhZ0.js → agent-scope-BZ0wFh-U.js} +21 -21
  3. package/dist/{agent-turn-enqueue-TStC2eAo.js → agent-turn-enqueue-DZ607FR0.js} +6 -6
  4. package/dist/{agent-turn-execute-B8YL98Ei.js → agent-turn-execute-CGTvDxUE.js} +152 -152
  5. package/dist/{agent-turn-recovery-adapter-DMCiX5id.js → agent-turn-recovery-adapter-bACrcJAQ.js} +3 -3
  6. package/dist/{agent-turn-runner-DKwd_tAc.js → agent-turn-runner-C3LuaN7w.js} +2 -2
  7. package/dist/{agent-turn-runner-Dqbqrgbg.js → agent-turn-runner-qSzYP-xO.js} +4 -4
  8. package/dist/{agents-DecMea6v.js → agents-C8johSLq.js} +21 -21
  9. package/dist/{agents.config-C9y5L4K8.js → agents.config-BjA0noNV.js} +3 -3
  10. package/dist/{api-key-rotation-muerimbF.js → api-key-rotation-D4lnO3Ok.js} +1 -1
  11. package/dist/{audio-preflight-BV83ctbI.js → audio-preflight-Djb8Ia-c.js} +3 -3
  12. package/dist/{audio-preflight-CP5CtdsH.js → audio-preflight-oL1-kPAm.js} +37 -37
  13. package/dist/{audio-transcription-runner-Bs4pG29e.js → audio-transcription-runner-BXSN8eBn.js} +27 -27
  14. package/dist/{audio-transcription-runner-DRUTJgZh.js → audio-transcription-runner-DhoPP3LM.js} +1 -1
  15. package/dist/{audit-CEciibi6.js → audit-CKbyr9j7.js} +31 -31
  16. package/dist/{auth-C4aicgu0.js → auth--kj7eWiw.js} +4 -4
  17. package/dist/{auth-choice-CzqQjA2v.js → auth-choice-BOcw0TMX.js} +15 -15
  18. package/dist/{auth-choice-CAZCvJj_.js → auth-choice-RfKE6K30.js} +13 -13
  19. package/dist/{auth-choice.apply-helpers-DWNqsu7M.js → auth-choice.apply-helpers-NHz-APrm.js} +1 -1
  20. package/dist/{auth-token-DEhILWtz.js → auth-token-BdrfJ6LM.js} +2 -2
  21. package/dist/{banner-CI86ZCI2.js → banner-BF4fYjB7.js} +4 -4
  22. package/dist/{bonjour-discovery-24oEkWjB.js → bonjour-discovery-BthO3c3w.js} +3 -3
  23. package/dist/{browser-cli-DhjLTPwH.js → browser-cli-sLIHnZHe.js} +19 -19
  24. package/dist/build-info.json +3 -3
  25. package/dist/bundled/boot-md/handler.js +6 -6
  26. package/dist/bundled/session-journal/handler.js +6 -6
  27. package/dist/bundled/session-memory/handler.js +6 -6
  28. package/dist/{call-C4ArH9Si.js → call-BY-wbSIJ.js} +12 -12
  29. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  30. package/dist/{channel-account-context-CndjAqFL.js → channel-account-context-DIx7V4k-.js} +7 -7
  31. package/dist/{channel-options-OJHp5c5p.js → channel-options-B10KsMrg.js} +3 -3
  32. package/dist/{channel-selection-JkSKVHJp.js → channel-selection-BxBw-nya.js} +1 -1
  33. package/dist/{channels-cli-Z1jMieGO.js → channels-cli-C4-OqjW1.js} +119 -119
  34. package/dist/{channels-status-issues-KrOAESoD.js → channels-status-issues-DYdDrl6F.js} +1 -1
  35. package/dist/{chat-content-B2kNxQ3a.js → chat-content-Cp63XvqY.js} +3 -3
  36. package/dist/{chrome-CBtFbbNQ.js → chrome-CMvVElGc.js} +6 -6
  37. package/dist/{chrome-DgDNUC2A.js → chrome-DW9-DzcL.js} +8 -8
  38. package/dist/{chunk-TNziyyRO.js → chunk-DAmLsltN.js} +3 -3
  39. package/dist/{clack-prompter-BGz_-0Jy.js → clack-prompter-gj894fSZ.js} +5 -5
  40. package/dist/clawbot-cli-Uwda-gwl.js +31 -0
  41. package/dist/cli/daemon-cli.js +1 -1
  42. package/dist/cli-9kY6bXto.js +165 -0
  43. package/dist/{client-x4GnolXm.js → client-DsaKKPz1.js} +4 -4
  44. package/dist/{client-profiles-DeaEz84_.js → client-profiles-HTQt5I_7.js} +4 -4
  45. package/dist/{clipboard-CpnmAh1M.js → clipboard-Dwm1nI9r.js} +1 -1
  46. package/dist/{command-queue-DqvFUE_T.js → command-queue-D7PleaNJ.js} +1 -1
  47. package/dist/{command-registry-DZhaDT6k.js → command-registry-mp4MxXzC.js} +14 -14
  48. package/dist/{command-secret-targets-CX4FWTx8.js → command-secret-targets-MpNVd6gM.js} +4 -4
  49. package/dist/{commands-DYSm3eNj.js → commands-BSuDoyqC.js} +1 -1
  50. package/dist/{commands-registry-BbHkcgn_.js → commands-registry-CWGturUV.js} +3 -3
  51. package/dist/{completion-cli-KeHhpylY.js → completion-cli-D1oQvlFE.js} +16 -16
  52. package/dist/{config-2hPOvE4Z.js → config-D--rwfpd.js} +31 -31
  53. package/dist/{config-cli-D-H6Kr9B.js → config-cli-BXmt8okw.js} +10 -10
  54. package/dist/{config-guard-BvNFubkG.js → config-guard-Cw6VZZIa.js} +4 -4
  55. package/dist/{config-validation-CoY1swln.js → config-validation-ak7uy8sQ.js} +4 -4
  56. package/dist/{configure-DvBl6V3D.js → configure-Jq_Nd0lw.js} +25 -25
  57. package/dist/{control-ui-assets-DvutqvBd.js → control-ui-assets-D7LC9ugV.js} +3 -3
  58. package/dist/{controller-Cph9HEXR.js → controller-C5VfLHxD.js} +1 -1
  59. package/dist/{credentials-DLluMUaA.js → credentials-D2RfV9B5.js} +1 -1
  60. package/dist/{cron-cli-Bx35RD7d.js → cron-cli-BgEowQB-.js} +14 -14
  61. package/dist/{daemon-cli-DlS7PDJU.js → daemon-cli-BVlct7Qh.js} +19 -19
  62. package/dist/{daemon-install-P8cLD1fo.js → daemon-install-BXgUCwNe.js} +10 -10
  63. package/dist/{daemon-install-helpers-YbryCWUm.js → daemon-install-helpers-DN9p53IN.js} +13 -13
  64. package/dist/{delete-agent-sessions-C60hkBQ-.js → delete-agent-sessions-B4HnloYv.js} +1 -1
  65. package/dist/{deliver-BoOCdGXY.js → deliver-CiY0WQtq.js} +1 -1
  66. package/dist/{deliver-gllA2ft3.js → deliver-CjuGs2ZT.js} +12 -12
  67. package/dist/{devices-cli-Dc_tu4bW.js → devices-cli-BCEiHurA.js} +13 -13
  68. package/dist/{diagnostic-C2zSaTPq.js → diagnostic-jFNdnXCb.js} +4 -4
  69. package/dist/{diagnostics-CSh5FcKM.js → diagnostics-CbXyRsTN.js} +5 -5
  70. package/dist/{directory-cli-CcMw7ktc.js → directory-cli-CEQEXtQ_.js} +11 -11
  71. package/dist/{dm-policy-shared-DyPD8y1v.js → dm-policy-shared-BHHuPFZr.js} +5 -5
  72. package/dist/{dns-cli-Cxw9US4K.js → dns-cli-CfEIvluV.js} +10 -10
  73. package/dist/{docs-cli-BnnuPnNf.js → docs-cli-BvqOi7vO.js} +9 -9
  74. package/dist/{doctor-completion-B4D14F1Y.js → doctor-completion-Cbb3ZrZO.js} +3 -3
  75. package/dist/{doctor-config-flow-CY4BZ2VP.js → doctor-config-flow-zfYUW8HP.js} +17 -17
  76. package/dist/{enable-PpktglSI.js → enable-B7CD1rL9.js} +2 -2
  77. package/dist/entry.js +4 -4
  78. package/dist/{exec-EGo-G7vR.js → exec-DWOKM6EC.js} +2 -2
  79. package/dist/{exec-approvals-CImDpHtY.js → exec-approvals-CavJfWPl.js} +2 -2
  80. package/dist/{exec-approvals-allowlist-B3_jgDyG.js → exec-approvals-allowlist-CfzuCK0Q.js} +1 -1
  81. package/dist/{exec-approvals-cli-C6AHbPh4.js → exec-approvals-cli-uvLKhEsP.js} +22 -22
  82. package/dist/{exec-safe-bin-runtime-policy-h4hE5cjd.js → exec-safe-bin-runtime-policy-CY75nr5s.js} +2 -2
  83. package/dist/{extension-relay-auth-D49uIEqs.js → extension-relay-auth-CEkGLele.js} +10 -10
  84. package/dist/{fetch-BZPOzq9L.js → fetch-CLk1nKmU.js} +5 -5
  85. package/dist/{fetch-guard-laNnWRKl.js → fetch-guard-TJQinE0a.js} +2 -2
  86. package/dist/{fs-safe-db4fkk2l.js → fs-safe-sWugzmbo.js} +25 -25
  87. package/dist/{gateway-cli-Y92yCSUC.js → gateway-cli-C4Xm8OKF.js} +197 -197
  88. package/dist/{gateway-rpc-DogQQ77j.js → gateway-rpc-CIkWW5n2.js} +3 -3
  89. package/dist/{globals-BRyHSrWD.js → globals-3lUHnZas.js} +7 -7
  90. package/dist/{gmail-setup-utils-CahF-fra.js → gmail-setup-utils-CBsUX2F0.js} +2 -2
  91. package/dist/{health-CKyXEs4C.js → health-CkjZqvKv.js} +11 -11
  92. package/dist/{health-format-81amZFDs.js → health-format-CCvWwiB3.js} +1 -1
  93. package/dist/{heartbeat-tick-SbqJkBFN.js → heartbeat-tick-BVllHRaT.js} +1 -1
  94. package/dist/{help-format-CUXi0c_1.js → help-format-BQ0UHPHt.js} +1 -1
  95. package/dist/{helpers-CmoGqLct.js → helpers-DpVn76ht.js} +1 -1
  96. package/dist/{hooks-cli-BQlL_eiX.js → hooks-cli-Ced8bfd_.js} +107 -107
  97. package/dist/{hooks-status-BcYtOqKY.js → hooks-status-CxaWMb-v.js} +2 -2
  98. package/dist/{image-ops-BFv9Aw5H.js → image-ops-C0np5f9V.js} +11 -11
  99. package/dist/{inspect-DmQmgYu2.js → inspect-GlutPeaP.js} +4 -4
  100. package/dist/{install-safe-path-BZ4b1O0D.js → install-safe-path-2eEPQsHT.js} +25 -25
  101. package/dist/{installs-D16nEuyM.js → installs-DSwIaqJH.js} +10 -10
  102. package/dist/{ipv4-DV6XbKGD.js → ipv4-BexgmRwg.js} +2 -2
  103. package/dist/{ir-BbGjFYnq.js → ir-BoNkouUO.js} +8 -8
  104. package/dist/{issue-format-OFCh_2sH.js → issue-format-DhAa1_iS.js} +1 -1
  105. package/dist/{jobs-Pj6_tyn5.js → jobs-D8gtzx-n.js} +3 -3
  106. package/dist/{json-files-G3m05NRY.js → json-files-DNNBEygD.js} +7 -7
  107. package/dist/{lifecycle-core-BI6xkw0D.js → lifecycle-core-BP96hEWA.js} +9 -9
  108. package/dist/{links-BRY-h8H0.js → links-CPIBVJ0k.js} +1 -1
  109. package/dist/llm-slug-generator.js +6 -6
  110. package/dist/{log-tail-DeaaUA7g.js → log-tail-DoAwmIXn.js} +7 -7
  111. package/dist/{logging-C7kf6mNZ.js → logging-CjgQOisq.js} +1 -1
  112. package/dist/{logs-cli-DQhMoYgT.js → logs-cli-CIeDTp3g.js} +18 -18
  113. package/dist/{manager-Be7W1lBp.js → manager-B5VtBnfA.js} +14 -14
  114. package/dist/{manager-C5AVBxrT.js → manager-vjvTALqw.js} +9 -9
  115. package/dist/{markdown-tables-i_PaXF56.js → markdown-tables-BwQlrMEW.js} +2 -2
  116. package/dist/{memory-cli-vUKqKvFg.js → memory-cli-DajAbkdp.js} +19 -19
  117. package/dist/{model-UbsJmYeh.js → model-A1TZLzNB.js} +2 -2
  118. package/dist/{model-catalog-D1B81cpq.js → model-catalog-BcJh6M8w.js} +4 -4
  119. package/dist/{model-picker-D7AGuTS7.js → model-picker-BYGP4JvH.js} +4 -4
  120. package/dist/{models-wwUL9ZYa.js → models-CaKTiIIq.js} +22 -22
  121. package/dist/{models-cli-DYk-Xwo5.js → models-cli-BA6zwth-.js} +107 -107
  122. package/dist/{models-config-CC5yFmpv.js → models-config-CBX2i56k.js} +7 -7
  123. package/dist/{node-cli-B7Zt1yCl.js → node-cli-BF1J4vkA.js} +43 -43
  124. package/dist/{node-command-policy-C-htkgT_.js → node-command-policy-S97zDTm2.js} +1 -1
  125. package/dist/{node-service-Ch4eBsUZ.js → node-service-Drxz78wf.js} +1 -1
  126. package/dist/{nodes-cli-CEm6ENzh.js → nodes-cli-BzNwotgj.js} +23 -23
  127. package/dist/{nodes-screen-DO6BNCQ6.js → nodes-screen-Brwiveoh.js} +8 -8
  128. package/dist/{note-Dq9MhE7Z.js → note-D-rFqUUL.js} +2 -2
  129. package/dist/{npm-pack-install-B__b0nDK.js → npm-pack-install-BwupN_XV.js} +23 -23
  130. package/dist/{npm-resolution-2lzpgd44.js → npm-resolution-DoQ0TbSm.js} +5 -5
  131. package/dist/{oauth-tls-preflight-CzOK4dkk.js → oauth-tls-preflight-CU1ceznS.js} +1 -1
  132. package/dist/{onboard-channels-CDVGqsGH.js → onboard-channels-aStIhqMG.js} +24 -24
  133. package/dist/{onboard-custom-BJe8lC0m.js → onboard-custom-CF-Qyb3Y.js} +4 -4
  134. package/dist/{onboard-helpers-ByS2aPrW.js → onboard-helpers-Bz91Pf6D.js} +13 -13
  135. package/dist/{onboard-hooks-ColglUdK.js → onboard-hooks-CP5ICg3d.js} +6 -6
  136. package/dist/{onboard-remote-CATwWYLS.js → onboard-remote-DkBLTgQh.js} +5 -5
  137. package/dist/{onboard-skills-CmLqdEyd.js → onboard-skills-BdbiUQFJ.js} +4 -4
  138. package/dist/{onboard-_LkcuZt4.js → onboard-uXr7A8A7.js} +11 -11
  139. package/dist/{onboarding-Z7sHNPIN.js → onboarding-CHVuwQW-.js} +18 -18
  140. package/dist/{onboarding.finalize-B2oQRJVj.js → onboarding.finalize-D4_usXNq.js} +115 -115
  141. package/dist/{onboarding.gateway-config-isEZPjpx.js → onboarding.gateway-config-DKqp9L2Q.js} +21 -21
  142. package/dist/{onboarding.secret-input--lcWBs-r.js → onboarding.secret-input-Bly8kI9z.js} +1 -1
  143. package/dist/{openai-model-default-BHLjGfhz.js → openai-model-default-hQ_Lz4xl.js} +2 -2
  144. package/dist/{openclaw-root-B6Tk0FH8.js → openclaw-root-CvJ5CJns.js} +2 -2
  145. package/dist/{operator-commands-WFKXbJHh.js → operator-commands-1PttwYpR.js} +6 -6
  146. package/dist/{outbound-attachment-BbJWA7EA.js → outbound-attachment-DK190u8V.js} +2 -2
  147. package/dist/{outbound-message-hooks-_I696mNI.js → outbound-message-hooks-BvKzCtP_.js} +5 -5
  148. package/dist/{pairing-cli-dhBxo6Vw.js → pairing-cli-CjvOW_Qy.js} +10 -10
  149. package/dist/{pairing-labels-BDuNTDsa.js → pairing-labels-BSl8PmyI.js} +1 -1
  150. package/dist/{pairing-store-ZXK7b5SG.js → pairing-store-BbBjVYYR.js} +4 -4
  151. package/dist/{path-alias-guards-L34PKmdW.js → path-alias-guards-DhwCAYKX.js} +3 -3
  152. package/dist/{path-safety-DHLkivTI.js → path-safety-Dibh-nnA.js} +1 -1
  153. package/dist/{pi-embedded-_YhHvi3M.js → pi-embedded-1pY41iFz.js} +18 -18
  154. package/dist/{pi-embedded-helpers--xcGBKr8.js → pi-embedded-helpers-BbOp_MHS.js} +6 -6
  155. package/dist/{pi-embedded-recovery-adapter-Cct1moq2.js → pi-embedded-recovery-adapter-mI-4XOPi.js} +37 -37
  156. package/dist/{pi-embedded-utils-Bqo7G8Hn.js → pi-embedded-utils-Df8_gFa-.js} +2 -2
  157. package/dist/{pi-model-discovery-Rjo2hv2p.js → pi-model-discovery-BWXqga5N.js} +1 -1
  158. package/dist/{pid-alive-TVJ4mVal.js → pid-alive-DIe5jzmE.js} +1 -1
  159. package/dist/{plugin-auto-enable-CbW6trDK.js → plugin-auto-enable-BtVVoq7k.js} +2 -2
  160. package/dist/{plugin-owned-work-recovery-adapter-CStAW3lt.js → plugin-owned-work-recovery-adapter-Civ7pCIM.js} +7 -7
  161. package/dist/{plugin-registry-BPGjlX1-.js → plugin-registry-B9Gdebb5.js} +4 -4
  162. package/dist/plugin-sdk/{agent-scope-Brtnf-qo.js → agent-scope-DsdTj4Lw.js} +1 -1
  163. package/dist/plugin-sdk/agent-turn-execute-B7OZd3j0.js +53 -0
  164. package/dist/plugin-sdk/{agent-turn-runner-BoyCp6a7.js → agent-turn-runner-DFx8RFgs.js} +7 -7
  165. package/dist/plugin-sdk/{api-key-rotation-rNPxdoXy.js → api-key-rotation-DLFDIQvI.js} +2 -2
  166. package/dist/plugin-sdk/{audio-preflight-7GBWBtz1.js → audio-preflight-BuvLfTSs.js} +18 -18
  167. package/dist/plugin-sdk/{audio-transcription-runner-Dh6ZjtWU.js → audio-transcription-runner-DVeHis5y.js} +10 -10
  168. package/dist/plugin-sdk/{auth-profiles-C9WuWuhF.js → auth-profiles-DWv_drRN.js} +3 -3
  169. package/dist/plugin-sdk/{chat-content-CLCeI_Qk.js → chat-content-CpswkXNb.js} +14 -14
  170. package/dist/plugin-sdk/{chrome-DT2r85gp.js → chrome-3OYkv183.js} +13 -13
  171. package/dist/plugin-sdk/{chunk-cBcZnYwM.js → chunk-BzqRmzIt.js} +4 -4
  172. package/dist/plugin-sdk/{command-queue-7UljN6ld.js → command-queue-CN4gqnUj.js} +2 -2
  173. package/dist/plugin-sdk/{commands-registry-D2pMVn_S.js → commands-registry-Bdwwpat-.js} +3 -3
  174. package/dist/plugin-sdk/deliver-B5KEZCZc.js +30 -0
  175. package/dist/plugin-sdk/{deliver-Bg_r4acr.js → deliver-hk3L8q2Q.js} +13 -13
  176. package/dist/plugin-sdk/{diagnostic-Cr-CoLa3.js → diagnostic-CEwjaZ_7.js} +5 -5
  177. package/dist/plugin-sdk/{diagnostic-session-state-DX8FyVQw.js → diagnostic-session-state-BzWdoxLm.js} +1 -1
  178. package/dist/plugin-sdk/{errors-D358LwuI.js → errors-CsbG_v7K.js} +1 -1
  179. package/dist/plugin-sdk/{fetch-Be4fqzal.js → fetch-DBno66KN.js} +1 -1
  180. package/dist/plugin-sdk/{fetch-ZGQKpqWb.js → fetch-WGWEe3le.js} +6 -6
  181. package/dist/plugin-sdk/{fetch-guard-BKTJU-gg.js → fetch-guard-A8GwiDhx.js} +2 -2
  182. package/dist/plugin-sdk/{fs-safe-B3AzvZ4l.js → fs-safe-1aioFv3e.js} +3 -3
  183. package/dist/plugin-sdk/{inbound-context-BtSlo1sB.js → inbound-context-Bxf_1vgP.js} +1 -1
  184. package/dist/plugin-sdk/{ir-B4yx0AL3.js → ir-D_W-MQYl.js} +4 -4
  185. package/dist/plugin-sdk/{json-files-B__As2nb.js → json-files-BnqU_vp9.js} +6 -6
  186. package/dist/plugin-sdk/manager-B_wRtuCz.js +14 -0
  187. package/dist/plugin-sdk/{manager-BINTVC6-.js → manager-UVkpOLce.js} +7 -7
  188. package/dist/plugin-sdk/{markdown-tables-DFUNbiGy.js → markdown-tables-DN5kZ7HX.js} +3 -3
  189. package/dist/plugin-sdk/{monitor-Cv-Hb6Vg.js → monitor-1WWBQbrJ.js} +88 -88
  190. package/dist/plugin-sdk/{outbound-attachment-DRUsY_P3.js → outbound-attachment-D2FAxmw-.js} +2 -2
  191. package/dist/plugin-sdk/{path-alias-guards-CRi90QdZ.js → path-alias-guards-BaV88b3G.js} +1 -1
  192. package/dist/plugin-sdk/{pi-model-discovery-DpiYKs_-.js → pi-model-discovery-eQO5jtHE.js} +2 -2
  193. package/dist/plugin-sdk/provider-dispatcher-CIuwPWhR.js +53 -0
  194. package/dist/plugin-sdk/provider-media-understanding.js +7 -7
  195. package/dist/plugin-sdk/{proxy-env-CAAaD_vE.js → proxy-env-iizeE-yn.js} +1 -1
  196. package/dist/plugin-sdk/{pw-ai-DF_oDAcU.js → pw-ai-RkUVP2CG.js} +9 -9
  197. package/dist/plugin-sdk/{qmd-manager-DxXmjvMl.js → qmd-manager-DtWRq-3E.js} +8 -8
  198. package/dist/plugin-sdk/{qmd-scope-mVSXoI81.js → qmd-scope-hKKHM7ur.js} +1 -1
  199. package/dist/plugin-sdk/{query-expansion-Bu7AUpJ5.js → query-expansion-BF9IjXa5.js} +2 -2
  200. package/dist/plugin-sdk/{recorder-BsamU-hC.js → recorder-EjxEn6z5.js} +2 -2
  201. package/dist/plugin-sdk/{redact-Lv3jVFd_.js → redact-CuefNlXl.js} +1 -1
  202. package/dist/plugin-sdk/{registry-CSJhdmW7.js → registry-B-PTnKXn.js} +6 -6
  203. package/dist/plugin-sdk/replies-BWD2mqj4.js +24 -0
  204. package/dist/plugin-sdk/{replies-CFNkUmLR.js → replies-CgjY5QeJ.js} +5 -5
  205. package/dist/plugin-sdk/{reply-prefix-DNyziUbc.js → reply-prefix-B_4F5prZ.js} +2 -2
  206. package/dist/plugin-sdk/{resolve-route-CBCLd9yp.js → resolve-route-BHhFfPZt.js} +4 -4
  207. package/dist/plugin-sdk/{send-b1bp0W-q.js → send-BCEdvryY.js} +8 -8
  208. package/dist/plugin-sdk/{send-kEZiGg40.js → send-BJGiPB1S.js} +8 -8
  209. package/dist/plugin-sdk/send-C6pt4yW6.js +21 -0
  210. package/dist/plugin-sdk/{send-DCt-5Eqo.js → send-CFy9VJtY.js} +6 -6
  211. package/dist/plugin-sdk/{send-Dx8aO_vF.js → send-CIwbHo3j.js} +16 -16
  212. package/dist/plugin-sdk/{send-1zs5bgjT.js → send-Ct68W7Yb.js} +7 -7
  213. package/dist/plugin-sdk/send-MGm8Xvbs.js +22 -0
  214. package/dist/plugin-sdk/send-WNRxCcA_.js +20 -0
  215. package/dist/plugin-sdk/{session-context-B4geQCsj.js → session-context-CMK0kc4L.js} +4 -4
  216. package/dist/plugin-sdk/{session-meta-cugffpHm.js → session-meta-CnQldSIv.js} +2 -2
  217. package/dist/plugin-sdk/{sessions-Dx1DxBM0.js → sessions-Bi3Stvmk.js} +4 -4
  218. package/dist/plugin-sdk/{skill-commands-BIbJBws5.js → skill-commands-B-RjcEg8.js} +5 -5
  219. package/dist/plugin-sdk/{store-CP7sxsrB.js → store-BS62UMsC.js} +2 -2
  220. package/dist/plugin-sdk/subagent-registry-CWWUdAWI.js +53 -0
  221. package/dist/plugin-sdk/{subsystem-BRH2eiRx.js → subsystem-DbM6sYsb.js} +4 -4
  222. package/dist/plugin-sdk/{tables-C-7zslmS.js → tables-rlu-3LoD.js} +1 -1
  223. package/dist/plugin-sdk/testing.js +46 -46
  224. package/dist/plugin-sdk/{tokens-DEiV8tMG.js → tokens-DnxgKy4h.js} +1 -1
  225. package/dist/plugin-sdk/{tool-loop-detection-DnYfACQq.js → tool-loop-detection-CvzazEft.js} +1 -1
  226. package/dist/plugin-sdk/{user-run-recording-Cx-DPR7Y.js → user-run-recording-CuHcEoPI.js} +3 -3
  227. package/dist/{plugins-cli-B3yDmnzB.js → plugins-cli-xEbYlD1N.js} +110 -110
  228. package/dist/{ports-CbxaZ4JR.js → ports-DkQ0JgDq.js} +2 -2
  229. package/dist/{ports-CbjXbpjb.js → ports-R8I-Rd2p.js} +3 -3
  230. package/dist/{program-CiwRqh1J.js → program-Rzncx3aZ.js} +106 -106
  231. package/dist/{progress-80iGSJGv.js → progress-DGJz2cvq.js} +2 -2
  232. package/dist/{prompt-select-styled-Ds_J2iyU.js → prompt-select-styled-BeWIYKDx.js} +48 -48
  233. package/dist/{prompt-style-DUK2H9pQ.js → prompt-style-CevZQqqE.js} +1 -1
  234. package/dist/{provider-auth-helpers-C20ZUFM2.js → provider-auth-helpers-CLBGTBnJ.js} +6 -6
  235. package/dist/{proxy-env-BcMrDxNo.js → proxy-env-t-re7bCo.js} +1 -1
  236. package/dist/{push-apns-DspwiDEu.js → push-apns-CcZhsDRS.js} +10 -10
  237. package/dist/{pw-ai-BKN66RLi.js → pw-ai-6cOpjyxA.js} +1 -1
  238. package/dist/{pw-ai-BH-VHtsR.js → pw-ai-h0Uxwko3.js} +18 -18
  239. package/dist/{qmd-manager-JUjGk3hv.js → qmd-manager-DR95ckLZ.js} +25 -25
  240. package/dist/{qmd-scope-bewl8Eiz.js → qmd-scope-DGZXz9jW.js} +1 -1
  241. package/dist/{qr-cli-Bk-iHfQo.js → qr-cli-K0UQq59w.js} +9 -9
  242. package/dist/{query-expansion-BzoTldVy.js → query-expansion-DtX8mWw8.js} +10 -10
  243. package/dist/{reconcile-bundled-DM4QcNVH.js → reconcile-bundled-V0NDG76P.js} +3 -3
  244. package/dist/{recorder-CLU0QuFV.js → recorder-C5MQyLQu.js} +2 -2
  245. package/dist/{recovery-adapter-CjmLDOyV.js → recovery-adapter-BRrpxylo.js} +2 -2
  246. package/dist/{recovery-adapter-ye4l6Gn4.js → recovery-adapter-C1kHnt9q.js} +3 -3
  247. package/dist/{recovery-adapter-ipXNpK0H.js → recovery-adapter-D14MlfbA.js} +7 -7
  248. package/dist/{recovery-prompt-Bmmt8OXc.js → recovery-prompt-BEH6XjKs.js} +1 -1
  249. package/dist/{redact-snapshot-46g6fP3z.js → redact-snapshot-Dr2xSc0p.js} +2 -2
  250. package/dist/{register.agent-BAgBhHHu.js → register.agent-C5VjXiOa.js} +121 -121
  251. package/dist/register.configure-BrZHLfY5.js +169 -0
  252. package/dist/{register.maintenance-DZSlUCjt.js → register.maintenance-CRkCaoyK.js} +129 -129
  253. package/dist/{register.message-CmwWkv0S.js → register.message-T_8nxRk5.js} +100 -100
  254. package/dist/{register.onboard-D2FYzcez.js → register.onboard-V55Y2Ubu.js} +26 -26
  255. package/dist/{register.setup-Dviebdoo.js → register.setup-CADjhLHK.js} +29 -29
  256. package/dist/{register.status-health-sessions-ShjYv_Uh.js → register.status-health-sessions-DdVD0IOM.js} +119 -119
  257. package/dist/{register.subclis-DJxVoTQj.js → register.subclis-xNwfLrGG.js} +34 -34
  258. package/dist/{replies-DxPPKLeJ.js → replies-t1yaLy4q.js} +5 -5
  259. package/dist/{reply-directives-B_4oA3B0.js → reply-directives-De0PRN70.js} +2 -2
  260. package/dist/{reply-prefix-KAeJzNvt.js → reply-prefix-B0ufPLD2.js} +1 -1
  261. package/dist/{reset-CDG1YZWx.js → reset-DxYrusrF.js} +1 -1
  262. package/dist/{resolve-route-IeN1DK4w.js → resolve-route-CZXzecu6.js} +5 -5
  263. package/dist/{rpc-C7VnW-Aw.js → rpc-Bg0RuGsL.js} +3 -3
  264. package/dist/{run-main-CnNc7DLd.js → run-main-C-PQ_TDh.js} +119 -119
  265. package/dist/{runs-0PYx5aDJ.js → runs-DzlzC2_b.js} +7 -7
  266. package/dist/{runtime-B1z-tYeF.js → runtime-DxtfUxa-.js} +4 -4
  267. package/dist/{runtime-config-Dm2RpLJ7.js → runtime-config-DZ4anlFD.js} +1 -1
  268. package/dist/{runtime-config-collectors-Chqse-1v.js → runtime-config-collectors-rhm6uhD8.js} +1 -1
  269. package/dist/{runtime-guard-BGWl62dI.js → runtime-guard-7e_ZRPFH.js} +1 -1
  270. package/dist/{sandbox-DSs8pONL.js → sandbox-BcT2OU_g.js} +21 -21
  271. package/dist/{sandbox-cli-X1PaKHUO.js → sandbox-cli-Cghszshw.js} +33 -33
  272. package/dist/{secrets-cli-D1DpG6VH.js → secrets-cli-2cyObDEq.js} +16 -16
  273. package/dist/{security-cli-ZmvFe4nX.js → security-cli-y5Ln-Bce.js} +47 -47
  274. package/dist/{send-DizMtGn_.js → send-36dNynVs.js} +7 -7
  275. package/dist/{send-0JKFG0wR.js → send-CFvOM8pI.js} +6 -6
  276. package/dist/{send-BPuhxPvx.js → send-CVaGAWEm.js} +6 -6
  277. package/dist/{send-S06NYAWt.js → send-D1V_gt-x.js} +13 -13
  278. package/dist/{server-B_-KxUi3.js → server-DvHjKPLj.js} +24 -24
  279. package/dist/{server-context-D_ZTBjWX.js → server-context-DXaMid9A.js} +12 -12
  280. package/dist/{server-lifecycle-CAXoy64R.js → server-lifecycle-BHXiQH6m.js} +3 -3
  281. package/dist/{server-middleware-BxKu1j_s.js → server-middleware-CaVc3KiU.js} +1 -1
  282. package/dist/{server-node-events-3XEsy92y.js → server-node-events-D_Ue3RLX.js} +100 -100
  283. package/dist/{service-DMkBvr4B.js → service-DoOh34VG.js} +15 -15
  284. package/dist/{session-consumer-agents-CBqraSzI.js → session-consumer-agents-Zo97FAeD.js} +1 -1
  285. package/dist/{session-consumer-claim-sweep-AZ5o8Cu-.js → session-consumer-claim-sweep-xufX6DVl.js} +9 -9
  286. package/dist/{session-key-BRw3GFxY.js → session-key-Cr27HfX5.js} +1 -1
  287. package/dist/{session-meta-WRN3ZcJ5.js → session-meta-wyuckoIK.js} +1 -1
  288. package/dist/{session-storage-7cXTEQfZ.js → session-storage-CwLPwLoF.js} +22 -22
  289. package/dist/{session-storage-owner-BLPjnobT.js → session-storage-owner-D0BMYGR6.js} +53 -53
  290. package/dist/{session-store-targets-i0Ss9Rbv.js → session-store-targets-hup1YSx3.js} +3 -3
  291. package/dist/{session-utils-Btoq903T.js → session-utils-BsJs6MoS.js} +9 -9
  292. package/dist/{sessions-Dp4oQDh2.js → sessions-CXVIRQ7I.js} +6 -6
  293. package/dist/{sessions-DPV-OS7q.js → sessions-D5-WnU1c.js} +5 -5
  294. package/dist/{sessions-Bi3UGKUO.js → sessions-DQ3diYco.js} +17 -17
  295. package/dist/{sessions-claims-status-Dhd9Pthy.js → sessions-claims-status-BIYvHBRD.js} +11 -11
  296. package/dist/{sessions-maintenance-core-C2cCpUiU.js → sessions-maintenance-core-CmawGRLz.js} +8 -8
  297. package/dist/{setup-helpers-zG3DfqLd.js → setup-helpers-BQ-rg8A3.js} +1 -1
  298. package/dist/{shared-B32sbGiP.js → shared-CN5xidM6.js} +4 -4
  299. package/dist/{shared-COhRUP1S.js → shared-DCN12ugV.js} +2 -2
  300. package/dist/{skill-commands-BktltILY.js → skill-commands-DKmd3uhq.js} +7 -7
  301. package/dist/{skill-scanner-ubz0B8p_.js → skill-scanner-YQwX3yC-.js} +7 -7
  302. package/dist/{skills-cli-DE9fB_sx.js → skills-cli-mRBgNuUB.js} +9 -9
  303. package/dist/{skills-install-Cu_sfOVw.js → skills-install-B5X0Cyhn.js} +9 -9
  304. package/dist/{skills-CWQC3bQU.js → skills-rshN3U9G.js} +6 -6
  305. package/dist/{skills-status--U7Dyunf.js → skills-status-C40ecVhY.js} +3 -3
  306. package/dist/{status-CCetLhy5.js → status-D-NG9OFK.js} +49 -49
  307. package/dist/{status.update-CHNp32m-.js → status.update-BjR63JWs.js} +2 -2
  308. package/dist/{storage-config-CS0-6wW6.js → storage-config-BJj76p6F.js} +4 -4
  309. package/dist/{store-ccSeveJ0.js → store-BKtDaCRf.js} +7 -7
  310. package/dist/{subsystem-BNf8H-Zm.js → subsystem-xTuYkxuQ.js} +1 -1
  311. package/dist/{supervisor-RBm1KDN1.js → supervisor-CbcownOj.js} +2 -2
  312. package/dist/{system-cli-YRe6nHya.js → system-cli-CqiLRr8j.js} +13 -13
  313. package/dist/{system-run-command-CtzUrDfp.js → system-run-command-DmwSJZGF.js} +2 -2
  314. package/dist/{systemd-CyRDQg6V.js → systemd-DCrSOh9E.js} +11 -11
  315. package/dist/{systemd-hints-CPEnXHmj.js → systemd-hints-Dc0OitcD.js} +9 -9
  316. package/dist/{systemd-linger-AXTvmw5z.js → systemd-linger-j9L7X6dA.js} +2 -2
  317. package/dist/{table-BRTxbR4E.js → table-Buk61GwP.js} +2 -2
  318. package/dist/{tables-BhzelQWA.js → tables-B62PgWcr.js} +1 -1
  319. package/dist/{tailnet-CBZAvwAf.js → tailnet-B5JdDATD.js} +1 -1
  320. package/dist/{tailscale-IMHmOQwv.js → tailscale-BiCf3X3Y.js} +2 -2
  321. package/dist/{task-pipeline-boot-BqE_GrmQ.js → task-pipeline-boot-DgTg-CLO.js} +100 -100
  322. package/dist/{task-runlog-retention-v6UWCQjX.js → task-runlog-retention-Cq2OgFdi.js} +5 -5
  323. package/dist/{tasks-B4CFmiA3.js → tasks-B8WGpUhG.js} +11 -11
  324. package/dist/{tokens-B0SYKifB.js → tokens-D5eYPE3_.js} +1 -1
  325. package/dist/{tool-display-CjfVgl4p.js → tool-display-BuSkjyOX.js} +1 -1
  326. package/dist/{tool-loop-detection--ScllGh1.js → tool-loop-detection-DcldeAQA.js} +2 -2
  327. package/dist/{trash-DhfDhVld.js → trash-D8OVe313.js} +3 -3
  328. package/dist/{tui-BtDuMK-Q.js → tui-Bbgsj5cD.js} +9 -9
  329. package/dist/{tui-cli-AAdDdzBF.js → tui-cli-BB3hPnig.js} +35 -35
  330. package/dist/{update-MKP9QOUt.js → update-OC3VeAt9.js} +3 -3
  331. package/dist/{update-cli-BSA_q7RE.js → update-cli-DqM1XIf_.js} +139 -139
  332. package/dist/{update-runner-BMqGHvjP.js → update-runner-CtQqJO0C.js} +18 -18
  333. package/dist/{user-run-recording-Cw29-tG1.js → user-run-recording-DrY68KAf.js} +2 -2
  334. package/dist/{validation-cli-VaCU6by-.js → validation-cli-CdS1nA-4.js} +99 -99
  335. package/dist/{web-cli-Dp96CkEW.js → web-cli-DvWcPGwe.js} +3 -3
  336. package/dist/{webhooks-cli--2FyIwfR.js → webhooks-cli-VMJNe3gx.js} +10 -10
  337. package/dist/{widearea-dns-BhBfoR1S.js → widearea-dns-CvnQrk1m.js} +1 -1
  338. package/dist/{with-timeout-BbJQtRIl.js → with-timeout-DG_Ef3S1.js} +6 -6
  339. package/dist/{workspace-C4JU6kgP.js → workspace-C8NxbJFT.js} +2 -2
  340. package/dist/{workspace-dirs-DBNKIvKX.js → workspace-dirs-B1dGJTd4.js} +1 -1
  341. package/dist/{ws-BafnkIRl.js → ws-Dnz-ugxp.js} +2 -2
  342. package/dist/{wsl-CG9o9v6x.js → wsl-Bm8bcioC.js} +2 -2
  343. package/extensions/acpx/package.json +1 -1
  344. package/extensions/anthropic/package.json +1 -1
  345. package/extensions/bifrost/package.json +1 -1
  346. package/extensions/bluebubbles/package.json +1 -1
  347. package/extensions/copilot-proxy/package.json +1 -1
  348. package/extensions/deepgram/package.json +1 -1
  349. package/extensions/deepinfra/package.json +1 -1
  350. package/extensions/diagnostics-otel/package.json +1 -1
  351. package/extensions/diffs/package.json +1 -1
  352. package/extensions/discord/package.json +1 -1
  353. package/extensions/dream-cycle/package.json +1 -1
  354. package/extensions/elevenlabs/package.json +1 -1
  355. package/extensions/feishu/package.json +1 -1
  356. package/extensions/gemini-search/package.json +1 -1
  357. package/extensions/google/package.json +1 -1
  358. package/extensions/google-gemini-cli-auth/package.json +1 -1
  359. package/extensions/googlechat/package.json +1 -1
  360. package/extensions/grok-search/package.json +1 -1
  361. package/extensions/groq/package.json +1 -1
  362. package/extensions/imessage/package.json +1 -1
  363. package/extensions/irc/package.json +1 -1
  364. package/extensions/kimi-search/package.json +1 -1
  365. package/extensions/kokoro/package.json +1 -1
  366. package/extensions/learning-core/package.json +1 -1
  367. package/extensions/line/package.json +1 -1
  368. package/extensions/llm-task/package.json +1 -1
  369. package/extensions/lobster/package.json +1 -1
  370. package/extensions/matrix/CHANGELOG.md +1 -1
  371. package/extensions/matrix/package.json +1 -1
  372. package/extensions/mattermost/package.json +1 -1
  373. package/extensions/memory-core/package.json +1 -1
  374. package/extensions/memory-lancedb/package.json +1 -1
  375. package/extensions/minimax/package.json +1 -1
  376. package/extensions/minimax-portal-auth/package.json +1 -1
  377. package/extensions/mistral/package.json +1 -1
  378. package/extensions/moonshot/package.json +1 -1
  379. package/extensions/msteams/CHANGELOG.md +1 -1
  380. package/extensions/msteams/package.json +1 -1
  381. package/extensions/nextcloud-talk/package.json +1 -1
  382. package/extensions/nostr/CHANGELOG.md +1 -1
  383. package/extensions/nostr/package.json +1 -1
  384. package/extensions/open-prose/package.json +1 -1
  385. package/extensions/openai/package.json +1 -1
  386. package/extensions/openai-realtime/package.json +1 -1
  387. package/extensions/openrouter/package.json +1 -1
  388. package/extensions/perplexity-search/package.json +1 -1
  389. package/extensions/searxng-search/package.json +1 -1
  390. package/extensions/signal/package.json +1 -1
  391. package/extensions/slack/package.json +1 -1
  392. package/extensions/synology-chat/package.json +1 -1
  393. package/extensions/telegram/package.json +1 -1
  394. package/extensions/tlon/package.json +1 -1
  395. package/extensions/twitch/CHANGELOG.md +1 -1
  396. package/extensions/twitch/package.json +1 -1
  397. package/extensions/ui-surfaces/package.json +1 -1
  398. package/extensions/voice-call/CHANGELOG.md +1 -1
  399. package/extensions/voice-call/package.json +1 -1
  400. package/extensions/whatsapp/package.json +1 -1
  401. package/extensions/zai/package.json +1 -1
  402. package/extensions/zalo/CHANGELOG.md +1 -1
  403. package/extensions/zalo/package.json +1 -1
  404. package/extensions/zalouser/CHANGELOG.md +1 -1
  405. package/extensions/zalouser/package.json +1 -1
  406. package/package.json +1 -1
  407. package/dist/clawbot-cli-D1k1DpEc.js +0 -31
  408. package/dist/cli-Dc-MpdqR.js +0 -165
  409. package/dist/plugin-sdk/agent-turn-execute-UxpRMk9j.js +0 -53
  410. package/dist/plugin-sdk/deliver-CM8QDSXe.js +0 -30
  411. package/dist/plugin-sdk/manager-DHw8x1pr.js +0 -14
  412. package/dist/plugin-sdk/provider-dispatcher-B7p6f3-i.js +0 -53
  413. package/dist/plugin-sdk/replies-Djswi7iH.js +0 -24
  414. package/dist/plugin-sdk/send-CTz3VFmd.js +0 -21
  415. package/dist/plugin-sdk/send-DsxMWGTy.js +0 -22
  416. package/dist/plugin-sdk/send-RHWHegWE.js +0 -20
  417. package/dist/plugin-sdk/subagent-registry-Ck6o6MPJ.js +0 -53
  418. package/dist/register.configure-zu159EnI.js +0 -169
@@ -1,127 +1,127 @@
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-BRyHSrWD.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-3lUHnZas.js";
3
3
  import { _ as expandHomePrefix, g as resolveStateDir, u as resolveGatewayPort, y as resolveRequiredHomeDir } from "./paths-BMo6kTge.js";
4
4
  import { n as resolveProcessScopedMap, t as isPlainObject } from "./plain-object-Doc_YkH1.js";
5
- import { m as defaultRuntime, p as createNonExitingRuntime, t as createSubsystemLogger } from "./subsystem-BNf8H-Zm.js";
5
+ import { m as defaultRuntime, p as createNonExitingRuntime, t as createSubsystemLogger } from "./subsystem-xTuYkxuQ.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-TStC2eAo.js";
9
- import { $c as splitTrailingAuthProfile, $n as resolveFreshSessionTotalTokens, $t as clearRegisteredPluginApis, Ai as GATEWAY_CLIENT_IDS, An as StorageReadAccessError, Ao as isCliProvider, Ar as listChannelPlugins, Bi as CtxProjectionCorruptionError, Bn as loadSessionStore, Bo as resolveDefaultModelForAgent, Bs as getSoonestCooldownExpiry, Bt as normalizeChannelId$2, C as parseNonNegativeByteSize, Ci as isMarkdownCapableMessageChannel, Cr as resolveParentSessionGroupId, Cs as getApiKeyForModel, Dc as ensureAuthProfileStore, Di as resolveGatewayMessageChannel, Dn as createInternalHookEvent, Do as findNormalizedProviderValue, Dr as listChannelDocks, Dt as discoverOpenClawPlugins, Ei as normalizeMessageChannel, Eo as buildModelAliasIndex, Er as getChannelDock, Fc as resolveOpenClawAgentDir, Fr as normalizeAtHashSlug, Go as resolveSubagentSpawnModelSelection, Gr as listEnabledSignalAccounts, Gs as resolveProfilesUnavailableReason, Gt as getActivePluginRegistryKey, Hi as readTaskWorkStates, Ho as resolveModelRefFromString, Hr as resolveSlackReplyToMode, Hs as markAuthProfileFailure, Ii as normalizeAccountId$1, Io as parseModelRef, Ir as normalizeHyphenSlug, Jn as updateSessionStore, Jr as resolveSignalAccount, Jt as requireActivePluginRegistry, Ko as resolveThinkingDefault, Ks as resolveApiKeyForProfile, Lc as withFileLock, Li as acquireSessionWriteLock, Lr as normalizeStringEntries, Mi as GATEWAY_CLIENT_NAMES, Mn as getConversationReadQuery, Mo as normalizeModelRef$2, Nn as SessionStorageUnavailableError, Nr as formatAllowlistMatchMeta, Oi as resolveMessageChannel, Or as normalizeSignalMessagingTarget, Os as resolveEnvApiKey, Ot as isPathInside, Pc as resolveAuthStorePathForDisplay, Pn as requireSessionStorageRuntime, Po as normalizeProviderId$1, Pr as resolveAllowlistMatchByCandidates, Pt as CHAT_CHANNEL_ORDER, Q as isAvatarHttpUrl, Qi as listBufferedPluginTaskPasses, Qn as mergeSessionEntry, Qr as resolveWhatsAppAccount, Qt as addRegisteredPluginApi, Rc as resolveAuthProfileDisplayLabel, Rn as getConfiguredSessionStorageRuntime, Rr as normalizeStringEntriesLower, S as normalizeScpRemoteHost, Sc as markAuthProfileGood, Si as isInternalMessageChannel, Sr as resolveGroupSessionKey, Ss as buildUsageWithNoCost, St as resolveMemorySlotDecision, Ti as listDeliverableMessageChannels, Tn as normalizeProviderId, To as buildConfiguredAllowlistKeys, Ts as requireApiKey, Uc as normalizeSecretInput, Un as readSessionUpdatedAt, Uo as resolveReasoningDefault, Ur as resolveSlackAppToken, Us as markAuthProfileUsed, Ut as getActiveGatewayPluginRegistry, Vr as resolveSlackAccount, Vs as isProfileInCooldown, Wn as recordSessionMetaFromInbound, Wr as resolveSlackBotToken, Wt as getActivePluginRegistry, X as AVATAR_MAX_BYTES, Xc as normalizeResolvedSecretInputString, Xi as discardBufferedPluginTaskPasses, Xr as normalizeWhatsAppTarget, Xt as setActivePluginRegistry, Yn as updateSessionStoreEntry, Yr as isWhatsAppGroupJid, Z as isAvatarDataUrl, Zn as DEFAULT_RESET_TRIGGERS, _i as normalizeSessionDeliveryFields, _n as getSpeechProvider, _s as OLLAMA_NATIVE_BASE_URL, _t as isBundledChannelEnabledByChannelConfig, al as resolveShellEnvFallbackTimeoutMs, ar as parseDurationMs, at as buildChannelAccountBindings, b as resolveIMessageAttachmentRoots, bc as dedupeProfileIds, bo as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, bs as buildAssistantMessageWithZeroUsage, bt as resolveEffectiveEnableState, c as loadConfig, ca as setConfigOverride, ci as resolveChannelGroupPolicy, cl as resolveOwnerDisplaySetting, cn as buildPluginHealthReport, co as mapStreamingModeToSlackLegacyDraftStreamMode, ct as validateJsonSchemaValue, d as readConfigFileSnapshotForWrite, da as parseConfigPath, dn as executePluginCommand, do as resolveSlackStreamingMode, dt as loadPluginManifestRegistry, ea as replaceBufferedPluginTaskPasses, el as DEFAULT_CONTEXT_TOKENS, er as setSessionRuntimeModel, et as isPathWithinRoot, fa as setConfigValueAtPath, fc as runTasksWithConcurrency, fi as resolveAccountEntry, fn as listPluginCommands, gi as normalizeDeliveryContext, gn as getRegisteredSpeechProviders, gt as applyTestPluginDefaults, h as validateConfigObjectWithPlugins, hi as mergeDeliveryContext, hn as BUILTIN_TTS_PROVIDER_IDS, hr as resolveSessionTranscriptPath, ht as BUNDLED_ENABLED_BY_DEFAULT, ii as listEnabledDiscordAccounts, il as getShellPathFromLoginShell, ji as GATEWAY_CLIENT_MODES, jn as createConversationReadQuery, jo as modelKey, jr as normalizeChannelId$1, k as resolveExecPolicyPreset, kn as triggerInternalHook, kr as getChannelPlugin, ks as resolveModelAuthMode, kt as safeStatSync, la as unsetConfigOverride, li as resolveChannelGroupRequireMention, lo as resolveDiscordPreviewStreamMode, ls as retryAsync, m as writeConfigFile, mi as deliveryContextKey, mn as registerPluginCommand, mr as resolveSessionFilePathOptions, ni as createDiscordActionGate, nl as DEFAULT_PROVIDER, oa as getConfigOverrides, oi as resolveDiscordAccount, pa as unsetConfigValueAtPath, pi as deliveryContextFromSession, pn as matchPluginCommand, pr as resolveSessionFilePath, qa as applyMergePatch, qn as updateLastRoute, ra as RecoveryAdmissionError, sa as resetConfigOverrides, si as normalizeDiscordToken, sn as normalizePluginHttpPath, ti as resolveIMessageAccount, tl as DEFAULT_MODEL, tn as createPluginRegistry, tt as isSupportedLocalAvatarExtension, u as readConfigFileSnapshot, ua as getConfigValueAtPath, un as clearPluginCommands, uo as resolveSlackNativeStreaming, v as isInboundPathAllowed, vi as INTERNAL_MESSAGE_CHANNEL, vn as isBuiltinTtsProvider, vr as resolveStorePath, vs as createOllamaStreamFn, wo as buildAllowedModelSet, ws as getCustomProviderApiKey, x as resolveIMessageRemoteAttachmentRoots, xa as buildEnforcedShellCommand, xc as listProfilesForProvider, xi as isGatewayMessageChannel, xs as buildStreamErrorAssistantMessage, yi as isDeliverableMessageChannel, yn as replaceSpeechProviders, yr as deriveSessionMetaPatch, ys as buildAssistantMessage, yt as normalizePluginsConfig, zi as resolveSessionLockMaxHoldFromTimeout, zo as resolveConfiguredModelRef, zs as resolveAuthProfileOrder, zt as normalizeAnyChannelId } from "./config-2hPOvE4Z.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-DZ607FR0.js";
9
+ import { $c as splitTrailingAuthProfile, $n as resolveFreshSessionTotalTokens, $t as clearRegisteredPluginApis, Ai as GATEWAY_CLIENT_IDS, An as StorageReadAccessError, Ao as isCliProvider, Ar as listChannelPlugins, Bi as CtxProjectionCorruptionError, Bn as loadSessionStore, Bo as resolveDefaultModelForAgent, Bs as getSoonestCooldownExpiry, Bt as normalizeChannelId$2, C as parseNonNegativeByteSize, Ci as isMarkdownCapableMessageChannel, Cr as resolveParentSessionGroupId, Cs as getApiKeyForModel, Dc as ensureAuthProfileStore, Di as resolveGatewayMessageChannel, Dn as createInternalHookEvent, Do as findNormalizedProviderValue, Dr as listChannelDocks, Dt as discoverOpenClawPlugins, Ei as normalizeMessageChannel, Eo as buildModelAliasIndex, Er as getChannelDock, Fc as resolveOpenClawAgentDir, Fr as normalizeAtHashSlug, Go as resolveSubagentSpawnModelSelection, Gr as listEnabledSignalAccounts, Gs as resolveProfilesUnavailableReason, Gt as getActivePluginRegistryKey, Hi as readTaskWorkStates, Ho as resolveModelRefFromString, Hr as resolveSlackReplyToMode, Hs as markAuthProfileFailure, Ii as normalizeAccountId$1, Io as parseModelRef, Ir as normalizeHyphenSlug, Jn as updateSessionStore, Jr as resolveSignalAccount, Jt as requireActivePluginRegistry, Ko as resolveThinkingDefault, Ks as resolveApiKeyForProfile, Lc as withFileLock, Li as acquireSessionWriteLock, Lr as normalizeStringEntries, Mi as GATEWAY_CLIENT_NAMES, Mn as getConversationReadQuery, Mo as normalizeModelRef$2, Nn as SessionStorageUnavailableError, Nr as formatAllowlistMatchMeta, Oi as resolveMessageChannel, Or as normalizeSignalMessagingTarget, Os as resolveEnvApiKey, Ot as isPathInside, Pc as resolveAuthStorePathForDisplay, Pn as requireSessionStorageRuntime, Po as normalizeProviderId$1, Pr as resolveAllowlistMatchByCandidates, Pt as CHAT_CHANNEL_ORDER, Q as isAvatarHttpUrl, Qi as listBufferedPluginTaskPasses, Qn as mergeSessionEntry, Qr as resolveWhatsAppAccount, Qt as addRegisteredPluginApi, Rc as resolveAuthProfileDisplayLabel, Rn as getConfiguredSessionStorageRuntime, Rr as normalizeStringEntriesLower, S as normalizeScpRemoteHost, Sc as markAuthProfileGood, Si as isInternalMessageChannel, Sr as resolveGroupSessionKey, Ss as buildUsageWithNoCost, St as resolveMemorySlotDecision, Ti as listDeliverableMessageChannels, Tn as normalizeProviderId, To as buildConfiguredAllowlistKeys, Ts as requireApiKey, Uc as normalizeSecretInput, Un as readSessionUpdatedAt, Uo as resolveReasoningDefault, Ur as resolveSlackAppToken, Us as markAuthProfileUsed, Ut as getActiveGatewayPluginRegistry, Vr as resolveSlackAccount, Vs as isProfileInCooldown, Wn as recordSessionMetaFromInbound, Wr as resolveSlackBotToken, Wt as getActivePluginRegistry, X as AVATAR_MAX_BYTES, Xc as normalizeResolvedSecretInputString, Xi as discardBufferedPluginTaskPasses, Xr as normalizeWhatsAppTarget, Xt as setActivePluginRegistry, Yn as updateSessionStoreEntry, Yr as isWhatsAppGroupJid, Z as isAvatarDataUrl, Zn as DEFAULT_RESET_TRIGGERS, _i as normalizeSessionDeliveryFields, _n as getSpeechProvider, _s as OLLAMA_NATIVE_BASE_URL, _t as isBundledChannelEnabledByChannelConfig, al as resolveShellEnvFallbackTimeoutMs, ar as parseDurationMs, at as buildChannelAccountBindings, b as resolveIMessageAttachmentRoots, bc as dedupeProfileIds, bo as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, bs as buildAssistantMessageWithZeroUsage, bt as resolveEffectiveEnableState, c as loadConfig, ca as setConfigOverride, ci as resolveChannelGroupPolicy, cl as resolveOwnerDisplaySetting, cn as buildPluginHealthReport, co as mapStreamingModeToSlackLegacyDraftStreamMode, ct as validateJsonSchemaValue, d as readConfigFileSnapshotForWrite, da as parseConfigPath, dn as executePluginCommand, do as resolveSlackStreamingMode, dt as loadPluginManifestRegistry, ea as replaceBufferedPluginTaskPasses, el as DEFAULT_CONTEXT_TOKENS, er as setSessionRuntimeModel, et as isPathWithinRoot, fa as setConfigValueAtPath, fc as runTasksWithConcurrency, fi as resolveAccountEntry, fn as listPluginCommands, gi as normalizeDeliveryContext, gn as getRegisteredSpeechProviders, gt as applyTestPluginDefaults, h as validateConfigObjectWithPlugins, hi as mergeDeliveryContext, hn as BUILTIN_TTS_PROVIDER_IDS, hr as resolveSessionTranscriptPath, ht as BUNDLED_ENABLED_BY_DEFAULT, ii as listEnabledDiscordAccounts, il as getShellPathFromLoginShell, ji as GATEWAY_CLIENT_MODES, jn as createConversationReadQuery, jo as modelKey, jr as normalizeChannelId$1, k as resolveExecPolicyPreset, kn as triggerInternalHook, kr as getChannelPlugin, ks as resolveModelAuthMode, kt as safeStatSync, la as unsetConfigOverride, li as resolveChannelGroupRequireMention, lo as resolveDiscordPreviewStreamMode, ls as retryAsync, m as writeConfigFile, mi as deliveryContextKey, mn as registerPluginCommand, mr as resolveSessionFilePathOptions, ni as createDiscordActionGate, nl as DEFAULT_PROVIDER, oa as getConfigOverrides, oi as resolveDiscordAccount, pa as unsetConfigValueAtPath, pi as deliveryContextFromSession, pn as matchPluginCommand, pr as resolveSessionFilePath, qa as applyMergePatch, qn as updateLastRoute, ra as RecoveryAdmissionError, sa as resetConfigOverrides, si as normalizeDiscordToken, sn as normalizePluginHttpPath, ti as resolveIMessageAccount, tl as DEFAULT_MODEL, tn as createPluginRegistry, tt as isSupportedLocalAvatarExtension, u as readConfigFileSnapshot, ua as getConfigValueAtPath, un as clearPluginCommands, uo as resolveSlackNativeStreaming, v as isInboundPathAllowed, vi as INTERNAL_MESSAGE_CHANNEL, vn as isBuiltinTtsProvider, vr as resolveStorePath, vs as createOllamaStreamFn, wo as buildAllowedModelSet, ws as getCustomProviderApiKey, x as resolveIMessageRemoteAttachmentRoots, xa as buildEnforcedShellCommand, xc as listProfilesForProvider, xi as isGatewayMessageChannel, xs as buildStreamErrorAssistantMessage, yi as isDeliverableMessageChannel, yn as replaceSpeechProviders, yr as deriveSessionMetaPatch, ys as buildAssistantMessage, yt as normalizePluginsConfig, zi as resolveSessionLockMaxHoldFromTimeout, zo as resolveConfiguredModelRef, zs as resolveAuthProfileOrder, zt as normalizeAnyChannelId } from "./config-D--rwfpd.js";
10
10
  import { t as VERSION } from "./version-D_9__Xw6.js";
11
- import { A as normalizeOptionalAccountId, B as isSubagentSessionKey, C as sanitizeAgentId, E as toAgentStoreSessionKey, F as isAcpSessionKey, H as resolveThreadParentSessionKey, L as isCronSessionKey, M as HEARTBEAT_SESSION_KEY_SEGMENT, N as WAKE_GATE_SESSION_KEY_SEGMENT, O as DEFAULT_ACCOUNT_ID, P as getSubagentDepth, S as resolveThreadSessionKeys, V as parseAgentSessionKey, W as stripAgentSessionKeyPrefix, _ as resolveAgentIdFromSessionKey, a as buildAgentMainSessionKey, d as isKnownAgentMainSessionKey, f as isValidAgentId, j as BACKGROUND_SESSION_KEY_SEGMENT, k as normalizeAccountId$2, m as normalizeMainKey, p as normalizeAgentId, r as DEVICE_SENDER_PREFIX, s as classifySessionKeyShape, t as DEFAULT_AGENT_ID, v as resolveCanonicalIdentity, y as resolveConfiguredCanonicalIdentity, z as isHeartbeatChildOfSessionKey } from "./session-key-BRw3GFxY.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-BXqrHhZ0.js";
13
- import { a as logInfo, i as logError, n as runExec, o as logWarn, r as logDebug, t as runCommandWithTimeout } from "./exec-EGo-G7vR.js";
14
- import { n as resolveOpenClawPackageRoot } from "./openclaw-root-B6Tk0FH8.js";
11
+ import { A as normalizeOptionalAccountId, B as isSubagentSessionKey, C as sanitizeAgentId, E as toAgentStoreSessionKey, F as isAcpSessionKey, H as resolveThreadParentSessionKey, L as isCronSessionKey, M as HEARTBEAT_SESSION_KEY_SEGMENT, N as WAKE_GATE_SESSION_KEY_SEGMENT, O as DEFAULT_ACCOUNT_ID, P as getSubagentDepth, S as resolveThreadSessionKeys, V as parseAgentSessionKey, W as stripAgentSessionKeyPrefix, _ as resolveAgentIdFromSessionKey, a as buildAgentMainSessionKey, d as isKnownAgentMainSessionKey, f as isValidAgentId, j as BACKGROUND_SESSION_KEY_SEGMENT, k as normalizeAccountId$2, m as normalizeMainKey, p as normalizeAgentId, r as DEVICE_SENDER_PREFIX, s as classifySessionKeyShape, t as DEFAULT_AGENT_ID, v as resolveCanonicalIdentity, y as resolveConfiguredCanonicalIdentity, z as isHeartbeatChildOfSessionKey } from "./session-key-Cr27HfX5.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-BZ0wFh-U.js";
13
+ import { a as logInfo, i as logError, n as runExec, o as logWarn, r as logDebug, t as runCommandWithTimeout } from "./exec-DWOKM6EC.js";
14
+ import { n as resolveOpenClawPackageRoot } from "./openclaw-root-CvJ5CJns.js";
15
15
  import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken } from "./github-copilot-token-CvN6iidT.js";
16
16
  import { t as formatCliCommand } from "./command-format-DWAk9aIH.js";
17
17
  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-BIRWkDiU.js";
18
18
  import { n as resolveConversationLabel, r as normalizeChatType } from "./conversation-label-BPhkn_eM.js";
19
- 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-DizMtGn_.js";
20
- import { $ as setChannelPermissionDiscord, A as readMessagesDiscord, At as buildChannelKeyCandidates, B as kickMemberDiscord, C as createThreadDiscord, Ct as shouldEmitDiscordReactionNotification, D as listPinsDiscord, Dt as resolveTimestampMs, E as fetchMessageDiscord, Et as resolveDiscordSystemLocation, F as createScheduledEventDiscord, G as listGuildEmojisDiscord, H as listScheduledEventsDiscord, I as fetchChannelInfoDiscord, J as createChannelDiscord, K as uploadEmojiDiscord, L as fetchMemberInfoDiscord, M as unpinMessageDiscord, Mt as resolveChannelEntryMatchWithFallback, N as addRoleDiscord, O as listThreadsDiscord, Ot as fetchDiscord, P as banMemberDiscord, Q as removeChannelPermissionDiscord, R as fetchRoleInfoDiscord, S as recordChannelActivity, St as resolveGroupDmAllow, T as editMessageDiscord, Tt as formatDiscordUserTag, U as removeRoleDiscord, V as listGuildChannelsDiscord, W as timeoutMemberDiscord, X as editChannelDiscord, Y as deleteChannelDiscord, Z as moveChannelDiscord, _ as sendPollDiscord, _t as resolveDiscordGuildEntry, a as removeReactionDiscord, at as createDiscordClient, b as sendWebhookMessageDiscord, bt as resolveDiscordOwnerAllowFrom, c as formatDiscordComponentEventText, ct as parseDiscordTarget, d as parseDiscordModalCustomId, dt as listDiscordDirectoryPeersLive, et as stripUndefinedFields, f as parseDiscordModalCustomIdForCarbon, ft as isDiscordGroupAllowedByPolicy, g as sendMessageDiscord, gt as resolveDiscordChannelConfigWithFallback, h as resolveDiscordModalEntry, ht as resolveDiscordAllowListMatch, i as removeOwnReactionsDiscord, it as normalizePollInput, j as searchMessagesDiscord, jt as normalizeChannelSlug, k as pinMessageDiscord, kt as applyChannelMatchMeta, l as parseDiscordComponentCustomId, lt as resolveDiscordChannelId, m as resolveDiscordComponentEntry, mt as normalizeDiscordSlug, n as fetchReactionsDiscord, nt as hasAnyGuildPermissionDiscord, o as sendDiscordComponentMessage, ot as createDiscordRestClient, p as readDiscordComponentSpec, pt as normalizeDiscordAllowList, q as uploadStickerDiscord, r as reactMessageDiscord, rt as chunkDiscordTextWithMode, s as createDiscordFormModal, st as createDiscordRetryRunner, tt as fetchChannelPermissionsDiscord, u as parseDiscordComponentCustomIdForCarbon, ut as listDiscordDirectoryGroupsLive, v as sendStickerDiscord, vt as resolveDiscordMemberAccessState, w as deleteMessageDiscord, wt as formatDiscordReactionEmoji, x as getChannelActivity, xt as resolveDiscordShouldRequireMention, y as sendVoiceMessageDiscord, yt as resolveDiscordOwnerAccess, z as fetchVoiceStatusDiscord } from "./send-S06NYAWt.js";
19
+ 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-36dNynVs.js";
20
+ import { $ as setChannelPermissionDiscord, A as readMessagesDiscord, At as buildChannelKeyCandidates, B as kickMemberDiscord, C as createThreadDiscord, Ct as shouldEmitDiscordReactionNotification, D as listPinsDiscord, Dt as resolveTimestampMs, E as fetchMessageDiscord, Et as resolveDiscordSystemLocation, F as createScheduledEventDiscord, G as listGuildEmojisDiscord, H as listScheduledEventsDiscord, I as fetchChannelInfoDiscord, J as createChannelDiscord, K as uploadEmojiDiscord, L as fetchMemberInfoDiscord, M as unpinMessageDiscord, Mt as resolveChannelEntryMatchWithFallback, N as addRoleDiscord, O as listThreadsDiscord, Ot as fetchDiscord, P as banMemberDiscord, Q as removeChannelPermissionDiscord, R as fetchRoleInfoDiscord, S as recordChannelActivity, St as resolveGroupDmAllow, T as editMessageDiscord, Tt as formatDiscordUserTag, U as removeRoleDiscord, V as listGuildChannelsDiscord, W as timeoutMemberDiscord, X as editChannelDiscord, Y as deleteChannelDiscord, Z as moveChannelDiscord, _ as sendPollDiscord, _t as resolveDiscordGuildEntry, a as removeReactionDiscord, at as createDiscordClient, b as sendWebhookMessageDiscord, bt as resolveDiscordOwnerAllowFrom, c as formatDiscordComponentEventText, ct as parseDiscordTarget, d as parseDiscordModalCustomId, dt as listDiscordDirectoryPeersLive, et as stripUndefinedFields, f as parseDiscordModalCustomIdForCarbon, ft as isDiscordGroupAllowedByPolicy, g as sendMessageDiscord, gt as resolveDiscordChannelConfigWithFallback, h as resolveDiscordModalEntry, ht as resolveDiscordAllowListMatch, i as removeOwnReactionsDiscord, it as normalizePollInput, j as searchMessagesDiscord, jt as normalizeChannelSlug, k as pinMessageDiscord, kt as applyChannelMatchMeta, l as parseDiscordComponentCustomId, lt as resolveDiscordChannelId, m as resolveDiscordComponentEntry, mt as normalizeDiscordSlug, n as fetchReactionsDiscord, nt as hasAnyGuildPermissionDiscord, o as sendDiscordComponentMessage, ot as createDiscordRestClient, p as readDiscordComponentSpec, pt as normalizeDiscordAllowList, q as uploadStickerDiscord, r as reactMessageDiscord, rt as chunkDiscordTextWithMode, s as createDiscordFormModal, st as createDiscordRetryRunner, tt as fetchChannelPermissionsDiscord, u as parseDiscordComponentCustomIdForCarbon, ut as listDiscordDirectoryGroupsLive, v as sendStickerDiscord, vt as resolveDiscordMemberAccessState, w as deleteMessageDiscord, wt as formatDiscordReactionEmoji, x as getChannelActivity, xt as resolveDiscordShouldRequireMention, y as sendVoiceMessageDiscord, yt as resolveDiscordOwnerAccess, z as fetchVoiceStatusDiscord } from "./send-D1V_gt-x.js";
21
21
  import { t as redactIdentifier } from "./redact-identifier-C6kZ-VCd.js";
22
22
  import { t as KeyedAsyncQueue } from "./keyed-async-queue-2pjO_HT0.js";
23
23
  import { t as CommandLane } from "./lanes-CF2oNM6v.js";
24
24
  import { n as isDiagnosticsEnabled, t as emitDiagnosticEvent } from "./diagnostic-events-fDjlg2nm.js";
25
- import { i as getAgentTurnRuntime, o as tryGetAgentTurnRuntime } from "./agent-turn-runner-Dqbqrgbg.js";
26
- import { a as resolveSessionRunStore, n as deriveSessionRunId, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-CLU0QuFV.js";
27
- import { A as isRateLimitAssistantError, B as resolveBootstrapTotalMaxChars, C as isBillingAssistantError, D as isFailoverAssistantError, E as isContextOverflowError, F as sanitizeUserFacingText, I as isAuthPermanentErrorMessage, L as isTimeoutErrorMessage, M as isTransientHttpError, N as parseImageDimensionError, O as isFailoverErrorMessage, P as parseImageSizeError, R as buildBootstrapContextFiles, S as isAuthAssistantError, T as isCompactionFailureError, V as sanitizeGoogleTurnOrdering, _ as classifyFailoverReason, a as isMessagingToolDuplicateNormalized, b as formatRawAssistantErrorForUi, c as sanitizeImageBlocks, d as canonicalizeBase64, f as estimateBase64DecodedBytes, g as BILLING_ERROR_USER_MESSAGE, h as isGoogleModelApi, j as isRawApiErrorPayload, k as isLikelyContextOverflowError, l as sanitizeToolResultImages, m as downgradeOpenAIReasoningBlocks, n as validateGeminiTurns, o as normalizeTextForComparison, p as downgradeOpenAIFunctionCallReasoningPairs, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as resolveImageSanitizationLimits, v as formatAssistantErrorText, w as isCloudCodeAssistFormatError, x as getApiErrorPayloadFingerprint, y as formatBillingErrorMessage, z as resolveBootstrapMaxChars } from "./pi-embedded-helpers--xcGBKr8.js";
28
- 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-DSs8pONL.js";
25
+ import { i as getAgentTurnRuntime, o as tryGetAgentTurnRuntime } from "./agent-turn-runner-qSzYP-xO.js";
26
+ import { a as resolveSessionRunStore, n as deriveSessionRunId, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-C5MQyLQu.js";
27
+ import { A as isRateLimitAssistantError, B as resolveBootstrapTotalMaxChars, C as isBillingAssistantError, D as isFailoverAssistantError, E as isContextOverflowError, F as sanitizeUserFacingText, I as isAuthPermanentErrorMessage, L as isTimeoutErrorMessage, M as isTransientHttpError, N as parseImageDimensionError, O as isFailoverErrorMessage, P as parseImageSizeError, R as buildBootstrapContextFiles, S as isAuthAssistantError, T as isCompactionFailureError, V as sanitizeGoogleTurnOrdering, _ as classifyFailoverReason, a as isMessagingToolDuplicateNormalized, b as formatRawAssistantErrorForUi, c as sanitizeImageBlocks, d as canonicalizeBase64, f as estimateBase64DecodedBytes, g as BILLING_ERROR_USER_MESSAGE, h as isGoogleModelApi, j as isRawApiErrorPayload, k as isLikelyContextOverflowError, l as sanitizeToolResultImages, m as downgradeOpenAIReasoningBlocks, n as validateGeminiTurns, o as normalizeTextForComparison, p as downgradeOpenAIFunctionCallReasoningPairs, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as resolveImageSanitizationLimits, v as formatAssistantErrorText, w as isCloudCodeAssistFormatError, x as getApiErrorPayloadFingerprint, y as formatBillingErrorMessage, z as resolveBootstrapMaxChars } from "./pi-embedded-helpers-BbOp_MHS.js";
28
+ 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-BcT2OU_g.js";
29
29
  import { i as listCoreToolIds } from "./tool-catalog-BKQpjFPQ.js";
30
- import { c as resolveExistingPathsWithinRoot, g as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as DEFAULT_UPLOAD_DIR } from "./extension-relay-auth-D49uIEqs.js";
31
- import { i as isLoopbackHost } from "./ws-BafnkIRl.js";
32
- import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-DLluMUaA.js";
33
- import { a as resolveBrowserControlAuth } from "./server-context-D_ZTBjWX.js";
34
- 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-CWQC3bQU.js";
35
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-L34PKmdW.js";
30
+ import { c as resolveExistingPathsWithinRoot, g as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as DEFAULT_UPLOAD_DIR } from "./extension-relay-auth-CEkGLele.js";
31
+ import { i as isLoopbackHost } from "./ws-Dnz-ugxp.js";
32
+ import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-D2RfV9B5.js";
33
+ import { a as resolveBrowserControlAuth } from "./server-context-DXaMid9A.js";
34
+ 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-rshN3U9G.js";
35
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DhwCAYKX.js";
36
36
  import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-OtHqr7lm.js";
37
37
  import { c as readErrorName, i as formatErrorMessage, o as hasErrnoCode } from "./errors-zRgI_PDI.js";
38
- import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-db4fkk2l.js";
39
- import { a as isBlockedHostnameOrIp, l as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-BcMrDxNo.js";
40
- import { _ as mediaKindFromMime, c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, h as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as normalizeMimeType$1, p as kindFromMime, s as resizeToJpeg, u as getFileExtension } from "./image-ops-BFv9Aw5H.js";
41
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-ccSeveJ0.js";
42
- import { r as resolveBrowserConfig } from "./trash-DhfDhVld.js";
43
- import { i as resolveLsofCommandSync } from "./ports-CbjXbpjb.js";
38
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-sWugzmbo.js";
39
+ import { a as isBlockedHostnameOrIp, l as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-t-re7bCo.js";
40
+ import { _ as mediaKindFromMime, c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, h as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as normalizeMimeType$1, p as kindFromMime, s as resizeToJpeg, u as getFileExtension } from "./image-ops-C0np5f9V.js";
41
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-BKtDaCRf.js";
42
+ import { r as resolveBrowserConfig } from "./trash-D8OVe313.js";
43
+ import { i as resolveLsofCommandSync } from "./ports-R8I-Rd2p.js";
44
44
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-qRiQMP-8.js";
45
45
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-_dzDDlFo.js";
46
- import { At as stripMessageCarriers, Ct as buildInboundMetaSystemPrompt, Dt as getMessageIngress, Et as attachMessageIngress, Mt as formatZonedTimestamp, Nt as resolveTimezone, Ot as isRepresentableEpochMs, Pt as resolveSenderLabel, Tt as renderInboundUserContext, _n as derivePromptTokens, _t as sanitizeJsonb, bn as makeZeroUsageSnapshot, bt as mergePromptContributions, cn as HIDDEN_HEARTBEAT_CUSTOM_TYPE, jt as formatMessageStamp, kt as messageTime, vn as deriveSessionTotalTokens, vt as sha256, wt as collectInboundUserContext, xn as normalizeUsage, xt as toJsonValue$1, yn as hasNonzeroUsage, yt as createCurrentUserPromptEnvelope } from "./storage-config-CS0-6wW6.js";
47
- import { $ as resolveExplicitAgentSessionKey, A as DB_SESSION_HYDRATION_LIMIT, B as CHARS_PER_TOKEN_ESTIMATE$2, C as hasHookForPlugin, D as resolveProviderPromptCacheKey, E as buildPluginTurnIdentity, F as sessionLikelyHasOversizedToolResults, G as getToolResultText$1, H as createMessageCharEstimateCache, I as PREEMPTIVE_TOOL_RESULT_COMPACTION_PLACEHOLDER, K as isToolResultMessage, L as TOOL_RESULT_TEXT_WEIGHT, M as pickLeaf, N as capToolResultContent, O as resolveProviderRuntimeIdentity, P as HARD_MAX_TOOL_RESULT_CHARS, Q as resolveAgentMainSessionKey, R as truncateTextHeadTail, T as buildPluginRuntimeIdentity, U as estimateContextChars$1, V as TOOL_RESULT_CHARS_PER_TOKEN_ESTIMATE, W as estimateMessageCharsCached, X as resolveSessionKey, Z as canonicalizeMainSessionAlias, _ as sanitizeToolCallIdsForCloudCodeAssist, a as resolveMirroredTranscriptText, b as initializeGlobalHookRunner, c as runSerializedBySession, d as openRawToolResultStash, et as resolveMainSessionKey, f as repairToolUseResultPairing, g as canonicalToolCallIdBase, h as stripToolResultDetails, i as appendAssistantMessageToSessionTranscript, j as eventOrder, l as drainPendingPrimaryWrites, m as sanitizeToolUseResultPairing, n as parseSessionThreadInfo, p as sanitizeToolCallInputs, q as parseInlineDirectives$1, r as resolveAndPersistSessionFile, s as openDbSessionManager, t as extractDeliveryInfo, u as guardSessionManager, v as getGlobalHookRunner, w as promptBuildResultToContribution, y as getGlobalPluginRegistry, z as truncateToolResultToChars } from "./sessions-DPV-OS7q.js";
48
- import { a as resolveSessionResetType, i as resolveSessionResetPolicy, o as resolveThreadFlag, r as resolveChannelResetConfig, t as evaluateSessionFreshness } from "./reset-CDG1YZWx.js";
46
+ import { At as stripMessageCarriers, Ct as buildInboundMetaSystemPrompt, Dt as getMessageIngress, Et as attachMessageIngress, Mt as formatZonedTimestamp, Nt as resolveTimezone, Ot as isRepresentableEpochMs, Pt as resolveSenderLabel, Tt as renderInboundUserContext, _n as derivePromptTokens, _t as sanitizeJsonb, bn as makeZeroUsageSnapshot, bt as mergePromptContributions, cn as HIDDEN_HEARTBEAT_CUSTOM_TYPE, jt as formatMessageStamp, kt as messageTime, vn as deriveSessionTotalTokens, vt as sha256, wt as collectInboundUserContext, xn as normalizeUsage, xt as toJsonValue$1, yn as hasNonzeroUsage, yt as createCurrentUserPromptEnvelope } from "./storage-config-BJj76p6F.js";
47
+ import { $ as resolveExplicitAgentSessionKey, A as DB_SESSION_HYDRATION_LIMIT, B as CHARS_PER_TOKEN_ESTIMATE$2, C as hasHookForPlugin, D as resolveProviderPromptCacheKey, E as buildPluginTurnIdentity, F as sessionLikelyHasOversizedToolResults, G as getToolResultText$1, H as createMessageCharEstimateCache, I as PREEMPTIVE_TOOL_RESULT_COMPACTION_PLACEHOLDER, K as isToolResultMessage, L as TOOL_RESULT_TEXT_WEIGHT, M as pickLeaf, N as capToolResultContent, O as resolveProviderRuntimeIdentity, P as HARD_MAX_TOOL_RESULT_CHARS, Q as resolveAgentMainSessionKey, R as truncateTextHeadTail, T as buildPluginRuntimeIdentity, U as estimateContextChars$1, V as TOOL_RESULT_CHARS_PER_TOKEN_ESTIMATE, W as estimateMessageCharsCached, X as resolveSessionKey, Z as canonicalizeMainSessionAlias, _ as sanitizeToolCallIdsForCloudCodeAssist, a as resolveMirroredTranscriptText, b as initializeGlobalHookRunner, c as runSerializedBySession, d as openRawToolResultStash, et as resolveMainSessionKey, f as repairToolUseResultPairing, g as canonicalToolCallIdBase, h as stripToolResultDetails, i as appendAssistantMessageToSessionTranscript, j as eventOrder, l as drainPendingPrimaryWrites, m as sanitizeToolUseResultPairing, n as parseSessionThreadInfo, p as sanitizeToolCallInputs, q as parseInlineDirectives$1, r as resolveAndPersistSessionFile, s as openDbSessionManager, t as extractDeliveryInfo, u as guardSessionManager, v as getGlobalHookRunner, w as promptBuildResultToContribution, y as getGlobalPluginRegistry, z as truncateToolResultToChars } from "./sessions-D5-WnU1c.js";
48
+ import { a as resolveSessionResetType, i as resolveSessionResetPolicy, o as resolveThreadFlag, r as resolveChannelResetConfig, t as evaluateSessionFreshness } from "./reset-DxYrusrF.js";
49
49
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-D2m6f_VQ.js";
50
- import { g as normalizeHttpWebhookUrl, p as inferLegacyName } from "./jobs-Pj6_tyn5.js";
50
+ import { g as normalizeHttpWebhookUrl, p as inferLegacyName } from "./jobs-D8gtzx-n.js";
51
51
  import { i as normalizeInputProvenance, r as hasInterSessionUserProvenance } from "./input-provenance-DenbV-y7.js";
52
52
  import { n as onSessionTranscriptUpdate } from "./transcript-events-CVgytyRx.js";
53
53
  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-C-JqJMk6.js";
54
- import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-KAeJzNvt.js";
55
- import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-B0SYKifB.js";
56
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-BbJQtRIl.js";
57
- import { E as resetCommandPollCount, T as recordCommandPoll, _ as logToolExecutionStarted, c as logMessageQueued, f as logRunCompleted, g as logToolExecutionCompleted, h as logToolExecutionBlocked, m as logSessionStateChange, p as logRunStarted, s as logMessageProcessed, u as logModelCallError, v as recordSystemPromptHashComparison, w as boundDiagnosticContent, y as refreshRunProgress } from "./diagnostic-C2zSaTPq.js";
54
+ import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-B0ufPLD2.js";
55
+ import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-D5eYPE3_.js";
56
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-DG_Ef3S1.js";
57
+ import { E as resetCommandPollCount, T as recordCommandPoll, _ as logToolExecutionStarted, c as logMessageQueued, f as logRunCompleted, g as logToolExecutionCompleted, h as logToolExecutionBlocked, m as logSessionStateChange, p as logRunStarted, s as logMessageProcessed, u as logModelCallError, v as recordSystemPromptHashComparison, w as boundDiagnosticContent, y as refreshRunProgress } from "./diagnostic-jFNdnXCb.js";
58
58
  import { d as redactChannelCorrelation, o as getDiagnosticSessionState } from "./diagnostic-session-state-BJMCOJZO.js";
59
- import { c as getCommandLaneSnapshots, f as isQueuedCommandCancellation, i as clearCommandLane, l as getQueueSize, o as enqueueCommandInLane, t as CommandLaneAbortedError } from "./command-queue-DqvFUE_T.js";
60
- import { i as buildModelAliasLines, n as resolveModel } from "./model-UbsJmYeh.js";
61
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-Rjo2hv2p.js";
59
+ import { c as getCommandLaneSnapshots, f as isQueuedCommandCancellation, i as clearCommandLane, l as getQueueSize, o as enqueueCommandInLane, t as CommandLaneAbortedError } from "./command-queue-D7PleaNJ.js";
60
+ import { i as buildModelAliasLines, n as resolveModel } from "./model-A1TZLzNB.js";
61
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BWXqga5N.js";
62
62
  import { n as docsSiteUrl, t as DOCS_SITE_URL } from "./docs-site-B8KujBhr.js";
63
- import { t as ensureOpenClawModelsJson } from "./models-config-CC5yFmpv.js";
64
- import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-B3_jgDyG.js";
65
- import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-h4hE5cjd.js";
66
- import { n as resolveLearningWorkspaceDir, t as resolveSessionConsumerAgentIds } from "./session-consumer-agents-CBqraSzI.js";
67
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-D1B81cpq.js";
63
+ import { t as ensureOpenClawModelsJson } from "./models-config-CBX2i56k.js";
64
+ import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-CfzuCK0Q.js";
65
+ import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-CY75nr5s.js";
66
+ import { n as resolveLearningWorkspaceDir, t as resolveSessionConsumerAgentIds } from "./session-consumer-agents-Zo97FAeD.js";
67
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-BcJh6M8w.js";
68
68
  import { t as extractTextFromChatContent } from "./chat-content-BuwZNf43.js";
69
- import { a as formatReasoningMessage, d as stripThinkingTagsFromText, f as stripReasoningTagsFromText, l as stripDowngradedToolCallText, n as extractAssistantThinking, o as inferToolMetaFromArgs, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-Bqo7G8Hn.js";
70
- import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-CjfVgl4p.js";
71
- import { A as coerceImageAssistantText, C as stripCarriedTranscriptFromBody, D as registerUnhandledRejectionHandler, M as decodeDataUrl, N as resolveProviderVisionModelFromConfig, a as resolveMediaAttachmentLocalRoots, c as minimaxUnderstandImage, d as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, j as coerceImageModelConfig, k as resolveAttachmentKind, l as applyTemplate, m as normalizeMediaUnderstandingChatType, n as buildProviderRegistry, o as runCapability, p as resolveTimeoutMs$1, r as createMediaAttachmentCache, t as runAudioTranscription, w as buildRandomTempFilePath } from "./audio-transcription-runner-Bs4pG29e.js";
72
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit } from "./fetch-BZPOzq9L.js";
69
+ import { a as formatReasoningMessage, d as stripThinkingTagsFromText, f as stripReasoningTagsFromText, l as stripDowngradedToolCallText, n as extractAssistantThinking, o as inferToolMetaFromArgs, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-Df8_gFa-.js";
70
+ import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-BuSkjyOX.js";
71
+ import { A as coerceImageAssistantText, C as stripCarriedTranscriptFromBody, D as registerUnhandledRejectionHandler, M as decodeDataUrl, N as resolveProviderVisionModelFromConfig, a as resolveMediaAttachmentLocalRoots, c as minimaxUnderstandImage, d as resolveConcurrency, g as CLI_OUTPUT_MAX_BUFFER, h as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, j as coerceImageModelConfig, k as resolveAttachmentKind, l as applyTemplate, m as normalizeMediaUnderstandingChatType, n as buildProviderRegistry, o as runCapability, p as resolveTimeoutMs$1, r as createMediaAttachmentCache, t as runAudioTranscription, w as buildRandomTempFilePath } from "./audio-transcription-runner-BXSN8eBn.js";
72
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit } from "./fetch-CLk1nKmU.js";
73
73
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-1Rifi233.js";
74
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-laNnWRKl.js";
74
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-TJQinE0a.js";
75
75
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-B0HeWy68.js";
76
76
  import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-YRX735Fb.js";
77
- 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-TNziyyRO.js";
78
- import { n as resolveMarkdownTableMode } from "./markdown-tables-i_PaXF56.js";
79
- import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-BbGjFYnq.js";
80
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-DYSm3eNj.js";
81
- import { a as listChatCommands, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, i as isCommandEnabled, l as normalizeCommandBody, m as shouldHandleTextCommands, o as listChatCommandsForConfig, p as serializeCommandArgs, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs } from "./commands-registry-BbHkcgn_.js";
82
- import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-Cw29-tG1.js";
77
+ 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-DAmLsltN.js";
78
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-BwQlrMEW.js";
79
+ import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-BoNkouUO.js";
80
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-BSuDoyqC.js";
81
+ import { a as listChatCommands, c as maybeResolveTextAlias, d as resolveCommandArgChoices, f as resolveCommandArgMenu, i as isCommandEnabled, l as normalizeCommandBody, m as shouldHandleTextCommands, o as listChatCommandsForConfig, p as serializeCommandArgs, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as parseCommandArgs } from "./commands-registry-CWGturUV.js";
82
+ import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-DrY68KAf.js";
83
83
  import { t as withTimeout$5 } from "./with-timeout-BLukccJL.js";
84
- 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-C5AVBxrT.js";
85
- import { Ln as SESSION_LABEL_MAX_LENGTH, n as gatewayErrorReason, t as GatewayClient } from "./client-x4GnolXm.js";
86
- import { b as resolveLeastPrivilegeOperatorScopesForMethod, i as callGatewayLeastPrivilege, n as callGateway, s as randomIdempotencyKey, t as buildGatewayConnectionDetails } from "./call-C4ArH9Si.js";
87
- 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-0PYx5aDJ.js";
88
- import { a as toInternalMessageReceivedContext, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext } from "./outbound-message-hooks-_I696mNI.js";
89
- 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-gllA2ft3.js";
84
+ 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-vjvTALqw.js";
85
+ import { Ln as SESSION_LABEL_MAX_LENGTH, n as gatewayErrorReason, t as GatewayClient } from "./client-DsaKKPz1.js";
86
+ import { b as resolveLeastPrivilegeOperatorScopesForMethod, i as callGatewayLeastPrivilege, n as callGateway, s as randomIdempotencyKey, t as buildGatewayConnectionDetails } from "./call-BY-wbSIJ.js";
87
+ 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-DzlzC2_b.js";
88
+ import { a as toInternalMessageReceivedContext, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext } from "./outbound-message-hooks-BvKzCtP_.js";
89
+ 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-CjuGs2ZT.js";
90
90
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-BvDfaxfJ.js";
91
- import { C as computeBackoff, E as transcriptEntriesToMessages, S as resolveContextTokensForModel, T as readFullTranscriptEntriesFromBackend, _ as countToolResults, b as stripMessageIdHints, f as capArrayByJsonBytes, g as jsonUtf8Bytes, o as loadCombinedSessionStoreForGateway, s as loadSessionEntry, v as extractToolCallNames, w as sleepWithAbort, x as lookupContextTokens, y as stripEnvelope } from "./session-utils-Btoq903T.js";
91
+ import { C as computeBackoff, E as transcriptEntriesToMessages, S as resolveContextTokensForModel, T as readFullTranscriptEntriesFromBackend, _ as countToolResults, b as stripMessageIdHints, f as capArrayByJsonBytes, g as jsonUtf8Bytes, o as loadCombinedSessionStoreForGateway, s as loadSessionEntry, v as extractToolCallNames, w as sleepWithAbort, x as lookupContextTokens, y as stripEnvelope } from "./session-utils-BsJs6MoS.js";
92
92
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-Dj9nWJut.js";
93
93
  import { n as formatTimeAgo } from "./format-relative-BwbQjKKI.js";
94
- 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-ZXK7b5SG.js";
95
- 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-CImDpHtY.js";
96
- 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-DO6BNCQ6.js";
97
- import { a as detectRuntimeShell, c as sanitizeBinaryOutput, o as getShellConfig, s as killProcessTree, t as getProcessSupervisor } from "./supervisor-RBm1KDN1.js";
94
+ 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-BbBjVYYR.js";
95
+ 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-CavJfWPl.js";
96
+ 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-Brwiveoh.js";
97
+ import { a as detectRuntimeShell, c as sanitizeBinaryOutput, o as getShellConfig, s as killProcessTree, t as getProcessSupervisor } from "./supervisor-CbcownOj.js";
98
98
  import { t as killProcessTree$1 } from "./kill-tree-D_cyH_T3.js";
99
- import { n as formatExecCommand } from "./system-run-command-CtzUrDfp.js";
99
+ import { n as formatExecCommand } from "./system-run-command-DmwSJZGF.js";
100
100
  import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-CMGNE46f.js";
101
101
  import { i as formatDurationSeconds, t as formatDurationCompact$1 } from "./format-duration-DmZvnykp.js";
102
- 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-BktltILY.js";
103
- import { t as redactConfigObject } from "./redact-snapshot-46g6fP3z.js";
104
- import { t as convertMarkdownTables } from "./tables-BhzelQWA.js";
102
+ 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-DKmd3uhq.js";
103
+ import { t as redactConfigObject } from "./redact-snapshot-Dr2xSc0p.js";
104
+ import { t as convertMarkdownTables } from "./tables-B62PgWcr.js";
105
105
  import { p as resolveGatewaySystemdServiceName, u as resolveGatewayLaunchAgentLabel } from "./constants-C6ozS4px.js";
106
106
  import { n as stripLeadingInboundMetadata, t as stripInboundMetadata } from "./strip-inbound-meta-pZFrUZkq.js";
107
- import { a as resolvePinnedMainDmOwnerFromAllowlist, c as mergeDmAllowFromSources, d as filterToolsByPolicy, f as isToolAllowedByPolicies, h as resolveSubagentToolPolicy, i as resolveDmGroupAccessWithLists, l as resolveCommandAuthorizedFromAuthorizers, m as resolveGroupToolPolicy, n as readStoreAllowFromForDmPolicy, o as firstDefined$1, p as resolveEffectiveToolPolicy, s as isSenderIdAllowed, t as DM_GROUP_ACCESS_REASON, u as resolveControlCommandGate } from "./dm-policy-shared-DyPD8y1v.js";
108
- import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-B_4oA3B0.js";
109
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-JkSKVHJp.js";
110
- import { t as applyPluginAutoEnable } from "./plugin-auto-enable-CbW6trDK.js";
111
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-0JKFG0wR.js";
112
- 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-BPuhxPvx.js";
113
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-IeN1DK4w.js";
107
+ import { a as resolvePinnedMainDmOwnerFromAllowlist, c as mergeDmAllowFromSources, d as filterToolsByPolicy, f as isToolAllowedByPolicies, h as resolveSubagentToolPolicy, i as resolveDmGroupAccessWithLists, l as resolveCommandAuthorizedFromAuthorizers, m as resolveGroupToolPolicy, n as readStoreAllowFromForDmPolicy, o as firstDefined$1, p as resolveEffectiveToolPolicy, s as isSenderIdAllowed, t as DM_GROUP_ACCESS_REASON, u as resolveControlCommandGate } from "./dm-policy-shared-BHHuPFZr.js";
108
+ import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-De0PRN70.js";
109
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BxBw-nya.js";
110
+ import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BtVVoq7k.js";
111
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-CFvOM8pI.js";
112
+ 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-CVaGAWEm.js";
113
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-CZXzecu6.js";
114
114
  import { t as parseTimeoutMs } from "./parse-timeout-zNJBr1fY.js";
115
- import { t as recordInboundSessionMetaSafe } from "./session-meta-WRN3ZcJ5.js";
115
+ import { t as recordInboundSessionMetaSafe } from "./session-meta-wyuckoIK.js";
116
116
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-Dk-YDcqh.js";
117
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$2, t as createSlackReplyDeliveryPlan } from "./replies-DxPPKLeJ.js";
118
- import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-CX4FWTx8.js";
119
- import { r as detectBinary } from "./onboard-helpers-ByS2aPrW.js";
120
- import { t as resolvePairingIdLabel } from "./pairing-labels-BDuNTDsa.js";
121
- import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-vUKqKvFg.js";
122
- import { r as resolveMemorySearchConfig } from "./manager-Be7W1lBp.js";
117
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$2, t as createSlackReplyDeliveryPlan } from "./replies-t1yaLy4q.js";
118
+ import { s as resolveCommandSecretRefsViaGateway, t as getAgentRuntimeCommandSecretTargetIds } from "./command-secret-targets-MpNVd6gM.js";
119
+ import { r as detectBinary } from "./onboard-helpers-Bz91Pf6D.js";
120
+ import { t as resolvePairingIdLabel } from "./pairing-labels-BSl8PmyI.js";
121
+ import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-DajAbkdp.js";
122
+ import { r as resolveMemorySearchConfig } from "./manager-B5VtBnfA.js";
123
123
  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-D8Tjpp41.js";
124
- import { r as isPipelineHeartbeatInFlight } from "./heartbeat-tick-SbqJkBFN.js";
124
+ import { r as isPipelineHeartbeatInFlight } from "./heartbeat-tick-BVllHRaT.js";
125
125
  import { createRequire } from "node:module";
126
126
  import { execFileSync, spawn, spawnSync } from "node:child_process";
127
127
  import { fileURLToPath } from "node:url";
@@ -129,7 +129,7 @@ import os, { homedir } from "node:os";
129
129
  import path, { basename } from "node:path";
130
130
  import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
131
131
  import JSON5 from "json5";
132
- import fs$1 from "node:fs/promises";
132
+ import fsPromises from "node:fs/promises";
133
133
  import { inspect } from "node:util";
134
134
  import crypto$1, { createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
135
135
  import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
@@ -737,7 +737,7 @@ function resolveWorkspaceLane(params) {
737
737
  }
738
738
  async function pathExists(targetPath) {
739
739
  try {
740
- await fs$1.access(targetPath);
740
+ await fsPromises.access(targetPath);
741
741
  return true;
742
742
  } catch {
743
743
  return false;
@@ -745,7 +745,7 @@ async function pathExists(targetPath) {
745
745
  }
746
746
  async function getExistingPathState(targetPath) {
747
747
  try {
748
- const stats = await fs$1.lstat(targetPath);
748
+ const stats = await fsPromises.lstat(targetPath);
749
749
  if (stats.isSymbolicLink()) return "other";
750
750
  return stats.isDirectory() ? "directory" : "other";
751
751
  } catch {
@@ -754,7 +754,7 @@ async function getExistingPathState(targetPath) {
754
754
  }
755
755
  async function pathLexicallyExists(targetPath) {
756
756
  try {
757
- await fs$1.lstat(targetPath);
757
+ await fsPromises.lstat(targetPath);
758
758
  return true;
759
759
  } catch {
760
760
  return false;
@@ -821,7 +821,7 @@ async function resolveWorkspaceLaneForTurn(params) {
821
821
  const config = resolveWorkspaceLaneConfig(params.cfg, resolution.agentId);
822
822
  if ((config?.create ?? "on-first-message") !== "on-first-message") return resolution;
823
823
  const existed = pathState === "directory";
824
- if (!existed) await fs$1.mkdir(resolution.effectiveWorkspaceDir, { recursive: true });
824
+ if (!existed) await fsPromises.mkdir(resolution.effectiveWorkspaceDir, { recursive: true });
825
825
  for (const file of config?.copiedOnCreate ?? DEFAULT_COPIED_ON_CREATE_FILES) {
826
826
  const decision = await copyIfMissing({
827
827
  sourceRoot: resolution.personaWorkspaceDir,
@@ -5751,7 +5751,7 @@ async function imageResult(params) {
5751
5751
  }, params.label, params.imageSanitization);
5752
5752
  }
5753
5753
  async function imageResultFromFile(params) {
5754
- const buf = await fs$1.readFile(params.path);
5754
+ const buf = await fsPromises.readFile(params.path);
5755
5755
  const mimeType = await detectMime({ buffer: buf.slice(0, 256) }) ?? "image/png";
5756
5756
  return await imageResult({
5757
5757
  label: params.label,
@@ -6763,7 +6763,7 @@ async function routeReply(params) {
6763
6763
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
6764
6764
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
6765
6765
  try {
6766
- const { deliverOutboundPayloads } = await import("./deliver-gllA2ft3.js").then((n) => n.n);
6766
+ const { deliverOutboundPayloads } = await import("./deliver-CjuGs2ZT.js").then((n) => n.n);
6767
6767
  const outboundSession = buildOutboundSessionContext({
6768
6768
  cfg,
6769
6769
  agentId: resolvedAgentId,
@@ -12003,7 +12003,7 @@ async function sendTranscriptEcho(params) {
12003
12003
  }
12004
12004
  const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
12005
12005
  try {
12006
- const { deliverOutboundPayloads } = await import("./deliver-gllA2ft3.js").then((n) => n.n);
12006
+ const { deliverOutboundPayloads } = await import("./deliver-CjuGs2ZT.js").then((n) => n.n);
12007
12007
  await deliverOutboundPayloads({
12008
12008
  cfg,
12009
12009
  channel: normalizedChannel,
@@ -16037,7 +16037,7 @@ async function resolveSandboxWorkdir(params) {
16037
16037
  cwd: process.cwd(),
16038
16038
  root: params.sandbox.workspaceDir
16039
16039
  });
16040
- if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
16040
+ if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
16041
16041
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
16042
16042
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
16043
16043
  return {
@@ -17287,13 +17287,13 @@ async function validateScriptFileForShellBleed(params) {
17287
17287
  cwd: params.workdir,
17288
17288
  root: params.workdir
17289
17289
  });
17290
- stat = await fs$1.stat(absPath);
17290
+ stat = await fsPromises.stat(absPath);
17291
17291
  } catch {
17292
17292
  return;
17293
17293
  }
17294
17294
  if (!stat.isFile()) return;
17295
17295
  if (stat.size > 512 * 1024) return;
17296
- const content = await fs$1.readFile(absPath, "utf-8");
17296
+ const content = await fsPromises.readFile(absPath, "utf-8");
17297
17297
  const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
17298
17298
  if (first) {
17299
17299
  const idx = first.index;
@@ -28211,7 +28211,7 @@ async function createModelSelectionState(params) {
28211
28211
  }
28212
28212
  }
28213
28213
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
28214
- const { ensureAuthProfileStore } = await import("./config-2hPOvE4Z.js").then((n) => n.Rs);
28214
+ const { ensureAuthProfileStore } = await import("./config-D--rwfpd.js").then((n) => n.Rs);
28215
28215
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
28216
28216
  const providerKey = normalizeProviderId$1(provider);
28217
28217
  if (!profile || normalizeProviderId$1(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -31669,7 +31669,7 @@ async function readJsonlFromPath(jsonlPath) {
31669
31669
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
31670
31670
  throw new Error("jsonlPath outside allowed roots");
31671
31671
  }
31672
- const canonical = await fs$1.realpath(resolved).catch(() => resolved);
31672
+ const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
31673
31673
  if (!isInboundPathAllowed({
31674
31674
  filePath: canonical,
31675
31675
  roots
@@ -31677,7 +31677,7 @@ async function readJsonlFromPath(jsonlPath) {
31677
31677
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
31678
31678
  throw new Error("jsonlPath outside allowed roots");
31679
31679
  }
31680
- return await fs$1.readFile(canonical, "utf8");
31680
+ return await fsPromises.readFile(canonical, "utf8");
31681
31681
  }
31682
31682
  const CanvasToolSchema = Type.Object({
31683
31683
  action: stringEnum(CANVAS_ACTIONS),
@@ -32528,27 +32528,27 @@ function resolveRestartSentinelPath(env = process.env) {
32528
32528
  }
32529
32529
  async function writeRestartSentinel(payload, env = process.env) {
32530
32530
  const filePath = resolveRestartSentinelPath(env);
32531
- await fs$1.mkdir(path.dirname(filePath), { recursive: true });
32531
+ await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
32532
32532
  const data = {
32533
32533
  version: 1,
32534
32534
  payload
32535
32535
  };
32536
- await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
32536
+ await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
32537
32537
  return filePath;
32538
32538
  }
32539
32539
  async function readRestartSentinel(env = process.env) {
32540
32540
  const filePath = resolveRestartSentinelPath(env);
32541
32541
  try {
32542
- const raw = await fs$1.readFile(filePath, "utf-8");
32542
+ const raw = await fsPromises.readFile(filePath, "utf-8");
32543
32543
  let parsed;
32544
32544
  try {
32545
32545
  parsed = JSON.parse(raw);
32546
32546
  } catch {
32547
- await fs$1.unlink(filePath).catch(() => {});
32547
+ await fsPromises.unlink(filePath).catch(() => {});
32548
32548
  return null;
32549
32549
  }
32550
32550
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
32551
- await fs$1.unlink(filePath).catch(() => {});
32551
+ await fsPromises.unlink(filePath).catch(() => {});
32552
32552
  return null;
32553
32553
  }
32554
32554
  return parsed;
@@ -32560,7 +32560,7 @@ async function consumeRestartSentinel(env = process.env) {
32560
32560
  const filePath = resolveRestartSentinelPath(env);
32561
32561
  const parsed = await readRestartSentinel(env);
32562
32562
  if (!parsed) return null;
32563
- await fs$1.unlink(filePath).catch(() => {});
32563
+ await fsPromises.unlink(filePath).catch(() => {});
32564
32564
  return parsed;
32565
32565
  }
32566
32566
  function formatRestartSentinelMessage(payload) {
@@ -43129,18 +43129,18 @@ function appendImagePathsToPrompt(prompt, paths) {
43129
43129
  return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
43130
43130
  }
43131
43131
  async function writeCliImages(images) {
43132
- const tempDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
43132
+ const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
43133
43133
  const paths = [];
43134
43134
  for (let i = 0; i < images.length; i += 1) {
43135
43135
  const image = images[i];
43136
43136
  const ext = resolveImageExtension(image.mimeType);
43137
43137
  const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
43138
43138
  const buffer = Buffer.from(image.data, "base64");
43139
- await fs$1.writeFile(filePath, buffer, { mode: 384 });
43139
+ await fsPromises.writeFile(filePath, buffer, { mode: 384 });
43140
43140
  paths.push(filePath);
43141
43141
  }
43142
43142
  const cleanup = async () => {
43143
- await fs$1.rm(tempDir, {
43143
+ await fsPromises.rm(tempDir, {
43144
43144
  recursive: true,
43145
43145
  force: true
43146
43146
  });
@@ -46903,7 +46903,7 @@ async function deliverSessionMaintenanceWarning(params) {
46903
46903
  return;
46904
46904
  }
46905
46905
  try {
46906
- const { deliverOutboundPayloads } = await import("./deliver-gllA2ft3.js").then((n) => n.n);
46906
+ const { deliverOutboundPayloads } = await import("./deliver-CjuGs2ZT.js").then((n) => n.n);
46907
46907
  const outboundSession = buildOutboundSessionContext({
46908
46908
  cfg: params.cfg,
46909
46909
  sessionKey: params.sessionKey
@@ -47852,7 +47852,7 @@ async function stageSandboxMedia(params) {
47852
47852
  const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(workspaceDir, ".openclaw", "media", "remote-cache", sessionKey) : null;
47853
47853
  const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
47854
47854
  if (!effectiveWorkspaceDir) return;
47855
- await fs$1.mkdir(effectiveWorkspaceDir, { recursive: true });
47855
+ await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
47856
47856
  const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
47857
47857
  cfg,
47858
47858
  accountId: ctx.AccountId
@@ -47911,8 +47911,8 @@ async function stageLocalFileIntoRoot(params) {
47911
47911
  }
47912
47912
  async function stageRemoteFileIntoRoot(params) {
47913
47913
  const tmpRoot = resolvePreferredOpenClawTmpDir();
47914
- await fs$1.mkdir(tmpRoot, { recursive: true });
47915
- const tmpDir = await fs$1.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
47914
+ await fsPromises.mkdir(tmpRoot, { recursive: true });
47915
+ const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
47916
47916
  const tmpPath = path.join(tmpDir, "download");
47917
47917
  try {
47918
47918
  await scpFile(params.remoteHost, params.remotePath, tmpPath);
@@ -47923,7 +47923,7 @@ async function stageRemoteFileIntoRoot(params) {
47923
47923
  maxBytes: params.maxBytes
47924
47924
  });
47925
47925
  } finally {
47926
- await fs$1.rm(tmpDir, {
47926
+ await fsPromises.rm(tmpDir, {
47927
47927
  recursive: true,
47928
47928
  force: true
47929
47929
  }).catch(() => {});
@@ -53757,7 +53757,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
53757
53757
  let transcript;
53758
53758
  let carry;
53759
53759
  if (needsPreflightTranscription) try {
53760
- const { transcribeFirstAudio } = await import("./audio-preflight-CP5CtdsH.js");
53760
+ const { transcribeFirstAudio } = await import("./audio-preflight-oL1-kPAm.js");
53761
53761
  const uploadable = audioAttachments.filter((att) => typeof att.url === "string" && att.url.length > 0);
53762
53762
  if (uploadable.length > 0) {
53763
53763
  const preflight = await transcribeFirstAudio({
@@ -58479,19 +58479,19 @@ function createDefaultDeps() {
58479
58479
  };
58480
58480
  }),
58481
58481
  sendMessageDiscord: async (...args) => {
58482
- const { sendMessageDiscord } = await import("./send-S06NYAWt.js").then((n) => n.t);
58482
+ const { sendMessageDiscord } = await import("./send-D1V_gt-x.js").then((n) => n.t);
58483
58483
  return await sendMessageDiscord(...args);
58484
58484
  },
58485
58485
  sendMessageSlack: async (...args) => {
58486
- const { sendMessageSlack } = await import("./send-DizMtGn_.js").then((n) => n.n);
58486
+ const { sendMessageSlack } = await import("./send-36dNynVs.js").then((n) => n.n);
58487
58487
  return await sendMessageSlack(...args);
58488
58488
  },
58489
58489
  sendMessageSignal: async (...args) => {
58490
- const { sendMessageSignal } = await import("./send-0JKFG0wR.js").then((n) => n.i);
58490
+ const { sendMessageSignal } = await import("./send-CFvOM8pI.js").then((n) => n.i);
58491
58491
  return await sendMessageSignal(...args);
58492
58492
  },
58493
58493
  sendMessageIMessage: async (...args) => {
58494
- const { sendMessageIMessage } = await import("./send-BPuhxPvx.js").then((n) => n.n);
58494
+ const { sendMessageIMessage } = await import("./send-CVaGAWEm.js").then((n) => n.n);
58495
58495
  return await sendMessageIMessage(...args);
58496
58496
  }
58497
58497
  };
@@ -59746,10 +59746,10 @@ function estimateDurationSeconds(pcm) {
59746
59746
  return pcm.length / (bytesPerSample * SAMPLE_RATE);
59747
59747
  }
59748
59748
  async function writeWavFile(pcm) {
59749
- const tempDir = await fs$1.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
59749
+ const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
59750
59750
  const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
59751
59751
  const wav = buildWavBuffer(pcm);
59752
- await fs$1.writeFile(filePath, wav);
59752
+ await fsPromises.writeFile(filePath, wav);
59753
59753
  scheduleTempCleanup(tempDir);
59754
59754
  return {
59755
59755
  path: filePath,
@@ -59758,7 +59758,7 @@ async function writeWavFile(pcm) {
59758
59758
  }
59759
59759
  function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
59760
59760
  setTimeout(() => {
59761
- fs$1.rm(tempDir, {
59761
+ fsPromises.rm(tempDir, {
59762
59762
  recursive: true,
59763
59763
  force: true
59764
59764
  }).catch((err) => {
@@ -64178,7 +64178,7 @@ function normalizeAllowList$1(list) {
64178
64178
  async function detectRemoteHostFromCliPath(cliPath) {
64179
64179
  try {
64180
64180
  const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
64181
- const content = await fs$1.readFile(expanded, "utf8");
64181
+ const content = await fsPromises.readFile(expanded, "utf8");
64182
64182
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
64183
64183
  if (userHostMatch) return userHostMatch[1];
64184
64184
  return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
@@ -70990,7 +70990,7 @@ function readSlackExternalArgMenuToken(raw) {
70990
70990
  }
70991
70991
  let commandsRegistry;
70992
70992
  async function getCommandsRegistry() {
70993
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-BbHkcgn_.js").then((n) => n.n);
70993
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-CWGturUV.js").then((n) => n.n);
70994
70994
  return commandsRegistry;
70995
70995
  }
70996
70996
  function encodeSlackCommandArgValue(parts) {
@@ -71320,14 +71320,14 @@ async function registerSlackMonitorSlashCommands(params) {
71320
71320
  const channelName = channelInfo?.name;
71321
71321
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
71322
71322
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
71323
- import("./resolve-route-IeN1DK4w.js").then((n) => n.r),
71323
+ import("./resolve-route-CZXzecu6.js").then((n) => n.r),
71324
71324
  import("./inbound-context-BvDfaxfJ.js").then((n) => n.n),
71325
71325
  Promise.resolve().then(() => provider_dispatcher_exports)
71326
71326
  ]);
71327
71327
  const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
71328
71328
  import("./conversation-label-BPhkn_eM.js").then((n) => n.t),
71329
- import("./reply-prefix-KAeJzNvt.js").then((n) => n.n),
71330
- import("./session-meta-WRN3ZcJ5.js").then((n) => n.n)
71329
+ import("./reply-prefix-B0ufPLD2.js").then((n) => n.n),
71330
+ import("./session-meta-wyuckoIK.js").then((n) => n.n)
71331
71331
  ]);
71332
71332
  const route = resolveAgentRoute({
71333
71333
  cfg,
@@ -71392,9 +71392,9 @@ async function registerSlackMonitorSlashCommands(params) {
71392
71392
  });
71393
71393
  const deliverSlashPayloads = async (replies) => {
71394
71394
  const [{ deliverSlackSlashReplies }, { resolveChunkMode, resolveChunkNewlinePacking }, { resolveMarkdownTableMode }] = await Promise.all([
71395
- import("./replies-DxPPKLeJ.js").then((n) => n.r),
71396
- import("./chunk-TNziyyRO.js").then((n) => n.s),
71397
- import("./markdown-tables-i_PaXF56.js").then((n) => n.t)
71395
+ import("./replies-t1yaLy4q.js").then((n) => n.r),
71396
+ import("./chunk-DAmLsltN.js").then((n) => n.s),
71397
+ import("./markdown-tables-BwQlrMEW.js").then((n) => n.t)
71398
71398
  ]);
71399
71399
  await deliverSlackSlashReplies({
71400
71400
  replies,
@@ -71448,7 +71448,7 @@ async function registerSlackMonitorSlashCommands(params) {
71448
71448
  let nativeCommands = [];
71449
71449
  if (nativeEnabled) {
71450
71450
  reg = await getCommandsRegistry();
71451
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-BktltILY.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
71451
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-DKmd3uhq.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
71452
71452
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
71453
71453
  skillCommands,
71454
71454
  provider: "slack"
@@ -72540,7 +72540,7 @@ function createPluginRuntime(options = {}) {
72540
72540
  workStates: readTaskWorkStates
72541
72541
  },
72542
72542
  resolveLearningWorkspaceDir: (agentId) => resolveLearningWorkspaceDir(loadConfig(), agentId),
72543
- sessions: { startUserRun: async (params) => (await import("./user-run-recording-Cw29-tG1.js").then((n) => n.n)).startUserSessionRun(params) }
72543
+ sessions: { startUserRun: async (params) => (await import("./user-run-recording-DrY68KAf.js").then((n) => n.n)).startUserSessionRun(params) }
72544
72544
  };
72545
72545
  Object.defineProperty(runtime, "analysis", {
72546
72546
  enumerable: true,
@@ -73463,7 +73463,7 @@ function resolvePluginWebSearchProviders(params) {
73463
73463
  //#endregion
73464
73464
  //#region src/agents/apply-patch-update.ts
73465
73465
  async function defaultReadFile(filePath) {
73466
- return fs$1.readFile(filePath, "utf8");
73466
+ return fsPromises.readFile(filePath, "utf8");
73467
73467
  }
73468
73468
  async function applyUpdateHunk(filePath, chunks, options) {
73469
73469
  const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
@@ -73784,7 +73784,7 @@ function resolvePatchFileOps(options) {
73784
73784
  const workspaceOnly = options.workspaceOnly !== false;
73785
73785
  return {
73786
73786
  readFile: async (filePath) => {
73787
- if (!workspaceOnly) return await fs$1.readFile(filePath, "utf8");
73787
+ if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
73788
73788
  const opened = await openBoundaryFile({
73789
73789
  absolutePath: filePath,
73790
73790
  rootPath: options.cwd,
@@ -73799,7 +73799,7 @@ function resolvePatchFileOps(options) {
73799
73799
  },
73800
73800
  writeFile: async (filePath, content) => {
73801
73801
  if (!workspaceOnly) {
73802
- await fs$1.writeFile(filePath, content, "utf8");
73802
+ await fsPromises.writeFile(filePath, content, "utf8");
73803
73803
  return;
73804
73804
  }
73805
73805
  const relative = toRelativeSandboxPath(options.cwd, filePath);
@@ -73810,8 +73810,8 @@ function resolvePatchFileOps(options) {
73810
73810
  encoding: "utf8"
73811
73811
  });
73812
73812
  },
73813
- remove: (filePath) => fs$1.rm(filePath),
73814
- mkdirp: (dir) => fs$1.mkdir(dir, { recursive: true }).then(() => {})
73813
+ remove: (filePath) => fsPromises.rm(filePath),
73814
+ mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
73815
73815
  };
73816
73816
  }
73817
73817
  async function ensureDir(filePath, ops) {
@@ -74090,7 +74090,7 @@ async function recordLoopOutcome(args) {
74090
74090
  if (!args.ctx?.sessionKey) return;
74091
74091
  try {
74092
74092
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-BJMCOJZO.js").then((n) => n.n);
74093
- const { recordToolCallOutcome } = await import("./tool-loop-detection--ScllGh1.js");
74093
+ const { recordToolCallOutcome } = await import("./tool-loop-detection-DcldeAQA.js");
74094
74094
  recordToolCallOutcome(getDiagnosticSessionState({
74095
74095
  sessionKey: args.ctx.sessionKey,
74096
74096
  sessionId: args.ctx?.agentId
@@ -74117,8 +74117,8 @@ async function runBeforeToolCallHook(args) {
74117
74117
  const params = args.params;
74118
74118
  if (args.ctx?.sessionKey) {
74119
74119
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-BJMCOJZO.js").then((n) => n.n);
74120
- const { logToolLoopAction } = await import("./diagnostic-C2zSaTPq.js").then((n) => n.r);
74121
- const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection--ScllGh1.js");
74120
+ const { logToolLoopAction } = await import("./diagnostic-jFNdnXCb.js").then((n) => n.r);
74121
+ const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-DcldeAQA.js");
74122
74122
  const sessionState = getDiagnosticSessionState({
74123
74123
  sessionKey: args.ctx.sessionKey,
74124
74124
  sessionId: args.ctx?.agentId
@@ -74336,7 +74336,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
74336
74336
  if (!pathParam || !newText) throw err;
74337
74337
  try {
74338
74338
  const absolutePath = resolveHostEditPath(root, pathParam);
74339
- const content = await fs$1.readFile(absolutePath, "utf-8");
74339
+ const content = await fsPromises.readFile(absolutePath, "utf-8");
74340
74340
  const hasNew = content.includes(newText);
74341
74341
  const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
74342
74342
  if (hasNew && !stillHasOld) return {
@@ -74807,14 +74807,14 @@ function createSandboxEditOperations(params) {
74807
74807
  }
74808
74808
  async function writeHostFile(absolutePath, content) {
74809
74809
  const resolved = path.resolve(absolutePath);
74810
- await fs$1.mkdir(path.dirname(resolved), { recursive: true });
74811
- await fs$1.writeFile(resolved, content, "utf-8");
74810
+ await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
74811
+ await fsPromises.writeFile(resolved, content, "utf-8");
74812
74812
  }
74813
74813
  function createHostWriteOperations(root, options) {
74814
74814
  if (!(options?.workspaceOnly ?? false)) return {
74815
74815
  mkdir: async (dir) => {
74816
74816
  const resolved = path.resolve(dir);
74817
- await fs$1.mkdir(resolved, { recursive: true });
74817
+ await fsPromises.mkdir(resolved, { recursive: true });
74818
74818
  },
74819
74819
  writeFile: writeHostFile
74820
74820
  };
@@ -74827,7 +74827,7 @@ function createHostWriteOperations(root, options) {
74827
74827
  cwd: root,
74828
74828
  root
74829
74829
  });
74830
- await fs$1.mkdir(resolved, { recursive: true });
74830
+ await fsPromises.mkdir(resolved, { recursive: true });
74831
74831
  },
74832
74832
  writeFile: async (absolutePath, content) => {
74833
74833
  await writeFileWithinRoot({
@@ -74843,12 +74843,12 @@ function createHostEditOperations(root, options) {
74843
74843
  if (!(options?.workspaceOnly ?? false)) return {
74844
74844
  readFile: async (absolutePath) => {
74845
74845
  const resolved = path.resolve(absolutePath);
74846
- return await fs$1.readFile(resolved);
74846
+ return await fsPromises.readFile(resolved);
74847
74847
  },
74848
74848
  writeFile: writeHostFile,
74849
74849
  access: async (absolutePath) => {
74850
74850
  const resolved = path.resolve(absolutePath);
74851
- await fs$1.access(resolved);
74851
+ await fsPromises.access(resolved);
74852
74852
  }
74853
74853
  };
74854
74854
  return {
@@ -77598,7 +77598,7 @@ async function compactEmbeddedPiSessionDirect(params) {
77598
77598
  } catch (err) {
77599
77599
  return fail(describeUnknownError(err));
77600
77600
  }
77601
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
77601
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
77602
77602
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
77603
77603
  const sandbox = await resolveSandboxContext({
77604
77604
  config: params.config,
@@ -77607,7 +77607,7 @@ async function compactEmbeddedPiSessionDirect(params) {
77607
77607
  workspaceLane: params.workspaceLane
77608
77608
  });
77609
77609
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
77610
- await fs$1.mkdir(effectiveWorkspace, { recursive: true });
77610
+ await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
77611
77611
  let restoreSkillEnv;
77612
77612
  const releaseWorkspaceCwd = acquireWorkspaceCwd(effectiveWorkspace);
77613
77613
  try {
@@ -84063,7 +84063,7 @@ async function runEmbeddedAttempt(params) {
84063
84063
  let embeddedAttemptBegun = false;
84064
84064
  const runAbortController = new AbortController();
84065
84065
  log$34.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"}`);
84066
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
84066
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
84067
84067
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
84068
84068
  const toolSessionKey = params.toolSessionKey?.trim() || sandboxSessionKey;
84069
84069
  const sandbox = params.skipSandbox ? null : await resolveSandboxContext({
@@ -84073,7 +84073,7 @@ async function runEmbeddedAttempt(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
  let restoreSkillEnv;
84078
84078
  const releaseWorkspaceCwd = params.skipCwdChange ? void 0 : acquireWorkspaceCwd(effectiveWorkspace);
84079
84079
  const rawToolResultStash = openRawToolResultStash(params.sessionId);
@@ -85964,7 +85964,7 @@ async function runEmbeddedPiAgent(params) {
85964
85964
  const copilotAuthRetry = authRetryPending;
85965
85965
  authRetryPending = false;
85966
85966
  attemptedThinking.add(thinkLevel);
85967
- await fs$1.mkdir(resolvedWorkspace, { recursive: true });
85967
+ await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
85968
85968
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
85969
85969
  const attempt = await runEmbeddedAttempt({
85970
85970
  sessionId: params.sessionId,
@@ -87191,7 +87191,7 @@ async function runModelGate(spec, ctx) {
87191
87191
  const isolatedSessionId = randomNonce;
87192
87192
  const isolatedRunId = randomNonce;
87193
87193
  const tmpBaseDir = resolvePreferredOpenClawTmpDir();
87194
- tmpDir = await fs$1.mkdtemp(path.join(tmpBaseDir, "wake-gate-"));
87194
+ tmpDir = await fsPromises.mkdtemp(path.join(tmpBaseDir, "wake-gate-"));
87195
87195
  const workspaceDir = tmpDir;
87196
87196
  const prompt = spec.prompt ?? DEFAULT_MODEL_PROMPT;
87197
87197
  const timeoutMs = spec.timeoutMs ?? DEFAULT_MODEL_TIMEOUT_MS;
@@ -87249,7 +87249,7 @@ async function runModelGate(spec, ctx) {
87249
87249
  log$1.warn("model gate error", { error: err instanceof Error ? err.message : String(err) });
87250
87250
  return { wake: false };
87251
87251
  } finally {
87252
- if (tmpDir) await fs$1.rm(tmpDir, {
87252
+ if (tmpDir) await fsPromises.rm(tmpDir, {
87253
87253
  recursive: true,
87254
87254
  force: true
87255
87255
  }).catch(() => void 0);
@@ -87647,7 +87647,7 @@ async function resolveHeartbeatPreflight(params) {
87647
87647
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, params.agentId);
87648
87648
  const heartbeatFilePath = path.join(workspaceDir, DEFAULT_HEARTBEAT_FILENAME);
87649
87649
  try {
87650
- if (isHeartbeatContentEffectivelyEmpty(await fs$1.readFile(heartbeatFilePath, "utf-8"))) return {
87650
+ if (isHeartbeatContentEffectivelyEmpty(await fsPromises.readFile(heartbeatFilePath, "utf-8"))) return {
87651
87651
  ...basePreflight,
87652
87652
  skipReason: "empty-heartbeat-file"
87653
87653
  };