wednesdayai 0.5.1-dev.21 → 0.5.1-dev.23

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (443) hide show
  1. package/dist/{acp-cli-BmhbACSZ.js → acp-cli-D7pT9Bao.js} +2 -2
  2. package/dist/{acp-cli-Dblp7m2Z.js → acp-cli-DFqeyWQJ.js} +2 -2
  3. package/dist/{agent-scope-CeLIuOpq.js → agent-scope-DCgndASv.js} +3 -3
  4. package/dist/{agent-turn-enqueue-IiwTs8II.js → agent-turn-enqueue-B30hT0x-.js} +5 -5
  5. package/dist/{agent-turn-enqueue-DK8QApSV.js → agent-turn-enqueue-CI-A0Cuo.js} +5 -5
  6. package/dist/{agent-turn-execute-3cc3W1hp.js → agent-turn-execute-CFwfJKy2.js} +39 -37
  7. package/dist/{agent-turn-recovery-adapter-BkoX8bcd.js → agent-turn-recovery-adapter-DWGzJ2s-.js} +1 -1
  8. package/dist/{agent-turn-recovery-adapter-B909sIMD.js → agent-turn-recovery-adapter-TKOtg3bA.js} +1 -1
  9. package/dist/{agent-turn-runner-DUKUxZcn.js → agent-turn-runner-12Exv9CB.js} +1 -1
  10. package/dist/{agent-turn-runner-C3Buntbu.js → agent-turn-runner-Btk5sBH0.js} +1 -1
  11. package/dist/{agent-turn-runner-BglHs_p0.js → agent-turn-runner-CpsTt9uv.js} +6 -6
  12. package/dist/{agent-turn-runner-BTBy1i8Z.js → agent-turn-runner-XPJ75h7l.js} +4 -4
  13. package/dist/{agents-DJ_ssbNO.js → agents-BcHFvOHE.js} +6 -6
  14. package/dist/{agents.config-D-yD07v8.js → agents.config-C_4HsmOy.js} +1 -1
  15. package/dist/{agents.config-BcBusEWj.js → agents.config-DwW88u5f.js} +1 -1
  16. package/dist/{api-key-rotation-DQY1fynd.js → api-key-rotation-dv2YbGr8.js} +2 -2
  17. package/dist/{audio-preflight-DMq3PMsW.js → audio-preflight-Cv1eSuSU.js} +6 -6
  18. package/dist/{audio-preflight-DZdCHEnu.js → audio-preflight-DGyrDCsN.js} +7 -7
  19. package/dist/{audio-preflight-C0VnQEEN.js → audio-preflight-DKR8c6Qw.js} +7 -7
  20. package/dist/{audio-preflight-BTQmKMCZ.js → audio-preflight-DnuyzcBj.js} +29 -29
  21. package/dist/{audio-transcription-runner-C_DRSo6Z.js → audio-transcription-runner-BnmmtXUh.js} +1 -1
  22. package/dist/{audio-transcription-runner-C9Ld3zXw.js → audio-transcription-runner-CRxHRlMX.js} +1 -1
  23. package/dist/{audio-transcription-runner-BeC-knyy.js → audio-transcription-runner-DZa96tEn.js} +26 -26
  24. package/dist/{audio-transcription-runner-9GXPmTBK.js → audio-transcription-runner-DsqwKJ49.js} +1 -1
  25. package/dist/{audit-CmZAI3_9.js → audit-Dk69ufby.js} +6 -6
  26. package/dist/{audit-CH1D3iBG.js → audit-DkY9yUsn.js} +6 -6
  27. package/dist/{auth-choice-dWGUA_8g.js → auth-choice-BkWEr-Pe.js} +2 -2
  28. package/dist/{auth-choice-CEOnAk7f.js → auth-choice-kkL-bZp9.js} +2 -2
  29. package/dist/{banner-DWHiEk1H.js → banner-DOesQn79.js} +1 -1
  30. package/dist/{browser-cli-CfoUYSxy.js → browser-cli-Cy6LJQhv.js} +3 -3
  31. package/dist/{browser-cli-P7SKIutx.js → browser-cli-Mbn8pYZZ.js} +3 -3
  32. package/dist/build-info.json +3 -3
  33. package/dist/bundled/boot-md/handler.js +60 -60
  34. package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
  35. package/dist/bundled/command-logger/handler.js +2 -2
  36. package/dist/bundled/session-journal/handler.js +60 -60
  37. package/dist/bundled/session-memory/handler.js +60 -60
  38. package/dist/{call-xB0MOQUF.js → call-B1surxJJ.js} +3 -1
  39. package/dist/{call-CUY8VoHh.js → call-CsmPnXmY.js} +3 -1
  40. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  41. package/dist/{channel-activity-DoBHFita.js → channel-activity-Kn1_ykXE.js} +3 -3
  42. package/dist/{channel-options-DCKEbe7Z.js → channel-options-Am9ZvwKB.js} +1 -1
  43. package/dist/{channel-options-DfjYj7oi.js → channel-options-TBxP7o5K.js} +1 -1
  44. package/dist/{channels-cli-DrcS29Pk.js → channels-cli-3ihKjjtq.js} +33 -33
  45. package/dist/{channels-cli-DHvavLcJ.js → channels-cli-CGWblqhQ.js} +32 -32
  46. package/dist/{chat-content-hesA0q3j.js → chat-content-B_nVIplC.js} +4 -4
  47. package/dist/{chat-content-BZeW5ciD.js → chat-content-C7_U4hJq.js} +34 -34
  48. package/dist/{chrome-DZ6ejAmp.js → chrome-Bukcguhv.js} +23 -23
  49. package/dist/{chrome-C2xK35m5.js → chrome-DNh94Pjx.js} +8 -8
  50. package/dist/{chunk-DOckmOyp.js → chunk-CEygNI3g.js} +3 -3
  51. package/dist/{clawbot-cli-CLz6KuWz.js → clawbot-cli-BRicu1s1.js} +5 -5
  52. package/dist/{clawbot-cli-CzDwX-gU.js → clawbot-cli-Be313PY0.js} +5 -5
  53. package/dist/cli/daemon-cli.js +1 -1
  54. package/dist/{cli-D2tBPn1z.js → cli-BFoMFw-E.js} +28 -28
  55. package/dist/{cli-DBqTAu56.js → cli-BcIWokUA.js} +29 -29
  56. package/dist/{client-CIDXfGgo.js → client-DA6hPHoC.js} +4 -1
  57. package/dist/{client-BCYzc-y7.js → client-MNdGt1bC.js} +4 -1
  58. package/dist/{client-profiles-BaJqyqVb.js → client-profiles-BkQpgWwd.js} +1 -1
  59. package/dist/{client-profiles-DGW7rrdk.js → client-profiles-CZqoxT_J.js} +1 -1
  60. package/dist/{command-queue-uNIrlK4C.js → command-queue-BiT79iw_.js} +1 -1
  61. package/dist/{command-queue-3hrr088f.js → command-queue-C4uOOl0Z.js} +1 -1
  62. package/dist/{command-queue-D360YW1L.js → command-queue-Cd0AajLX.js} +1 -1
  63. package/dist/{command-queue-D2t-RCzv.js → command-queue-DnPEEtOJ.js} +1 -1
  64. package/dist/{command-registry-DuGYq06B.js → command-registry-CKhdmVgi.js} +13 -13
  65. package/dist/{command-secret-targets-DAtwJ6C7.js → command-secret-targets-9z88Sdd9.js} +2 -2
  66. package/dist/{command-secret-targets-j8KBmpix.js → command-secret-targets-r25GrCux.js} +2 -2
  67. package/dist/{commands-registry-CZGO6Zk0.js → commands-registry-Cof4HjvY.js} +2 -2
  68. package/dist/{completion-cli-BmLGd23K.js → completion-cli-DCm06gIy.js} +2 -2
  69. package/dist/{completion-cli-DuJJOsOD.js → completion-cli-DPC7jSts.js} +1 -1
  70. package/dist/{config-cli-DmPS8dHv.js → config-cli-DSSYHC1h.js} +1 -1
  71. package/dist/{config-cli-D7Km0W0t.js → config-cli-DzKCSgly.js} +1 -1
  72. package/dist/{configure-Cv8WHggj.js → configure-c7eXMXPC.js} +6 -6
  73. package/dist/{configure-Dp_BDe0p.js → configure-ev80kp3h.js} +6 -6
  74. package/dist/contracts/gateway-protocol.schema.json +23 -0
  75. package/dist/control-ui/assets/{dreams-5cpOLdgU.js → dreams-CFX8_iO7.js} +2 -2
  76. package/dist/control-ui/assets/{dreams-5cpOLdgU.js.map → dreams-CFX8_iO7.js.map} +1 -1
  77. package/dist/control-ui/assets/{index-D6XwnS7I.js → index-CambJeDO.js} +4 -4
  78. package/dist/control-ui/assets/{index-D6XwnS7I.js.map → index-CambJeDO.js.map} +1 -1
  79. package/dist/control-ui/assets/{learning-BORaiTQ4.js → learning-XJj58fEK.js} +2 -2
  80. package/dist/control-ui/assets/{learning-BORaiTQ4.js.map → learning-XJj58fEK.js.map} +1 -1
  81. package/dist/control-ui/assets/{view-chat-ByDyhnLw.js → view-chat-DCakYJRB.js} +3 -3
  82. package/dist/control-ui/assets/{view-chat-ByDyhnLw.js.map → view-chat-DCakYJRB.js.map} +1 -1
  83. package/dist/control-ui/index.html +1 -1
  84. package/dist/{cron-cli-DcatymNM.js → cron-cli-B7av_Qj-.js} +3 -3
  85. package/dist/{cron-cli-Bxd1ztzh.js → cron-cli-D-MXQLbx.js} +3 -3
  86. package/dist/{daemon-cli-P_665VBl.js → daemon-cli-C0X7BA3B.js} +2 -2
  87. package/dist/{daemon-cli-sdDY3Rkr.js → daemon-cli-D-zUFs16.js} +2 -2
  88. package/dist/daemon-cli.js +5 -0
  89. package/dist/{deliver-BGZedjpd.js → deliver-CD-qJ08p.js} +7 -5
  90. package/dist/{deliver-C0DKFL-c.js → deliver-CpY1AlyA.js} +29 -29
  91. package/dist/{deliver-Lga2gynK.js → deliver-Czj8jts5.js} +5 -5
  92. package/dist/{deliver-6pCupDgE.js → deliver-D3zKg0i3.js} +4 -4
  93. package/dist/{devices-cli-5NqagsuD.js → devices-cli-Bx1kF97H.js} +2 -2
  94. package/dist/{devices-cli-D6FG7yBy.js → devices-cli-D55ggw6F.js} +2 -2
  95. package/dist/{diagnostic-DBospa-B.js → diagnostic-Bu6Kxc66.js} +1 -1
  96. package/dist/{diagnostic-CdJb6i0b.js → diagnostic-BzGocbak.js} +1 -1
  97. package/dist/{diagnostic-uYRm3RAs.js → diagnostic-CKFgwhkU.js} +5 -5
  98. package/dist/{diagnostic-BP20aK6Y.js → diagnostic-CWdhJ9KR.js} +1 -1
  99. package/dist/{dm-policy-shared-C8iB_a-f.js → dm-policy-shared-JZebmiY8.js} +1 -1
  100. package/dist/{doctor-completion-BtJqYgVS.js → doctor-completion-Bx2Vu53y.js} +1 -1
  101. package/dist/{doctor-completion-Br2pHonN.js → doctor-completion-C1c_Fm0b.js} +1 -1
  102. package/dist/entry.js +2 -2
  103. package/dist/{errors-83K08uTq.js → errors-COs_vQr3.js} +1 -1
  104. package/dist/{exec-approvals-cli-DzJlH70p.js → exec-approvals-cli-RX2L6dhB.js} +4 -4
  105. package/dist/{exec-approvals-cli-D61d8hgT.js → exec-approvals-cli-U1avv2dD.js} +4 -4
  106. package/dist/extensionAPI.js +16 -16
  107. package/dist/{fetch-fObya4WR.js → fetch-B1ohBh6A.js} +8 -8
  108. package/dist/{fetch-guard-BucfWGi8.js → fetch-guard-BXzVwvnJ.js} +3 -3
  109. package/dist/{frontmatter-IfoWyoLV.js → frontmatter-Cw_6jMAR.js} +5 -5
  110. package/dist/{fs-safe-joAzTKB9.js → fs-safe-BK5ALzKD.js} +26 -26
  111. package/dist/{gateway-cli-BZFHtE2A.js → gateway-cli-CrFsVy3G.js} +53 -50
  112. package/dist/{gateway-cli-CzrTOBz5.js → gateway-cli-rJFjYA1c.js} +54 -51
  113. package/dist/{gateway-rpc-D36kXOsx.js → gateway-rpc-BArMTxJU.js} +1 -1
  114. package/dist/{gateway-rpc-hfUfa0T-.js → gateway-rpc-k1CUY-d7.js} +1 -1
  115. package/dist/github-copilot-token-DYYKoDuV.js +106 -0
  116. package/dist/{health-CVUuZRpQ.js → health-DjlQU_Tv.js} +4 -4
  117. package/dist/{health-K3ylOag4.js → health-jZPF8weC.js} +4 -4
  118. package/dist/{hooks-cli-CNlH_Ckf.js → hooks-cli-CVygK2yq.js} +30 -30
  119. package/dist/{hooks-cli-BTxvzxSG.js → hooks-cli-b4k2GboY.js} +29 -29
  120. package/dist/{image-ops-DlAa1zGf.js → image-ops-C-5VgbLB.js} +1 -1
  121. package/dist/index.js +32 -32
  122. package/dist/{ir-Cs9qeaeL.js → ir-DioI2VyB.js} +5 -5
  123. package/dist/{legacy-names-Dh4RlQMQ.js → legacy-names-CghFcfry.js} +1 -1
  124. package/dist/llm-slug-generator.js +60 -60
  125. package/dist/{logger-vVASmiVr.js → logger-J4xjy-6D.js} +1 -1
  126. package/dist/{logs-cli-ZXfvpQn5.js → logs-cli-BeLB-Xck.js} +3 -3
  127. package/dist/{logs-cli-DwpuZXwp.js → logs-cli-CvF3EIE2.js} +3 -3
  128. package/dist/{manager-CTeCpzGz.js → manager-D728Thsn.js} +18 -18
  129. package/dist/{manager-CsTeZuhu.js → manager-DCXdygsq.js} +1 -1
  130. package/dist/{manager-d_jLZwIa.js → manager-gw84UdyQ.js} +1 -1
  131. package/dist/{markdown-tables-BQLg3bjX.js → markdown-tables-DfLMw9ti.js} +2 -2
  132. package/dist/{memory-cli-C6IsfNdf.js → memory-cli-BcjjHcwL.js} +2 -2
  133. package/dist/{memory-cli-Dm4vpHAU.js → memory-cli-H4nCh_8v.js} +2 -2
  134. package/dist/{model-selection-UX4A5pdj.js → model-selection-BHGpQSa9.js} +87 -87
  135. package/dist/{models-FSASF0m5.js → models-BBZ_Tvpf.js} +3 -3
  136. package/dist/{models-cli-CqhUy9E-.js → models-cli-7V9N158Z.js} +30 -30
  137. package/dist/{models-cli-BIWkA9C9.js → models-cli-BJK0d_IM.js} +28 -28
  138. package/dist/{models-config-CNw9rdH1.js → models-config-CJUMccZW.js} +2 -2
  139. package/dist/{node-cli-BsB2z4rN.js → node-cli-BUV9i73l.js} +4 -4
  140. package/dist/{node-cli-DFxjiUT-.js → node-cli-DEVZws2K.js} +4 -4
  141. package/dist/{node-command-policy-BG0trkgo.js → node-command-policy-C0OmboTh.js} +1 -1
  142. package/dist/{node-command-policy-CVGtgIFJ.js → node-command-policy-Dbm2r7IP.js} +1 -1
  143. package/dist/{nodes-cli-BbRJxfod.js → nodes-cli-CYpc3Yvq.js} +3 -3
  144. package/dist/{nodes-cli-Cos0b-Pr.js → nodes-cli-Chp9WqRe.js} +3 -3
  145. package/dist/{npm-resolution-CwoZ0zIw.js → npm-resolution-BNpY_aOs.js} +1 -1
  146. package/dist/{npm-resolution-BKhZg_qE.js → npm-resolution-DaXE7ULy.js} +1 -1
  147. package/dist/{onboard-Bhpqg04u.js → onboard-BOhVuXUR.js} +3 -3
  148. package/dist/{onboard-qzS9Ex3E.js → onboard-C-KqZZqX.js} +3 -3
  149. package/dist/{onboard-channels-CdETO6vp.js → onboard-channels-B89jrN2Y.js} +2 -2
  150. package/dist/{onboard-channels-DqqM-gZ4.js → onboard-channels-DmJGOEPI.js} +2 -2
  151. package/dist/{onboard-helpers-CyLVkn7p.js → onboard-helpers-BHTSdqFW.js} +1 -1
  152. package/dist/{onboard-helpers-BjlBFVLF.js → onboard-helpers-DFWV67fv.js} +1 -1
  153. package/dist/{onboard-remote-BoobabMS.js → onboard-remote-BL2_Vzie.js} +1 -1
  154. package/dist/{onboard-remote-CGfCa4Gn.js → onboard-remote-aFlQukcN.js} +1 -1
  155. package/dist/{onboard-skills-qXATWBbv.js → onboard-skills-DBsUD_Fs.js} +1 -1
  156. package/dist/{onboard-skills-CA3vVftf.js → onboard-skills-fb0X7sb5.js} +1 -1
  157. package/dist/{onboarding-9F7Zrfos.js → onboarding-C6Xs7G9Y.js} +7 -7
  158. package/dist/{onboarding-B0tWDl2D.js → onboarding-DjYLPv7p.js} +7 -7
  159. package/dist/{onboarding.finalize-D-GEVbwy.js → onboarding.finalize-BzPTRheS.js} +35 -35
  160. package/dist/{onboarding.finalize-DZaf33cl.js → onboarding.finalize-Sx0H879S.js} +33 -33
  161. package/dist/{onboarding.gateway-config-D2JKnTD-.js → onboarding.gateway-config-CkoaBZS4.js} +5 -5
  162. package/dist/{onboarding.gateway-config-BjNFm5qL.js → onboarding.gateway-config-DFk1lZ7k.js} +5 -5
  163. package/dist/{operator-commands-Cak1KHXQ.js → operator-commands-CMLC3NdV.js} +2 -2
  164. package/dist/{operator-commands-QumqWQQg.js → operator-commands-DWyDwJ5E.js} +2 -2
  165. package/dist/{outbound-attachment-CFHAAdf4.js → outbound-attachment-DtVXUXnX.js} +2 -2
  166. package/dist/{outbound-message-hooks-DD51nZnK.js → outbound-message-hooks-8LGAoYF_.js} +1 -1
  167. package/dist/{outbound-message-hooks-ZPwBUN_R.js → outbound-message-hooks-CsYq3_vL.js} +1 -1
  168. package/dist/{outbound-message-hooks-WWLXsRwc.js → outbound-message-hooks-DUHpZ2aL.js} +5 -5
  169. package/dist/{outbound-message-hooks-DC75UHT4.js → outbound-message-hooks-tjGZZOYq.js} +1 -1
  170. package/dist/{path-alias-guards-BzCkdlOk.js → path-alias-guards-E9ntDORB.js} +1 -1
  171. package/dist/paths-BIDPYPVC.js +233 -0
  172. package/dist/{pi-embedded-BSXEJok2.js → pi-embedded--18wTN8q.js} +279 -272
  173. package/dist/{pi-embedded-helpers-D7uD-CgK.js → pi-embedded-helpers-Brv2iTWi.js} +2 -2
  174. package/dist/{pi-embedded-helpers-StwgdB31.js → pi-embedded-helpers-ClJpdsSV.js} +2 -2
  175. package/dist/{pi-embedded-recovery-adapter-D7px7ESy.js → pi-embedded-recovery-adapter-BEKLsxLt.js} +10 -10
  176. package/dist/{pi-embedded-recovery-adapter-CfgLn9QF.js → pi-embedded-recovery-adapter-dQZ-gtY4.js} +10 -10
  177. package/dist/{pi-embedded-utils-DjVnTKKi.js → pi-embedded-utils-C-FQE63E.js} +1 -1
  178. package/dist/{pi-embedded-utils-BjqdCUkA.js → pi-embedded-utils-C7ErjdjF.js} +3 -3
  179. package/dist/{pi-embedded-utils-B8Raycd6.js → pi-embedded-utils-CKxA8dqZ.js} +1 -1
  180. package/dist/{pi-embedded-utils-CR3tST8r.js → pi-embedded-utils-D7vaAoE6.js} +1 -1
  181. package/dist/{pi-embedded-BhsFkp5Y.js → pi-embedded-vIZchQTO.js} +42 -35
  182. package/dist/{pi-model-discovery-CQdUMRm4.js → pi-model-discovery-BaH_6win.js} +7 -7
  183. package/dist/{pi-tools.policy-DXLQHQAj.js → pi-tools.policy-BSgFR5ag.js} +1 -1
  184. package/dist/{plugin-registry-DH7Hnw6l.js → plugin-registry-CDj1s2Qo.js} +1 -1
  185. package/dist/{plugin-registry-DgIkh9ii.js → plugin-registry-CmiGMpCp.js} +1 -1
  186. package/dist/plugin-sdk/{agent-turn-execute-CW7LtXMC.js → agent-turn-execute-DRGUpyj_.js} +15 -15
  187. package/dist/plugin-sdk/{agent-turn-execute-BxdAt_ht.js → agent-turn-execute-vNMPaEsb.js} +15 -15
  188. package/dist/plugin-sdk/{agent-turn-runner-orbrCxRO.js → agent-turn-runner-B48Ac2Mq.js} +5 -5
  189. package/dist/plugin-sdk/{agent-turn-runner-sOn9sAG9.js → agent-turn-runner-CJ061NAh.js} +4 -4
  190. package/dist/plugin-sdk/{agent-turn-runner-CRaNFFTm.js → agent-turn-runner-xP1KK6u-.js} +1 -1
  191. package/dist/plugin-sdk/{audio-preflight-CBBGdhe1.js → audio-preflight-BDZ7cLko.js} +5 -5
  192. package/dist/plugin-sdk/{audio-preflight-BZXIHlnM.js → audio-preflight-COb5kXAH.js} +6 -6
  193. package/dist/plugin-sdk/{audio-preflight-CNU5kpWj.js → audio-preflight-DpIgQPUE.js} +1 -1
  194. package/dist/plugin-sdk/{audio-transcription-runner-D5dYI82C.js → audio-transcription-runner-DqbgqKuA.js} +1 -1
  195. package/dist/plugin-sdk/{audio-transcription-runner-D8y2D8k8.js → audio-transcription-runner-tMxFDdPy.js} +1 -1
  196. package/dist/plugin-sdk/{chat-content-DB5Wz2lG.js → chat-content-B4kExRGx.js} +1 -1
  197. package/dist/plugin-sdk/{chat-content-aOAkouil.js → chat-content-CmG6uniC.js} +1 -1
  198. package/dist/plugin-sdk/{command-detection-AlAuh3r9.js → command-detection-Cx5GspTs.js} +37 -30
  199. package/dist/plugin-sdk/{command-queue-JvIhb__x.js → command-queue-BrpT-5Sy.js} +1 -1
  200. package/dist/plugin-sdk/{command-queue-J8WWtdem.js → command-queue-mdn12mZN.js} +2 -2
  201. package/dist/plugin-sdk/{command-queue-DMJXMFU-.js → command-queue-uRF0EuVO.js} +1 -1
  202. package/dist/plugin-sdk/{deliver-D77qfyGv.js → deliver-CckI3OJ8.js} +4 -4
  203. package/dist/plugin-sdk/{deliver-46BXvvk5.js → deliver-D3X61EfY.js} +4 -4
  204. package/dist/plugin-sdk/{deliver-tcGRRL8s.js → deliver-DOj7WTIw.js} +5 -5
  205. package/dist/plugin-sdk/{deliver-BOyf6UPp.js → deliver-qMYtKe1O.js} +5 -5
  206. package/dist/plugin-sdk/{diagnostic-DVk1j05H.js → diagnostic-BQhPQdFK.js} +1 -1
  207. package/dist/plugin-sdk/{diagnostic-C-BgFx1S.js → diagnostic-CcNUspD1.js} +1 -1
  208. package/dist/plugin-sdk/{diagnostic-CLyicI69.js → diagnostic-I0XYqjlG.js} +1 -1
  209. package/dist/plugin-sdk/index.js +16 -16
  210. package/dist/plugin-sdk/{monitor-D9AzoNHs.js → monitor-CjGR673h.js} +36 -29
  211. package/dist/plugin-sdk/{pi-embedded-utils-Bj86frFf.js → pi-embedded-utils-BeDAZIRN.js} +1 -1
  212. package/dist/plugin-sdk/{pi-embedded-utils-gWjx_FJu.js → pi-embedded-utils-CXRILg4X.js} +1 -1
  213. package/dist/plugin-sdk/{provider-dispatcher-BkgqrySb.js → provider-dispatcher-CaEeja4a.js} +15 -15
  214. package/dist/plugin-sdk/{provider-dispatcher-RG1EJhMg.js → provider-dispatcher-CwOOkcSh.js} +15 -15
  215. package/dist/plugin-sdk/{provider-image-CK8PByo3.js → provider-image-1--b__Rf.js} +1 -1
  216. package/dist/plugin-sdk/{provider-image-BRuhIUH4.js → provider-image-CWR1baFo.js} +4 -4
  217. package/dist/plugin-sdk/{provider-image-BsvAEUj7.js → provider-image-D3L7uRQL.js} +4 -4
  218. package/dist/plugin-sdk/{provider-image-BRiO1hJO.js → provider-image-DfMOZvCj.js} +1 -1
  219. package/dist/plugin-sdk/{replies-CNJcNn1X.js → replies-Bvgbr4Gl.js} +2 -2
  220. package/dist/plugin-sdk/{replies-CmfWsSdE.js → replies-DpAL4lju.js} +2 -2
  221. package/dist/plugin-sdk/{replies-Diq1jozB.js → replies-K0SP92k3.js} +3 -3
  222. package/dist/plugin-sdk/{replies-3-6UUC2y.js → replies-S7-hIwEu.js} +3 -3
  223. package/dist/plugin-sdk/{reply-directives-C_nV536z.js → reply-directives-3w5Sb0-K.js} +1 -1
  224. package/dist/plugin-sdk/{reply-directives--THCb2vc.js → reply-directives-CCmYO5TU.js} +1 -1
  225. package/dist/plugin-sdk/{runs-CmbFSwOD.js → runs-Bh-TSTul.js} +6 -6
  226. package/dist/plugin-sdk/{runs-nP6hONs2.js → runs-Ciq2OtzT.js} +5 -5
  227. package/dist/plugin-sdk/{runs-Cu-M6Lh7.js → runs-DgLRRHnl.js} +6 -6
  228. package/dist/plugin-sdk/{runs-BU1Eppml.js → runs-lzwgSAQQ.js} +5 -5
  229. package/dist/plugin-sdk/{send-LkmFhgsK.js → send-4L6l04nt.js} +2 -2
  230. package/dist/plugin-sdk/{send-D7UktRfh.js → send-DKVsq9M4.js} +1 -1
  231. package/dist/plugin-sdk/{send-C2QGhDII.js → send-RnIEnr9s.js} +2 -2
  232. package/dist/plugin-sdk/{send-aiyKj-5V.js → send-T7FFZ4GT.js} +1 -1
  233. package/dist/plugin-sdk/{session-context-DLi5r0L8.js → session-context-Ct8StxcQ.js} +1 -1
  234. package/dist/plugin-sdk/{session-context-D79uWb-f.js → session-context-DLVW1kjd.js} +1 -1
  235. package/dist/plugin-sdk/{session-meta-DwqjC-No.js → session-meta-CjpVFrUg.js} +1 -1
  236. package/dist/plugin-sdk/{sessions-D9WFZu21.js → sessions-55u1Rz4h.js} +1 -0
  237. package/dist/plugin-sdk/{sessions-CmLCbwdv.js → sessions-DgJUTr39.js} +1 -0
  238. package/dist/plugin-sdk/src/agents/tool-display-common.d.ts +10 -0
  239. package/dist/plugin-sdk/src/gateway/protocol/index.d.ts +3 -0
  240. package/dist/plugin-sdk/src/gateway/protocol/schema/protocol-schemas.d.ts +6 -0
  241. package/dist/plugin-sdk/src/gateway/protocol/schema/sessions.d.ts +6 -0
  242. package/dist/plugin-sdk/src/gateway/protocol/schema/types.d.ts +2 -0
  243. package/dist/plugin-sdk/src/gateway/session-utils.types.d.ts +2 -0
  244. package/dist/plugin-sdk/src/shared/session-visibility.d.ts +1 -1
  245. package/dist/plugin-sdk/src/tts/tts.d.ts +2 -0
  246. package/dist/plugin-sdk/{subagent-registry-D-9HI-_X.js → subagent-registry-CfMU3EOY.js} +15 -15
  247. package/dist/plugin-sdk/{subagent-registry-CuACJDRa.js → subagent-registry-n7onkQYC.js} +15 -15
  248. package/dist/plugin-sdk/testing.js +15 -15
  249. package/dist/{plugins-cli-D2epBFli.js → plugins-cli-BfVyfDVB.js} +30 -30
  250. package/dist/{plugins-cli-YMB3dwun.js → plugins-cli-RYPupoUU.js} +29 -29
  251. package/dist/{program-context-C0OAcdai.js → program-context-Bd6intne.js} +37 -37
  252. package/dist/{program-DhncJMbr.js → program-vHNIwjM_.js} +35 -35
  253. package/dist/{prompt-select-styled-pBLBu3w7.js → prompt-select-styled-BwIQiRks.js} +11 -11
  254. package/dist/{prompt-select-styled-B0HZWrVy.js → prompt-select-styled-CvmUNFDK.js} +11 -11
  255. package/dist/{provider-image-CApPjEsW.js → provider-image-BvBYtGGJ.js} +1 -1
  256. package/dist/{provider-image-D2FrDW-X.js → provider-image-DVTuOv92.js} +6 -6
  257. package/dist/{provider-image-CAWS0JMV.js → provider-image-KmAZWQje.js} +1 -1
  258. package/dist/{provider-image-B-KFl1me.js → provider-image-n0L8CIDm.js} +1 -1
  259. package/dist/{proxy-CPi-EHQf.js → proxy-CrSpy5Aw.js} +1 -1
  260. package/dist/{proxy-env-1eta-137.js → proxy-env-BxR4m86L.js} +1 -1
  261. package/dist/{proxy-fetch-SAeVJOzX.js → proxy-fetch-g109vqdt.js} +1 -1
  262. package/dist/{push-apns-BAZsfMOy.js → push-apns--0fj47Qj.js} +2 -2
  263. package/dist/{push-apns-PAONdNH4.js → push-apns-Cb0sjE90.js} +2 -2
  264. package/dist/{pw-ai-DtPiMDW2.js → pw-ai-BJiiE3V8.js} +1 -1
  265. package/dist/{pw-ai-Czj8Ud3z.js → pw-ai-CC8qsp4R.js} +1 -1
  266. package/dist/{pw-ai-D9Y__zb9.js → pw-ai-CNTt9O_x.js} +14 -14
  267. package/dist/{pw-ai-BZjpW2LJ.js → pw-ai-DMPGyJxJ.js} +1 -1
  268. package/dist/{qmd-manager-C0SNPJNQ.js → qmd-manager-CU9iEql0.js} +12 -12
  269. package/dist/{qr-cli-DAghVVtT.js → qr-cli-B1vszJrL.js} +3 -3
  270. package/dist/{qr-cli-C8WFS-12.js → qr-cli-BZy4AXuc.js} +3 -3
  271. package/dist/{query-expansion-lPFsJzxE.js → query-expansion-B_2rETEo.js} +13 -13
  272. package/dist/{recorder-Dtl7MFGH.js → recorder-Clg9Kbqu.js} +2 -2
  273. package/dist/{recovery-adapter-CZUNVpQO.js → recovery-adapter-D3YllPfB.js} +2 -2
  274. package/dist/{recovery-adapter-CRSPS8I2.js → recovery-adapter-Dyk72MfJ.js} +2 -2
  275. package/dist/{recovery-adapter-BSdwo2OS.js → recovery-adapter-Hdhf6HDW.js} +1 -1
  276. package/dist/{recovery-adapter-BpJ8BscF.js → recovery-adapter-y0rKMaw8.js} +1 -1
  277. package/dist/{redact-Da2jd8m8.js → redact-DpE5Tg36.js} +1 -1
  278. package/dist/{register.agent-FDTmtEUr.js → register.agent-CgPP5ADX.js} +31 -31
  279. package/dist/{register.agent-C4f6rhJo.js → register.agent-DfScK2hV.js} +33 -33
  280. package/dist/{register.configure-Dv5O2Xb5.js → register.configure-C8uYH0Yy.js} +35 -35
  281. package/dist/{register.configure-Hw_sXK-z.js → register.configure-dflFJ7N_.js} +34 -34
  282. package/dist/{register.maintenance-D8jjjhHB.js → register.maintenance-DYrx2td9.js} +35 -35
  283. package/dist/{register.maintenance-DK1PJ9oQ.js → register.maintenance-DplgYMC9.js} +37 -37
  284. package/dist/{register.message-D2APO70t.js → register.message-BBQ6Wdt9.js} +29 -29
  285. package/dist/{register.message-GNpuxvGM.js → register.message-jvrIPxVV.js} +30 -30
  286. package/dist/{register.onboard-0G3JduCW.js → register.onboard-eC1JSQFQ.js} +6 -6
  287. package/dist/{register.onboard-DONtll3f.js → register.onboard-mi8eEWxH.js} +6 -6
  288. package/dist/{register.setup-Ru94mK0C.js → register.setup-DZYxFj5L.js} +6 -6
  289. package/dist/{register.setup-BhN2hAJ-.js → register.setup-F0XMwrOq.js} +6 -6
  290. package/dist/{register.status-health-sessions-cUGfN2jZ.js → register.status-health-sessions-B-IdUdif.js} +33 -33
  291. package/dist/{register.status-health-sessions-BugOGdEq.js → register.status-health-sessions-DbjCFLPT.js} +35 -35
  292. package/dist/{register.subclis-BXGoL8Qv.js → register.subclis-Dobk1vvB.js} +25 -25
  293. package/dist/{replies-qljs_NZI.js → replies-B7XXdKjN.js} +2 -2
  294. package/dist/{replies-DS1VGy4W.js → replies-BKdOqGC9.js} +5 -5
  295. package/dist/{replies-CHagfAgN.js → replies-DrGGa5se.js} +2 -2
  296. package/dist/{replies-BuO733xx.js → replies-gGgLXY8D.js} +2 -2
  297. package/dist/{reply-CqYQeNjd.js → reply-BSMDupOw.js} +38 -36
  298. package/dist/{reply-directives-CJoSirgd.js → reply-directives-Bz18fvJe.js} +1 -1
  299. package/dist/{reply-directives-DBZR0dTg.js → reply-directives-CtSqkSzr.js} +2 -2
  300. package/dist/{reply-directives-B9hX-LBz.js → reply-directives-bPMJNW1Q.js} +1 -1
  301. package/dist/{reply-directives-GcBlocvi.js → reply-directives-tE0PyBK-.js} +1 -1
  302. package/dist/{reply-prefix-DfeMrD4g.js → reply-prefix-C-DjHvQK.js} +1 -1
  303. package/dist/{resolve-route-CAuL1p_4.js → resolve-route-DKZiteo6.js} +5 -5
  304. package/dist/{rpc-DJ9VPO9A.js → rpc-BZtZb4-6.js} +1 -1
  305. package/dist/{rpc-BoZa3Ve8.js → rpc-Ft_DUdSG.js} +1 -1
  306. package/dist/{run-main-08KWAl9e.js → run-main-BJFVebkS.js} +44 -44
  307. package/dist/{runs-DRxbDl12.js → runs-BIt97Q-K.js} +9 -9
  308. package/dist/{runs-CoWBHyeo.js → runs-BUywHXga.js} +4 -4
  309. package/dist/{runs-vCw_F2ZO.js → runs-TPOj4wqX.js} +4 -4
  310. package/dist/{runs-yIaQUPae.js → runs-wDxw0TX4.js} +5 -5
  311. package/dist/{sandbox-BijP-jd2.js → sandbox-389fAlDt.js} +2 -2
  312. package/dist/{sandbox-Cf0p0qcn.js → sandbox-CEDb7iCz.js} +2 -2
  313. package/dist/{sandbox-cli-DFLg4dmY.js → sandbox-cli-BJ4Z1CEE.js} +6 -6
  314. package/dist/{sandbox-cli-B0TGsg0B.js → sandbox-cli-kfxS44rH.js} +6 -6
  315. package/dist/{secrets-cli-BoYG9Zi_.js → secrets-cli-CgpBwEA_.js} +3 -3
  316. package/dist/{secrets-cli-CL3R38dk.js → secrets-cli-DFuIPeQ8.js} +3 -3
  317. package/dist/{security-cli-BuOut78W.js → security-cli-bxcpjEyc.js} +8 -8
  318. package/dist/{security-cli-DFTi9A0s.js → security-cli-zcQ5Hc8L.js} +8 -8
  319. package/dist/{send-Bmp8wi9T.js → send-Bf4geLyV.js} +8 -8
  320. package/dist/{send-DRJrureq.js → send-Ch1ruPj9.js} +1 -1
  321. package/dist/{send-DFasc8l1.js → send-CsDSBjFo.js} +6 -6
  322. package/dist/{send-CtSLexxo.js → send-DBqe2mPq.js} +30 -30
  323. package/dist/{send-DFAmNsWX.js → send-DQvfLvpJ.js} +6 -6
  324. package/dist/{send-DSRl6F0O.js → send-bwKTbNlJ.js} +7 -7
  325. package/dist/{send-DxkjyjYg.js → send-cRef_6f-.js} +1 -1
  326. package/dist/{send-7pf6IvCv.js → send-xXKNMsLi.js} +1 -1
  327. package/dist/{server-CRI0-vWV.js → server-CggrpKmd.js} +4 -4
  328. package/dist/{server-ks1TmG7W.js → server-D7EeBwPd.js} +4 -4
  329. package/dist/{server-context-DgKj77jj.js → server-context-CV1udh3Y.js} +2 -2
  330. package/dist/{server-context-BIoSfzI_.js → server-context-Dv15RG_H.js} +2 -2
  331. package/dist/{server-lifecycle-fJG-u89x.js → server-lifecycle-BIH58Hoe.js} +1 -1
  332. package/dist/{server-lifecycle-Cd0b010a.js → server-lifecycle-D8mfFIYf.js} +1 -1
  333. package/dist/{server-node-events-Ba1YD79n.js → server-node-events-C_xoK9Xb.js} +29 -29
  334. package/dist/{server-node-events-CqQhTT1T.js → server-node-events-mxzClNCx.js} +30 -30
  335. package/dist/{session-meta-BlSJMcbU.js → session-meta-5XI6vLtM.js} +1 -1
  336. package/dist/{session-storage-B-ES9i1k.js → session-storage-269JGGQ0.js} +1 -1
  337. package/dist/{session-storage-7x9X6Db3.js → session-storage-BbpL12Su.js} +1 -1
  338. package/dist/{session-storage-owner-DLQ3vsAz.js → session-storage-owner-ClZPCWep.js} +2 -2
  339. package/dist/{session-storage-owner-1-cQlOCZ.js → session-storage-owner-M7vbUIWw.js} +2 -2
  340. package/dist/{session-utils-BeYzkx__.js → session-utils-Be7zx7oZ.js} +4 -2
  341. package/dist/{sessions-BIgPumZV.js → sessions-BV1UJJsg.js} +37 -11
  342. package/dist/{sessions-rMRfoN3f.js → sessions-CIWeBs1M.js} +1 -0
  343. package/dist/{sessions-9SvxsXWP.js → sessions-CLcDtAGY.js} +1 -0
  344. package/dist/{sessions-bZHjdfaW.js → sessions-C_dBu7XC.js} +6 -5
  345. package/dist/{sessions-CLXwtR8F.js → sessions-CpqHo_Lm.js} +37 -11
  346. package/dist/{sessions-B03PIf-m.js → sessions-D4geZIf4.js} +1 -0
  347. package/dist/{sessions-DvCgCqqN.js → sessions-DR_ebiSs.js} +2 -2
  348. package/dist/{sessions-claims-status-DMdo7H9e.js → sessions-claims-status-CCWxZ_uS.js} +2 -2
  349. package/dist/{sessions-claims-status-CJ4Z16C-.js → sessions-claims-status-DcgKqzSM.js} +2 -2
  350. package/dist/{skill-commands-RBvFNztU.js → skill-commands-CAOvM2sb.js} +8 -8
  351. package/dist/{skills-Dj2sTIvh.js → skills-VN1CJK6W.js} +21 -21
  352. package/dist/{status-D_sJaQfK.js → status-B8Al6FzI.js} +18 -18
  353. package/dist/{status-Ccz-BtS_.js → status-Cuo3rz1n.js} +18 -18
  354. package/dist/{store-WpdMrmch.js → store-HgGweM4u.js} +7 -7
  355. package/dist/{subsystem-D_zHSy02.js → subsystem-BZy3aWdW.js} +71 -71
  356. package/dist/{system-cli-BGa0j96s.js → system-cli-Ba9jGCiM.js} +3 -3
  357. package/dist/{system-cli-CnsRY21W.js → system-cli-DcjUJVa8.js} +3 -3
  358. package/dist/{tables--lm0TIoo.js → tables-DkwNUhx1.js} +1 -1
  359. package/dist/{task-pipeline-boot-BMwRQ8Fe.js → task-pipeline-boot-C1v58b1_.js} +30 -30
  360. package/dist/{task-pipeline-boot-D5tuNVHj.js → task-pipeline-boot-Kxi1hpUn.js} +29 -29
  361. package/dist/{task-runlog-retention-D0XabfJk.js → task-runlog-retention-BdLkqRCi.js} +3 -3
  362. package/dist/{task-runlog-retention-vP8bhD14.js → task-runlog-retention-CJeUxN8v.js} +3 -3
  363. package/dist/{tasks-DEye0RYH.js → tasks-BIqKTj4l.js} +2 -2
  364. package/dist/{tasks-DIa6KmEw.js → tasks-nrh4KjHH.js} +2 -2
  365. package/dist/{tokens-B3OPeQh5.js → tokens-PMai9bNL.js} +1 -1
  366. package/dist/{tool-loop-detection-ST5jhih3.js → tool-loop-detection-BqyMjpvr.js} +2 -2
  367. package/dist/{tui-YpVnb92B.js → tui-DC-J_38B.js} +3 -3
  368. package/dist/{tui-DvN9w3dz.js → tui-DrLsIQv0.js} +3 -3
  369. package/dist/{tui-cli-B9yDRbjk.js → tui-cli-CAtLTzIA.js} +7 -7
  370. package/dist/{tui-cli-DoocDTJG.js → tui-cli-De9rMj3R.js} +7 -7
  371. package/dist/{update-cli-CUltMNat.js → update-cli-BEm9qrlV.js} +38 -38
  372. package/dist/{update-cli-DzokCnPQ.js → update-cli-CGSSTKTT.js} +36 -36
  373. package/dist/{update-runner-BOwq67Zr.js → update-runner-BMCWrif2.js} +1 -1
  374. package/dist/{update-runner-B2S-ijWA.js → update-runner-BUO6D2tP.js} +1 -1
  375. package/dist/{user-run-recording--_IhK-gN.js → user-run-recording-B1HujJiT.js} +2 -2
  376. package/dist/{validation-cli-C3tmcqKI.js → validation-cli-DHwddKWw.js} +29 -29
  377. package/dist/{validation-cli-BVO3QQdD.js → validation-cli-IGbMryvI.js} +30 -30
  378. package/dist/{with-timeout-BWtea6IA.js → with-timeout-BBKlU1es.js} +2 -2
  379. package/dist/{with-timeout-i0aj653V.js → with-timeout-CkVVKMZ5.js} +2 -2
  380. package/dist/{workspace-rViTESnr.js → workspace-Bj1Jegt-.js} +27 -27
  381. package/extensions/acpx/package.json +1 -1
  382. package/extensions/anthropic/package.json +1 -1
  383. package/extensions/bifrost/package.json +1 -1
  384. package/extensions/bluebubbles/package.json +1 -1
  385. package/extensions/copilot-proxy/package.json +1 -1
  386. package/extensions/deepgram/package.json +1 -1
  387. package/extensions/deepinfra/package.json +1 -1
  388. package/extensions/diagnostics-otel/package.json +1 -1
  389. package/extensions/diffs/package.json +1 -1
  390. package/extensions/discord/package.json +1 -1
  391. package/extensions/dream-cycle/package.json +1 -1
  392. package/extensions/elevenlabs/package.json +1 -1
  393. package/extensions/feishu/package.json +1 -1
  394. package/extensions/gemini-search/package.json +1 -1
  395. package/extensions/google/package.json +1 -1
  396. package/extensions/google-gemini-cli-auth/package.json +1 -1
  397. package/extensions/googlechat/package.json +1 -1
  398. package/extensions/grok-search/package.json +1 -1
  399. package/extensions/groq/package.json +1 -1
  400. package/extensions/imessage/package.json +1 -1
  401. package/extensions/irc/package.json +1 -1
  402. package/extensions/kimi-search/package.json +1 -1
  403. package/extensions/learning-core/package.json +1 -1
  404. package/extensions/line/package.json +1 -1
  405. package/extensions/llm-task/package.json +1 -1
  406. package/extensions/lobster/package.json +1 -1
  407. package/extensions/matrix/CHANGELOG.md +1 -1
  408. package/extensions/matrix/package.json +1 -1
  409. package/extensions/mattermost/package.json +1 -1
  410. package/extensions/memory-core/package.json +1 -1
  411. package/extensions/memory-lancedb/package.json +1 -1
  412. package/extensions/minimax/package.json +1 -1
  413. package/extensions/minimax-portal-auth/package.json +1 -1
  414. package/extensions/mistral/package.json +1 -1
  415. package/extensions/moonshot/package.json +1 -1
  416. package/extensions/msteams/CHANGELOG.md +1 -1
  417. package/extensions/msteams/package.json +1 -1
  418. package/extensions/nextcloud-talk/package.json +1 -1
  419. package/extensions/nostr/CHANGELOG.md +1 -1
  420. package/extensions/nostr/package.json +1 -1
  421. package/extensions/open-prose/package.json +1 -1
  422. package/extensions/openai/package.json +1 -1
  423. package/extensions/openai-realtime/package.json +1 -1
  424. package/extensions/openrouter/package.json +1 -1
  425. package/extensions/perplexity-search/package.json +1 -1
  426. package/extensions/searxng-search/package.json +1 -1
  427. package/extensions/signal/package.json +1 -1
  428. package/extensions/slack/package.json +1 -1
  429. package/extensions/synology-chat/package.json +1 -1
  430. package/extensions/telegram/package.json +1 -1
  431. package/extensions/tlon/package.json +1 -1
  432. package/extensions/twitch/CHANGELOG.md +1 -1
  433. package/extensions/twitch/package.json +1 -1
  434. package/extensions/ui-surfaces/package.json +1 -1
  435. package/extensions/voice-call/CHANGELOG.md +1 -1
  436. package/extensions/voice-call/package.json +1 -1
  437. package/extensions/whatsapp/package.json +1 -1
  438. package/extensions/zai/package.json +1 -1
  439. package/extensions/zalo/CHANGELOG.md +1 -1
  440. package/extensions/zalo/package.json +1 -1
  441. package/extensions/zalouser/CHANGELOG.md +1 -1
  442. package/extensions/zalouser/package.json +1 -1
  443. package/package.json +1 -1
