activeclaw 2026.4.5 → 2026.4.9

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 (379) hide show
  1. package/dist/{acp-cli-DFNJuSr1.js → acp-cli-DAoO2PiM.js} +9 -9
  2. package/dist/{acp-cli-CYNmIkev.js → acp-cli-e3Nru-Yh.js} +5 -5
  3. package/dist/{agent-CCHm3dnF.js → agent-CMfazMZh.js} +11 -11
  4. package/dist/{agent-BLSLlPLk.js → agent-JPiOsp4w.js} +8 -8
  5. package/dist/{agent-scope-Dv5h0qQE.js → agent-scope-BrJT9Gf9.js} +17 -17
  6. package/dist/{agents-BxHLH0uE.js → agents-BFneTNaM.js} +7 -7
  7. package/dist/{agents.config-CxFlr00u.js → agents.config-63M2f6aF.js} +2 -2
  8. package/dist/{agents.config-BF0K3aA6.js → agents.config-CLmETqUQ.js} +1 -1
  9. package/dist/{api-key-rotation-cqcPDbSb.js → api-key-rotation--yH6WXh1.js} +1 -1
  10. package/dist/{api-key-rotation-BbIb9aas.js → api-key-rotation-BHAUzS3H.js} +2 -2
  11. package/dist/{api-key-rotation-Cyf-Q4MB.js → api-key-rotation-DeP9Nazr.js} +2 -2
  12. package/dist/{api-key-rotation-CpK2-BOi.js → api-key-rotation-ysMjkqBD.js} +1 -1
  13. package/dist/{audio-preflight-L-LZWSbn.js → audio-preflight-Bc4dihum.js} +16 -16
  14. package/dist/{audio-preflight-DRfaJpBd.js → audio-preflight-DPH8sex1.js} +8 -8
  15. package/dist/{audio-preflight-ugqpHAQh.js → audio-preflight-Dd3C7mtQ.js} +14 -14
  16. package/dist/{audio-preflight-BWsuQsJe.js → audio-preflight-DqbhN1m7.js} +4 -4
  17. package/dist/{audio-transcription-runner-Uz2dTIDx.js → audio-transcription-runner-B02iDYTW.js} +23 -23
  18. package/dist/{audio-transcription-runner-CovQeJJ8.js → audio-transcription-runner-B8jxT-MB.js} +6 -6
  19. package/dist/{audio-transcription-runner-BjxrFZhs.js → audio-transcription-runner-DIwGKsNI.js} +4 -4
  20. package/dist/{audio-transcription-runner-Bt0PplM9.js → audio-transcription-runner-TUBV75w0.js} +11 -11
  21. package/dist/{audit-CmbdapG_.js → audit-Cg4EdF12.js} +21 -21
  22. package/dist/{audit-membership-runtime-D-ZeUv63.js → audit-membership-runtime-DK2vsxHN.js} +6 -6
  23. package/dist/{audit-Dk_eftLe.js → audit-u873Aqoz.js} +7 -7
  24. package/dist/{auth-CCGOm7j4.js → auth-B7N969mv.js} +1 -1
  25. package/dist/{auth-Cp-1JzUb.js → auth-Bu24hYWH.js} +1 -1
  26. package/dist/{auth-choice-tokGZmzT.js → auth-choice-CBs23Eut.js} +13 -13
  27. package/dist/{auth-choice-DMcjsacO.js → auth-choice-DKqoMQkv.js} +14 -14
  28. package/dist/{auth-choice-CzIHMC2n.js → auth-choice-DWfkvDEv.js} +18 -18
  29. package/dist/{auth-choice-BOV3mxdG.js → auth-choice-LkLMeioa.js} +12 -12
  30. package/dist/{auth-choice.apply-helpers-alZH2ST_.js → auth-choice.apply-helpers-CJra1kZX.js} +1 -1
  31. package/dist/{auth-choice.apply-helpers-C0zKQkgn.js → auth-choice.apply-helpers-D_qbnasd.js} +1 -1
  32. package/dist/{auth-profiles-B5hyImOM.js → auth-profiles-D9Wn945p.js} +12 -0
  33. package/dist/{auth-token-BHnzfcUl.js → auth-token-BE6nISKT.js} +1 -1
  34. package/dist/{auth-token-Bzfws-T-.js → auth-token-DeLPA2C5.js} +1 -1
  35. package/dist/{banner-MJMqAYlg.js → banner-Ctm-KPnO.js} +1 -1
  36. package/dist/{bonjour-discovery-B4Fsf8u3.js → bonjour-discovery-CHN01_kY.js} +1 -1
  37. package/dist/{bonjour-discovery-LLqnJbvr.js → bonjour-discovery-Cak-jClv.js} +1 -1
  38. package/dist/build-info.json +3 -3
  39. package/dist/bundled/boot-md/handler.js +27 -27
  40. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  41. package/dist/bundled/command-logger/handler.js +2 -2
  42. package/dist/bundled/session-memory/handler.js +26 -26
  43. package/dist/{call-CKFLqNkw.js → call-7be5mSn_.js} +9 -9
  44. package/dist/{call-5htJiVxi.js → call-Ce8vjHmH.js} +2 -2
  45. package/dist/{channel-account-context-BI023AHZ.js → channel-account-context-D9S5HJn4.js} +6 -6
  46. package/dist/{channel-account-context-CZgEeotA.js → channel-account-context-XxNxKPcm.js} +1 -1
  47. package/dist/{channel-options-DAKPziI3.js → channel-options-DbKTl72b.js} +2 -2
  48. package/dist/{channel-options-DiGuGjgV.js → channel-options-a0rwBOBp.js} +2 -2
  49. package/dist/{channel-selection-CrnnQqyM.js → channel-selection-Cz7kZ_dd.js} +1 -1
  50. package/dist/{channel-selection-Dh-j4PE7.js → channel-selection-DMlnEgJc.js} +1 -1
  51. package/dist/channels/plugins/actions/telegram.js +12 -0
  52. package/dist/{channels-cli-Lcff68v5.js → channels-cli-2VIPyG8m.js} +55 -55
  53. package/dist/{channels-cli-DvKsiDcY.js → channels-cli-BG1xCXaW.js} +40 -40
  54. package/dist/{chunk-cNotV828.js → chunk-B0PHAL_m.js} +1 -1
  55. package/dist/{chunk-DB_LA-72.js → chunk-BSmRwqjw.js} +2 -2
  56. package/dist/{chunk-I6GfHIkA.js → chunk-D4AO1AEe.js} +1 -1
  57. package/dist/{cleanup-utils-6oONTdk-.js → cleanup-utils-DuGSE7QL.js} +4 -4
  58. package/dist/cli/daemon-cli.js +1 -1
  59. package/dist/{cli-CX0-e1Do.js → cli-He5MwTZv.js} +31 -31
  60. package/dist/{cli-Nb2Rv2SE.js → cli-McCicHl-.js} +39 -39
  61. package/dist/{command-registry-B1NKrz1S.js → command-registry-B4XSKnqk.js} +12 -12
  62. package/dist/{command-secret-targets-DXU9DFeM.js → command-secret-targets-BQ5lbER9.js} +3 -3
  63. package/dist/{command-secret-targets-CpKxsR1T.js → command-secret-targets-lNjgc0CR.js} +3 -3
  64. package/dist/{compact-qJ63Ml29.js → compact-DBxHCU3Q.js} +44 -35
  65. package/dist/compact.runtime-D3MiFKq0.js +66 -0
  66. package/dist/{compact.runtime-Cl5rju7L.js → compact.runtime-DKQKkff5.js} +9 -9
  67. package/dist/{compact.runtime-B7P5LnIa.js → compact.runtime-DcTpLwZ5.js} +31 -31
  68. package/dist/compact.runtime-DvhVgC1j.js +28 -0
  69. package/dist/{completion-cli-BkGeOB0Y.js → completion-cli-BXlBKnlj.js} +2 -2
  70. package/dist/{completion-cli-DQ5HyrvM.js → completion-cli-C0IxNzBH.js} +12 -12
  71. package/dist/{config-cli-CiLzQLbQ.js → config-cli-C4ryG2Rf.js} +4 -4
  72. package/dist/{config-cli-BKXR8uQg.js → config-cli-rH6YNttY.js} +8 -8
  73. package/dist/{config-guard-DKS3Bjiu.js → config-guard-DpwVMnwc.js} +3 -3
  74. package/dist/{config-guard-C5v1W26E.js → config-guard-ahuxxM-z.js} +15 -15
  75. package/dist/{config-validation-DsiQ4Ig0.js → config-validation-C7b6auM4.js} +2 -2
  76. package/dist/{config-validation-BKR2V3xN.js → config-validation-CanHLJ8X.js} +2 -2
  77. package/dist/{configure-JCyEZ5Fd.js → configure-BfCm4pl9.js} +17 -17
  78. package/dist/{configure-B7kIEfSP.js → configure-CuFhFIhR.js} +12 -12
  79. package/dist/{connection-auth-DoyMyMj7.js → connection-auth-Uq6_taV8.js} +1 -1
  80. package/dist/{connection-auth-_DWNXAV0.js → connection-auth-tv7E7e3R.js} +1 -1
  81. package/dist/{cron-cli-_jyWnQpP.js → cron-cli-DeTrhoKQ.js} +4 -4
  82. package/dist/{cron-cli-BS6spxkO.js → cron-cli-gWy7x5uI.js} +8 -8
  83. package/dist/{daemon-cli-BtKr1oQT.js → daemon-cli-DhF5rs_a.js} +7 -7
  84. package/dist/{daemon-cli-Be1vZo5e.js → daemon-cli-qKu_98e8.js} +12 -12
  85. package/dist/daemon-cli.js +12 -0
  86. package/dist/{daemon-install-DL5tMI7L.js → daemon-install-C3mTkJtr.js} +13 -13
  87. package/dist/{daemon-install-CAzURxv-.js → daemon-install-DVTKAzGi.js} +6 -6
  88. package/dist/{deliver-kqa-lgew.js → deliver-BBYhSw-z.js} +4 -4
  89. package/dist/{deliver-DZveowc3.js → deliver-D2j_qrPV.js} +18 -18
  90. package/dist/{deliver-CODiAnbo.js → deliver-DIDeQhCe.js} +1 -1
  91. package/dist/{deliver-C1juSywI.js → deliver-DvOSE6dK.js} +3 -3
  92. package/dist/deliver-runtime-B_vg9NSW.js +14 -0
  93. package/dist/{deliver-runtime-C6qB5ZVb.js → deliver-runtime-C0Wbfid0.js} +4 -4
  94. package/dist/{deliver-runtime-BsHI7dwo.js → deliver-runtime-DT4PMHlo.js} +9 -9
  95. package/dist/{deliver-runtime-D7Dud7B5.js → deliver-runtime-JgwxHubA.js} +2 -2
  96. package/dist/{deps-CLLCZe9I.js → deps-Y7mMaM9D.js} +1 -1
  97. package/dist/{deps-send-telegram.runtime-JtJ6ati5.js → deps-send-telegram.runtime-BIAuW6ip.js} +6 -6
  98. package/dist/deps-send-telegram.runtime-BMbKZ8Sj.js +19 -0
  99. package/dist/{deps-send-telegram.runtime-oajdQ06q.js → deps-send-telegram.runtime-C3q7fofC.js} +13 -13
  100. package/dist/{diagnostic-BXoxaU4W.js → diagnostic-Bbd8nFqt.js} +1 -1
  101. package/dist/{diagnostic-Booor3n0.js → diagnostic-BgC5_P-R.js} +1 -1
  102. package/dist/{diagnostic-BpFQ24Me.js → diagnostic-DGCbVfrY.js} +1 -1
  103. package/dist/{diagnostic-xdfzrdaY.js → diagnostic-G-xDRRdG.js} +2 -2
  104. package/dist/{diagnostics-DU5X6chC.js → diagnostics-C-VDJRVJ.js} +5 -5
  105. package/dist/{directory-cli-BuAiyESe.js → directory-cli-C1uCNh_L.js} +2 -2
  106. package/dist/{directory-cli-CjmZMS9e.js → directory-cli-kNyyepbw.js} +6 -6
  107. package/dist/{dns-cli-VjcjpJaH.js → dns-cli-Bl34g-49.js} +6 -6
  108. package/dist/{dns-cli-C3NikSdN.js → dns-cli-C4NOhwp6.js} +2 -2
  109. package/dist/{docs-cli-Dnr7p-iL.js → docs-cli-Cg3LkXnq.js} +4 -4
  110. package/dist/{doctor-completion-Cd5Nl3yQ.js → doctor-completion-BMhNBLlZ.js} +2 -2
  111. package/dist/{doctor-completion-Cr_mm4ZQ.js → doctor-completion-Bhzly0Le.js} +1 -1
  112. package/dist/{doctor-config-flow-CACQt_iy.js → doctor-config-flow-BaPH3aqI.js} +6 -6
  113. package/dist/{doctor-config-flow-Cte0zkRl.js → doctor-config-flow-BcXzOsQs.js} +13 -13
  114. package/dist/{enable-Cf9rGPag.js → enable-DevEDLTp.js} +1 -1
  115. package/dist/{enable-DW4lKjBU.js → enable-yZG-yiAJ.js} +1 -1
  116. package/dist/entry.js +2 -2
  117. package/dist/{env-DGWeP3w5.js → env-Bhn5CLil.js} +1 -1
  118. package/dist/{errors-B27FlGCB.js → errors-Bqf8bSUd.js} +1 -1
  119. package/dist/{exec-approvals-allowlist-CWZm-Xjt.js → exec-approvals-allowlist-BSEL6MhC.js} +1 -1
  120. package/dist/{exec-approvals-allowlist-DnjttVeB.js → exec-approvals-allowlist-Be63T3oT.js} +1 -1
  121. package/dist/{exec-approvals-cli-BHD1xE9Q.js → exec-approvals-cli-BXOXf0aV.js} +5 -5
  122. package/dist/{exec-approvals-cli-BRCUDW6B.js → exec-approvals-cli-Ckca7X8L.js} +14 -14
  123. package/dist/{exec-safe-bin-runtime-policy-CObmLqq8.js → exec-safe-bin-runtime-policy-BnTNRx5O.js} +2 -2
  124. package/dist/{exec-safe-bin-runtime-policy-CjDG3QJD.js → exec-safe-bin-runtime-policy-DbbnAmrV.js} +2 -2
  125. package/dist/extensionAPI.js +9 -9
  126. package/dist/{fetch-aXWb4Ao5.js → fetch-BWClp-zV.js} +3 -3
  127. package/dist/{fetch-C-yIjbz-.js → fetch-DAiV9-bR.js} +1 -1
  128. package/dist/{fetch-3V1gxxYH.js → fetch-LN1gb6p0.js} +1 -1
  129. package/dist/{fetch-guard-DDQrBzBv.js → fetch-guard-Bd5oI7xu.js} +3 -3
  130. package/dist/{fetch-guard-Dsd8UoGA.js → fetch-guard-DGuF8Mhb.js} +1 -1
  131. package/dist/{fetch-guard-DkMZHPzY.js → fetch-guard-dTCN4rW8.js} +1 -1
  132. package/dist/{fetch-BXs0KCX9.js → fetch-hiM4UODI.js} +1 -1
  133. package/dist/{frontmatter-_kVsuvOa.js → frontmatter-CC95HXlE.js} +3 -3
  134. package/dist/{fs-safe-BLWbfoa6.js → fs-safe-B_UpcQBp.js} +34 -34
  135. package/dist/{fs-safe-DqIZh4BQ.js → fs-safe-hxxMXweE.js} +4 -4
  136. package/dist/{gateway-cli-BOZLG619.js → gateway-cli-X1ZtTIn1.js} +55 -55
  137. package/dist/{gateway-cli-C88jp3Aw.js → gateway-cli-nYAUoRqi.js} +99 -99
  138. package/dist/{gateway-install-token-BnQ74gB8.js → gateway-install-token-B7z4nya5.js} +4 -4
  139. package/dist/{gateway-install-token-qIxBiiV_.js → gateway-install-token-CVO9K6d2.js} +15 -15
  140. package/dist/{gateway-rpc-D5FI-w_h.js → gateway-rpc-ACgYuynD.js} +2 -2
  141. package/dist/{gateway-rpc-DZUx1OqN.js → gateway-rpc-DX5S8s8b.js} +2 -2
  142. package/dist/{github-copilot-token-DJKrUYl0.js → github-copilot-token-CLlAnyEf.js} +7 -7
  143. package/dist/{health-DhuzyE57.js → health-D22GmS6O.js} +4 -4
  144. package/dist/{health-DKId61cm.js → health-I2eelBJ0.js} +10 -10
  145. package/dist/{history-cli-BcwU3MKy.js → history-cli-D-sy-eCF.js} +25 -25
  146. package/dist/{history-cli-DPC2tW70.js → history-cli-HSiD9qOC.js} +11 -11
  147. package/dist/{hooks-cli-K9Olbeoq.js → hooks-cli-B8yce8aT.js} +46 -46
  148. package/dist/{hooks-cli-D4EdsaZd.js → hooks-cli-BpGVDC8n.js} +32 -32
  149. package/dist/{hooks-status-DFoUaWp1.js → hooks-status-0HInFKiT.js} +1 -1
  150. package/dist/{image-xmUgWF9P.js → image-B4HCDVUj.js} +3 -3
  151. package/dist/{image-DAEA1-oq.js → image-BUEhx-b4.js} +5 -5
  152. package/dist/{image-B-QmrXyQ.js → image-DHFliGoO.js} +4 -4
  153. package/dist/{image-Hryb3xjW.js → image-kqy5P4_2.js} +2 -2
  154. package/dist/{image-runtime-Bq4LW7no.js → image-runtime-8ygTiDaV.js} +3 -3
  155. package/dist/{image-runtime-EqNC780Y.js → image-runtime-BKnEMJR7.js} +7 -7
  156. package/dist/{image-runtime-CqQexlZf.js → image-runtime-BtQeLPdH.js} +2 -2
  157. package/dist/image-runtime-DYqTmna6.js +12 -0
  158. package/dist/index.js +47 -47
  159. package/dist/{inspect-3xM6J2Z_.js → inspect-0yj9c1e2.js} +9 -9
  160. package/dist/{inspect-5BGzxifc.js → inspect-CmvIDefh.js} +1 -1
  161. package/dist/{installs-Cg8kKBcv.js → installs-DPimnX51.js} +7 -7
  162. package/dist/{ipv4-DZ8ZOnQk.js → ipv4-DPsEPkzz.js} +1 -1
  163. package/dist/{ipv4-BllQnUqi.js → ipv4-DkllL_TQ.js} +1 -1
  164. package/dist/{issue-format-BnnZmmHz.js → issue-format-DbKknWy1.js} +1 -1
  165. package/dist/{issue-format-Dbw0ZKZU.js → issue-format-hszNX8Io.js} +1 -1
  166. package/dist/llm-slug-generator.js +26 -26
  167. package/dist/{local-roots-B0MExwb7.js → local-roots-BZvUgFKO.js} +1 -1
  168. package/dist/{local-roots-ysSrZ6CP.js → local-roots-CyRw91V8.js} +3 -3
  169. package/dist/{logger-3NSI7j4D.js → logger-BA9koAaC.js} +6 -6
  170. package/dist/{logging-CM1xI8yT.js → logging-4UnG2dJ0.js} +1 -1
  171. package/dist/{logging-B9OKCko2.js → logging-59CroxmQ.js} +2 -2
  172. package/dist/{logging-C7WfrX3j.js → logging-BHhuGbN8.js} +1 -1
  173. package/dist/{logs-cli-DogTg6BW.js → logs-cli-B3BYjCxR.js} +8 -8
  174. package/dist/{logs-cli-DEIVxAcb.js → logs-cli-CZ-nwWSh.js} +4 -4
  175. package/dist/{manager-CwuAu16U.js → manager-BLYILa5H.js} +14 -14
  176. package/dist/{manager-D4NBKxDJ.js → manager-BaDp-h4i.js} +23 -23
  177. package/dist/{manager-BTf5kl5K.js → manager-DF7UBoKp.js} +3 -3
  178. package/dist/{manager-CxuSPBL7.js → manager-DFiUW_Ha.js} +2 -2
  179. package/dist/{manager-runtime-BUGnXZoY.js → manager-runtime-BCkunkcv.js} +4 -4
  180. package/dist/{manager-runtime-DJeYdbHj.js → manager-runtime-CPUoaf4n.js} +3 -3
  181. package/dist/manager-runtime-DMIUcUdt.js +15 -0
  182. package/dist/{manager-runtime-CirDe6Yc.js → manager-runtime-DxOKojtv.js} +10 -10
  183. package/dist/{memory-qo2PyyGc.js → memory-adblmZ7U.js} +5 -5
  184. package/dist/{memory-cli-B3Wdf8cX.js → memory-cli-BLSGcKsi.js} +3 -3
  185. package/dist/{memory-cli-DhQM5b25.js → memory-cli-C5dGMHKl.js} +12 -12
  186. package/dist/{model-catalog-C6EpVMgn.js → model-catalog-BtBiWr2U.js} +3 -3
  187. package/dist/{model-catalog-C8EYz2dm.js → model-catalog-DlYPcFqP.js} +3 -3
  188. package/dist/{model-picker-C_xmxZQw.js → model-picker-BZvJOgpa.js} +4 -4
  189. package/dist/{model-picker-93hk8EPQ.js → model-picker-BdabNhjk.js} +3 -3
  190. package/dist/{model-selection-BrTh8v9L.js → model-selection-CvKAj7nY.js} +102 -90
  191. package/dist/{model-selection-CftqhKNS.js → model-selection-DU-DNNW7.js} +63 -51
  192. package/dist/{model-selection-CS_9NrTE.js → model-selection-PlvJPOJ9.js} +12 -0
  193. package/dist/{models-Bol0QzVD.js → models-BouiRS5o.js} +12 -12
  194. package/dist/{models-cli-kMKsts8T.js → models-cli-CXzAbJ5D.js} +38 -38
  195. package/dist/{models-cli-DrLVOzUK.js → models-cli-KmmlfVy4.js} +50 -50
  196. package/dist/{models-config-B9HFg-NI.js → models-config-Cg9vUkxp.js} +1 -1
  197. package/dist/{models-config-yo6Auh6b.js → models-config-xqqHZFkg.js} +7 -7
  198. package/dist/{npm-pack-install-BNF-iM37.js → npm-pack-install-BlYIroXs.js} +54 -54
  199. package/dist/{npm-resolution-BO6SGdLs.js → npm-resolution-Bn1LgQFf.js} +2 -2
  200. package/dist/{npm-resolution-Dc-9fZOQ.js → npm-resolution-BtQxqgSa.js} +4 -4
  201. package/dist/{ollama-setup-Bhphyk4x.js → ollama-setup-C0EKmICU.js} +2 -2
  202. package/dist/{ollama-setup-DrJZug5K.js → ollama-setup-bTrV2RqI.js} +2 -2
  203. package/dist/{onboard-DoZZHyp1.js → onboard-Cve2lx8Q.js} +7 -7
  204. package/dist/{onboard-C88F-Y13.js → onboard-DUlLUrme.js} +7 -7
  205. package/dist/{onboard-channels-D8cEPFj3.js → onboard-channels-C3Fr6P4C.js} +9 -9
  206. package/dist/{onboard-channels-CKg0sLah.js → onboard-channels-D9mYZZtF.js} +5 -5
  207. package/dist/{onboard-custom-CaacLXtg.js → onboard-custom-C3vRGHsc.js} +4 -4
  208. package/dist/{onboard-custom-CIE9LcFk.js → onboard-custom-W8wE0yre.js} +4 -4
  209. package/dist/{onboard-helpers-xbYuvLLu.js → onboard-helpers-C-tI0ORj.js} +8 -8
  210. package/dist/{onboard-helpers-B1g1N_R7.js → onboard-helpers-Dt3bHndL.js} +3 -3
  211. package/dist/{onboard-hooks-D2rz49Q8.js → onboard-hooks-BKK6FS_-.js} +4 -4
  212. package/dist/{onboard-remote-irbTZQ8D.js → onboard-remote-CnGUK4s9.js} +4 -4
  213. package/dist/{onboard-remote-DR0hiGln.js → onboard-remote-DUkT-5yX.js} +4 -4
  214. package/dist/{onboarding-CuMZLiwZ.js → onboarding-B47HB8MD.js} +14 -14
  215. package/dist/{onboarding-CGx-wanB.js → onboarding-Dj9u7X0q.js} +15 -15
  216. package/dist/{onboarding.finalize-4_qfJYB5.js → onboarding.finalize-C-pR8_RE.js} +52 -52
  217. package/dist/{onboarding.finalize-CT3LVJ86.js → onboarding.finalize-JG_vd8zz.js} +40 -40
  218. package/dist/{onboarding.gateway-config-BLn29YYn.js → onboarding.gateway-config-CllJn7mn.js} +11 -11
  219. package/dist/{onboarding.gateway-config-DBTVHN2e.js → onboarding.gateway-config-JJXnuJ29.js} +7 -7
  220. package/dist/{onboarding.secret-input-DSFE38xZ.js → onboarding.secret-input-Bmjiy8T4.js} +1 -1
  221. package/dist/{onboarding.secret-input-BI289pRS.js → onboarding.secret-input-DkAfkFVQ.js} +1 -1
  222. package/dist/{openai-codex-model-default-CvwSM6Hd.js → openai-codex-model-default-5GXfiA_D.js} +3 -3
  223. package/dist/{openai-codex-model-default-CNxuNGcG.js → openai-codex-model-default-BYIJH6vZ.js} +2 -2
  224. package/dist/{openai-model-default-BJAcSXF0.js → openai-model-default-DvF5RAGp.js} +2 -2
  225. package/dist/{openai-model-default-CHxnrkRk.js → openai-model-default-GgDZhvmV.js} +2 -2
  226. package/dist/{openclaw-root-B6cGCDGF.js → openclaw-root-DbbVtnL2.js} +8 -8
  227. package/dist/{outbound-send-deps-BfOiemtW.js → outbound-send-deps-ClezclXA.js} +1 -1
  228. package/dist/{outbound-send-deps-Ds9befoI.js → outbound-send-deps-DBVk1Se1.js} +1 -1
  229. package/dist/{pairing-cli-KQ0Gil81.js → pairing-cli-CYBWOxx2.js} +6 -6
  230. package/dist/{pairing-cli-DopHOckK.js → pairing-cli-rMFQX66I.js} +2 -2
  231. package/dist/{pairing-store-4ajjzoih.js → pairing-store-BeeSJLPy.js} +1 -1
  232. package/dist/{pairing-store-CGmLbKax.js → pairing-store-Dr8a_B6n.js} +1 -1
  233. package/dist/{path-alias-guards-DJQOJx9a.js → path-alias-guards-DBFU_Tqb.js} +3 -3
  234. package/dist/{path-safety-9zsLqD77.js → path-safety-CfDs7X4h.js} +1 -1
  235. package/dist/{paths-E3CbCLxE.js → paths-Bg_l6kdG.js} +7 -7
  236. package/dist/{paths-DHNo4U8q.js → paths-L_hqOE5A.js} +5 -5
  237. package/dist/{pi-embedded-Lk0-wBVJ.js → pi-embedded-XOWzcU4v.js} +29 -20
  238. package/dist/{pi-embedded-LWGrAjSd.js → pi-embedded-cW_upWzb.js} +125 -116
  239. package/dist/{pi-model-discovery-CocLN2I9.js → pi-model-discovery-7pqY2wzA.js} +1 -1
  240. package/dist/{pi-model-discovery-BfCU9u9n.js → pi-model-discovery-BOkx-R2x.js} +7 -7
  241. package/dist/{pi-model-discovery-DmsAxxli.js → pi-model-discovery-DFqVpswz.js} +1 -1
  242. package/dist/{pi-model-discovery-BHnYQuJe.js → pi-model-discovery-DQwd8eWZ.js} +1 -1
  243. package/dist/{pi-model-discovery-runtime-BB9O_19w.js → pi-model-discovery-runtime-BKwEjlY0.js} +6 -6
  244. package/dist/{pi-model-discovery-runtime-BM8W_E1B.js → pi-model-discovery-runtime-C_LjYTlu.js} +2 -2
  245. package/dist/{pi-model-discovery-runtime-DlSVUM4a.js → pi-model-discovery-runtime-DkNoyqZg.js} +2 -2
  246. package/dist/pi-model-discovery-runtime-uYSpi8_B.js +12 -0
  247. package/dist/{pi-tools.before-tool-call.runtime-YTBO0yhV.js → pi-tools.before-tool-call.runtime-CXBOjjBj.js} +2 -2
  248. package/dist/{pi-tools.before-tool-call.runtime-CbaZrfQj.js → pi-tools.before-tool-call.runtime-DfImcnUe.js} +2 -2
  249. package/dist/{pi-tools.before-tool-call.runtime-CZVSauJE.js → pi-tools.before-tool-call.runtime-gCJet3xa.js} +10 -10
  250. package/dist/{pi-tools.before-tool-call.runtime-yg3vl2rw.js → pi-tools.before-tool-call.runtime-mhmSMpSo.js} +6 -6
  251. package/dist/{pi-tools.policy-B8nfuYT3.js → pi-tools.policy-D6UiE_gG.js} +2 -2
  252. package/dist/{plugin-auto-enable-POm3kIKs.js → plugin-auto-enable-BYUBkHiG.js} +2 -2
  253. package/dist/{plugin-auto-enable-DKIdWd3o.js → plugin-auto-enable-fQ-uJndS.js} +1 -1
  254. package/dist/{plugin-install-plan-BhKQJYE9.js → plugin-install-plan-Dc8oPEOd.js} +1 -1
  255. package/dist/{plugin-registry-DMXyfhbZ.js → plugin-registry-B2Xg5cIZ.js} +2 -2
  256. package/dist/{plugin-registry-BLdJsHwq.js → plugin-registry-Cvr7jdxU.js} +3 -3
  257. package/dist/plugin-sdk/compat.js +12 -0
  258. package/dist/plugin-sdk/config/zod-schema.agent-defaults.d.ts +12 -0
  259. package/dist/plugin-sdk/config/zod-schema.agents.d.ts +12 -0
  260. package/dist/plugin-sdk/config/zod-schema.d.ts +12 -0
  261. package/dist/plugin-sdk/index.js +12 -0
  262. package/dist/plugin-sdk/telegram.js +12 -0
  263. package/dist/{plugins-cli-Mefrnu70.js → plugins-cli-B65JT-pj.js} +33 -33
  264. package/dist/{plugins-cli-Ckbdtcng.js → plugins-cli-Crxf_ppT.js} +49 -49
  265. package/dist/{ports-DoRPPhz1.js → ports-BKzkl2Nt.js} +2 -2
  266. package/dist/{ports-BgVXI3Be.js → ports-C6HO6zSD.js} +2 -2
  267. package/dist/{probe-auth-ClUveUpg.js → probe-auth-BhN3PhE1.js} +3 -3
  268. package/dist/{probe-auth-Dzz0uFIe.js → probe-auth-CBWjkGhd.js} +2 -2
  269. package/dist/{program-D992fHH9.js → program-Da383ALS.js} +38 -38
  270. package/dist/{program-context-CKwgiqKA.js → program-context-BCpzWqA0.js} +35 -35
  271. package/dist/{prompt-select-styled-8JBrpJWx.js → prompt-select-styled-CX2-E6Ws.js} +17 -17
  272. package/dist/{prompt-select-styled-Dj1guzwc.js → prompt-select-styled-DJXH3Ik2.js} +28 -28
  273. package/dist/{provider-auth-helpers-YFTUV89g.js → provider-auth-helpers-3K1-dUeB.js} +5 -5
  274. package/dist/{provider-auth-helpers-Bt0HFLar.js → provider-auth-helpers-CuFWByxX.js} +5 -5
  275. package/dist/{proxy-fetch-CuFiQFud.js → proxy-fetch-Spr_UMJ3.js} +1 -1
  276. package/dist/{qmd-manager-oxRfJV8J.js → qmd-manager-D5-UET4f.js} +7 -7
  277. package/dist/{qmd-manager-nnyEgnFp.js → qmd-manager-ZIMvAkMU.js} +20 -20
  278. package/dist/{query-expansion-CcJjpvgi.js → query-expansion-Czp8kqRG.js} +4 -4
  279. package/dist/{read-only-account-inspect-CWAyFOOe.js → read-only-account-inspect-sMyuBIwr.js} +3 -3
  280. package/dist/{redact-snapshot-CHOdPFBK.js → redact-snapshot-BhnwKwS_.js} +1 -1
  281. package/dist/{redact-snapshot-D2yDzyhm.js → redact-snapshot-esDYkCHN.js} +1 -1
  282. package/dist/{register.agent-DJ14KYnV.js → register.agent-C4BazelG.js} +65 -65
  283. package/dist/{register.agent-CDre9OAT.js → register.agent-F4PYdKIV.js} +49 -49
  284. package/dist/{register.backup-D0G-W10-.js → register.backup-DQtt76Pg.js} +1 -1
  285. package/dist/{register.backup-BDdG0ZZu.js → register.backup-DtwFlodN.js} +22 -22
  286. package/dist/register.configure-DuYlUfX0.js +117 -0
  287. package/dist/{register.configure-MZ2oMFlt.js → register.configure-uivoHsx6.js} +53 -53
  288. package/dist/{register.maintenance-8vlFCAL5.js → register.maintenance-CncGXJcn.js} +46 -46
  289. package/dist/{register.maintenance-CB5u00DB.js → register.maintenance-D1NhSg9p.js} +59 -59
  290. package/dist/{register.message-LPqeYXRd.js → register.message-CkSYWM9C.js} +33 -33
  291. package/dist/{register.message-B3Iqneie.js → register.message-pasYrjfU.js} +42 -42
  292. package/dist/{register.onboard-DHr-W74h.js → register.onboard-9kXyD5aU.js} +13 -13
  293. package/dist/{register.onboard-CTTwVj8d.js → register.onboard-CgARW4Sc.js} +8 -8
  294. package/dist/{register.setup-C3kh_TbN.js → register.setup-BtmboGlC.js} +16 -16
  295. package/dist/{register.setup-Dqfw5uEI.js → register.setup-D5oaiM2k.js} +8 -8
  296. package/dist/{register.status-health-sessions-QpojEQ9d.js → register.status-health-sessions-BaiIULJw.js} +52 -52
  297. package/dist/{register.status-health-sessions-DRKMAlro.js → register.status-health-sessions-QJWioUTw.js} +40 -40
  298. package/dist/{register.subclis-iSDvGATC.js → register.subclis-BJi9Wx12.js} +23 -23
  299. package/dist/{reply-Bf21Hr1C.js → reply-9_WxyHfF.js} +126 -117
  300. package/dist/{run-log-BqSHMnAd.js → run-log-D3XR2BLm.js} +13 -13
  301. package/dist/{run-log-CjYAiVe8.js → run-log-Q89iJgvA.js} +1 -1
  302. package/dist/{run-main-qumIkFEs.js → run-main--Va-DnXT.js} +51 -51
  303. package/dist/{runtime-B8hPSCRB.js → runtime-DpfmBWKQ.js} +2 -2
  304. package/dist/{runtime-CCYCyl1P.js → runtime-hakwcpul.js} +3 -3
  305. package/dist/{runtime-web-tools-gpT7ZniL.js → runtime-web-tools-BZcX_oAn.js} +2 -2
  306. package/dist/{runtime-web-tools-CRJ-iI9c.js → runtime-web-tools-CWlvqBpH.js} +2 -2
  307. package/dist/{sandbox-cli-cb2ui3Pc.js → sandbox-cli-BLBFMAgV.js} +1 -1
  308. package/dist/{sandbox-cli-BwX10ANz.js → sandbox-cli-CWgKwadY.js} +5 -5
  309. package/dist/{search-manager-CjC4g5lJ.js → search-manager-Bj4BRNiF.js} +1 -1
  310. package/dist/{secret-file-BaxohaZh.js → secret-file-9CYwZJSc.js} +1 -1
  311. package/dist/{secret-file-DcuJtucq.js → secret-file-BCAZa3Jw.js} +1 -1
  312. package/dist/{secrets-cli-BSv3yeQa.js → secrets-cli-B-LFbTtv.js} +10 -10
  313. package/dist/{secrets-cli-CYAGIMSW.js → secrets-cli-DOf7NbbB.js} +6 -6
  314. package/dist/{security-cli-Dk67sFGR.js → security-cli-B2iw16q9.js} +21 -21
  315. package/dist/{security-cli-CPjzUYo3.js → security-cli-DbRGAdz_.js} +10 -10
  316. package/dist/{send-DAr4cmzw.js → send-BeUTtwRC.js} +11 -11
  317. package/dist/{send-CP84wq9N.js → send-CU6MWFln.js} +28 -28
  318. package/dist/{send-CeA0VP-c.js → send-TlYsQWZw.js} +4 -4
  319. package/dist/{service-Cfk6VWeP.js → service-kXk8K3mn.js} +13 -13
  320. package/dist/{session-utils-G8TPVqDh.js → session-utils-5dTolcMA.js} +3 -3
  321. package/dist/{sessions-DghMB51-.js → sessions-CNRe8TkE.js} +2 -2
  322. package/dist/{shared-C6ksnJEO.js → shared-C_hG8rgh.js} +1 -1
  323. package/dist/{skill-scanner-B8J7JGHG.js → skill-scanner-djTgcKux.js} +7 -7
  324. package/dist/{skills-Mq1GCIyL.js → skills-D7xInzjY.js} +2 -2
  325. package/dist/{sqlite-DMwlw8gY.js → sqlite-BXiqNpZr.js} +14 -14
  326. package/dist/{status-BkoerIVk.js → status-BWvpeDQr.js} +1 -1
  327. package/dist/{status-DN1kwt_G.js → status-CjUDl8qO.js} +22 -22
  328. package/dist/{status-CLNIJHL1.js → status-DdFy329n.js} +13 -13
  329. package/dist/{status-C2lZy-Fn.js → status-DlhZNZRA.js} +1 -1
  330. package/dist/{status.update-CVnOl9T7.js → status.update-BC8_WNUD.js} +1 -1
  331. package/dist/{status.update-B7WMKBpu.js → status.update-s77gig85.js} +3 -3
  332. package/dist/subagent-registry-runtime-CrS70feQ.js +28 -0
  333. package/dist/{subagent-registry-runtime-BejBDRIf.js → subagent-registry-runtime-D68_xG8d.js} +9 -9
  334. package/dist/{subagent-registry-runtime-sAeDnTD0.js → subagent-registry-runtime-D8jeUc09.js} +31 -31
  335. package/dist/{subagent-registry-runtime-C2amjBau.js → subagent-registry-runtime-DLTR5fch.js} +39 -39
  336. package/dist/{subsystem-Br253I8q.js → subsystem-CDH9S_yW.js} +14 -14
  337. package/dist/{system-cli-C_xi1PG1.js → system-cli-CJfVDX21.js} +4 -4
  338. package/dist/{system-cli-CmjCyWeV.js → system-cli-CgYFKf5C.js} +8 -8
  339. package/dist/{systemd-linger-8q_0YAMa.js → systemd-linger-CQCpuIm8.js} +1 -1
  340. package/dist/{systemd-B5QGtWUt.js → systemd-lqHMKF03.js} +11 -11
  341. package/dist/{tailnet-BII1rF_F.js → tailnet-Dd530XEB.js} +1 -1
  342. package/dist/{tailnet-GA0Saj6K.js → tailnet-lUwvztzP.js} +1 -1
  343. package/dist/{update-cli-Cta7h1PN.js → update-cli-CTNv6NnW.js} +69 -69
  344. package/dist/{update-cli-DT51qYuH.js → update-cli-Ca6a5zyc.js} +49 -49
  345. package/dist/{update-B16VTBdW.js → update-lBwZcNEP.js} +2 -2
  346. package/dist/{update-runner-D0FkcfIv.js → update-runner-CSPTpzlG.js} +4 -4
  347. package/dist/{update-runner-Dk9ujIjY.js → update-runner-DgI58_4p.js} +16 -16
  348. package/dist/{webhooks-cli-DUi__sSq.js → webhooks-cli-D5ytuSnf.js} +1 -1
  349. package/dist/{webhooks-cli-fEwB1QWy.js → webhooks-cli-DGY-qrop.js} +5 -5
  350. package/dist/{workspace-DaDGuTlc.js → workspace-DY5PSKK1.js} +1 -1
  351. package/dist/{workspace-DRRA3YH5.js → workspace-DiYGwuGk.js} +20 -20
  352. package/dist/{writer-CBLUHPFY.js → writer-ChWOWmJt.js} +1 -1
  353. package/dist/{writer-DW7GwLNb.js → writer-Mpvw_WMM.js} +8 -8
  354. package/extensions/acpx/node_modules/.bin/acpx +3 -7
  355. package/extensions/diagnostics-otel/node_modules/.bin/acorn +3 -7
  356. package/extensions/diffs/node_modules/.bin/playwright-core +3 -7
  357. package/extensions/googlechat/node_modules/.bin/openclaw +17 -0
  358. package/extensions/hub/src/inbound.ts +16 -0
  359. package/extensions/matrix/node_modules/.bin/markdown-it +17 -0
  360. package/extensions/memory-core/node_modules/.bin/openclaw +17 -0
  361. package/extensions/memory-core/package.json +11 -0
  362. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +3 -7
  363. package/extensions/memory-lancedb/node_modules/.bin/openai +3 -7
  364. package/extensions/tlon/node_modules/.bin/tlon +17 -0
  365. package/package.json +2 -2
  366. package/dist/compact.runtime-B3XexHCz.js +0 -28
  367. package/dist/compact.runtime-BTNt86Cy.js +0 -66
  368. package/dist/deliver-runtime-DP7LMYJz.js +0 -14
  369. package/dist/deps-send-telegram.runtime-CNQMFHHL.js +0 -19
  370. package/dist/image-runtime-BKlmPwGz.js +0 -12
  371. package/dist/manager-runtime-BIERqG19.js +0 -15
  372. package/dist/pi-model-discovery-runtime-BRBH9-81.js +0 -12
  373. package/dist/register.configure-B6etuAnH.js +0 -117
  374. package/dist/subagent-registry-runtime-BBvfeFxp.js +0 -28
  375. package/extensions/google-antigravity-auth/node_modules/.bin/openclaw +0 -21
  376. package/extensions/memory-core/node_modules/.bin/nlc +0 -21
  377. package/extensions/memory-core/node_modules/.bin/node-llama-cpp +0 -21
  378. package/extensions/memory-core/node_modules/.bin/tsc +0 -21
  379. package/extensions/memory-core/node_modules/.bin/tsserver +0 -21