@@ -1,12 +1,12 @@
1
- import { c as resolveAgentWorkspaceDir } from "./agent-scope-CeLIuOpq.js";
2
- import { l as resolveStateDir } from "./paths-B_gs59ga.js";
3
- import { mt as resolvePreferredOpenClawTmpDir } from "./subsystem-D_zHSy02.js";
4
- import { U as loadConfig } from "./model-selection-UX4A5pdj.js";
5
- import { t as redactSensitiveText } from "./redact-Da2jd8m8.js";
6
- import { c as detectMime, l as extensionForMime } from "./image-ops-DlAa1zGf.js";
7
- import { r as formatErrorChainMessage } from "./errors-83K08uTq.js";
1
+ import { c as resolveAgentWorkspaceDir } from "./agent-scope-DCgndASv.js";
2
+ import { l as resolveStateDir } from "./paths-BIDPYPVC.js";
3
+ import { mt as resolvePreferredOpenClawTmpDir } from "./subsystem-BZy3aWdW.js";
4
+ import { U as loadConfig } from "./model-selection-BHGpQSa9.js";
5
+ import { t as redactSensitiveText } from "./redact-DpE5Tg36.js";
6
+ import { c as detectMime, l as extensionForMime } from "./image-ops-C-5VgbLB.js";
7
+ import { r as formatErrorChainMessage } from "./errors-COs_vQr3.js";
8
8
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-Cj-XaaTu.js";
9
- import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BucfWGi8.js";
9
+ import { n as withStrictGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BXzVwvnJ.js";
10
10
  import path from "node:path";
11
11
 
12
12
  //#region src/media/local-roots.ts
@@ -1,7 +1,7 @@
1
- import { i as logWarn, r as logInfo } from "./logger-vVASmiVr.js";
2
- import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-1eta-137.js";
1
+ import { i as logWarn, r as logInfo } from "./logger-J4xjy-6D.js";
2
+ import { c as resolvePinnedHostnameWithPolicy, i as createPinnedDispatcher, n as SsrFBlockedError, o as isPrivateIpAddress, r as closeDispatcher, t as hasProxyEnvConfigured } from "./proxy-env-BxR4m86L.js";
3
3
  import { t as bindAbortRelay } from "./fetch-timeout-Dyj5Y_Ss.js";
4
- import { t as isNpmUndiciDispatchingFetch } from "./proxy-fetch-SAeVJOzX.js";
4
+ import { t as isNpmUndiciDispatchingFetch } from "./proxy-fetch-g109vqdt.js";
5
5
  import { EnvHttpProxyAgent, FormData, fetch } from "undici";
6
6
 
7
7
  //#region src/infra/net/form-data.ts
@@ -1,7 +1,7 @@
1
- import { s as parseBooleanValue, t as readManifestNamespace } from "./legacy-names-Dh4RlQMQ.js";
1
+ import { s as parseBooleanValue, t as readManifestNamespace } from "./legacy-names-CghFcfry.js";
2
2
  import path from "node:path";
3
- import syncFs from "node:fs";
4
- import json5 from "json5";
3
+ import fs from "node:fs";
4
+ import JSON5 from "json5";
5
5
  import YAML from "yaml";
6
6
 
7
7
  //#region src/shared/config-eval.ts
@@ -92,7 +92,7 @@ function hasBinary(bin) {
92
92
  for (const part of parts) for (const ext of extensions) {
93
93
  const candidate = path.join(part, bin + ext);
94
94
  try {
95
- syncFs.accessSync(candidate, syncFs.constants.X_OK);
95
+ fs.accessSync(candidate, fs.constants.X_OK);
96
96
  hasBinaryCache.set(bin, true);
97
97
  return true;
98
98
  } catch {}
@@ -258,7 +258,7 @@ function resolveOpenClawManifestBlock(params) {
258
258
  const raw = getFrontmatterString(params.frontmatter, params.key ?? "metadata");
259
259
  if (!raw) return;
260
260
  try {
261
- const parsed = json5.parse(raw);
261
+ const parsed = JSON5.parse(raw);
262
262
  if (!parsed || typeof parsed !== "object") return;
263
263
  return readManifestNamespace(parsed);
264
264
  } catch {
@@ -1,11 +1,11 @@
1
- import { u as expandHomePrefix } from "./paths-B_gs59ga.js";
2
- import { B as hasNodeErrorCode, H as isPathInside, I as sameFileIdentity, U as isSymlinkOpenError, V as isNotFoundPathError } from "./subsystem-D_zHSy02.js";
3
- import { i as logWarn } from "./logger-vVASmiVr.js";
4
- import { n as assertNoPathAliasEscape } from "./path-alias-guards-BzCkdlOk.js";
1
+ import { u as expandHomePrefix } from "./paths-BIDPYPVC.js";
2
+ import { B as hasNodeErrorCode, H as isPathInside, I as sameFileIdentity, U as isSymlinkOpenError, V as isNotFoundPathError } from "./subsystem-BZy3aWdW.js";
3
+ import { i as logWarn } from "./logger-J4xjy-6D.js";
4
+ import { n as assertNoPathAliasEscape } from "./path-alias-guards-E9ntDORB.js";
5
5
  import path from "node:path";
6
6
  import { constants } from "node:fs";
7
7
  import os from "node:os";
8
- import fs from "node:fs/promises";
8
+ import fs$1 from "node:fs/promises";
9
9
  import { randomUUID } from "node:crypto";
10
10
  import { pipeline } from "node:stream/promises";
11
11
 
@@ -25,19 +25,19 @@ const ensureTrailingSep = (value) => value.endsWith(path.sep) ? value : value +
25
25
  async function expandRelativePathWithHome(relativePath) {
26
26
  let home = process.env.HOME || process.env.USERPROFILE || os.homedir();
27
27
  try {
28
- home = await fs.realpath(home);
28
+ home = await fs$1.realpath(home);
29
29
  } catch {}
30
30
  return expandHomePrefix(relativePath, { home });
31
31
  }
32
32
  async function openVerifiedLocalFile(filePath, options) {
33
33
  try {
34
- if ((await fs.lstat(filePath)).isDirectory()) throw new SafeOpenError("not-file", "not a file");
34
+ if ((await fs$1.lstat(filePath)).isDirectory()) throw new SafeOpenError("not-file", "not a file");
35
35
  } catch (err) {
36
36
  if (err instanceof SafeOpenError) throw err;
37
37
  }
38
38
  let handle;
39
39
  try {
40
- handle = await fs.open(filePath, OPEN_READ_FLAGS);
40
+ handle = await fs$1.open(filePath, OPEN_READ_FLAGS);
41
41
  } catch (err) {
42
42
  if (isNotFoundPathError(err)) throw new SafeOpenError("not-found", "file not found");
43
43
  if (isSymlinkOpenError(err)) throw new SafeOpenError("symlink", "symlink open blocked", { cause: err });
@@ -45,13 +45,13 @@ async function openVerifiedLocalFile(filePath, options) {
45
45
  throw err;
46
46
  }
47
47
  try {
48
- const [stat, lstat] = await Promise.all([handle.stat(), fs.lstat(filePath)]);
48
+ const [stat, lstat] = await Promise.all([handle.stat(), fs$1.lstat(filePath)]);
49
49
  if (lstat.isSymbolicLink()) throw new SafeOpenError("symlink", "symlink not allowed");
50
50
  if (!stat.isFile()) throw new SafeOpenError("not-file", "not a file");
51
51
  if (options?.rejectHardlinks && stat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
52
52
  if (!sameFileIdentity(stat, lstat)) throw new SafeOpenError("path-mismatch", "path changed during read");
53
- const realPath = await fs.realpath(filePath);
54
- const realStat = await fs.stat(realPath);
53
+ const realPath = await fs$1.realpath(filePath);
54
+ const realStat = await fs$1.stat(realPath);
55
55
  if (options?.rejectHardlinks && realStat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
56
56
  if (!sameFileIdentity(stat, realStat)) throw new SafeOpenError("path-mismatch", "path mismatch");
57
57
  return {
@@ -69,7 +69,7 @@ async function openVerifiedLocalFile(filePath, options) {
69
69
  async function resolvePathWithinRoot(params) {
70
70
  let rootReal;
71
71
  try {
72
- rootReal = await fs.realpath(params.rootDir);
72
+ rootReal = await fs$1.realpath(params.rootDir);
73
73
  } catch (err) {
74
74
  if (isNotFoundPathError(err)) throw new SafeOpenError("not-found", "root dir not found");
75
75
  throw err;
@@ -170,7 +170,7 @@ function buildAtomicWriteTempPath(targetPath) {
170
170
  return path.join(dir, `.${base}.${process.pid}.${randomUUID()}.tmp`);
171
171
  }
172
172
  async function writeTempFileForAtomicReplace(params) {
173
- const tempHandle = await fs.open(params.tempPath, OPEN_WRITE_CREATE_FLAGS, params.mode);
173
+ const tempHandle = await fs$1.open(params.tempPath, OPEN_WRITE_CREATE_FLAGS, params.mode);
174
174
  try {
175
175
  if (typeof params.data === "string") await tempHandle.writeFile(params.data, params.encoding ?? "utf8");
176
176
  else await tempHandle.writeFile(params.data);
@@ -180,7 +180,7 @@ async function writeTempFileForAtomicReplace(params) {
180
180
  }
181
181
  }
182
182
  async function verifyAtomicWriteResult(params) {
183
- const rootWithSep = ensureTrailingSep(await fs.realpath(params.rootDir));
183
+ const rootWithSep = ensureTrailingSep(await fs$1.realpath(params.rootDir));
184
184
  const opened = await openVerifiedLocalFile(params.targetPath, { rejectHardlinks: true });
185
185
  try {
186
186
  if (!sameFileIdentity(opened.stat, params.expectedStat)) throw new SafeOpenError("path-mismatch", "path changed during write");
@@ -191,13 +191,13 @@ async function verifyAtomicWriteResult(params) {
191
191
  }
192
192
  async function resolveOpenedFileRealPathForHandle(handle, ioPath) {
193
193
  try {
194
- return await fs.realpath(ioPath);
194
+ return await fs$1.realpath(ioPath);
195
195
  } catch (err) {
196
196
  if (!isNotFoundPathError(err)) throw err;
197
197
  }
198
198
  const fdCandidates = process.platform === "linux" ? [`/proc/self/fd/${handle.fd}`, `/dev/fd/${handle.fd}`] : process.platform === "win32" ? [] : [`/dev/fd/${handle.fd}`];
199
199
  for (const fdPath of fdCandidates) try {
200
- return await fs.realpath(fdPath);
200
+ return await fs$1.realpath(fdPath);
201
201
  } catch {}
202
202
  throw new SafeOpenError("path-mismatch", "unable to resolve opened file path");
203
203
  }
@@ -212,10 +212,10 @@ async function openWritableFileWithinRoot(params) {
212
212
  } catch (err) {
213
213
  throw new SafeOpenError("invalid-path", "path alias escape blocked", { cause: err });
214
214
  }
215
- if (params.mkdir !== false) await fs.mkdir(path.dirname(resolved), { recursive: true });
215
+ if (params.mkdir !== false) await fs$1.mkdir(path.dirname(resolved), { recursive: true });
216
216
  let ioPath = resolved;
217
217
  try {
218
- const resolvedRealPath = await fs.realpath(resolved);
218
+ const resolvedRealPath = await fs$1.realpath(resolved);
219
219
  if (!isPathInside(rootWithSep, resolvedRealPath)) throw new SafeOpenError("outside-workspace", "file is outside workspace root");
220
220
  ioPath = resolvedRealPath;
221
221
  } catch (err) {
@@ -227,10 +227,10 @@ async function openWritableFileWithinRoot(params) {
227
227
  let createdForWrite = false;
228
228
  try {
229
229
  try {
230
- handle = await fs.open(ioPath, OPEN_WRITE_EXISTING_FLAGS, fileMode);
230
+ handle = await fs$1.open(ioPath, OPEN_WRITE_EXISTING_FLAGS, fileMode);
231
231
  } catch (err) {
232
232
  if (!isNotFoundPathError(err)) throw err;
233
- handle = await fs.open(ioPath, OPEN_WRITE_CREATE_FLAGS, fileMode);
233
+ handle = await fs$1.open(ioPath, OPEN_WRITE_CREATE_FLAGS, fileMode);
234
234
  createdForWrite = true;
235
235
  }
236
236
  } catch (err) {
@@ -244,7 +244,7 @@ async function openWritableFileWithinRoot(params) {
244
244
  if (!stat.isFile()) throw new SafeOpenError("invalid-path", "path is not a regular file under root");
245
245
  if (stat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
246
246
  try {
247
- const lstat = await fs.lstat(ioPath);
247
+ const lstat = await fs$1.lstat(ioPath);
248
248
  if (lstat.isSymbolicLink() || !lstat.isFile()) throw new SafeOpenError("invalid-path", "path is not a regular file under root");
249
249
  if (!sameFileIdentity(stat, lstat)) throw new SafeOpenError("path-mismatch", "path changed during write");
250
250
  } catch (err) {
@@ -252,7 +252,7 @@ async function openWritableFileWithinRoot(params) {
252
252
  }
253
253
  const realPath = await resolveOpenedFileRealPathForHandle(handle, ioPath);
254
254
  openedRealPath = realPath;
255
- const realStat = await fs.stat(realPath);
255
+ const realStat = await fs$1.stat(realPath);
256
256
  if (!sameFileIdentity(stat, realStat)) throw new SafeOpenError("path-mismatch", "path mismatch");
257
257
  if (realStat.nlink > 1) throw new SafeOpenError("invalid-path", "hardlinked path not allowed");
258
258
  if (!isPathInside(rootWithSep, realPath)) throw new SafeOpenError("outside-workspace", "file is outside workspace root");
@@ -267,7 +267,7 @@ async function openWritableFileWithinRoot(params) {
267
267
  const cleanupCreatedPath = createdForWrite && err instanceof SafeOpenError;
268
268
  const cleanupPath = openedRealPath ?? ioPath;
269
269
  await handle.close().catch(() => {});
270
- if (cleanupCreatedPath) await fs.rm(cleanupPath, { force: true }).catch(() => {});
270
+ if (cleanupCreatedPath) await fs$1.rm(cleanupPath, { force: true }).catch(() => {});
271
271
  throw err;
272
272
  }
273
273
  }
@@ -290,7 +290,7 @@ async function writeFileWithinRoot(params) {
290
290
  encoding: params.encoding,
291
291
  mode: targetMode || 384
292
292
  });
293
- await fs.rename(tempPath, destinationPath);
293
+ await fs$1.rename(tempPath, destinationPath);
294
294
  tempPath = null;
295
295
  try {
296
296
  await verifyAtomicWriteResult({
@@ -303,7 +303,7 @@ async function writeFileWithinRoot(params) {
303
303
  throw err;
304
304
  }
305
305
  } finally {
306
- if (tempPath) await fs.rm(tempPath, { force: true }).catch(() => {});
306
+ if (tempPath) await fs$1.rm(tempPath, { force: true }).catch(() => {});
307
307
  }
308
308
  }
309
309
  async function copyFileWithinRoot(params) {
@@ -331,7 +331,7 @@ async function copyFileWithinRoot(params) {
331
331
  });
332
332
  await pipeline(sourceStream, targetStream);
333
333
  } catch (err) {
334
- if (target?.createdForWrite) await fs.rm(target.openedRealPath, { force: true }).catch(() => {});
334
+ if (target?.createdForWrite) await fs$1.rm(target.openedRealPath, { force: true }).catch(() => {});
335
335
  throw err;
336
336
  } finally {
337
337
  if (!sourceClosedByStream) await source.handle.close().catch(() => {});
@@ -2,7 +2,7 @@ import { g as resolveStateDir, i as isNixMode, r as STATE_DIR, t as CONFIG_PATH,
2
2
  import { $ as readLoggingConfig, A as setVerbose, C as truncateUtf16Safe, F as isRich, I as theme, K as resolveFileLogProfile, L as getChildLogger, P as colorize, R as getLogger, W as appendFileLog, c as ensureDir, dt as openBoundaryFileSync, ft as openVerifiedFileSync, g as resolveUserPath, pt as sameFileIdentity, t as CONFIG_DIR, ut as openBoundaryFile, vt as isNotFoundPathError, y as shortenHomePath, yt as isPathInside, z as getResolvedLoggerSettings } from "./utils-RlDPCeiE.js";
3
3
  import { t as isPlainObject } from "./plain-object-CLm2c5Nu.js";
4
4
  import { d as supportsXHighThinking, l as normalizeVerboseLevel, s as normalizeThinkLevel } from "./thinking-DDIdpLYh.js";
5
- import { $ as emitGatewayRestart, $n as OPENAI_TTS_VOICES, $t as runWithModelFallback, A as setHeartbeatsEnabled, An as resetDirectoryCache, Ar as resolveInputFileLimits, B as snapshotRunPendingWrites, Bt as handleSlackHttpRequest, C as runSubagentAnnounceFlow, Cn as ensureOutboundSessionEntry, Cr as DEFAULT_INPUT_IMAGE_MAX_BYTES, Ct as clearPluginRegistryCaches, D as resolveHeartbeatSummaryForAgent, Dn as resolveSessionDeliveryTarget, Dr as extractFileContentFromSource, Dt as createPluginRuntime, E as resolveHeartbeatConfig, En as resolveOutboundTarget, Er as DEFAULT_INPUT_TIMEOUT_MS, Et as takePendingActivationMigration, F as onHeartbeatEvent, G as buildDefaultToolPolicyPipelineSteps, Gn as resolveTtsAutoMode, Gt as agentCommandFromIngress, Hn as isTtsEnabled, Ht as requestBodyErrorToText, I as redactSensitiveHeartbeatEvent, J as readLatestAssistantReply, Jn as resolveTtsProviderOrder, Jt as createOutboundSendDeps, Kn as resolveTtsConfig, Kt as resolveAgentDeliveryPlan, L as isCronSystemEvent, Ln as setTaskPipelineStatus, M as runWakeGate, Mn as isAbortRequestText, Mr as checkWorkspaceLaneAdmission, N as resolveHeartbeatVisibility, Nr as resolveWorkspaceLaneConfig, O as runHeartbeatOnce, On as resolveOutboundChannelPlugin, Or as extractImageContentFromSource, Ot as requestNudge, P as getLastHeartbeatEvent, Pr as resolveAgentTimeoutMs, Q as deferGatewayRestartUntilIdle, Qn as OPENAI_TTS_MODELS, Qt as createOutboundSendDeps$1, R as resolveCronSession, Rn as DEFAULT_MAX_PARALLEL, Rt as resolveAgentOutboundIdentity, Sr as resolveSendPolicy, St as resolvePluginTools, T as runMainAgentTurn, Tn as resolveHeartbeatDeliveryTarget, Tr as DEFAULT_INPUT_MAX_REDIRECTS, Tt as loadOpenClawPlugins, U as resolveExecConfig, Un as isTtsProviderConfigured, V as waitForPendingWrites, Vn as getTtsProvider, Vt as readJsonBodyWithLimit, W as applyToolPolicyPipeline, Wn as resolveTtsApiKey, Xn as setTtsProvider, Y as resolveAnnounceTargetFromKey, Yn as setTtsEnabled, Z as consumeGatewaySigusr1RestartAuthorization, Zn as textToSpeech, Zt as createDefaultDeps, _ as loadSessionUsageTimeSeries, _t as hasLegacyDeliveryHints, ar as parseLeadingStamps, at as triggerOpenClawRestart, b as initSubagentRegistry, bn as createReplyDispatcher, br as getSessionBindingService, bt as persistBrowserProxyFiles, c as resolveChannelAccountEnabled, cr as resolveSessionLane, ct as formatRestartSentinelMessage, dn as buildSafeExternalPrompt, dr as isSystemEventContextChanged, en as getCliSessionId, er as clearSessionQueues, et as isGatewaySigusr1RestartExternallyAllowed, fn as detectSuspiciousPatterns, ft as writeRestartSentinel, g as loadSessionLogs, gn as buildHistoryContextFromEntries, gt as buildDeliveryFromLegacyPayload, h as loadSessionCostSummary, hr as requestHeartbeatNow, ht as migrateLegacyCronPayload, ir as stripHeartbeatToken, it as setPreRestartDeferralCheck, j as startHeartbeatRunner, jn as notifyInterruptedRuns, jr as WorkspaceLaneDeniedError, jt as loadProviderUsageSummary, kr as normalizeMimeList, l as BARE_SESSION_RESET_PROMPT, lr as ToolInputError, m as loadCostUsageSummary, mn as isExternalHookSession, mt as normalizeCronJobPatch, n as buildWorkspaceLaneActor, nn as runCliAgent, nr as removeQueuedFollowupRun, nt as scheduleGatewaySigusr1Restart, on as resolveSessionAuthProfileOverride, or as stripLeadingStamps, ot as consumeRestartSentinel, p as discoverAllSessions, pn as getHookType, pt as normalizeCronJobCreate, q as createOpenClawTools, qn as resolveTtsPrefsPath, qt as resolveAgentOutboundTarget, r as formatWorkspaceLaneDeniedNotice, rr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, rt as setGatewaySigusr1RestartPolicy, sn as resolveAgentAvatar, sr as stripLeadingStampsFlush, st as formatDoctorNonInteractiveHint, tn as setCliSessionId, tr as getExistingFollowupQueue, tt as markGatewaySigusr1RestartHandled, ur as enqueueSystemEvent, ut as summarizeRestartSentinel, vn as dispatchInboundMessage, vr as ACP_SESSION_IDENTITY_RENDERER_VERSION, vt as stripLegacyDeliveryFields, wn as resolveOutboundSessionRoute, wr as DEFAULT_INPUT_IMAGE_MIMES, wt as getLoadedAnalysisConcurrency, x as listDescendantRunsForRequester, xn as getTotalPendingReplies, xt as getPluginToolMeta, y as countActiveDescendantRuns, yn as setDispatchInboundAdmissionRejectionFor, yr as isAcpEnabledByPolicy, yt as applyBrowserProxyPaths, z as runEmbeddedPiAgent, zn as resolveUserTimezone } from "./reply-CqYQeNjd.js";
5
+ import { $ as emitGatewayRestart, $n as OPENAI_TTS_VOICES, $t as runWithModelFallback, A as setHeartbeatsEnabled, An as resetDirectoryCache, Ar as resolveInputFileLimits, B as snapshotRunPendingWrites, Bt as handleSlackHttpRequest, C as runSubagentAnnounceFlow, Cn as ensureOutboundSessionEntry, Cr as DEFAULT_INPUT_IMAGE_MAX_BYTES, Ct as clearPluginRegistryCaches, D as resolveHeartbeatSummaryForAgent, Dn as resolveSessionDeliveryTarget, Dr as extractFileContentFromSource, Dt as createPluginRuntime, E as resolveHeartbeatConfig, En as resolveOutboundTarget, Er as DEFAULT_INPUT_TIMEOUT_MS, Et as takePendingActivationMigration, F as onHeartbeatEvent, G as buildDefaultToolPolicyPipelineSteps, Gn as resolveTtsAutoMode, Gt as agentCommandFromIngress, Hn as isTtsEnabled, Ht as requestBodyErrorToText, I as redactSensitiveHeartbeatEvent, J as readLatestAssistantReply, Jn as resolveTtsProviderOrder, Jt as createOutboundSendDeps, Kn as resolveTtsConfig, Kt as resolveAgentDeliveryPlan, L as isCronSystemEvent, Ln as setTaskPipelineStatus, M as runWakeGate, Mn as isAbortRequestText, Mr as checkWorkspaceLaneAdmission, N as resolveHeartbeatVisibility, Nr as resolveWorkspaceLaneConfig, O as runHeartbeatOnce, On as resolveOutboundChannelPlugin, Or as extractImageContentFromSource, Ot as requestNudge, P as getLastHeartbeatEvent, Pr as resolveAgentTimeoutMs, Q as deferGatewayRestartUntilIdle, Qn as OPENAI_TTS_MODELS, Qt as createOutboundSendDeps$1, R as resolveCronSession, Rn as DEFAULT_MAX_PARALLEL, Rt as resolveAgentOutboundIdentity, Sr as resolveSendPolicy, St as resolvePluginTools, T as runMainAgentTurn, Tn as resolveHeartbeatDeliveryTarget, Tr as DEFAULT_INPUT_MAX_REDIRECTS, Tt as loadOpenClawPlugins, U as resolveExecConfig, Un as isTtsProviderConfigured, V as waitForPendingWrites, Vn as getTtsProvider, Vt as readJsonBodyWithLimit, W as applyToolPolicyPipeline, Wn as resolveTtsApiKey, Xn as setTtsProvider, Y as resolveAnnounceTargetFromKey, Yn as setTtsEnabled, Z as consumeGatewaySigusr1RestartAuthorization, Zn as textToSpeech, Zt as createDefaultDeps, _ as loadSessionUsageTimeSeries, _t as hasLegacyDeliveryHints, ar as parseLeadingStamps, at as triggerOpenClawRestart, b as initSubagentRegistry, bn as createReplyDispatcher, br as getSessionBindingService, bt as persistBrowserProxyFiles, c as resolveChannelAccountEnabled, cr as resolveSessionLane, ct as formatRestartSentinelMessage, dn as buildSafeExternalPrompt, dr as isSystemEventContextChanged, en as getCliSessionId, er as clearSessionQueues, et as isGatewaySigusr1RestartExternallyAllowed, fn as detectSuspiciousPatterns, ft as writeRestartSentinel, g as loadSessionLogs, gn as buildHistoryContextFromEntries, gt as buildDeliveryFromLegacyPayload, h as loadSessionCostSummary, hr as requestHeartbeatNow, ht as migrateLegacyCronPayload, ir as stripHeartbeatToken, it as setPreRestartDeferralCheck, j as startHeartbeatRunner, jn as notifyInterruptedRuns, jr as WorkspaceLaneDeniedError, jt as loadProviderUsageSummary, kr as normalizeMimeList, l as BARE_SESSION_RESET_PROMPT, lr as ToolInputError, m as loadCostUsageSummary, mn as isExternalHookSession, mt as normalizeCronJobPatch, n as buildWorkspaceLaneActor, nn as runCliAgent, nr as removeQueuedFollowupRun, nt as scheduleGatewaySigusr1Restart, on as resolveSessionAuthProfileOverride, or as stripLeadingStamps, ot as consumeRestartSentinel, p as discoverAllSessions, pn as getHookType, pt as normalizeCronJobCreate, q as createOpenClawTools, qn as resolveTtsPrefsPath, qt as resolveAgentOutboundTarget, r as formatWorkspaceLaneDeniedNotice, rr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, rt as setGatewaySigusr1RestartPolicy, sn as resolveAgentAvatar, sr as stripLeadingStampsFlush, st as formatDoctorNonInteractiveHint, tn as setCliSessionId, tr as getExistingFollowupQueue, tt as markGatewaySigusr1RestartHandled, ur as enqueueSystemEvent, ut as summarizeRestartSentinel, vn as dispatchInboundMessage, vr as ACP_SESSION_IDENTITY_RENDERER_VERSION, vt as stripLegacyDeliveryFields, wn as resolveOutboundSessionRoute, wr as DEFAULT_INPUT_IMAGE_MIMES, wt as getLoadedAnalysisConcurrency, x as listDescendantRunsForRequester, xn as getTotalPendingReplies, xt as getPluginToolMeta, y as countActiveDescendantRuns, yn as setDispatchInboundAdmissionRejectionFor, yr as isAcpEnabledByPolicy, yt as applyBrowserProxyPaths, z as runEmbeddedPiAgent, zn as resolveUserTimezone } from "./reply-BSMDupOw.js";
6
6
  import { A as resolveDefaultAgentWorkspaceDir, C as DEFAULT_SOUL_FILENAME, E as ensureAgentWorkspace, M as matchesSkillFilter, O as isWorkspaceOnboardingCompleted, S as DEFAULT_MEMORY_FILENAME, T as DEFAULT_USER_FILENAME, a as resolveAgentDir, b as DEFAULT_IDENTITY_FILENAME, c as resolveAgentModelFallbacksOverride, d as resolveDefaultAgentId, g as DEFAULT_AGENTS_FILENAME, i as resolveAgentConfig, j as resolveWorkspaceTemplateDir, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, n as listAgentEntries, r as listAgentIds, u as resolveAgentWorkspaceDir, v as DEFAULT_BOOTSTRAP_FILENAME, w as DEFAULT_TOOLS_FILENAME, x as DEFAULT_MEMORY_ALT_FILENAME, y as DEFAULT_HEARTBEAT_FILENAME } from "./agent-scope-BKt9T-GX.js";
7
7
  import { m as defaultRuntime, n as runtimeForLogger, o as setConsoleSubsystemFilter, s as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-Cwzs7yN0.js";
8
8
  import { B as isSubagentSessionKey, D as toDeviceSenderId, E as toAgentStoreSessionKey, L as isCronRunSessionKey, O as DEFAULT_ACCOUNT_ID, T as toAgentRequestSessionKey, V as parseAgentSessionKey, _ as resolveAgentIdFromSessionKey, a as buildAgentMainSessionKey, b as resolveDeviceIdentity, g as resolveAgentIdFromQualifiedSessionKey, k as normalizeAccountId$1, m as normalizeMainKey, p as normalizeAgentId, s as classifySessionKeyShape, t as DEFAULT_AGENT_ID, x as resolveLinkedPeerIdForChannel, y as resolveConfiguredCanonicalIdentity } from "./session-key-AbnCDH5g.js";
@@ -22,21 +22,21 @@ import "./send-Ciya0KBU.js";
22
22
  import "./send-B0cLjB1a.js";
23
23
  import { n as assertNoPathAliasEscape } from "./path-alias-guards-i_OY-fQZ.js";
24
24
  import { i as openFileWithinRoot, l as writeFileWithinRoot, s as readLocalFileSafely, t as SafeOpenError } from "./fs-safe-DGEzvx_b.js";
25
- import { D as normalizeMediaProviderId, E as listAutoDetectableProviders, T as getProviderDeclaredEnvVars, c as transcribeBufferedPcmWithMediaUnderstanding, g as registerUnhandledRejectionHandler, n as buildProviderRegistry, x as resolveModelEntries, y as resolveCapabilityConfig } from "./audio-transcription-runner-9GXPmTBK.js";
25
+ import { D as normalizeMediaProviderId, E as listAutoDetectableProviders, T as getProviderDeclaredEnvVars, c as transcribeBufferedPcmWithMediaUnderstanding, g as registerUnhandledRejectionHandler, n as buildProviderRegistry, x as resolveModelEntries, y as resolveCapabilityConfig } from "./audio-transcription-runner-DsqwKJ49.js";
26
26
  import { t as fetchWithSsrFGuard } from "./fetch-guard-DYe45tfU.js";
27
27
  import { t as SsrFBlockedError } from "./ssrf-BT-nDwMe.js";
28
28
  import "./proxy-fetch-cvrj6tRR.js";
29
29
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-CNiEVKpL.js";
30
- import "./pi-embedded-helpers-StwgdB31.js";
30
+ import "./pi-embedded-helpers-ClJpdsSV.js";
31
31
  import "./local-roots-DsI-jgiH.js";
32
32
  import { c as detectMime } from "./image-ops-C1n6sFa0.js";
33
- import { a as testRegexWithBoundedInput, i as compileSafeRegex } from "./redact-DVtH5RKp.js";
33
+ import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-DVtH5RKp.js";
34
34
  import { i as formatErrorMessage, o as hasErrnoCode, r as formatErrorChainMessage, s as isErrno } from "./errors-DsWFNWeE.js";
35
35
  import "./models-config-CjZ8V2xB.js";
36
36
  import { n as loadModelCatalog } from "./model-catalog-DkNCpXw1.js";
37
37
  import { t as extractTextFromChatContent } from "./chat-content-gNeiRVLV.js";
38
- import "./pi-embedded-utils-DjVnTKKi.js";
39
- import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-BijP-jd2.js";
38
+ import "./pi-embedded-utils-C-FQE63E.js";
39
+ import { C as resolveToolProfilePolicy, _ as collectExplicitAllowlist, y as mergeAlsoAllowPolicy } from "./sandbox-389fAlDt.js";
40
40
  import { i as listCoreToolSections, n as PROFILE_OPTIONS, o as resolveCoreToolProfiles } from "./tool-catalog-G7vTo5xu.js";
41
41
  import { i as resolveRelayAuthTokenForPort, n as resolveGatewayRelayToken } from "./extension-relay-auth-B0B6O1Uy.js";
42
42
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-C87iDP6E.js";
@@ -44,7 +44,7 @@ import { t as safeEqualSecret } from "./secret-equal-BDnm9uDO.js";
44
44
  import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-B-txZJue.js";
45
45
  import { c as normalizeHostHeader, d as resolveGatewayBindHost, f as resolveGatewayListenHosts, i as isLoopbackHost, l as pickPrimaryLanIPv4, n as isLocalishHost, o as isTrustedProxyAddress, r as isLoopbackAddress, s as isValidIPv4, t as rawDataToString, u as resolveClientIp } from "./ws-4CDyA3Kv.js";
46
46
  import { a as isDirectLoopbackProvenance, c as AUTH_RATE_LIMIT_SCOPE_BROWSER_EXTENSION, d as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, f as createAuthRateLimiter, i as captureTransportProvenance, l as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, n as authorizeHttpGatewayConnect, o as isLocalDirectRequest, p as normalizeRateLimitClientIp, r as authorizeWsControlUiGatewayConnect, s as resolveGatewayAuth, t as assertGatewayAuthConfigured, u as AUTH_RATE_LIMIT_SCOPE_HOOK_AUTH } from "./auth-DI9lJ6zs.js";
47
- import { o as ensureGatewayStartupAuth, s as mergeGatewayTailscaleConfig } from "./server-context-DgKj77jj.js";
47
+ import { o as ensureGatewayStartupAuth, s as mergeGatewayTailscaleConfig } from "./server-context-CV1udh3Y.js";
48
48
  import { d as hasBinary } from "./frontmatter-CG_iFu2b.js";
49
49
  import { i as loadWorkspaceSkillEntries, r as buildWorkspaceSkillSnapshot } from "./skills-tp4zKf2h.js";
50
50
  import "./store-Y2ec77yA.js";
@@ -54,7 +54,7 @@ import { a as inspectPortUsage, l as formatPortDiagnostics, r as ensurePortAvail
54
54
  import "./server-middleware-DoOMQ70B.js";
55
55
  import { n as readJsonFile, r as writeJsonAtomic, t as createAsyncLock } from "./json-files-XjEDt0Xv.js";
56
56
  import { B as PASS_METRICS_MAX_BYTES, H as isPassIdentifier, R as PASS_ITEMS_MAX_KEYS, U as onRunInvalidation, X as decodeKeysetCursor, Z as encodeKeysetCursor, on as formatMessageStamp, r as resolveSessionStorageConfig, vn as deriveSessionTotalTokens, yn as hasNonzeroUsage, z as PASS_MEASUREMENT_SCHEMA_VERSION } from "./storage-config-Bb2blXv4.js";
57
- import { $ as resolveAgentMainSessionKey, J as stripInlineDirectiveTagsForDisplay, Q as canonicalizeMainSessionAlias, S as runGlobalGatewayStopSafely, Y as stripInlineDirectiveTagsFromMessageForDisplay, et as resolveExplicitAgentSessionKey, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as hydrateAndAppendToBackend, t as extractDeliveryInfo, tt as resolveMainSessionKey, v as getGlobalHookRunner, x as resetGlobalHookRunner, y as getGlobalPluginRegistry } from "./sessions-B03PIf-m.js";
57
+ import { $ as resolveAgentMainSessionKey, J as stripInlineDirectiveTagsForDisplay, Q as canonicalizeMainSessionAlias, S as runGlobalGatewayStopSafely, Y as stripInlineDirectiveTagsFromMessageForDisplay, et as resolveExplicitAgentSessionKey, n as parseSessionThreadInfo, nt as resolveMainSessionKeyFromConfig, o as hydrateAndAppendToBackend, t as extractDeliveryInfo, tt as resolveMainSessionKey, v as getGlobalHookRunner, x as resetGlobalHookRunner, y as getGlobalPluginRegistry } from "./sessions-D4geZIf4.js";
58
58
  import "./reset-Bf7dzoZP.js";
59
59
  import { n as isDiagnosticsEnabled, r as onDiagnosticEvent, t as emitDiagnosticEvent } from "./diagnostic-events-QbXid8kq.js";
60
60
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-DhZrIgLm.js";
@@ -63,25 +63,25 @@ import "./task-run-types-EDIBPHtM.js";
63
63
  import { i as clientResumeRecordArtifactId, o as isVerificationStoreError, t as CLIENT_RESUME_RECORD_KIND } from "./verification-store-qIw75jzg.js";
64
64
  import { i as normalizeInputProvenance } from "./input-provenance-qgaZGYuK.js";
65
65
  import { r as resolveToolDisplay } from "./tool-display-CVHw51hW.js";
66
- import "./provider-image-CApPjEsW.js";
66
+ import "./provider-image-BvBYtGGJ.js";
67
67
  import "./api-key-rotation-T3SeghpQ.js";
68
68
  import "./pi-model-discovery-BfjL_ZsW.js";
69
69
  import { i as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-DGB4x7VE.js";
70
- import { A as computeBackoff, D as jsonUtf8Bytes, O as lookupContextTokens, S as stripEnvelopeFromMessages, _ as resolveSessionModelRef, c as canonicalizeSpawnedByForAgent, g as resolveGatewaySessionStoreTarget, h as pruneLegacyStoreKeys, j as sleepWithAbort, m as loadSessionEntry, o as normalizeReplyPayloadsForDelivery, p as loadCombinedSessionStoreForGateway, s as stampReplyActivity, t as deliverOutboundPayloads, u as listAgentsForGateway, v as resolveSessionStoreKey, x as stripEnvelopeFromMessage, y as capArrayByJsonBytes } from "./deliver-BGZedjpd.js";
70
+ import { A as computeBackoff, D as jsonUtf8Bytes, O as lookupContextTokens, S as stripEnvelopeFromMessages, _ as resolveSessionModelRef, c as canonicalizeSpawnedByForAgent, g as resolveGatewaySessionStoreTarget, h as pruneLegacyStoreKeys, j as sleepWithAbort, m as loadSessionEntry, o as normalizeReplyPayloadsForDelivery, p as loadCombinedSessionStoreForGateway, s as stampReplyActivity, t as deliverOutboundPayloads, u as listAgentsForGateway, v as resolveSessionStoreKey, x as stripEnvelopeFromMessage, y as capArrayByJsonBytes } from "./deliver-CD-qJ08p.js";
71
71
  import { r as isRestartEnabled } from "./commands-DWbl2kpP.js";
72
72
  import "./commands-registry-D7yTZHJ-.js";
73
73
  import { t as redactIdentifier } from "./redact-identifier-S29WK2by.js";
74
- import { A as setActiveRunProbe, M as stopDiagnosticHeartbeat, j as startDiagnosticHeartbeat, k as resolveStuckSessionWarnMs, t as clearActiveRunProbe } from "./diagnostic-CdJb6i0b.js";
74
+ import { A as setActiveRunProbe, M as stopDiagnosticHeartbeat, j as startDiagnosticHeartbeat, k as resolveStuckSessionWarnMs, t as clearActiveRunProbe } from "./diagnostic-BzGocbak.js";
75
75
  import { u as snapshotActiveRuns } from "./diagnostic-session-state-KqTjDAKe.js";
76
76
  import { t as CommandLane } from "./lanes-BESSOwBL.js";
77
- import { _ as waitForActiveTasks, g as setGatewayDrainState, h as setCommandLaneConcurrency, m as resetAllLanes, n as CommandLaneClearedError, o as enqueueCommandInLane, p as markGatewayDraining, r as GatewayDrainingError, s as getActiveTaskCount, u as getTotalQueueSize } from "./command-queue-3hrr088f.js";
77
+ import { _ as waitForActiveTasks, g as setGatewayDrainState, h as setCommandLaneConcurrency, m as resetAllLanes, n as CommandLaneClearedError, o as enqueueCommandInLane, p as markGatewayDraining, r as GatewayDrainingError, s as getActiveTaskCount, u as getTotalQueueSize } from "./command-queue-C4uOOl0Z.js";
78
78
  import "./user-run-recording-DwTzVwQo.js";
79
79
  import { a as resolveSessionRunStore, t as createSessionRunRecorder } from "./recorder-BY6ZM_aZ.js";
80
80
  import { t as getGatewayInstanceId } from "./gateway-instance-id-Sk1z_oZM.js";
81
81
  import { t as withTimeout } from "./with-timeout-6kjlWo_e.js";
82
- import { a as resolveAgentSessionDirs, t as getAcpSessionManager } from "./manager-CsTeZuhu.js";
83
- import { $ as validateGlanceWidgetsListParams, $n as rotateDeviceToken, $t as validateSkillsUpdateParams, A as validateConfigSetParams, An as validateWizardStatusParams, At as validateSessionsMaintenanceRunParams, B as validateDeviceIdentityUnlinkParams, Bn as normalizeDeviceMetadataForAuth, C as validateChatSurfacesGetParams, Cn as validateUpdateRunParams, D as validateConfigGetParams, Dn as validateWizardCancelParams, E as validateConfigApplyParams, En as validateWebLoginWaitParams, F as validateCronRunParams, Fn as errorShape, G as validateDeviceTokenRevokeParams, Gn as ensureDeviceToken, Gt as validateSessionsStorageStatusParams, H as validateDevicePairListParams, Hn as approveBootstrapDevicePairing, Ht as validateSessionsSteerParams, I as validateCronRunsParams, J as validateExecApprovalResolveParams, Jn as listDevicePairing, Jt as validateSessionsTitlePrepareParams, K as validateDeviceTokenRotateParams, Kn as getPairedDevice, Kt as validateSessionsStorageValidateParams, L as validateCronStatusParams, M as validateCronAddParams, Mn as RUNS_INVALIDATED_EVENT, N as validateCronListParams, O as validateConfigPatchParams, On as validateWizardNextParams, P as validateCronRemoveParams, Pn as ErrorCodes, Q as validateExecApprovalsSetParams, Qn as revokeDeviceToken, Qt as validateSkillsStatusParams, R as validateCronUpdateParams, Rn as buildDeviceAuthPayload, S as validateChatSendParams, Sn as validateTtsSpeakParams, T as validateChatSurfacesPinParams, Tn as validateWebLoginStartParams, U as validateDevicePairRejectParams, Un as approveDevicePairing, Ut as validateSessionsStorageBackupParams, V as validateDevicePairApproveParams, W as validateDevicePairRemoveParams, Wn as consumeDeviceBootstrapToken, Wt as validateSessionsStorageImportParams, X as validateExecApprovalsNodeGetParams, Xn as removePairedDevice, Xt as validateSkillsBinsParams, Y as validateExecApprovalsGetParams, Yn as rejectDevicePairing, Yt as validateSessionsUsageParams, Z as validateExecApprovalsNodeSetParams, Zn as requestDevicePairing, Zt as validateSkillsInstallParams, _ as validateChannelsStatusParams, _n as validateTasksRunsEventsParams, _t as validateRequestFrame, a as validateAgentIdentityParams, an as validateTalkRealtimeMarkParams, at as validateNodeEventParams, b as validateChatHistoryParams, bn as validateToolsCatalogParams, bt as validateSendParams, c as validateAgentWaitParams, cn as validateTalkRealtimeStopParams, ct as validateNodeListParams, d as validateAgentsFilesGetParams, dn as validateTalkSessionBargeInParams, dt as validateNodePairRejectParams, en as validateTalkCatalogParams, er as summarizeDeviceTokens, et as validateLogsTailParams, f as validateAgentsFilesListParams, fn as validateTalkSessionCancelTurnParams, fr as normalizeDevicePublicKeyBase64Url, ft as validateNodePairRequestParams, g as validateChannelsLogoutParams, gn as validateTasksRunEventsParams, gt as validatePushTestParams, h as validateAgentsUpdateParams, hn as validateTalkSessionMarkParams, ht as validatePollParams, i as formatValidationErrors, in as validateTalkRealtimeBargeInParams, it as validateNodeDescribeParams, j as validateConnectParams, jn as PROTOCOL_VERSION, k as validateConfigSchemaParams, kn as validateWizardStartParams, l as validateAgentsCreateParams, ln as validateTalkRealtimeToolResultParams, lt as validateNodePairApproveParams, m as validateAgentsListParams, mn as validateTalkSessionCreateParams, mt as validateNodeRenameParams, nn as validateTalkModeParams, nr as verifyDeviceBootstrapToken, nt as validateModelsAuthStatusParams, o as validateAgentNudgeParams, on as validateTalkRealtimeSessionParams, or as operatorScopeSatisfied, ot as validateNodeInvokeParams, p as validateAgentsFilesSetParams, pn as validateTalkSessionCloseParams, pr as verifyDeviceSignature, pt as validateNodePairVerifyParams, q as validateExecApprovalRequestParams, rn as validateTalkRealtimeAudioParams, rr as verifyDeviceToken, rt as validateModelsListParams, s as validateAgentParams, sn as validateTalkRealtimeStatusParams, sr as roleScopesAllow, st as validateNodeInvokeResultParams, tn as validateTalkConfigParams, tr as updatePairedDeviceMetadata, tt as validateMemoryIndexParams, u as validateAgentsDeleteParams, un as validateTalkSessionAppendAudioParams, ur as deriveDeviceIdFromPublicKey, ut as validateNodePairListParams, v as validateChatAbortParams, vn as validateTasksRunsGetParams, vt as validateSecretsResolveParams, w as validateChatSurfacesListParams, wn as validateWakeParams, x as validateChatInjectParams, xn as validateTtsReadAloudStatusParams, xt as validateSessionsAbortParams, y as validateChatActivityEvent, yn as validateTasksRunsListParams, yt as validateSecretsResolveResult, z as validateDeviceIdentityLinkParams, zn as buildDeviceAuthPayloadV3 } from "./client-CIDXfGgo.js";
84
- import { _ as hasNarrowSessionScope, d as APPROVALS_SCOPE, f as PAIRING_SCOPE, g as authorizeOperatorScopesForMethod, h as WRITE_SCOPE, m as SESSION_READ_SCOPE, n as callGateway, p as READ_SCOPE, u as ADMIN_SCOPE$1, v as isHealthProbeAllowedForScopes, x as loadGatewayTlsRuntime$1, y as isNodeRoleMethod } from "./call-CUY8VoHh.js";
82
+ import { a as resolveAgentSessionDirs, t as getAcpSessionManager } from "./manager-DCXdygsq.js";
83
+ import { $ as validateGlanceWidgetsListParams, $n as revokeDeviceToken, $t as validateSkillsStatusParams, A as validateConfigSetParams, An as validateWizardStartParams, B as validateDeviceIdentityUnlinkParams, Bn as buildDeviceAuthPayloadV3, C as validateChatSurfacesGetParams, Cn as validateTtsSpeakParams, D as validateConfigGetParams, Dn as validateWebLoginWaitParams, E as validateConfigApplyParams, En as validateWebLoginStartParams, F as validateCronRunParams, Fn as ErrorCodes, G as validateDeviceTokenRevokeParams, Gn as consumeDeviceBootstrapToken, Gt as validateSessionsStorageImportParams, H as validateDevicePairListParams, I as validateCronRunsParams, In as errorShape, J as validateExecApprovalResolveParams, K as validateDeviceTokenRotateParams, Kn as ensureDeviceToken, Kt as validateSessionsStorageStatusParams, L as validateCronStatusParams, M as validateCronAddParams, Mn as PROTOCOL_VERSION, N as validateCronListParams, Nn as RUNS_INVALIDATED_EVENT, O as validateConfigPatchParams, On as validateWizardCancelParams, P as validateCronRemoveParams, Q as validateExecApprovalsSetParams, Qn as requestDevicePairing, Qt as validateSkillsInstallParams, R as validateCronUpdateParams, S as validateChatSendParams, Sn as validateTtsReadAloudStatusParams, T as validateChatSurfacesPinParams, Tn as validateWakeParams, U as validateDevicePairRejectParams, Un as approveBootstrapDevicePairing, Ut as validateSessionsSteerParams, V as validateDevicePairApproveParams, Vn as normalizeDeviceMetadataForAuth, W as validateDevicePairRemoveParams, Wn as approveDevicePairing, Wt as validateSessionsStorageBackupParams, X as validateExecApprovalsNodeGetParams, Xn as rejectDevicePairing, Xt as validateSessionsUsageParams, Y as validateExecApprovalsGetParams, Yn as listDevicePairing, Yt as validateSessionsTitlePrepareParams, Z as validateExecApprovalsNodeSetParams, Zn as removePairedDevice, Zt as validateSkillsBinsParams, _ as validateChannelsStatusParams, _n as validateTasksRunEventsParams, _t as validateRequestFrame, a as validateAgentIdentityParams, an as validateTalkRealtimeBargeInParams, at as validateNodeEventParams, b as validateChatHistoryParams, bn as validateTasksRunsListParams, bt as validateSendParams, c as validateAgentWaitParams, cn as validateTalkRealtimeStatusParams, cr as roleScopesAllow, ct as validateNodeListParams, d as validateAgentsFilesGetParams, dn as validateTalkSessionAppendAudioParams, dr as deriveDeviceIdFromPublicKey, dt as validateNodePairRejectParams, en as validateSkillsUpdateParams, er as rotateDeviceToken, et as validateLogsTailParams, f as validateAgentsFilesListParams, fn as validateTalkSessionBargeInParams, ft as validateNodePairRequestParams, g as validateChannelsLogoutParams, gn as validateTalkSessionMarkParams, gt as validatePushTestParams, h as validateAgentsUpdateParams, hn as validateTalkSessionCreateParams, ht as validatePollParams, i as formatValidationErrors, in as validateTalkRealtimeAudioParams, ir as verifyDeviceToken, it as validateNodeDescribeParams, j as validateConnectParams, jn as validateWizardStatusParams, jt as validateSessionsMaintenanceRunParams, k as validateConfigSchemaParams, kn as validateWizardNextParams, l as validateAgentsCreateParams, ln as validateTalkRealtimeStopParams, lt as validateNodePairApproveParams, m as validateAgentsListParams, mn as validateTalkSessionCloseParams, mr as verifyDeviceSignature, mt as validateNodeRenameParams, nn as validateTalkConfigParams, nr as updatePairedDeviceMetadata, nt as validateModelsAuthStatusParams, o as validateAgentNudgeParams, on as validateTalkRealtimeMarkParams, ot as validateNodeInvokeParams, p as validateAgentsFilesSetParams, pn as validateTalkSessionCancelTurnParams, pr as normalizeDevicePublicKeyBase64Url, pt as validateNodePairVerifyParams, q as validateExecApprovalRequestParams, qn as getPairedDevice, qt as validateSessionsStorageValidateParams, rn as validateTalkModeParams, rr as verifyDeviceBootstrapToken, rt as validateModelsListParams, s as validateAgentParams, sn as validateTalkRealtimeSessionParams, sr as operatorScopeSatisfied, st as validateNodeInvokeResultParams, tn as validateTalkCatalogParams, tr as summarizeDeviceTokens, tt as validateMemoryIndexParams, u as validateAgentsDeleteParams, un as validateTalkRealtimeToolResultParams, ut as validateNodePairListParams, v as validateChatAbortParams, vn as validateTasksRunsEventsParams, vt as validateSecretsResolveParams, w as validateChatSurfacesListParams, wn as validateUpdateRunParams, x as validateChatInjectParams, xn as validateToolsCatalogParams, xt as validateSessionsAbortParams, y as validateChatActivityEvent, yn as validateTasksRunsGetParams, yt as validateSecretsResolveResult, z as validateDeviceIdentityLinkParams, zn as buildDeviceAuthPayload } from "./client-DA6hPHoC.js";
84
+ import { _ as hasNarrowSessionScope, d as APPROVALS_SCOPE, f as PAIRING_SCOPE, g as authorizeOperatorScopesForMethod, h as WRITE_SCOPE, m as SESSION_READ_SCOPE, n as callGateway, p as READ_SCOPE, u as ADMIN_SCOPE$1, v as isHealthProbeAllowedForScopes, x as loadGatewayTlsRuntime$1, y as isNodeRoleMethod } from "./call-CsmPnXmY.js";
85
85
  import "./pairing-token-WMwBEwOn.js";
86
86
  import "./fetch-qfS6MAEz.js";
87
87
  import { a as readChannelAllowFromStoreSync } from "./pairing-store-BS-em41G.js";
@@ -91,12 +91,12 @@ import "./exec-safe-bin-runtime-policy-lZujCwcg.js";
91
91
  import { _ as matchSystemRunApprovalBinding, g as buildSystemRunApprovalBinding, h as resolveSystemRunApprovalRuntimeContext, m as resolveSystemRunApprovalRequestContext, v as missingSystemRunApprovalBinding, y as toSystemRunApprovalMismatchError } from "./nodes-screen-m0Ycb5Os.js";
92
92
  import { i as defaultOrphanLedgerFilePath, r as createOrphanLedger, t as getProcessSupervisor } from "./supervisor-DorEvxWs.js";
93
93
  import { r as resolveSystemRunCommand, t as canonicalizeLegacySystemRunParams } from "./system-run-command-Dpq-Oa0u.js";
94
- import { a as cancelDelayedAgentTurnWaiters, c as enqueueAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, m as WORKSPACE_LANE_DENIED_REASON, r as AGENT_TURN_TOPIC, s as createRecoveryAgentTurnStager } from "./agent-turn-enqueue-IiwTs8II.js";
95
- import { D as onAgentEvent, E as getAgentRunContext, O as registerAgentRunContext, T as emitAgentEvent, a as getActiveEmbeddedRunCount, c as isEmbeddedPiRunInFlight, d as isInFlightVoiceAttempt, f as peekActiveEmbeddedRun, g as waitForEmbeddedPiRunEnd, l as isEmbeddedPiRunSteerable, o as getActiveEmbeddedRunOwner, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, w as clearAgentRunContext } from "./runs-vCw_F2ZO.js";
94
+ import { a as cancelDelayedAgentTurnWaiters, c as enqueueAgentTurn, i as agentTurnIdempotencyKey, l as isClaimableAgentTurnWorkId, m as WORKSPACE_LANE_DENIED_REASON, r as AGENT_TURN_TOPIC, s as createRecoveryAgentTurnStager } from "./agent-turn-enqueue-B30hT0x-.js";
95
+ import { D as onAgentEvent, E as getAgentRunContext, O as registerAgentRunContext, T as emitAgentEvent, a as getActiveEmbeddedRunCount, c as isEmbeddedPiRunInFlight, d as isInFlightVoiceAttempt, f as peekActiveEmbeddedRun, g as waitForEmbeddedPiRunEnd, l as isEmbeddedPiRunSteerable, o as getActiveEmbeddedRunOwner, r as clearActiveEmbeddedRun, s as isEmbeddedPiRunActive, t as abortEmbeddedPiRun, w as clearAgentRunContext } from "./runs-TPOj4wqX.js";
96
96
  import { a as resolveAgentIdentity, t as createReplyPrefixOptions } from "./reply-prefix-BNqoIR_e.js";
97
- import { u as buildOutboundSessionContext } from "./outbound-message-hooks-ZPwBUN_R.js";
98
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-BWtea6IA.js";
99
- import { T as collectTelegramDuplicatePollerDiagnostics, d as loadCronStore, f as resolveCronStorePath, p as saveCronStore } from "./send-7pf6IvCv.js";
97
+ import { u as buildOutboundSessionContext } from "./outbound-message-hooks-CsYq3_vL.js";
98
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext } from "./with-timeout-BBKlU1es.js";
99
+ import { T as collectTelegramDuplicatePollerDiagnostics, d as loadCronStore, f as resolveCronStorePath, p as saveCronStore } from "./send-xXKNMsLi.js";
100
100
  import { n as resolveModel } from "./model-Cak5R-jM.js";
101
101
  import "./session-consumer-agents-pTGi7r62.js";
102
102
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-8m-0w7RC.js";
@@ -104,7 +104,7 @@ import "./chunk-D0_oaKUc.js";
104
104
  import "./markdown-tables-BglJoOi4.js";
105
105
  import "./ir-DrY7AsZp.js";
106
106
  import "./render-CAaBsF7l.js";
107
- import "./reply-directives-B9hX-LBz.js";
107
+ import "./reply-directives-bPMJNW1Q.js";
108
108
  import { n as resolveMessageChannelSelection } from "./channel-selection-uGln4kR5.js";
109
109
  import "./strip-inbound-meta-CoJ_pWAk.js";
110
110
  import { o as normalizePollInput, t as getChannelActivity } from "./channel-activity-DDMK7keb.js";
@@ -114,28 +114,28 @@ import "./outbound-attachment-BpoybuuJ.js";
114
114
  import "./delivery-queue-CMaxw3uJ.js";
115
115
  import "./send-C_rNipx5.js";
116
116
  import "./resolve-route-qeooDN7E.js";
117
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-DXLQHQAj.js";
117
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-BSgFR5ag.js";
118
118
  import "./tables-BCbUwVr2.js";
119
119
  import "./proxy-mfQrQ4IR.js";
120
- import "./replies-BuO733xx.js";
120
+ import "./replies-gGgLXY8D.js";
121
121
  import { S as registerSkillsChangeListener, _ as requestNodePairing, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, g as renamePairedNode, h as rejectNodePairing, l as refreshRemoteBinsForConnectedNodes, m as listNodePairing, o as getRemoteSkillEligibility, p as approveNodePairing, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion, y as verifyNodeToken } from "./skill-commands-B2FD6vwN.js";
122
122
  import { t as listAgentWorkspaceDirs } from "./workspace-dirs-B3eQ0bhM.js";
123
123
  import { n as GATEWAY_AUTH_SURFACE_PATHS, p as isKnownSecretTargetId, r as evaluateGatewayAuthSurfaceStates } from "./runtime-config-collectors-Bgo_CuaD.js";
124
- import "./command-secret-targets-j8KBmpix.js";
125
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-CyLVkn7p.js";
124
+ import "./command-secret-targets-r25GrCux.js";
125
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-BHTSdqFW.js";
126
126
  import "./prompt-style-BefmWdTt.js";
127
127
  import "./pairing-labels-BaNOkGiF.js";
128
128
  import "./session-meta-Do4fIj92.js";
129
- import { A as redactArtifactLogId, C as accountSessionArtifactsAtTerminalSweep, D as markClientRemovedAcknowledged, E as listSessionArtifacts, F as verificationEnvelopeFingerprint, M as VERIFICATION_CONFIG_SCENARIO, N as buildVerificationEnvelope, O as markRemoved, P as redactVerificationProjection, S as RETAINED_ARTIFACT_KIND, T as isArtifactRegistrationError, _ as isBootIdentityError, a as setAgentTurnRuntime, b as getGatewayRestartRecoveryRuntime, d as isSoakError, f as readTrustedBuildInfo, g as deriveBootIdentityPair, h as armBarrier, i as getAgentTurnRuntime, j as registerBeforeCreate, k as markRetained, l as buildSoakDeploymentRecord, m as acceptSuccessorExecution, n as createAgentTurnRuntimeFromStorage, o as tryGetAgentTurnRuntime, p as verificationSinkReceiptArtifactId, r as getActiveAgentTurnCount, u as evaluateSoak, v as requireProcessBootIdentityPair, w as artifactTokenFor } from "./agent-turn-runner-C3Buntbu.js";
130
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-C6IsfNdf.js";
129
+ import { A as redactArtifactLogId, C as accountSessionArtifactsAtTerminalSweep, D as markClientRemovedAcknowledged, E as listSessionArtifacts, F as verificationEnvelopeFingerprint, M as VERIFICATION_CONFIG_SCENARIO, N as buildVerificationEnvelope, O as markRemoved, P as redactVerificationProjection, S as RETAINED_ARTIFACT_KIND, T as isArtifactRegistrationError, _ as isBootIdentityError, a as setAgentTurnRuntime, b as getGatewayRestartRecoveryRuntime, d as isSoakError, f as readTrustedBuildInfo, g as deriveBootIdentityPair, h as armBarrier, i as getAgentTurnRuntime, j as registerBeforeCreate, k as markRetained, l as buildSoakDeploymentRecord, m as acceptSuccessorExecution, n as createAgentTurnRuntimeFromStorage, o as tryGetAgentTurnRuntime, p as verificationSinkReceiptArtifactId, r as getActiveAgentTurnCount, u as evaluateSoak, v as requireProcessBootIdentityPair, w as artifactTokenFor } from "./agent-turn-runner-Btk5sBH0.js";
130
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-BcjjHcwL.js";
131
131
  import { r as resolveMemorySearchConfig } from "./manager-DUYerseZ.js";
132
132
  import "./query-expansion-Cl0fSt6_.js";
133
- import { a as acquireGatewayLock, i as GatewayLockError, l as backupSqliteSessionDatabase, p as resolveGatewayBackupPath } from "./session-storage-owner-DLQ3vsAz.js";
133
+ import { a as acquireGatewayLock, i as GatewayLockError, l as backupSqliteSessionDatabase, p as resolveGatewayBackupPath } from "./session-storage-owner-ClZPCWep.js";
134
134
  import { t as formatDocsLink } from "./links-0eSmUZrl.js";
135
135
  import { n as runCommandWithRuntime } from "./cli-utils-DyGKoc5l.js";
136
136
  import { t as formatHelpExamples } from "./help-format-CpfKC4qB.js";
137
137
  import { n as withProgress } from "./progress-CSrWZhGt.js";
138
- import "./server-lifecycle-Cd0b010a.js";
138
+ import "./server-lifecycle-D8mfFIYf.js";
139
139
  import { a as buildBaseHints, i as applySensitiveHints, n as redactConfigSnapshot, o as mapSensitivePaths, r as restoreRedactedValues, s as applyDerivedTags, t as redactConfigObject } from "./redact-snapshot-CxJuWVK4.js";
140
140
  import { t as ensureOpenClawCliOnPath } from "./path-env-BEiSBS7W.js";
141
141
  import "./runtime-guard-CjDDDqlR.js";
@@ -147,7 +147,7 @@ import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-D2c4akyc.
147
147
  import { n as inheritOptionFromParent } from "./command-options-BtDai3oC.js";
148
148
  import { t as WizardCancelledError } from "./prompts-CfOu9uZi.js";
149
149
  import { t as resolveChannelDefaultAccountId } from "./helpers-BQGm09z6.js";
150
- import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-D-yD07v8.js";
150
+ import { a as pruneAgentConfig, i as loadAgentIdentity, r as findAgentEntryIndex, t as applyAgentConfig } from "./agents.config-C_4HsmOy.js";
151
151
  import { t as isWithinDir } from "./path-safety-B2Yy_7lP.js";
152
152
  import "./install-safe-path-nmPbIqvY.js";
153
153
  import "./npm-pack-install-B4iNr987.js";
@@ -156,44 +156,44 @@ import "./installs-Cb_gHlRY.js";
156
156
  import { n as formatConfigIssueLines } from "./issue-format-ypZtnxqS.js";
157
157
  import { t as buildChannelAccountSnapshot } from "./status-TtGsgDjP.js";
158
158
  import "./channels-status-issues-BLR0pP0T.js";
159
- import { a as dropDeviceIdentity, i as resolveGatewayClientProfile, l as unlinkDeviceIdentity, o as linkDeviceIdentity, t as WEB_CLIENT_ALLOWED_ORIGINS_CONFIG_KEY } from "./client-profiles-DGW7rrdk.js";
159
+ import { a as dropDeviceIdentity, i as resolveGatewayClientProfile, l as unlinkDeviceIdentity, o as linkDeviceIdentity, t as WEB_CLIENT_ALLOWED_ORIGINS_CONFIG_KEY } from "./client-profiles-CZqoxT_J.js";
160
160
  import "./daemon-install-helpers-DxomkTE1.js";
161
161
  import "./service-UPTNbx3w.js";
162
162
  import "./systemd-CU9Ac8xq.js";
163
163
  import "./lifecycle-core-B4yHioys.js";
164
164
  import "./systemd-hints-DGqod-V7.js";
165
165
  import { t as parsePort$1 } from "./parse-port-BnVa643B.js";
166
- import { n as addGatewayServiceCommands } from "./daemon-cli-P_665VBl.js";
166
+ import { n as addGatewayServiceCommands } from "./daemon-cli-C0X7BA3B.js";
167
167
  import "./diagnostics-Bl__dpJ_.js";
168
168
  import "./table-BmLIXqwu.js";
169
169
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DPev5_FX.js";
170
170
  import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop } from "./shared-iSFlHVxY.js";
171
- import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-CH1D3iBG.js";
171
+ import { a as probeGateway, n as collectEnabledInsecureOrDangerousFlags } from "./audit-DkY9yUsn.js";
172
172
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-C2mGmUft.js";
173
- import { a as startSessionStorage, c as initGatewayRecoveryControls, d as DOCTOR_AUTHORITY_MISSING, f as doctorInspect, g as pickGatewaySelfPresence, h as verifyRecoveryAuthority, i as markStorageLifecycleStopping, l as startGatewayRestartRecoveryRuntime, m as rotateRecoveryAuthoritySecret, n as getStatusSummary, o as FatalConfiguredStorageStartError, p as mintRecoveryAuthority, r as getStorageV1Snapshot, s as awaitGatewayRecoveryReleased, u as stopGatewayRestartRecoveryForShutdown } from "./status-Ccz-BtS_.js";
174
- import { c as redactOwner, d as redactSensitiveHealthSummary, f as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-CVUuZRpQ.js";
173
+ import { a as startSessionStorage, c as initGatewayRecoveryControls, d as DOCTOR_AUTHORITY_MISSING, f as doctorInspect, g as pickGatewaySelfPresence, h as verifyRecoveryAuthority, i as markStorageLifecycleStopping, l as startGatewayRestartRecoveryRuntime, m as rotateRecoveryAuthoritySecret, n as getStatusSummary, o as FatalConfiguredStorageStartError, p as mintRecoveryAuthority, r as getStorageV1Snapshot, s as awaitGatewayRecoveryReleased, u as stopGatewayRestartRecoveryForShutdown } from "./status-Cuo3rz1n.js";
174
+ import { c as redactOwner, d as redactSensitiveHealthSummary, f as styleHealthChannelLine, n as getHealthSnapshot, t as formatHealthChannelLines } from "./health-DjlQU_Tv.js";
175
175
  import { r as resolveStaleClaimAdoptionMs } from "./recovery-adapter-CitKikIA.js";
176
- import { a as respondTaskRegistryUnavailable, c as tasksHandlers, d as withTimeout$1, i as resolveTaskOperatorRegistry, l as retryDelayMs, r as getTaskOperatorRegistry, t as DEFAULT_RETENTION_DAYS, u as waitForStopDrain } from "./task-runlog-retention-D0XabfJk.js";
176
+ import { a as respondTaskRegistryUnavailable, c as tasksHandlers, d as withTimeout$1, i as resolveTaskOperatorRegistry, l as retryDelayMs, r as getTaskOperatorRegistry, t as DEFAULT_RETENTION_DAYS, u as waitForStopDrain } from "./task-runlog-retention-BdLkqRCi.js";
177
177
  import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-pq1mH8P4.js";
178
178
  import { h as normalizeUpdateChannel, l as DEFAULT_PACKAGE_CHANNEL, n as checkUpdateStatus, o as resolveNpmChannelTag, r as compareSemverStrings } from "./channel-account-context-DKrd0PkQ.js";
179
179
  import { t as reconcileBundledInstalls } from "./reconcile-bundled-Dvwkzu0F.js";
180
180
  import { a as resolveCommandSecretsFromActiveRuntimeSnapshot, i as prepareSecretsRuntimeSnapshot, n as clearSecretsRuntimeSnapshot, r as getActiveSecretsRuntimeSnapshot, t as activateSecretsRuntimeSnapshot } from "./runtime-BnwqUmNH.js";
181
181
  import "./onboarding.secret-input-BzpFsVR9.js";
182
- import { t as runOnboardingWizard } from "./onboarding-B0tWDl2D.js";
182
+ import { t as runOnboardingWizard } from "./onboarding-DjYLPv7p.js";
183
183
  import { a as CONTROL_UI_V2_SERVICE_NAME, i as webBundleMissingMessage, n as buildUserClientRuntimeConfig, o as buildControlUiV2RuntimeConfig, r as resolvePackagedWebBundleRootSync, t as USER_CLIENT_ID } from "./runtime-config-B3jAYZkr.js";
184
- import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-PAONdNH4.js";
185
- import { a as readChatHistoryPage, c as REPLY_CONTEXT_CUSTOM_TYPE, d as admitUiActionHead, f as bindUiActionTurn, g as UiSurfaceRefSchema, h as assertValidParams, i as decodeHistoryCursor, l as buildReplyContextPayload, m as unsubscribeSessionChanges, o as resolveDbLeafEntryId, p as reserveUiActionAdmission, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers, u as UI_ACTION_CUSTOM_TYPE } from "./sessions-BIgPumZV.js";
184
+ import { a as sendApnsAlert, c as parseMessageWithAttachments, d as shouldLogWs, f as summarizeAgentEventForWsLog, i as resolveApnsAuthConfigFromEnv, l as formatForLog, n as normalizeApnsEnvironment, o as sendApnsBackgroundWake, p as setGatewayWsLogStyle, s as normalizeRpcAttachmentsToChatAttachments, t as loadApnsRegistration, u as logWs } from "./push-apns-Cb0sjE90.js";
185
+ import { a as readChatHistoryPage, c as REPLY_CONTEXT_CUSTOM_TYPE, d as admitUiActionHead, f as bindUiActionTurn, g as UiSurfaceRefSchema, h as assertValidParams, i as decodeHistoryCursor, l as buildReplyContextPayload, m as unsubscribeSessionChanges, o as resolveDbLeafEntryId, p as reserveUiActionAdmission, r as InvalidHistoryCursorError, s as resolveDbMessageEntryById, t as sessionsHandlers, u as UI_ACTION_CUSTOM_TYPE } from "./sessions-BV1UJJsg.js";
186
186
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-D6OyWbam.js";
187
187
  import { t as tombstoneAgentSessions } from "./delete-agent-sessions-kHmDsr0l.js";
188
- import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-BG0trkgo.js";
188
+ import { n as isNodeCommandAllowed, r as resolveNodeCommandAllowlist } from "./node-command-policy-C0OmboTh.js";
189
189
  import "./node-service-CZ8YogEx.js";
190
190
  import "./status.update-Cc1Xrwrz.js";
191
191
  import { i as resolveActiveLogFile, n as readLogSlice } from "./log-tail-Db3-PQvS.js";
192
192
  import { r as runSessionsMaintenance, s as POSTGRES_BACKUP_REQUIRED_MESSAGE, u as validateSessionStorageCore } from "./sessions-maintenance-core-Xr8Nu_z6.js";
193
193
  import { t as installSkill } from "./skills-install-DRdA0VQP.js";
194
- import { r as runGatewayUpdate } from "./update-runner-B2S-ijWA.js";
194
+ import { r as runGatewayUpdate } from "./update-runner-BUO6D2tP.js";
195
195
  import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-geUXFY_R.js";
196
- import { c as heartbeatProbeRunArtifactId, d as runIsolatedHeartbeatProbe, i as HEARTBEAT_PROBE_REASON, l as isHeartbeatProbeError, o as assertHeartbeatProbeDeliveryIsSafe, p as readValidationActivation, r as HEARTBEAT_PROBE_ALLOWED_TARGET, s as assertHeartbeatProbeParamsAreClosed, t as VALIDATION_ABORT_COMMAND, u as probeSessionKey$1 } from "./operator-commands-Cak1KHXQ.js";
196
+ import { c as heartbeatProbeRunArtifactId, d as runIsolatedHeartbeatProbe, i as HEARTBEAT_PROBE_REASON, l as isHeartbeatProbeError, o as assertHeartbeatProbeDeliveryIsSafe, p as readValidationActivation, r as HEARTBEAT_PROBE_ALLOWED_TARGET, s as assertHeartbeatProbeParamsAreClosed, t as VALIDATION_ABORT_COMMAND, u as probeSessionKey$1 } from "./operator-commands-CMLC3NdV.js";
197
197
  import { cpuUsage, memoryUsage, resourceUsage, uptime } from "node:process";
198
198
  import { fileURLToPath, pathToFileURL } from "node:url";
199
199
  import * as fsSync from "node:fs";
@@ -9050,6 +9050,7 @@ const BASE_METHODS = [
9050
9050
  "secrets.reload",
9051
9051
  "secrets.resolve",
9052
9052
  "sessions.create",
9053
+ "sessions.direct",
9053
9054
  "sessions.subscribe",
9054
9055
  "sessions.list",
9055
9056
  "sessions.describe",
@@ -16583,7 +16584,7 @@ const nodeHandlers = {
16583
16584
  const p = params;
16584
16585
  const payloadJSON = typeof p.payloadJSON === "string" ? p.payloadJSON : p.payload !== void 0 ? JSON.stringify(p.payload) : null;
16585
16586
  await respondUnavailableOnThrow(respond, async () => {
16586
- const { handleNodeEvent } = await import("./server-node-events-Ba1YD79n.js");
16587
+ const { handleNodeEvent } = await import("./server-node-events-C_xoK9Xb.js");
16587
16588
  const nodeId = client?.connect?.device?.id ?? client?.connect?.client?.id ?? "node";
16588
16589
  await handleNodeEvent({
16589
16590
  deps: context.deps,
@@ -17935,6 +17936,7 @@ const STORAGE_METHOD_POLICY_NONE = [
17935
17936
  "chat.surfaces.get",
17936
17937
  "chat.surfaces.pin",
17937
17938
  "sessions.abort",
17939
+ "sessions.direct",
17938
17940
  "wake",
17939
17941
  "cron.list",
17940
17942
  "cron.status",
@@ -24479,10 +24481,11 @@ const ttsHandlers = {
24479
24481
  });
24480
24482
  if (!result.success || !result.audioPath) {
24481
24483
  const rawError = result.error ?? "TTS conversion failed";
24482
- log$12.warn(`tts.speak: synthesis failed: ${rawError}`);
24484
+ log$12.warn(`tts.speak: synthesis failed: ${redactSensitiveText(rawError)}`);
24483
24485
  respond(false, void 0, errorShape(ErrorCodes.UNAVAILABLE, stripAbsolutePaths(rawError)));
24484
24486
  return;
24485
24487
  }
24488
+ if (result.fallbackErrors?.length) log$12.warn(`tts.speak: served by ${result.provider} after ${result.fallbackErrors.length} failed provider(s) in ${result.latencyMs}ms: ${redactSensitiveText(stripAbsolutePaths(result.fallbackErrors.join("; ")))}`);
24486
24489
  const mimeType = SPEECH_MIME_BY_EXTENSION[path.extname(result.audioPath).toLowerCase()];
24487
24490
  if (!mimeType) {
24488
24491
  respond(false, void 0, errorShape(ErrorCodes.UNAVAILABLE, `unsupported audio format "${path.extname(result.audioPath).toLowerCase()}"`, { details: { reason: "unsupported_audio_format" } }));
@@ -26690,7 +26693,7 @@ function normalizeAgentPayload(payload) {
26690
26693
  async function startBrowserControlServerIfEnabled() {
26691
26694
  if (isTruthyEnvValue(process.env.OPENCLAW_SKIP_BROWSER_CONTROL_SERVER)) return null;
26692
26695
  const override = process.env.OPENCLAW_BROWSER_CONTROL_MODULE?.trim();
26693
- const mod = override ? await import(override) : await import("./server-CRI0-vWV.js");
26696
+ const mod = override ? await import(override) : await import("./server-CggrpKmd.js");
26694
26697
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
26695
26698
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
26696
26699
  if (!start) return null;
@@ -37103,7 +37106,7 @@ async function bootGatewayServer(port, opts, bootStorageTeardown) {
37103
37106
  const sweepLog = log$1.child("session-consumer-claim-sweep");
37104
37107
  const { createDiagnosticRingBuffer } = await import("./session-consumer-diagnostics-BoCkvEW5.js");
37105
37108
  const diagnostics = createDiagnosticRingBuffer();
37106
- const { setDiagnostics } = await import("./sessions-BIgPumZV.js").then((n) => n.n);
37109
+ const { setDiagnostics } = await import("./sessions-BV1UJJsg.js").then((n) => n.n);
37107
37110
  if (sessionConsumerClaimSweepCancelled) return;
37108
37111
  setDiagnostics(diagnostics);
37109
37112
  const lastKnownEnabledState = /* @__PURE__ */ new Map();
@@ -37142,7 +37145,7 @@ async function bootGatewayServer(port, opts, bootStorageTeardown) {
37142
37145
  lastKnownEnabledState,
37143
37146
  cfg: loadConfig()
37144
37147
  });
37145
- const { setLastSweepTimestamp } = await import("./sessions-BIgPumZV.js").then((n) => n.n);
37148
+ const { setLastSweepTimestamp } = await import("./sessions-BV1UJJsg.js").then((n) => n.n);
37146
37149
  setLastSweepTimestamp(Date.now());
37147
37150
  } catch (err) {
37148
37151
  sweepLog.warn(`session consumer-claim sweep failed: ${String(err)}`);
@@ -37164,7 +37167,7 @@ async function bootGatewayServer(port, opts, bootStorageTeardown) {
37164
37167
  prepare: () => {
37165
37168
  taskPipelineBoot = (async () => {
37166
37169
  const { getConfiguredSessionStorageRuntime } = await import("./model-selection-DcDzsVrL.js").then((n) => n.hi);
37167
- const { startTaskPipeline } = await import("./task-pipeline-boot-D5tuNVHj.js");
37170
+ const { startTaskPipeline } = await import("./task-pipeline-boot-Kxi1hpUn.js");
37168
37171
  const pipeline = startTaskPipeline({
37169
37172
  getConfigured: getConfiguredSessionStorageRuntime,
37170
37173
  cfg: cfgAtStart,
@@ -37967,7 +37970,7 @@ async function stopInteractiveWorkBeforeClose(params) {
37967
37970
  let acpCancelTimedOut = false;
37968
37971
  let cancelledRunIds = [];
37969
37972
  try {
37970
- const { getAcpSessionManager } = await import("./manager-CsTeZuhu.js").then((n) => n.n);
37973
+ const { getAcpSessionManager } = await import("./manager-DCXdygsq.js").then((n) => n.n);
37971
37974
  const result = await getAcpSessionManager().cancelActiveTurnsForShutdown({
37972
37975
  reason: params.reason,
37973
37976
  timeoutMs: Math.max(1, params.budgetMs - PENDING_REPLY_RESERVE_MS)
@@ -38146,7 +38149,7 @@ async function runGatewayLoop(params) {
38146
38149
  if (isRestart) {
38147
38150
  markGatewayDraining();
38148
38151
  const activeTasks = getActiveTaskCount();
38149
- const acpManager = (await import("./manager-CsTeZuhu.js").then((n) => n.n)).getAcpSessionManager();
38152
+ const acpManager = (await import("./manager-DCXdygsq.js").then((n) => n.n)).getAcpSessionManager();
38150
38153
  const activeTurns = acpManager.getActiveTurnCount();
38151
38154
  if (activeTasks > 0 || activeTurns > 0) {
38152
38155
  gatewayLog$1.info(`draining ${activeTasks} active task(s), ${activeTurns} active acp turn(s) before restart (timeout ${DRAIN_TIMEOUT_MS}ms)`);