@@ -1,35 +1,35 @@
1
- import { A as resolveDefaultAgentId, B as resolveAgentModelPrimaryValue, C as listAgentIds, I as normalizeAtHashSlug, M as resolveRunModelFallbacksOverride, N as resolveSessionAgentId, O as resolveAgentSkillsFilter, P as resolveSessionAgentIds, R as normalizeStringEntries, S as hasConfiguredModelFallbacks, T as resolveAgentDir, V as toAgentModelListLike, _ as redactSensitiveText, b as testRegexWithBoundedInput, i as resolveSessionTranscriptPath, k as resolveAgentWorkspaceDir, m as PATH_ALIAS_POLICIES, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath, w as resolveAgentConfig, x as runTasksWithConcurrency, y as compileSafeRegex, z as resolveAgentModelFallbackValues } from "./paths-E3CbCLxE.js";
2
- import { c as expandHomePrefix, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-DHNo4U8q.js";
3
- import { S as normalizeLogLevel, T as consumeRootOptionToken, _ as isRich, a as defaultRuntime, c as unregisterActiveProgressLine, d as logVerbose, g as colorize, h as warn, i as createNonExitingRuntime, l as danger, m as shouldLogVerbose, n as sanitizeForLog, o as clearActiveProgressLine, p as setVerbose, s as registerActiveProgressLine, t as createSubsystemLogger, v as theme, w as resolvePreferredOpenClawTmpDir, y as getChildLogger } from "./subsystem-Br253I8q.js";
4
- import { $ as isCronSessionKey, B as normalizeMainKey, F as buildAgentMainSessionKey, H as resolveThreadSessionKeys, I as buildAgentPeerSessionKey, J as normalizeOptionalAccountId, K as DEFAULT_ACCOUNT_ID, L as classifySessionKeyShape, M as normalizeWindowsPathForComparison, N as DEFAULT_AGENT_ID, P as DEFAULT_MAIN_KEY, Q as isAcpSessionKey, R as isValidAgentId, S as openBoundaryFileSync, U as sanitizeAgentId, V as resolveAgentIdFromSessionKey, W as scopedHeartbeatWakeOptions, X as deriveSessionChatType, Y as isBlockedObjectKey, Z as getSubagentDepth, _ as runExec, et as isSubagentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, h as resolveOpenClawPackageRootSync, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, nt as resolveThreadParentSessionKey, q as normalizeAccountId$1, tt as parseAgentSessionKey, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFile, z as normalizeAgentId } from "./workspace-DRRA3YH5.js";
5
- import { S as isPlainObject, _ as shortenHomeInString, a as CONFIG_DIR, b as sliceUtf16Safe, c as ensureDir$3, d as isRecord$1, h as resolveUserPath, i as logWarn, l as escapeRegExp, m as resolveConfigDir, n as logError, o as clampInt, r as logInfo, t as logDebug, u as formatTerminalLink, v as shortenHomePath, x as truncateUtf16Safe, y as sleep } from "./logger-3NSI7j4D.js";
6
- import { $ as normalizeThinkLevel, $a as resolveAgentMaxConcurrent, $i as resolveMemorySlotDecision, $n as listEnabledTelegramAccounts, $r as redactIdentifier, $t as extractDeliveryInfo, A as buildAssistantMessageWithZeroUsage, Aa as normalizeTrustedSafeBinDirs, Ai as secretRefKey, An as resolveChannelResetConfig, Ar as assertSandboxPath, At as getApiErrorPayloadFingerprint, B as markAuthProfileUsed, Ba as extractShellWrapperInlineCommand, Bi as isLoopbackIpAddress, Br as mergeAlsoAllowPolicy, Bt as isRawApiErrorPayload, C as resolveModelAuthMode, Ca as getConfigValueAtPath, Cn as INPUT_PROVENANCE_KIND_VALUES, Co as DEFAULT_CONTEXT_TOKENS, Cr as GATEWAY_CLIENT_NAMES, Ct as isGoogleModelApi, Da as getTrustedSafeBinDirs, Di as EXEC_SECRET_REF_ID_JSON_SCHEMA_PATTERN, Dn as jsonUtf8Bytes, Dr as buildWorkspaceSkillCommandSpecs, Dt as formatAssistantErrorText, E as retryAsync, Ea as unsetConfigValueAtPath, Ei as parseNonNegativeByteSize, En as normalizeInputProvenance, Er as writeJsonAtomic, Et as classifyFailoverReasonFromHttpStatus, Fa as splitCommandChain, Fn as mergeSessionEntry, Fr as resolveSandboxConfigForAgent, Ft as isContextOverflowError, G as validateAnthropicTurns, Ga as splitShellArgs, Gi as validateJsonSchemaValue, Gn as normalizeChannelId$1, Gr as compileGlobPatterns, Gt as isTimeoutErrorMessage, H as buildApiErrorObservationFields, Ha as isShellWrapperExecutable, Hi as normalizeIpAddress, Hn as deriveSessionMetaPatch, Hr as expandToolGroups, Ht as parseImageDimensionError, I as resolveAuthProfileOrder, Ia as DEFAULT_SAFE_BINS, In as resolveFreshSessionTotalTokens, Ir as applyOwnerOnlyToolPolicy, It as isFailoverAssistantError, J as formatThinkingLevels, Ja as resolveSafeBinProfiles, Ji as isPathInside, Jn as resolveChannelGroupPolicy, Jr as ensureSessionHeader, Jt as resolveSandboxRuntimeStatus, K as validateGeminiTurns, Ka as SAFE_BIN_PROFILES, Ki as loadPluginManifestRegistry, Kn as getChannelDock, Kr as matchesAnyGlobPattern, Kt as ensureSandboxWorkspaceForSession, L as getSoonestCooldownExpiry, La as matchAllowlist, Lr as buildPluginToolGroups, Lt as isFailoverErrorMessage, M as buildUsageWithNoCost, Ma as analyzeShellCommand, Mn as resolveSessionResetType, Mr as resolveSandboxedMediaSource, Mt as isBillingAssistantError, N as isNonSecretApiKeyMarker, Na as buildEnforcedShellCommand, Ni as parseDurationMs, Nn as resolveThreadFlag, Nr as applySkillEnvOverrides, Nt as isCloudCodeAssistFormatError, O as createConfiguredOllamaStreamFn, Oa as isTrustedSafeBinPath, Oi as FILE_SECRET_REF_ID_PATTERN, On as resolveSessionKey, Or as loadWorkspaceSkillEntries, Ot as formatBillingErrorMessage, P as isSecretRefHeaderValueMarker, Pa as isWindowsPlatform, Pn as DEFAULT_RESET_TRIGGERS, Pr as applySkillEnvOverridesFromSnapshot, Pt as isCompactionFailureError, Q as normalizeReasoningLevel, Qa as containsEnvVarReference, Qi as resolveEffectiveEnableState, Qn as createTelegramActionGate, Qr as sanitizeGoogleTurnOrdering, Qt as resolveAndPersistSessionFile, R as isProfileInCooldown, Ra as resolveAllowlistCandidatePath, Rn as canonicalizeMainSessionAlias, Rr as collectExplicitAllowlist, Rt as isLikelyContextOverflowError, S as resolveEnvApiKey, Sa as unsetConfigOverride, Sn as parseInlineDirectives$1, So as splitTrailingAuthProfile, Sr as GATEWAY_CLIENT_MODES, St as downgradeOpenAIReasoningBlocks, Ta as setConfigValueAtPath, Ti as normalizeScpRemoteHost, Tn as hasInterSessionUserProvenance, To as DEFAULT_PROVIDER, Tr as resolveSessionLockMaxHoldFromTimeout, Tt as classifyFailoverReason, U as buildTextObservationFields, Ua as unwrapKnownDispatchWrapperInvocation, Un as getChannelPlugin, Ur as normalizeToolName, Ut as parseImageSizeError, V as resolveProfilesUnavailableReason, Va as isDispatchWrapperExecutable, Vi as isPrivateOrLoopbackIpAddress, Vn as resolveMainSessionKey, Vr as stripPluginOnlyAllowlist, Vt as isTransientHttpError, W as sanitizeForConsole, Wa as unwrapKnownShellMultiplexerInvocation, Wn as listChannelPlugins, Wr as resolveToolProfilePolicy, Wt as sanitizeUserFacingText, X as listThinkingLevels, Xi as applyTestPluginDefaults, Xn as resolveChannelGroupToolsPolicy, Xr as resolveBootstrapPromptTruncationWarningMode, Y as formatXHighModelHint, Ya as applyMergePatch, Yi as safeStatSync, Yn as resolveChannelGroupRequireMention, Yr as resolveBootstrapMaxChars, Yt as appendAssistantMessageToSessionTranscript, Z as normalizeElevatedLevel, Zi as normalizePluginsConfig, Zn as inspectTelegramAccount, Zr as resolveBootstrapTotalMaxChars, Zt as resolveSessionTranscriptFile, _a as resolveContextEngine, _i as TELEGRAM_COMMAND_NAME_PATTERN, _o as coerceSecretRef, _r as listDeliverableMessageChannels, _t as estimateBase64DecodedBytes, a as isCliProvider, aa as normalizeChatChannelId, ai as isNonEmptyString, an as resolveSessionStoreEntry, ao as dedupeProfileIds, ar as listBindings, at as isMessagingToolDuplicateNormalized, b as requireApiKey, ba as resetConfigOverrides, bn as countToolResults, bo as normalizeSecretInputString, br as resolveMessageChannel, bt as sanitizeToolCallIdsForCloudCodeAssist, c as normalizeProviderId, cn as updateSessionStoreEntry, co as ensureAuthProfileStore, cr as mapAllowFromEntries, ct as sanitizeImageBlocks, d as resolveDefaultModelForAgent, da as clearPluginCommands, di as readConfigFileSnapshot, dn as parseFiniteNumber$1, dr as resolveGroupSessionKey, ea as CHAT_CHANNEL_ORDER, ei as resolveApiKeyForProfile, en as emitSessionTranscriptUpdate, eo as VERSION, er as listTelegramAccountIds, et as normalizeUsageDisplay, f as resolveModelRefFromString, fa as executePluginCommand, fn as deliveryContextFromSession, fo as formatCliCommand, fr as INTERNAL_MESSAGE_CHANNEL, ft as getImageMetadata, ga as registerContextEngine, gi as validateConfigObjectWithPlugins, gn as normalizeSessionDeliveryFields, go as ENV_SECRET_REF_ID_RE, gr as isMarkdownCapableMessageChannel, gt as canonicalizeBase64, h as resolveThinkingDefault, ha as matchPluginCommand, hi as writeConfigFile, hn as normalizeDeliveryContext, ho as normalizeSecretInput, hr as isInternalMessageChannel, ht as resizeToJpeg, i as findNormalizedProviderValue, ia as normalizeChannelId$2, ii as describeUnknownError$1, in as recordSessionMetaFromInbound, io as resolveOwnerDisplaySetting, ir as buildChannelAccountBindings, j as buildStreamErrorAssistantMessage, ja as validateSafeBinArgv, jn as resolveSessionResetPolicy, jr as resolveSandboxInputPath, jt as isAuthAssistantError, k as buildAssistantMessage, ka as listWritableExplicitTrustedSafeBinDirs, ki as SECRET_PROVIDER_ALIAS_PATTERN, kn as evaluateSessionFreshness, kr as assertMediaNotDataUrl, kt as formatRawAssistantErrorForUi, la as setActivePluginRegistry, li as loadConfig, ln as isCacheEnabled, lo as resolveAuthStorePathForDisplay, lr as resolveConversationLabel, lt as sanitizeToolResultImages, m as resolveSubagentSpawnModelSelection, ma as listPluginCommands, mn as mergeDeliveryContext, n as buildConfiguredAllowlistKeys, na as listChatChannels, ni as resolveSecretRefValue, nn as loadSessionStore, no as resolveShellEnvFallbackTimeoutMs, nr as resolveTelegramPollActionGateState, nt as resolveResponseUsageMode, o as modelKey, oa as getActivePluginRegistry, oi as isRecord$2, on as updateLastRoute, oo as listProfilesForProvider, or as listAcpBindings, ot as normalizeTextForComparison, p as resolveReasoningDefault, pa as getPluginCommandSpecs, pi as resolveConfigSnapshotHash, pn as deliveryContextKey, po as resolveAuthProfileDisplayLabel, pr as isDeliverableMessageChannel, q as pickFallbackThinkingLevel, qa as normalizeSafeBinProfileFixtures, qi as discoverOpenClawPlugins, qn as listChannelDocks, qr as buildBootstrapContextFiles, qt as resolveSandboxContext, r as buildModelAliasIndex, ra as normalizeAnyChannelId, ri as resolveSecretRefValues, rn as readSessionUpdatedAt, ro as isDangerousHostEnvVarName, rr as resolveTelegramToken, rt as supportsXHighThinking, s as normalizeModelRef$1, sa as getActivePluginRegistryKey, si as parseDotPath, sn as updateSessionStore, so as markAuthProfileGood, sr as resolveAccountEntry, st as sanitizeSessionMessagesImages, t as buildAllowedModelSet, ta as getChatChannelMeta, ti as resolveSecretRefString, tn as onSessionTranscriptUpdate, to as getShellPathFromLoginShell, tr as resolveTelegramAccount, tt as normalizeVerboseLevel, u as resolveConfiguredModelRef, ua as createPluginRegistry, un as resolveCacheTtlMs$1, uo as resolveOpenClawAgentDir, ur as normalizeChatType, ut as resolveImageSanitizationLimits, va as isSupportedChannelId, vi as normalizeTelegramCommandName, vn as archiveSessionTranscripts, vo as hasConfiguredSecretInput, vr as normalizeMessageChannel, vt as extractToolCallsFromAssistant, w as resolveUsableCustomProviderApiKey, wa as parseConfigPath, wi as resolveIMessageRemoteAttachmentRoots, wn as applyInputProvenanceToUserMessage, wo as DEFAULT_MODEL, wr as acquireSessionWriteLock, wt as BILLING_ERROR_USER_MESSAGE, x as resolveApiKeyForProvider, xa as setConfigOverride, xi as isInboundPathAllowed, xn as extractToolCallNames, xo as resolveSecretInputRef, xr as GATEWAY_CLIENT_IDS, xt as downgradeOpenAIFunctionCallReasoningPairs, y as getApiKeyForModel, ya as getConfigOverrides, yi as resolveTelegramCustomCommands, yn as capArrayByJsonBytes, yo as normalizeResolvedSecretInputString, yr as resolveGatewayMessageChannel, yt as extractToolResultId, z as markAuthProfileFailure, za as resolveCommandResolutionFromArgv, zr as expandPolicyWithPluginGroups, zt as isRateLimitAssistantError } from "./model-selection-BrTh8v9L.js";
7
- import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-DJKrUYl0.js";
1
+ import { A as resolveDefaultAgentId, B as resolveAgentModelPrimaryValue, C as listAgentIds, I as normalizeAtHashSlug, M as resolveRunModelFallbacksOverride, N as resolveSessionAgentId, O as resolveAgentSkillsFilter, P as resolveSessionAgentIds, R as normalizeStringEntries, S as hasConfiguredModelFallbacks, T as resolveAgentDir, V as toAgentModelListLike, _ as redactSensitiveText, b as testRegexWithBoundedInput, i as resolveSessionTranscriptPath, k as resolveAgentWorkspaceDir, m as PATH_ALIAS_POLICIES, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath, w as resolveAgentConfig, x as runTasksWithConcurrency, y as compileSafeRegex, z as resolveAgentModelFallbackValues } from "./paths-Bg_l6kdG.js";
2
+ import { c as expandHomePrefix, i as resolveGatewayPort, n as resolveConfigPath, s as resolveStateDir, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-L_hqOE5A.js";
3
+ import { S as normalizeLogLevel, T as consumeRootOptionToken, _ as isRich, a as defaultRuntime, c as unregisterActiveProgressLine, d as logVerbose, g as colorize, h as warn, i as createNonExitingRuntime, l as danger, m as shouldLogVerbose, n as sanitizeForLog, o as clearActiveProgressLine, p as setVerbose, s as registerActiveProgressLine, t as createSubsystemLogger, v as theme, w as resolvePreferredOpenClawTmpDir, y as getChildLogger } from "./subsystem-CDH9S_yW.js";
4
+ import { $ as isCronSessionKey, B as normalizeMainKey, F as buildAgentMainSessionKey, H as resolveThreadSessionKeys, I as buildAgentPeerSessionKey, J as normalizeOptionalAccountId, K as DEFAULT_ACCOUNT_ID, L as classifySessionKeyShape, M as normalizeWindowsPathForComparison, N as DEFAULT_AGENT_ID, P as DEFAULT_MAIN_KEY, Q as isAcpSessionKey, R as isValidAgentId, S as openBoundaryFileSync, U as sanitizeAgentId, V as resolveAgentIdFromSessionKey, W as scopedHeartbeatWakeOptions, X as deriveSessionChatType, Y as isBlockedObjectKey, Z as getSubagentDepth, _ as runExec, et as isSubagentSessionKey, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, h as resolveOpenClawPackageRootSync, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, nt as resolveThreadParentSessionKey, q as normalizeAccountId$1, tt as parseAgentSessionKey, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as openBoundaryFile, z as normalizeAgentId } from "./workspace-DiYGwuGk.js";
5
+ import { S as isPlainObject, _ as shortenHomeInString, a as CONFIG_DIR, b as sliceUtf16Safe, c as ensureDir$3, d as isRecord$1, h as resolveUserPath, i as logWarn, l as escapeRegExp, m as resolveConfigDir, n as logError, o as clampInt, r as logInfo, t as logDebug, u as formatTerminalLink, v as shortenHomePath, x as truncateUtf16Safe, y as sleep } from "./logger-BA9koAaC.js";
6
+ import { $ as normalizeThinkLevel, $a as resolveAgentMaxConcurrent, $i as resolveMemorySlotDecision, $n as listEnabledTelegramAccounts, $r as redactIdentifier, $t as extractDeliveryInfo, A as buildAssistantMessageWithZeroUsage, Aa as normalizeTrustedSafeBinDirs, Ai as secretRefKey, An as resolveChannelResetConfig, Ar as assertSandboxPath, At as getApiErrorPayloadFingerprint, B as markAuthProfileUsed, Ba as extractShellWrapperInlineCommand, Bi as isLoopbackIpAddress, Br as mergeAlsoAllowPolicy, Bt as isRawApiErrorPayload, C as resolveModelAuthMode, Ca as getConfigValueAtPath, Cn as INPUT_PROVENANCE_KIND_VALUES, Co as DEFAULT_CONTEXT_TOKENS, Cr as GATEWAY_CLIENT_NAMES, Ct as isGoogleModelApi, Da as getTrustedSafeBinDirs, Di as EXEC_SECRET_REF_ID_JSON_SCHEMA_PATTERN, Dn as jsonUtf8Bytes, Dr as buildWorkspaceSkillCommandSpecs, Dt as formatAssistantErrorText, E as retryAsync, Ea as unsetConfigValueAtPath, Ei as parseNonNegativeByteSize, En as normalizeInputProvenance, Er as writeJsonAtomic, Et as classifyFailoverReasonFromHttpStatus, Fa as splitCommandChain, Fn as mergeSessionEntry, Fr as resolveSandboxConfigForAgent, Ft as isContextOverflowError, G as validateAnthropicTurns, Ga as splitShellArgs, Gi as validateJsonSchemaValue, Gn as normalizeChannelId$1, Gr as compileGlobPatterns, Gt as isTimeoutErrorMessage, H as buildApiErrorObservationFields, Ha as isShellWrapperExecutable, Hi as normalizeIpAddress, Hn as deriveSessionMetaPatch, Hr as expandToolGroups, Ht as parseImageDimensionError, I as resolveAuthProfileOrder, Ia as DEFAULT_SAFE_BINS, In as resolveFreshSessionTotalTokens, Ir as applyOwnerOnlyToolPolicy, It as isFailoverAssistantError, J as formatThinkingLevels, Ja as resolveSafeBinProfiles, Ji as isPathInside, Jn as resolveChannelGroupPolicy, Jr as ensureSessionHeader, Jt as resolveSandboxRuntimeStatus, K as validateGeminiTurns, Ka as SAFE_BIN_PROFILES, Ki as loadPluginManifestRegistry, Kn as getChannelDock, Kr as matchesAnyGlobPattern, Kt as ensureSandboxWorkspaceForSession, L as getSoonestCooldownExpiry, La as matchAllowlist, Lr as buildPluginToolGroups, Lt as isFailoverErrorMessage, M as buildUsageWithNoCost, Ma as analyzeShellCommand, Mn as resolveSessionResetType, Mr as resolveSandboxedMediaSource, Mt as isBillingAssistantError, N as isNonSecretApiKeyMarker, Na as buildEnforcedShellCommand, Ni as parseDurationMs, Nn as resolveThreadFlag, Nr as applySkillEnvOverrides, Nt as isCloudCodeAssistFormatError, O as createConfiguredOllamaStreamFn, Oa as isTrustedSafeBinPath, Oi as FILE_SECRET_REF_ID_PATTERN, On as resolveSessionKey, Or as loadWorkspaceSkillEntries, Ot as formatBillingErrorMessage, P as isSecretRefHeaderValueMarker, Pa as isWindowsPlatform, Pn as DEFAULT_RESET_TRIGGERS, Pr as applySkillEnvOverridesFromSnapshot, Pt as isCompactionFailureError, Q as normalizeReasoningLevel, Qa as containsEnvVarReference, Qi as resolveEffectiveEnableState, Qn as createTelegramActionGate, Qr as sanitizeGoogleTurnOrdering, Qt as resolveAndPersistSessionFile, R as isProfileInCooldown, Ra as resolveAllowlistCandidatePath, Rn as canonicalizeMainSessionAlias, Rr as collectExplicitAllowlist, Rt as isLikelyContextOverflowError, S as resolveEnvApiKey, Sa as unsetConfigOverride, Sn as parseInlineDirectives$1, So as splitTrailingAuthProfile, Sr as GATEWAY_CLIENT_MODES, St as downgradeOpenAIReasoningBlocks, Ta as setConfigValueAtPath, Ti as normalizeScpRemoteHost, Tn as hasInterSessionUserProvenance, To as DEFAULT_PROVIDER, Tr as resolveSessionLockMaxHoldFromTimeout, Tt as classifyFailoverReason, U as buildTextObservationFields, Ua as unwrapKnownDispatchWrapperInvocation, Un as getChannelPlugin, Ur as normalizeToolName, Ut as parseImageSizeError, V as resolveProfilesUnavailableReason, Va as isDispatchWrapperExecutable, Vi as isPrivateOrLoopbackIpAddress, Vn as resolveMainSessionKey, Vr as stripPluginOnlyAllowlist, Vt as isTransientHttpError, W as sanitizeForConsole, Wa as unwrapKnownShellMultiplexerInvocation, Wn as listChannelPlugins, Wr as resolveToolProfilePolicy, Wt as sanitizeUserFacingText, X as listThinkingLevels, Xi as applyTestPluginDefaults, Xn as resolveChannelGroupToolsPolicy, Xr as resolveBootstrapPromptTruncationWarningMode, Y as formatXHighModelHint, Ya as applyMergePatch, Yi as safeStatSync, Yn as resolveChannelGroupRequireMention, Yr as resolveBootstrapMaxChars, Yt as appendAssistantMessageToSessionTranscript, Z as normalizeElevatedLevel, Zi as normalizePluginsConfig, Zn as inspectTelegramAccount, Zr as resolveBootstrapTotalMaxChars, Zt as resolveSessionTranscriptFile, _a as resolveContextEngine, _i as TELEGRAM_COMMAND_NAME_PATTERN, _o as coerceSecretRef, _r as listDeliverableMessageChannels, _t as estimateBase64DecodedBytes, a as isCliProvider, aa as normalizeChatChannelId, ai as isNonEmptyString, an as resolveSessionStoreEntry, ao as dedupeProfileIds, ar as listBindings, at as isMessagingToolDuplicateNormalized, b as requireApiKey, ba as resetConfigOverrides, bn as countToolResults, bo as normalizeSecretInputString, br as resolveMessageChannel, bt as sanitizeToolCallIdsForCloudCodeAssist, c as normalizeProviderId, cn as updateSessionStoreEntry, co as ensureAuthProfileStore, cr as mapAllowFromEntries, ct as sanitizeImageBlocks, d as resolveDefaultModelForAgent, da as clearPluginCommands, di as readConfigFileSnapshot, dn as parseFiniteNumber$1, dr as resolveGroupSessionKey, ea as CHAT_CHANNEL_ORDER, ei as resolveApiKeyForProfile, en as emitSessionTranscriptUpdate, eo as VERSION, er as listTelegramAccountIds, et as normalizeUsageDisplay, f as resolveModelRefFromString, fa as executePluginCommand, fn as deliveryContextFromSession, fo as formatCliCommand, fr as INTERNAL_MESSAGE_CHANNEL, ft as getImageMetadata, ga as registerContextEngine, gi as validateConfigObjectWithPlugins, gn as normalizeSessionDeliveryFields, go as ENV_SECRET_REF_ID_RE, gr as isMarkdownCapableMessageChannel, gt as canonicalizeBase64, h as resolveThinkingDefault, ha as matchPluginCommand, hi as writeConfigFile, hn as normalizeDeliveryContext, ho as normalizeSecretInput, hr as isInternalMessageChannel, ht as resizeToJpeg, i as findNormalizedProviderValue, ia as normalizeChannelId$2, ii as describeUnknownError$1, in as recordSessionMetaFromInbound, io as resolveOwnerDisplaySetting, ir as buildChannelAccountBindings, j as buildStreamErrorAssistantMessage, ja as validateSafeBinArgv, jn as resolveSessionResetPolicy, jr as resolveSandboxInputPath, jt as isAuthAssistantError, k as buildAssistantMessage, ka as listWritableExplicitTrustedSafeBinDirs, ki as SECRET_PROVIDER_ALIAS_PATTERN, kn as evaluateSessionFreshness, kr as assertMediaNotDataUrl, kt as formatRawAssistantErrorForUi, la as setActivePluginRegistry, li as loadConfig, ln as isCacheEnabled, lo as resolveAuthStorePathForDisplay, lr as resolveConversationLabel, lt as sanitizeToolResultImages, m as resolveSubagentSpawnModelSelection, ma as listPluginCommands, mn as mergeDeliveryContext, n as buildConfiguredAllowlistKeys, na as listChatChannels, ni as resolveSecretRefValue, nn as loadSessionStore, no as resolveShellEnvFallbackTimeoutMs, nr as resolveTelegramPollActionGateState, nt as resolveResponseUsageMode, o as modelKey, oa as getActivePluginRegistry, oi as isRecord$2, on as updateLastRoute, oo as listProfilesForProvider, or as listAcpBindings, ot as normalizeTextForComparison, p as resolveReasoningDefault, pa as getPluginCommandSpecs, pi as resolveConfigSnapshotHash, pn as deliveryContextKey, po as resolveAuthProfileDisplayLabel, pr as isDeliverableMessageChannel, q as pickFallbackThinkingLevel, qa as normalizeSafeBinProfileFixtures, qi as discoverOpenClawPlugins, qn as listChannelDocks, qr as buildBootstrapContextFiles, qt as resolveSandboxContext, r as buildModelAliasIndex, ra as normalizeAnyChannelId, ri as resolveSecretRefValues, rn as readSessionUpdatedAt, ro as isDangerousHostEnvVarName, rr as resolveTelegramToken, rt as supportsXHighThinking, s as normalizeModelRef$1, sa as getActivePluginRegistryKey, si as parseDotPath, sn as updateSessionStore, so as markAuthProfileGood, sr as resolveAccountEntry, st as sanitizeSessionMessagesImages, t as buildAllowedModelSet, ta as getChatChannelMeta, ti as resolveSecretRefString, tn as onSessionTranscriptUpdate, to as getShellPathFromLoginShell, tr as resolveTelegramAccount, tt as normalizeVerboseLevel, u as resolveConfiguredModelRef, ua as createPluginRegistry, un as resolveCacheTtlMs$1, uo as resolveOpenClawAgentDir, ur as normalizeChatType, ut as resolveImageSanitizationLimits, va as isSupportedChannelId, vi as normalizeTelegramCommandName, vn as archiveSessionTranscripts, vo as hasConfiguredSecretInput, vr as normalizeMessageChannel, vt as extractToolCallsFromAssistant, w as resolveUsableCustomProviderApiKey, wa as parseConfigPath, wi as resolveIMessageRemoteAttachmentRoots, wn as applyInputProvenanceToUserMessage, wo as DEFAULT_MODEL, wr as acquireSessionWriteLock, wt as BILLING_ERROR_USER_MESSAGE, x as resolveApiKeyForProvider, xa as setConfigOverride, xi as isInboundPathAllowed, xn as extractToolCallNames, xo as resolveSecretInputRef, xr as GATEWAY_CLIENT_IDS, xt as downgradeOpenAIFunctionCallReasoningPairs, y as getApiKeyForModel, ya as getConfigOverrides, yi as resolveTelegramCustomCommands, yn as capArrayByJsonBytes, yo as normalizeResolvedSecretInputString, yr as resolveGatewayMessageChannel, yt as extractToolResultId, z as markAuthProfileFailure, za as resolveCommandResolutionFromArgv, zr as expandPolicyWithPluginGroups, zt as isRateLimitAssistantError } from "./model-selection-CvKAj7nY.js";
7
+ import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-CLlAnyEf.js";
8
8
  import { t as parseBooleanValue$1 } from "./boolean-C7Ct_klp.js";
9
- import { t as isTruthyEnvValue } from "./env-DGWeP3w5.js";
10
- import { h as createInternalHookEvent, m as MANIFEST_KEY, y as triggerInternalHook } from "./frontmatter-_kVsuvOa.js";
11
- import { A as normalizeTargetForProvider, B as stripSilentToken, C as isRenderablePayload, D as resolveReplyToMode, E as createReplyToModeFilterForChannel, F as generateSecureUuid, I as HEARTBEAT_TOKEN, L as SILENT_REPLY_TOKEN, M as initializeGlobalHookRunner, N as joinPresentTextSegments, O as buildTargetResolverSignature, P as generateSecureToken, R as isSilentReplyPrefixText, S as filterMessagingToolMediaDuplicates, T as shouldSuppressReasoningPayload, _ as toPluginMessageSentEvent, a as normalizeReplyPayloadsForDelivery, b as applyReplyThreading, c as splitMediaFromOutput, d as toInternalMessagePreprocessedContext, f as toInternalMessageReceivedContext, g as toPluginMessageReceivedEvent, h as toPluginMessageContext, j as getGlobalHookRunner, k as normalizeChannelTargetInput, l as buildCanonicalSentMessageHookContext, m as toInternalMessageTranscribedContext, o as throwIfAborted, p as toInternalMessageSentContext, s as parseReplyDirectives, t as deliverOutboundPayloads, u as deriveInboundMessageHookContext, v as fireAndForgetHook, w as shouldSuppressMessagingToolReplies, x as filterMessagingToolDuplicates, y as applyReplyTagsToPayload, z as isSilentReplyText } from "./deliver-DZveowc3.js";
12
- import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-xdfzrdaY.js";
13
- import { a as chunkText, c as resolveTextChunkLimit, d as parseFenceSpans, h as resolveTelegramTargetChatType, i as chunkMarkdownTextWithMode, l as findFenceSpanAt, m as parseTelegramTarget, o as chunkTextWithMode, r as chunkMarkdownText, s as resolveChunkMode, t as chunkByNewline, u as isSafeFenceBreak } from "./chunk-DB_LA-72.js";
14
- import { a as extensionForMime, c as isGifMedia, d as MAX_IMAGE_BYTES, i as detectMime, l as kindFromMime, n as fetchRemoteMedia, p as mediaKindFromMime, r as readResponseWithLimit, s as isAudioFileName, t as MediaFetchError } from "./fetch-BXs0KCX9.js";
15
- import { $ as normalizeDmAllowFromWithStore, A as buildGroupLabel, B as extractTelegramLocation, C as withTelegramApiErrorLogging, D as resolveMarkdownTableMode, E as recordChannelActivity, F as buildTelegramParentPeer, G as resolveTelegramForumThreadId, H as hasBotMention, I as buildTelegramThreadParams, J as resolveTelegramReplyId, K as resolveTelegramGroupAllowFromContext, L as buildTypingThreadParams, M as buildSenderName, N as buildTelegramGroupFrom, O as loadCronStore, P as buildTelegramGroupPeerId, Q as normalizeAllowFrom$1, R as describeReplyTarget, S as splitTelegramCaption, T as getChannelActivity, U as normalizeForwardedContext, V as getTelegramTextParts, W as resolveTelegramDirectPeerId, X as resolveTelegramThreadSpec, Y as resolveTelegramStreamMode, Z as isSenderAllowed, _ as markdownToTelegramHtml, a as editMessageTelegram, at as resolvePollMaxSelections, b as renderMarkdownWithMarkers, c as sendPollTelegram, ct as loadWebMediaRaw, d as resolveTelegramVoiceSend, dt as removeChannelAllowFromStoreEntry, et as resolveSenderAllowMatch, f as wasSentByBot, ft as upsertChannelPairingRequest, g as markdownToTelegramChunks, h as isTelegramClientRejection, i as editMessageReplyMarkupTelegram, it as normalizePollInput, j as buildSenderLabel, k as resolveCronStorePath, l as sendStickerTelegram, lt as addChannelAllowFromStoreEntry, m as isSafeToRetrySendError, mt as isVoiceCompatibleAudio, n as createForumTopicTelegram, nt as formatLocationText, o as reactMessageTelegram, ot as getDefaultLocalRoots, p as isRecoverableTelegramNetworkError, pt as listPairingChannels, q as resolveTelegramMediaPlaceholder, r as deleteMessageTelegram, rt as toLocationContext, s as sendMessageTelegram, st as loadWebMedia, t as buildInlineKeyboard, tt as firstDefined$1, u as sendTypingTelegram, ut as readChannelAllowFromStore, v as renderTelegramHtmlText, w as buildOutboundMediaLoadOptions, x as markdownToIRWithMeta, y as wrapFileReferencesInHtml, z as expandTextLinks } from "./send-CP84wq9N.js";
16
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BfCU9u9n.js";
17
- import { C as extractTextFromChatContent, D as ensureOpenClawModelsJson, E as minimaxUnderstandImage, S as isInsideCode, T as isMinimaxVlmProvider, _ as stripThinkingTagsFromText, a as resolveProviderVisionModelFromConfig, b as stripReasoningTagsFromText, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripModelSpecialTokens, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$2, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as formatToolSummary, w as isMinimaxVlmModel, x as findCodeRegions, y as resolveToolDisplay } from "./image-B-QmrXyQ.js";
18
- import { C as modelSupportsVision, S as loadModelCatalog, a as resolveAutoImageModel, b as resolveAttachmentKind, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, h as DEFAULT_IMAGE_MODELS, i as normalizeMediaAttachments, l as resolveConcurrency, m as CLI_OUTPUT_MAX_BUFFER, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as AUTO_IMAGE_KEY_PROVIDERS, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as normalizeAttachmentPath, x as findModelInCatalog, y as normalizeAttachments } from "./audio-transcription-runner-Bt0PplM9.js";
19
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-ysSrZ6CP.js";
20
- import { a as isBlockedHostnameOrIp, c as formatErrorMessage, i as SsrFBlockedError, l as formatUncaughtError, n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard, u as readErrorName } from "./fetch-guard-DDQrBzBv.js";
9
+ import { t as isTruthyEnvValue } from "./env-Bhn5CLil.js";
10
+ import { h as createInternalHookEvent, m as MANIFEST_KEY, y as triggerInternalHook } from "./frontmatter-CC95HXlE.js";
11
+ import { A as normalizeTargetForProvider, B as stripSilentToken, C as isRenderablePayload, D as resolveReplyToMode, E as createReplyToModeFilterForChannel, F as generateSecureUuid, I as HEARTBEAT_TOKEN, L as SILENT_REPLY_TOKEN, M as initializeGlobalHookRunner, N as joinPresentTextSegments, O as buildTargetResolverSignature, P as generateSecureToken, R as isSilentReplyPrefixText, S as filterMessagingToolMediaDuplicates, T as shouldSuppressReasoningPayload, _ as toPluginMessageSentEvent, a as normalizeReplyPayloadsForDelivery, b as applyReplyThreading, c as splitMediaFromOutput, d as toInternalMessagePreprocessedContext, f as toInternalMessageReceivedContext, g as toPluginMessageReceivedEvent, h as toPluginMessageContext, j as getGlobalHookRunner, k as normalizeChannelTargetInput, l as buildCanonicalSentMessageHookContext, m as toInternalMessageTranscribedContext, o as throwIfAborted, p as toInternalMessageSentContext, s as parseReplyDirectives, t as deliverOutboundPayloads, u as deriveInboundMessageHookContext, v as fireAndForgetHook, w as shouldSuppressMessagingToolReplies, x as filterMessagingToolDuplicates, y as applyReplyTagsToPayload, z as isSilentReplyText } from "./deliver-D2j_qrPV.js";
12
+ import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-G-xDRRdG.js";
13
+ import { a as chunkText, c as resolveTextChunkLimit, d as parseFenceSpans, h as resolveTelegramTargetChatType, i as chunkMarkdownTextWithMode, l as findFenceSpanAt, m as parseTelegramTarget, o as chunkTextWithMode, r as chunkMarkdownText, s as resolveChunkMode, t as chunkByNewline, u as isSafeFenceBreak } from "./chunk-BSmRwqjw.js";
14
+ import { a as extensionForMime, c as isGifMedia, d as MAX_IMAGE_BYTES, i as detectMime, l as kindFromMime, n as fetchRemoteMedia, p as mediaKindFromMime, r as readResponseWithLimit, s as isAudioFileName, t as MediaFetchError } from "./fetch-LN1gb6p0.js";
15
+ import { $ as normalizeDmAllowFromWithStore, A as buildGroupLabel, B as extractTelegramLocation, C as withTelegramApiErrorLogging, D as resolveMarkdownTableMode, E as recordChannelActivity, F as buildTelegramParentPeer, G as resolveTelegramForumThreadId, H as hasBotMention, I as buildTelegramThreadParams, J as resolveTelegramReplyId, K as resolveTelegramGroupAllowFromContext, L as buildTypingThreadParams, M as buildSenderName, N as buildTelegramGroupFrom, O as loadCronStore, P as buildTelegramGroupPeerId, Q as normalizeAllowFrom$1, R as describeReplyTarget, S as splitTelegramCaption, T as getChannelActivity, U as normalizeForwardedContext, V as getTelegramTextParts, W as resolveTelegramDirectPeerId, X as resolveTelegramThreadSpec, Y as resolveTelegramStreamMode, Z as isSenderAllowed, _ as markdownToTelegramHtml, a as editMessageTelegram, at as resolvePollMaxSelections, b as renderMarkdownWithMarkers, c as sendPollTelegram, ct as loadWebMediaRaw, d as resolveTelegramVoiceSend, dt as removeChannelAllowFromStoreEntry, et as resolveSenderAllowMatch, f as wasSentByBot, ft as upsertChannelPairingRequest, g as markdownToTelegramChunks, h as isTelegramClientRejection, i as editMessageReplyMarkupTelegram, it as normalizePollInput, j as buildSenderLabel, k as resolveCronStorePath, l as sendStickerTelegram, lt as addChannelAllowFromStoreEntry, m as isSafeToRetrySendError, mt as isVoiceCompatibleAudio, n as createForumTopicTelegram, nt as formatLocationText, o as reactMessageTelegram, ot as getDefaultLocalRoots, p as isRecoverableTelegramNetworkError, pt as listPairingChannels, q as resolveTelegramMediaPlaceholder, r as deleteMessageTelegram, rt as toLocationContext, s as sendMessageTelegram, st as loadWebMedia, t as buildInlineKeyboard, tt as firstDefined$1, u as sendTypingTelegram, ut as readChannelAllowFromStore, v as renderTelegramHtmlText, w as buildOutboundMediaLoadOptions, x as markdownToIRWithMeta, y as wrapFileReferencesInHtml, z as expandTextLinks } from "./send-CU6MWFln.js";
16
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BOkx-R2x.js";
17
+ import { C as extractTextFromChatContent, D as ensureOpenClawModelsJson, E as minimaxUnderstandImage, S as isInsideCode, T as isMinimaxVlmProvider, _ as stripThinkingTagsFromText, a as resolveProviderVisionModelFromConfig, b as stripReasoningTagsFromText, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripModelSpecialTokens, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$2, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as formatToolSummary, w as isMinimaxVlmModel, x as findCodeRegions, y as resolveToolDisplay } from "./image-DHFliGoO.js";
18
+ import { C as modelSupportsVision, S as loadModelCatalog, a as resolveAutoImageModel, b as resolveAttachmentKind, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g as registerUnhandledRejectionHandler, h as DEFAULT_IMAGE_MODELS, i as normalizeMediaAttachments, l as resolveConcurrency, m as CLI_OUTPUT_MAX_BUFFER, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as AUTO_IMAGE_KEY_PROVIDERS, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as normalizeAttachmentPath, x as findModelInCatalog, y as normalizeAttachments } from "./audio-transcription-runner-TUBV75w0.js";
19
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-CyRw91V8.js";
20
+ import { a as isBlockedHostnameOrIp, c as formatErrorMessage, i as SsrFBlockedError, l as formatUncaughtError, n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard, u as readErrorName } from "./fetch-guard-Bd5oI7xu.js";
21
21
  import { i as fetchWithTimeout, r as bindAbortRelay, t as hasEnvHttpProxyConfigured } from "./proxy-env-C-Ky4p9K.js";
22
- import { n as makeProxyFetch } from "./proxy-fetch-CuFiQFud.js";
22
+ import { n as makeProxyFetch } from "./proxy-fetch-Spr_UMJ3.js";
23
23
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-BCdKTITI.js";
24
- import { n as resolveFetch, t as resolveTelegramFetch } from "./fetch-aXWb4Ao5.js";
25
- import { a as openFileWithinRoot, c as writeFileWithinRoot, i as createRootScopedReadFile, n as appendFileWithinRoot, o as readFileWithinRoot, r as copyFileWithinRoot, t as SafeOpenError } from "./fs-safe-DqIZh4BQ.js";
26
- import { a as shortDiagnosticFingerprint, i as isDegradedMemoryStatus, o as summarizeMemoryStatus, s as resolveMemorySearchConfig } from "./manager-CwuAu16U.js";
27
- import { _ as normalizeExtraMemoryPaths, g as normalizeExcludedMemoryPaths, h as listMemoryFiles, n as isQueryStopWordToken, t as extractKeywords } from "./query-expansion-CcJjpvgi.js";
24
+ import { n as resolveFetch, t as resolveTelegramFetch } from "./fetch-BWClp-zV.js";
25
+ import { a as openFileWithinRoot, c as writeFileWithinRoot, i as createRootScopedReadFile, n as appendFileWithinRoot, o as readFileWithinRoot, r as copyFileWithinRoot, t as SafeOpenError } from "./fs-safe-hxxMXweE.js";
26
+ import { a as shortDiagnosticFingerprint, i as isDegradedMemoryStatus, o as summarizeMemoryStatus, s as resolveMemorySearchConfig } from "./manager-BLYILa5H.js";
27
+ import { _ as normalizeExtraMemoryPaths, g as normalizeExcludedMemoryPaths, h as listMemoryFiles, n as isQueryStopWordToken, t as extractKeywords } from "./query-expansion-Czp8kqRG.js";
28
28
  import { createRequire } from "node:module";
29
29
  import fs, { appendFile, mkdir } from "node:fs/promises";
30
30
  import os, { homedir } from "node:os";
31
31
  import path, { isAbsolute } from "node:path";
32
- import syncFs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
32
+ import fs$1, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
33
33
  import JSON5 from "json5";
34
34
  import { isDeepStrictEqual, promisify } from "node:util";
35
35
  import { execFile, execFileSync, spawn, spawnSync } from "node:child_process";
@@ -299,7 +299,7 @@ var LegacyContextEngine = class {
299
299
  }
300
300
  async afterTurn(_params) {}
301
301
  async compact(params) {
302
- const { compactEmbeddedPiSessionDirect } = await import("./compact.runtime-B3XexHCz.js");
302
+ const { compactEmbeddedPiSessionDirect } = await import("./compact.runtime-DvhVgC1j.js");
303
303
  const runtimeContext = params.runtimeContext ?? {};
304
304
  const result = await compactEmbeddedPiSessionDirect({
305
305
  ...runtimeContext,
@@ -2547,7 +2547,7 @@ async function resolveOpenClawDocsPath(params) {
2547
2547
  const workspaceDir = params.workspaceDir?.trim();
2548
2548
  if (workspaceDir) {
2549
2549
  const workspaceDocs = path.join(workspaceDir, "docs");
2550
- if (syncFs.existsSync(workspaceDocs)) return workspaceDocs;
2550
+ if (fs$1.existsSync(workspaceDocs)) return workspaceDocs;
2551
2551
  }
2552
2552
  const packageRoot = await resolveOpenClawPackageRoot({
2553
2553
  cwd: params.cwd,
@@ -2556,7 +2556,7 @@ async function resolveOpenClawDocsPath(params) {
2556
2556
  });
2557
2557
  if (!packageRoot) return null;
2558
2558
  const packageDocs = path.join(packageRoot, "docs");
2559
- return syncFs.existsSync(packageDocs) ? packageDocs : null;
2559
+ return fs$1.existsSync(packageDocs) ? packageDocs : null;
2560
2560
  }
2561
2561
  //#endregion
2562
2562
  //#region src/agents/model-tool-support.ts
@@ -6128,7 +6128,7 @@ function resolveDefaultIdentityPath() {
6128
6128
  return path.join(resolveStateDir(), "identity", "device.json");
6129
6129
  }
6130
6130
  function ensureDir$2(filePath) {
6131
- syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
6131
+ fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
6132
6132
  }
6133
6133
  const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
6134
6134
  function base64UrlEncode(buf) {
@@ -6164,8 +6164,8 @@ function generateIdentity() {
6164
6164
  }
6165
6165
  function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
6166
6166
  try {
6167
- if (syncFs.existsSync(filePath)) {
6168
- const raw = syncFs.readFileSync(filePath, "utf8");
6167
+ if (fs$1.existsSync(filePath)) {
6168
+ const raw = fs$1.readFileSync(filePath, "utf8");
6169
6169
  const parsed = JSON.parse(raw);
6170
6170
  if (parsed?.version === 1 && typeof parsed.deviceId === "string" && typeof parsed.publicKeyPem === "string" && typeof parsed.privateKeyPem === "string") {
6171
6171
  const derivedId = fingerprintPublicKey(parsed.publicKeyPem);
@@ -6174,9 +6174,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
6174
6174
  ...parsed,
6175
6175
  deviceId: derivedId
6176
6176
  };
6177
- syncFs.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
6177
+ fs$1.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
6178
6178
  try {
6179
- syncFs.chmodSync(filePath, 384);
6179
+ fs$1.chmodSync(filePath, 384);
6180
6180
  } catch {}
6181
6181
  return {
6182
6182
  deviceId: derivedId,
@@ -6201,9 +6201,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
6201
6201
  privateKeyPem: identity.privateKeyPem,
6202
6202
  createdAtMs: Date.now()
6203
6203
  };
6204
- syncFs.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
6204
+ fs$1.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
6205
6205
  try {
6206
- syncFs.chmodSync(filePath, 384);
6206
+ fs$1.chmodSync(filePath, 384);
6207
6207
  } catch {}
6208
6208
  return identity;
6209
6209
  }
@@ -6411,8 +6411,8 @@ function resolveDeviceAuthPath(env = process.env) {
6411
6411
  }
6412
6412
  function readStore(filePath) {
6413
6413
  try {
6414
- if (!syncFs.existsSync(filePath)) return null;
6415
- const raw = syncFs.readFileSync(filePath, "utf8");
6414
+ if (!fs$1.existsSync(filePath)) return null;
6415
+ const raw = fs$1.readFileSync(filePath, "utf8");
6416
6416
  const parsed = JSON.parse(raw);
6417
6417
  if (parsed?.version !== 1 || typeof parsed.deviceId !== "string") return null;
6418
6418
  if (!parsed.tokens || typeof parsed.tokens !== "object") return null;
@@ -6422,10 +6422,10 @@ function readStore(filePath) {
6422
6422
  }
6423
6423
  }
6424
6424
  function writeStore(filePath, store) {
6425
- syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
6426
- syncFs.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
6425
+ fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
6426
+ fs$1.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
6427
6427
  try {
6428
- syncFs.chmodSync(filePath, 384);
6428
+ fs$1.chmodSync(filePath, 384);
6429
6429
  } catch {}
6430
6430
  }
6431
6431
  function loadDeviceAuthToken(params) {
@@ -9849,7 +9849,7 @@ function normalizeReplyPayload(payload, opts = {}) {
9849
9849
  */
9850
9850
  let deliverRuntimePromise$2 = null;
9851
9851
  function loadDeliverRuntime$2() {
9852
- deliverRuntimePromise$2 ??= import("./deliver-runtime-DP7LMYJz.js");
9852
+ deliverRuntimePromise$2 ??= import("./deliver-runtime-B_vg9NSW.js");
9853
9853
  return deliverRuntimePromise$2;
9854
9854
  }
9855
9855
  /**
@@ -10681,7 +10681,7 @@ function normalizeSessionKey$1(value) {
10681
10681
  }
10682
10682
  function readSessionStore$1(storePath) {
10683
10683
  try {
10684
- const raw = syncFs.readFileSync(storePath, "utf-8");
10684
+ const raw = fs$1.readFileSync(storePath, "utf-8");
10685
10685
  const parsed = JSON5.parse(raw);
10686
10686
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
10687
10687
  } catch {}
@@ -11275,7 +11275,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
11275
11275
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
11276
11276
  let subagentRegistryRuntimePromise = null;
11277
11277
  function loadSubagentRegistryRuntime() {
11278
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-BBvfeFxp.js");
11278
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-CrS70feQ.js");
11279
11279
  return subagentRegistryRuntimePromise;
11280
11280
  }
11281
11281
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -14307,7 +14307,16 @@ function resolveChannelModelOverride(params) {
14307
14307
  const providerEntries = resolveProviderEntry(modelByChannel, channel);
14308
14308
  if (!providerEntries) return null;
14309
14309
  const candidates = buildChannelCandidates(params);
14310
- if (candidates.length === 0) return null;
14310
+ if (candidates.length === 0) {
14311
+ const wildcardModel = typeof providerEntries["*"] === "string" ? providerEntries["*"].trim() : void 0;
14312
+ if (!wildcardModel) return null;
14313
+ return {
14314
+ channel: normalizeMessageChannel(channel) ?? channel.trim().toLowerCase(),
14315
+ model: wildcardModel,
14316
+ matchKey: "*",
14317
+ matchSource: "wildcard"
14318
+ };
14319
+ }
14311
14320
  const match = resolveChannelEntryMatchWithFallback({
14312
14321
  entries: providerEntries,
14313
14322
  keys: candidates,
@@ -14785,7 +14794,7 @@ async function runWithConcurrency(tasks, limit) {
14785
14794
  //#region src/media-understanding/echo-transcript.ts
14786
14795
  let deliverRuntimePromise$1 = null;
14787
14796
  function loadDeliverRuntime$1() {
14788
- deliverRuntimePromise$1 ??= import("./deliver-runtime-DP7LMYJz.js");
14797
+ deliverRuntimePromise$1 ??= import("./deliver-runtime-B_vg9NSW.js");
14789
14798
  return deliverRuntimePromise$1;
14790
14799
  }
14791
14800
  function formatEchoTranscript(transcript, format) {
@@ -20278,7 +20287,7 @@ function mergeLegacyAgent(current, legacy) {
20278
20287
  }
20279
20288
  function ensureDir$1(filePath) {
20280
20289
  const dir = path.dirname(filePath);
20281
- syncFs.mkdirSync(dir, { recursive: true });
20290
+ fs$1.mkdirSync(dir, { recursive: true });
20282
20291
  }
20283
20292
  function coerceAllowlistEntries(allowlist) {
20284
20293
  if (!Array.isArray(allowlist) || allowlist.length === 0) return Array.isArray(allowlist) ? allowlist : void 0;
@@ -20348,11 +20357,11 @@ function generateToken() {
20348
20357
  function loadExecApprovals() {
20349
20358
  const filePath = resolveExecApprovalsPath();
20350
20359
  try {
20351
- if (!syncFs.existsSync(filePath)) return normalizeExecApprovals({
20360
+ if (!fs$1.existsSync(filePath)) return normalizeExecApprovals({
20352
20361
  version: 1,
20353
20362
  agents: {}
20354
20363
  });
20355
- const raw = syncFs.readFileSync(filePath, "utf8");
20364
+ const raw = fs$1.readFileSync(filePath, "utf8");
20356
20365
  const parsed = JSON.parse(raw);
20357
20366
  if (parsed?.version !== 1) return normalizeExecApprovals({
20358
20367
  version: 1,
@@ -20369,9 +20378,9 @@ function loadExecApprovals() {
20369
20378
  function saveExecApprovals(file) {
20370
20379
  const filePath = resolveExecApprovalsPath();
20371
20380
  ensureDir$1(filePath);
20372
- syncFs.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
20381
+ fs$1.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
20373
20382
  try {
20374
- syncFs.chmodSync(filePath, 384);
20383
+ fs$1.chmodSync(filePath, 384);
20375
20384
  } catch {}
20376
20385
  }
20377
20386
  function ensureExecApprovals() {
@@ -20946,18 +20955,18 @@ function applyPathPrepend(env, prepend, options) {
20946
20955
  function resolvePowerShellPath() {
20947
20956
  const programFiles = process.env.ProgramFiles || process.env.PROGRAMFILES || "C:\\Program Files";
20948
20957
  const pwsh7 = path.join(programFiles, "PowerShell", "7", "pwsh.exe");
20949
- if (syncFs.existsSync(pwsh7)) return pwsh7;
20958
+ if (fs$1.existsSync(pwsh7)) return pwsh7;
20950
20959
  const programW6432 = process.env.ProgramW6432;
20951
20960
  if (programW6432 && programW6432 !== programFiles) {
20952
20961
  const pwsh7Alt = path.join(programW6432, "PowerShell", "7", "pwsh.exe");
20953
- if (syncFs.existsSync(pwsh7Alt)) return pwsh7Alt;
20962
+ if (fs$1.existsSync(pwsh7Alt)) return pwsh7Alt;
20954
20963
  }
20955
20964
  const pwshInPath = resolveShellFromPath("pwsh");
20956
20965
  if (pwshInPath) return pwshInPath;
20957
20966
  const systemRoot = process.env.SystemRoot || process.env.WINDIR;
20958
20967
  if (systemRoot) {
20959
20968
  const candidate = path.join(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
20960
- if (syncFs.existsSync(candidate)) return candidate;
20969
+ if (fs$1.existsSync(candidate)) return candidate;
20961
20970
  }
20962
20971
  return "powershell.exe";
20963
20972
  }
@@ -20995,7 +21004,7 @@ function resolveShellFromPath(name) {
20995
21004
  for (const entry of entries) {
20996
21005
  const candidate = path.join(entry, name);
20997
21006
  try {
20998
- syncFs.accessSync(candidate, syncFs.constants.X_OK);
21007
+ fs$1.accessSync(candidate, fs$1.constants.X_OK);
20999
21008
  return candidate;
21000
21009
  } catch {}
21001
21010
  }
@@ -23977,7 +23986,7 @@ function ensureContextWindowCacheLoaded() {
23977
23986
  await ensureOpenClawModelsJson(cfg);
23978
23987
  } catch {}
23979
23988
  try {
23980
- const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-BfCU9u9n.js").then((n) => n.r);
23989
+ const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-BOkx-R2x.js").then((n) => n.r);
23981
23990
  const agentDir = resolveOpenClawAgentDir();
23982
23991
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
23983
23992
  applyDiscoveredContextWindows({
@@ -24128,7 +24137,7 @@ function walkUpFrom(startDir, opts, resolveAtDir) {
24128
24137
  function hasGitMarker(repoRoot) {
24129
24138
  const gitPath = path.join(repoRoot, ".git");
24130
24139
  try {
24131
- const stat = syncFs.statSync(gitPath);
24140
+ const stat = fs$1.statSync(gitPath);
24132
24141
  return stat.isDirectory() || stat.isFile();
24133
24142
  } catch {
24134
24143
  return false;
@@ -24140,10 +24149,10 @@ function findGitRoot(startDir, opts = {}) {
24140
24149
  function resolveGitDirFromMarker(repoRoot) {
24141
24150
  const gitPath = path.join(repoRoot, ".git");
24142
24151
  try {
24143
- const stat = syncFs.statSync(gitPath);
24152
+ const stat = fs$1.statSync(gitPath);
24144
24153
  if (stat.isDirectory()) return gitPath;
24145
24154
  if (!stat.isFile()) return null;
24146
- const match = syncFs.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
24155
+ const match = fs$1.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
24147
24156
  if (!match?.[1]) return null;
24148
24157
  return path.resolve(repoRoot, match[1].trim());
24149
24158
  } catch {
@@ -24181,13 +24190,13 @@ const resolveCommitSearchDir = (options) => {
24181
24190
  };
24182
24191
  /** Read at most `limit` bytes from a file to avoid unbounded reads. */
24183
24192
  const safeReadFilePrefix = (filePath, limit = 256) => {
24184
- const fd = syncFs.openSync(filePath, "r");
24193
+ const fd = fs$1.openSync(filePath, "r");
24185
24194
  try {
24186
24195
  const buf = Buffer.alloc(limit);
24187
- const bytesRead = syncFs.readSync(fd, buf, 0, limit, 0);
24196
+ const bytesRead = fs$1.readSync(fd, buf, 0, limit, 0);
24188
24197
  return buf.subarray(0, bytesRead).toString("utf-8");
24189
24198
  } finally {
24190
- syncFs.closeSync(fd);
24199
+ fs$1.closeSync(fd);
24191
24200
  }
24192
24201
  };
24193
24202
  const cacheGitCommit = (searchDir, commit) => {
@@ -24203,7 +24212,7 @@ const resolveGitLookupDepth = (searchDir, packageRoot) => {
24203
24212
  const readCommitFromGit = (searchDir, packageRoot) => {
24204
24213
  const headPath = resolveGitHeadPath(searchDir, { maxDepth: resolveGitLookupDepth(searchDir, packageRoot) });
24205
24214
  if (!headPath) return;
24206
- const head = syncFs.readFileSync(headPath, "utf-8").trim();
24215
+ const head = fs$1.readFileSync(headPath, "utf-8").trim();
24207
24216
  if (!head) return null;
24208
24217
  if (head.startsWith("ref:")) {
24209
24218
  const refPath = resolveRefPath(headPath, head.replace(/^ref:\s*/i, "").trim());
@@ -24530,17 +24539,17 @@ const readUsageFromSessionLog = (sessionId, sessionEntry, agentId, sessionKey, s
24530
24539
  } catch {
24531
24540
  return;
24532
24541
  }
24533
- if (!syncFs.existsSync(logPath)) return;
24542
+ if (!fs$1.existsSync(logPath)) return;
24534
24543
  try {
24535
24544
  const TAIL_BYTES = 8192;
24536
- const stat = syncFs.statSync(logPath);
24545
+ const stat = fs$1.statSync(logPath);
24537
24546
  const offset = Math.max(0, stat.size - TAIL_BYTES);
24538
24547
  const buf = Buffer.alloc(Math.min(TAIL_BYTES, stat.size));
24539
- const fd = syncFs.openSync(logPath, "r");
24548
+ const fd = fs$1.openSync(logPath, "r");
24540
24549
  try {
24541
- syncFs.readSync(fd, buf, 0, buf.length, offset);
24550
+ fs$1.readSync(fd, buf, 0, buf.length, offset);
24542
24551
  } finally {
24543
- syncFs.closeSync(fd);
24552
+ fs$1.closeSync(fd);
24544
24553
  }
24545
24554
  const tail = buf.toString("utf-8");
24546
24555
  const lines = (offset > 0 ? tail.slice(tail.indexOf("\n") + 1) : tail).split(/\n+/);
@@ -25862,13 +25871,13 @@ function listSkillCommandsForAgents(params) {
25862
25871
  const workspaceFilters = /* @__PURE__ */ new Map();
25863
25872
  for (const agentId of agentIds) {
25864
25873
  const workspaceDir = resolveAgentWorkspaceDir(params.cfg, agentId);
25865
- if (!syncFs.existsSync(workspaceDir)) {
25874
+ if (!fs$1.existsSync(workspaceDir)) {
25866
25875
  logVerbose(`Skipping agent "${agentId}": workspace does not exist: ${workspaceDir}`);
25867
25876
  continue;
25868
25877
  }
25869
25878
  let canonicalDir;
25870
25879
  try {
25871
- canonicalDir = syncFs.realpathSync(workspaceDir);
25880
+ canonicalDir = fs$1.realpathSync(workspaceDir);
25872
25881
  } catch {
25873
25882
  logVerbose(`Skipping agent "${agentId}": cannot resolve workspace: ${workspaceDir}`);
25874
25883
  continue;
@@ -26235,7 +26244,7 @@ function resolveRepoRoot(params) {
26235
26244
  const configured = params.config?.agents?.defaults?.repoRoot?.trim();
26236
26245
  if (configured) try {
26237
26246
  const resolved = path.resolve(configured);
26238
- if (syncFs.statSync(resolved).isDirectory()) return resolved;
26247
+ if (fs$1.statSync(resolved).isDirectory()) return resolved;
26239
26248
  } catch {}
26240
26249
  const candidates = [params.workspaceDir, params.cwd].map((value) => value?.trim()).filter(Boolean);
26241
26250
  const seen = /* @__PURE__ */ new Set();
@@ -26993,7 +27002,7 @@ async function buildContextReply(params) {
26993
27002
  //#region src/auto-reply/reply/commands-export-session.ts
26994
27003
  const EXPORT_HTML_DIR = path.join(path.dirname(fileURLToPath(import.meta.url)), "export-html");
26995
27004
  function loadTemplate(fileName) {
26996
- return syncFs.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
27005
+ return fs$1.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
26997
27006
  }
26998
27007
  function generateHtml(sessionData) {
26999
27008
  const template = loadTemplate("template.html");
@@ -27067,7 +27076,7 @@ async function buildExportSessionReply(params) {
27067
27076
  } catch (err) {
27068
27077
  return { text: `❌ Failed to resolve session file: ${err instanceof Error ? err.message : String(err)}` };
27069
27078
  }
27070
- if (!syncFs.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
27079
+ if (!fs$1.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
27071
27080
  const sessionManager = SessionManager.open(sessionFile);
27072
27081
  const entries = sessionManager.getEntries();
27073
27082
  const header = sessionManager.getHeader();
@@ -27088,8 +27097,8 @@ async function buildExportSessionReply(params) {
27088
27097
  const defaultFileName = `openclaw-session-${entry.sessionId.slice(0, 8)}-${timestamp}.html`;
27089
27098
  const outputPath = args.outputPath ? path.resolve(args.outputPath.startsWith("~") ? args.outputPath.replace("~", process.env.HOME ?? "") : args.outputPath) : path.join(params.workspaceDir, defaultFileName);
27090
27099
  const outputDir = path.dirname(outputPath);
27091
- if (!syncFs.existsSync(outputDir)) syncFs.mkdirSync(outputDir, { recursive: true });
27092
- syncFs.writeFileSync(outputPath, html, "utf-8");
27100
+ if (!fs$1.existsSync(outputDir)) fs$1.mkdirSync(outputDir, { recursive: true });
27101
+ fs$1.writeFileSync(outputPath, html, "utf-8");
27093
27102
  const relativePath = path.relative(params.workspaceDir, outputPath);
27094
27103
  return { text: [
27095
27104
  "✅ Session exported!",
@@ -27238,8 +27247,8 @@ function resolveZaiApiKey() {
27238
27247
  }
27239
27248
  try {
27240
27249
  const authPath = path.join(resolveRequiredHomeDir(process.env, os.homedir), ".pi", "agent", "auth.json");
27241
- if (!syncFs.existsSync(authPath)) return;
27242
- const data = JSON.parse(syncFs.readFileSync(authPath, "utf-8"));
27250
+ if (!fs$1.existsSync(authPath)) return;
27251
+ const data = JSON.parse(fs$1.readFileSync(authPath, "utf-8"));
27243
27252
  return data["z-ai"]?.access || data.zai?.access;
27244
27253
  } catch {
27245
27254
  return;
@@ -28785,7 +28794,7 @@ function resolveGatewaySystemdServiceName(profile) {
28785
28794
  const LSOF_CANDIDATES = process.platform === "darwin" ? ["/usr/sbin/lsof", "/usr/bin/lsof"] : ["/usr/bin/lsof", "/usr/sbin/lsof"];
28786
28795
  function resolveLsofCommandSync() {
28787
28796
  for (const candidate of LSOF_CANDIDATES) try {
28788
- syncFs.accessSync(candidate, syncFs.constants.X_OK);
28797
+ fs$1.accessSync(candidate, fs$1.constants.X_OK);
28789
28798
  return candidate;
28790
28799
  } catch {}
28791
28800
  return "lsof";
@@ -29347,7 +29356,7 @@ const applyCostTotal = (totals, costTotal) => {
29347
29356
  totals.totalCost += costTotal;
29348
29357
  };
29349
29358
  async function* readJsonlRecords(filePath) {
29350
- const fileStream = syncFs.createReadStream(filePath, { encoding: "utf-8" });
29359
+ const fileStream = fs$1.createReadStream(filePath, { encoding: "utf-8" });
29351
29360
  const rl = readline.createInterface({
29352
29361
  input: fileStream,
29353
29362
  crlfDelay: Infinity
@@ -29419,10 +29428,10 @@ async function loadCostUsageSummary(params) {
29419
29428
  const dailyMap = /* @__PURE__ */ new Map();
29420
29429
  const totals = emptyTotals();
29421
29430
  const sessionsDir = resolveSessionTranscriptsDirForAgent(params?.agentId);
29422
- const entries = await syncFs.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
29431
+ const entries = await fs$1.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
29423
29432
  const files = (await Promise.all(entries.filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).map(async (entry) => {
29424
29433
  const filePath = path.join(sessionsDir, entry.name);
29425
- const stats = await syncFs.promises.stat(filePath).catch(() => null);
29434
+ const stats = await fs$1.promises.stat(filePath).catch(() => null);
29426
29435
  if (!stats) return null;
29427
29436
  if (stats.mtimeMs < sinceTime) return null;
29428
29437
  return filePath;
@@ -29455,7 +29464,7 @@ async function loadCostUsageSummary(params) {
29455
29464
  }
29456
29465
  async function loadSessionCostSummary(params) {
29457
29466
  const sessionFile = params.sessionFile ?? (params.sessionId ? resolveSessionFilePath(params.sessionId, params.sessionEntry, { agentId: params.agentId }) : void 0);
29458
- if (!sessionFile || !syncFs.existsSync(sessionFile)) return null;
29467
+ if (!sessionFile || !fs$1.existsSync(sessionFile)) return null;
29459
29468
  const totals = emptyTotals();
29460
29469
  let firstActivity;
29461
29470
  let lastActivity;
@@ -29745,7 +29754,7 @@ function summarizeLifecycleForLog(record, defaults) {
29745
29754
  function loadBindingsFromDisk(accountId) {
29746
29755
  const filePath = resolveBindingsPath(accountId);
29747
29756
  try {
29748
- const raw = syncFs.readFileSync(filePath, "utf-8");
29757
+ const raw = fs$1.readFileSync(filePath, "utf-8");
29749
29758
  const parsed = JSON.parse(raw);
29750
29759
  if (parsed?.version !== STORE_VERSION$1 || !Array.isArray(parsed.bindings)) return [];
29751
29760
  const bindings = [];
@@ -33002,7 +33011,7 @@ async function createModelSelectionState(params) {
33002
33011
  }
33003
33012
  }
33004
33013
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
33005
- const { ensureAuthProfileStore } = await import("./model-selection-BrTh8v9L.js").then((n) => n.F);
33014
+ const { ensureAuthProfileStore } = await import("./model-selection-CvKAj7nY.js").then((n) => n.F);
33006
33015
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
33007
33016
  const providerKey = normalizeProviderId(provider);
33008
33017
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -41013,9 +41022,9 @@ function loadExternalCatalogEntries(options) {
41013
41022
  const entries = [];
41014
41023
  for (const rawPath of paths) {
41015
41024
  const resolved = resolveUserPath(rawPath);
41016
- if (!syncFs.existsSync(resolved)) continue;
41025
+ if (!fs$1.existsSync(resolved)) continue;
41017
41026
  try {
41018
- const payload = JSON.parse(syncFs.readFileSync(resolved, "utf-8"));
41027
+ const payload = JSON.parse(fs$1.readFileSync(resolved, "utf-8"));
41019
41028
  entries.push(...parseCatalogEntries(payload));
41020
41029
  } catch {}
41021
41030
  }
@@ -43460,7 +43469,7 @@ function listExistingAgentIdsFromDisk() {
43460
43469
  const root = resolveStateDir();
43461
43470
  const agentsDir = path.join(root, "agents");
43462
43471
  try {
43463
- return syncFs.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
43472
+ return fs$1.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
43464
43473
  } catch {
43465
43474
  return [];
43466
43475
  }
@@ -49609,7 +49618,7 @@ async function runAgentTurnWithFallback(params) {
49609
49618
  if (corruptedSessionId) {
49610
49619
  const transcriptPath = resolveSessionTranscriptPath(corruptedSessionId);
49611
49620
  try {
49612
- syncFs.unlinkSync(transcriptPath);
49621
+ fs$1.unlinkSync(transcriptPath);
49613
49622
  } catch {}
49614
49623
  }
49615
49624
  delete params.activeSessionStore[sessionKey];
@@ -50456,7 +50465,7 @@ async function readSessionLogSnapshot(params) {
50456
50465
  if (!logPath) return {};
50457
50466
  const snapshot = {};
50458
50467
  if (params.includeByteSize) try {
50459
- const stat = await syncFs.promises.stat(logPath);
50468
+ const stat = await fs$1.promises.stat(logPath);
50460
50469
  const size = Math.floor(stat.size);
50461
50470
  snapshot.byteSize = Number.isFinite(size) && size >= 0 ? size : void 0;
50462
50471
  } catch {
@@ -50470,7 +50479,7 @@ async function readSessionLogSnapshot(params) {
50470
50479
  return snapshot;
50471
50480
  }
50472
50481
  async function readLastNonzeroUsageFromSessionLog(logPath) {
50473
- const handle = await syncFs.promises.open(logPath, "r");
50482
+ const handle = await fs$1.promises.open(logPath, "r");
50474
50483
  try {
50475
50484
  let position = (await handle.stat()).size;
50476
50485
  let leadingPartial = "";
@@ -50992,7 +51001,7 @@ const QMD_MANAGER_PENDING = /* @__PURE__ */ new Map();
50992
51001
  let qmdCacheGeneration = 0;
50993
51002
  let managerRuntimePromise = null;
50994
51003
  function loadManagerRuntime() {
50995
- managerRuntimePromise ??= import("./manager-runtime-BIERqG19.js");
51004
+ managerRuntimePromise ??= import("./manager-runtime-DMIUcUdt.js");
50996
51005
  return managerRuntimePromise;
50997
51006
  }
50998
51007
  var QmdManagerCacheInvalidatedError = class extends Error {
@@ -51064,7 +51073,7 @@ async function getMemorySearchManager(params) {
51064
51073
  generation: cacheGeneration
51065
51074
  });
51066
51075
  createPromise = (async () => {
51067
- const { QmdMemoryManager } = await import("./qmd-manager-oxRfJV8J.js");
51076
+ const { QmdMemoryManager } = await import("./qmd-manager-D5-UET4f.js");
51068
51077
  const primary = await QmdMemoryManager.create({
51069
51078
  cfg: params.cfg,
51070
51079
  agentId: params.agentId,
@@ -51976,9 +51985,9 @@ async function readPostCompactionContext(workspaceDir, cfg, nowMs) {
51976
51985
  if (!opened.ok) return null;
51977
51986
  const content = (() => {
51978
51987
  try {
51979
- return syncFs.readFileSync(opened.fd, "utf-8");
51988
+ return fs$1.readFileSync(opened.fd, "utf-8");
51980
51989
  } finally {
51981
- syncFs.closeSync(opened.fd);
51990
+ fs$1.closeSync(opened.fd);
51982
51991
  }
51983
51992
  })();
51984
51993
  const configuredSections = cfg?.agents?.defaults?.compaction?.postCompactionSections;
@@ -52232,7 +52241,7 @@ async function runReplyAgent(params) {
52232
52241
  if (resolved) transcriptCandidates.add(resolved);
52233
52242
  transcriptCandidates.add(resolveSessionTranscriptPath(prevSessionId, agentId));
52234
52243
  for (const candidate of transcriptCandidates) try {
52235
- syncFs.unlinkSync(candidate);
52244
+ fs$1.unlinkSync(candidate);
52236
52245
  } catch {}
52237
52246
  }
52238
52247
  return true;
@@ -53188,7 +53197,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
53188
53197
  const log$9 = createSubsystemLogger("session-maintenance-warning");
53189
53198
  let deliverRuntimePromise = null;
53190
53199
  function loadDeliverRuntime() {
53191
- deliverRuntimePromise ??= import("./deliver-runtime-DP7LMYJz.js");
53200
+ deliverRuntimePromise ??= import("./deliver-runtime-B_vg9NSW.js");
53192
53201
  return deliverRuntimePromise;
53193
53202
  }
53194
53203
  function shouldSendWarning() {
@@ -53372,7 +53381,7 @@ function forkSessionFromParent(params) {
53372
53381
  agentId: params.agentId,
53373
53382
  sessionsDir: params.sessionsDir
53374
53383
  });
53375
- if (!parentSessionFile || !syncFs.existsSync(parentSessionFile)) return null;
53384
+ if (!parentSessionFile || !fs$1.existsSync(parentSessionFile)) return null;
53376
53385
  try {
53377
53386
  const manager = SessionManager.open(parentSessionFile);
53378
53387
  const leafId = manager.getLeafId();
@@ -53396,7 +53405,7 @@ function forkSessionFromParent(params) {
53396
53405
  cwd: manager.getCwd(),
53397
53406
  parentSession: parentSessionFile
53398
53407
  };
53399
- syncFs.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
53408
+ fs$1.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
53400
53409
  return {
53401
53410
  sessionId,
53402
53411
  sessionFile
@@ -56466,7 +56475,7 @@ function getCacheStats() {
56466
56475
  const STICKER_DESCRIPTION_PROMPT = "Describe this sticker image in 1-2 sentences. Focus on what the sticker depicts (character, object, action, emotion). Be concise and objective.";
56467
56476
  let imageRuntimePromise = null;
56468
56477
  function loadImageRuntime() {
56469
- imageRuntimePromise ??= import("./image-runtime-BKlmPwGz.js");
56478
+ imageRuntimePromise ??= import("./image-runtime-DYqTmna6.js");
56470
56479
  return imageRuntimePromise;
56471
56480
  }
56472
56481
  /**
@@ -57211,7 +57220,7 @@ function collectTelegramUnmentionedGroupIds(groups) {
57211
57220
  }
57212
57221
  let auditMembershipRuntimePromise = null;
57213
57222
  function loadAuditMembershipRuntime() {
57214
- auditMembershipRuntimePromise ??= import("./audit-membership-runtime-D-ZeUv63.js");
57223
+ auditMembershipRuntimePromise ??= import("./audit-membership-runtime-DK2vsxHN.js");
57215
57224
  return auditMembershipRuntimePromise;
57216
57225
  }
57217
57226
  async function auditTelegramGroupMembership(params) {
@@ -60261,7 +60270,7 @@ async function resolveTelegramInboundBody(params) {
60261
60270
  const disableAudioPreflight = (topicConfig?.disableAudioPreflight ?? groupConfig?.disableAudioPreflight) === true;
60262
60271
  let preflightTranscript;
60263
60272
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
60264
- const { transcribeFirstAudio } = await import("./audio-preflight-L-LZWSbn.js");
60273
+ const { transcribeFirstAudio } = await import("./audio-preflight-Bc4dihum.js");
60265
60274
  preflightTranscript = await transcribeFirstAudio({
60266
60275
  ctx: {
60267
60276
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -65357,7 +65366,7 @@ async function withMemoryManagerForAgent(params) {
65357
65366
  }
65358
65367
  async function checkReadableFile(pathname) {
65359
65368
  try {
65360
- await fs.access(pathname, syncFs.constants.R_OK);
65369
+ await fs.access(pathname, fs$1.constants.R_OK);
65361
65370
  return { exists: true };
65362
65371
  } catch (err) {
65363
65372
  const code = err.code;
@@ -65417,7 +65426,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = [], excludePaths = [])
65417
65426
  }
65418
65427
  let dirReadable = null;
65419
65428
  try {
65420
- await fs.access(memoryDir, syncFs.constants.R_OK);
65429
+ await fs.access(memoryDir, fs$1.constants.R_OK);
65421
65430
  dirReadable = true;
65422
65431
  } catch (err) {
65423
65432
  const code = err.code;
@@ -65913,7 +65922,7 @@ const resolvePluginSdkAliasFile = (params) => {
65913
65922
  srcFile: params.srcFile,
65914
65923
  distFile: params.distFile,
65915
65924
  modulePath
65916
- })) if (syncFs.existsSync(candidate)) return candidate;
65925
+ })) if (fs$1.existsSync(candidate)) return candidate;
65917
65926
  } catch {}
65918
65927
  return null;
65919
65928
  };
@@ -65929,7 +65938,7 @@ function listPluginSdkExportedSubpaths(params = {}) {
65929
65938
  const cached = cachedPluginSdkExportedSubpaths.get(packageRoot);
65930
65939
  if (cached) return cached;
65931
65940
  try {
65932
- const pkgRaw = syncFs.readFileSync(path.join(packageRoot, "package.json"), "utf-8");
65941
+ const pkgRaw = fs$1.readFileSync(path.join(packageRoot, "package.json"), "utf-8");
65933
65942
  const pkg = JSON.parse(pkgRaw);
65934
65943
  const subpaths = Object.keys(pkg.exports ?? {}).filter((key) => key.startsWith("./plugin-sdk/")).map((key) => key.slice(13)).filter((subpath) => Boolean(subpath) && !subpath.includes("/")).toSorted();
65935
65944
  cachedPluginSdkExportedSubpaths.set(packageRoot, subpaths);
@@ -66325,7 +66334,7 @@ function loadOpenClawPlugins(options = {}) {
66325
66334
  continue;
66326
66335
  }
66327
66336
  const safeSource = opened.path;
66328
- syncFs.closeSync(opened.fd);
66337
+ fs$1.closeSync(opened.fd);
66329
66338
  let mod = null;
66330
66339
  try {
66331
66340
  mod = getJiti()(safeSource);
@@ -66444,7 +66453,7 @@ function loadOpenClawPlugins(options = {}) {
66444
66453
  }
66445
66454
  function safeRealpathOrResolve(value) {
66446
66455
  try {
66447
- return syncFs.realpathSync(value);
66456
+ return fs$1.realpathSync(value);
66448
66457
  } catch {
66449
66458
  return path.resolve(value);
66450
66459
  }
@@ -66804,9 +66813,9 @@ function resolvePatchFileOps(options) {
66804
66813
  });
66805
66814
  assertBoundaryRead(opened, filePath);
66806
66815
  try {
66807
- return syncFs.readFileSync(opened.fd, "utf8");
66816
+ return fs$1.readFileSync(opened.fd, "utf8");
66808
66817
  } finally {
66809
- syncFs.closeSync(opened.fd);
66818
+ fs$1.closeSync(opened.fd);
66810
66819
  }
66811
66820
  },
66812
66821
  writeFile: async (filePath, content) => {
@@ -67083,7 +67092,7 @@ const LOOP_WARNING_BUCKET_SIZE = 10;
67083
67092
  const MAX_LOOP_WARNING_KEYS = 256;
67084
67093
  let beforeToolCallRuntimePromise = null;
67085
67094
  function loadBeforeToolCallRuntime() {
67086
- beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-CZVSauJE.js");
67095
+ beforeToolCallRuntimePromise ??= import("./pi-tools.before-tool-call.runtime-gCJet3xa.js");
67087
67096
  return beforeToolCallRuntimePromise;
67088
67097
  }
67089
67098
  function buildAdjustedParamsKey(params) {
@@ -70096,9 +70105,9 @@ async function readWorkspaceContextForSummary() {
70096
70105
  if (!opened.ok) return "";
70097
70106
  const content = (() => {
70098
70107
  try {
70099
- return syncFs.readFileSync(opened.fd, "utf-8");
70108
+ return fs$1.readFileSync(opened.fd, "utf-8");
70100
70109
  } finally {
70101
- syncFs.closeSync(opened.fd);
70110
+ fs$1.closeSync(opened.fd);
70102
70111
  }
70103
70112
  })();
70104
70113
  let sections = extractSections(content, ["Session Startup", "Red Lines"]);
@@ -71614,7 +71623,7 @@ async function compactEmbeddedPiSessionDirect(params) {
71614
71623
  if (!apiKeyInfo.apiKey) {
71615
71624
  if (apiKeyInfo.mode !== "aws-sdk") throw new Error(`No API key resolved for provider "${model.provider}" (auth mode: ${apiKeyInfo.mode}).`);
71616
71625
  } else if (model.provider === "github-copilot") {
71617
- const { resolveCopilotApiToken } = await import("./github-copilot-token-DJKrUYl0.js").then((n) => n.n);
71626
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-CLlAnyEf.js").then((n) => n.n);
71618
71627
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
71619
71628
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
71620
71629
  } else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
@@ -74634,11 +74643,11 @@ function appendRawStream(payload) {
74634
74643
  if (!rawStreamReady) {
74635
74644
  rawStreamReady = true;
74636
74645
  try {
74637
- syncFs.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
74646
+ fs$1.mkdirSync(path.dirname(RAW_STREAM_PATH), { recursive: true });
74638
74647
  } catch {}
74639
74648
  }
74640
74649
  try {
74641
- syncFs.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
74650
+ fs$1.promises.appendFile(RAW_STREAM_PATH, `${JSON.stringify(payload)}\n`);
74642
74651
  } catch {}
74643
74652
  }
74644
74653
  //#endregion
@@ -78595,7 +78604,7 @@ async function runEmbeddedPiAgent(params) {
78595
78604
  await copilotTokenState.refreshInFlight;
78596
78605
  return;
78597
78606
  }
78598
- const { resolveCopilotApiToken } = await import("./github-copilot-token-DJKrUYl0.js").then((n) => n.n);
78607
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-CLlAnyEf.js").then((n) => n.n);
78599
78608
  copilotTokenState.refreshInFlight = (async () => {
78600
78609
  const githubToken = copilotTokenState.githubToken.trim();
78601
78610
  if (!githubToken) throw new Error("Copilot refresh requires a GitHub token.");
@@ -78687,7 +78696,7 @@ async function runEmbeddedPiAgent(params) {
78687
78696
  return;
78688
78697
  }
78689
78698
  if (model.provider === "github-copilot") {
78690
- const { resolveCopilotApiToken } = await import("./github-copilot-token-DJKrUYl0.js").then((n) => n.n);
78699
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-CLlAnyEf.js").then((n) => n.n);
78691
78700
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
78692
78701
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
78693
78702
  if (copilotTokenState) {