wednesdayai 0.4.12-dev.719 → 0.4.12-dev.721

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 (487) hide show
  1. package/dist/{acp-cli-BYoOiK6T.js → acp-cli-BWtNp40J.js} +2 -2
  2. package/dist/{acp-cli-dvFCSROw.js → acp-cli-DXVeP5by.js} +2 -2
  3. package/dist/{agent-scope-DxKPMu8w.js → agent-scope-cbxkoURo.js} +3 -3
  4. package/dist/{agent-turn-enqueue-DEStltEg.js → agent-turn-enqueue-CsHMHVsf.js} +4 -4
  5. package/dist/{agent-turn-enqueue-DzWOPhgy.js → agent-turn-enqueue-QcHb-Wlq.js} +4 -4
  6. package/dist/{agent-turn-execute-CzOC4mHw.js → agent-turn-execute-pkDSwyuf.js} +41 -30
  7. package/dist/{agent-turn-recovery-adapter-DnvjgbK0.js → agent-turn-recovery-adapter-CL4IrGUo.js} +1 -1
  8. package/dist/{agent-turn-recovery-adapter-CdLD3DuI.js → agent-turn-recovery-adapter-Dw5-XbMI.js} +1 -1
  9. package/dist/{agent-turn-runner-BEvwtTis.js → agent-turn-runner-CUoz_Fkl.js} +1 -1
  10. package/dist/{agent-turn-runner-BsxQBFRB.js → agent-turn-runner-CXf6g-6f.js} +5 -5
  11. package/dist/{agent-turn-runner-DpICdamt.js → agent-turn-runner-DHNZdQJB.js} +3 -3
  12. package/dist/{agent-turn-runner-C1u8sVfA.js → agent-turn-runner-DoHGgNPh.js} +1 -1
  13. package/dist/{agents-C61lzbyw.js → agents-TOaKn6gk.js} +5 -5
  14. package/dist/{agents.config-DAh5Ah1J.js → agents.config-96ueVlOH.js} +1 -1
  15. package/dist/{agents.config-BcD-ZJ0N.js → agents.config-DWMgN4qH.js} +1 -1
  16. package/dist/{api-key-rotation-Br7_jaAV.js → api-key-rotation-BMnyfyGD.js} +2 -2
  17. package/dist/{artifacts-QHme-vnS.js → artifacts-DUhYSSmK.js} +4 -4
  18. package/dist/{audio-preflight-CehYz7wU.js → audio-preflight-CO3ozqOb.js} +6 -6
  19. package/dist/{audio-preflight-B_5sTSyb.js → audio-preflight-ifCgpG3c.js} +27 -27
  20. package/dist/{audio-preflight-uatGs8bC.js → audio-preflight-p84ph4C7.js} +6 -6
  21. package/dist/{audio-transcription-runner-BvZFFknx.js → audio-transcription-runner-CsQR8LpS.js} +1 -1
  22. package/dist/{audio-transcription-runner-CJ8YdMv-.js → audio-transcription-runner-Gr8vN3AS.js} +1 -1
  23. package/dist/{audio-transcription-runner-XFfvRPXl.js → audio-transcription-runner-ipSQoPp8.js} +11 -11
  24. package/dist/{audit-UMAK8rQC.js → audit-8O6sjQPv.js} +6 -6
  25. package/dist/{audit-C0WHA5BX.js → audit-CzREkjwC.js} +6 -6
  26. package/dist/{auth-choice-CHzuLxTp.js → auth-choice-DtRePxUx.js} +2 -2
  27. package/dist/{auth-choice-BHU_G3if.js → auth-choice-s0pWvSbn.js} +2 -2
  28. package/dist/{banner-BAtbMrrp.js → banner-BwICuMvl.js} +1 -1
  29. package/dist/{browser-cli-DvjIut0z.js → browser-cli-Ci3F1b7y.js} +3 -3
  30. package/dist/{browser-cli-FTpdxTqL.js → browser-cli-NV-pdj3F.js} +3 -3
  31. package/dist/build-info.json +3 -3
  32. package/dist/bundled/boot-md/handler.js +58 -58
  33. package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
  34. package/dist/bundled/command-logger/handler.js +2 -2
  35. package/dist/bundled/session-journal/handler.js +58 -58
  36. package/dist/bundled/session-memory/handler.js +58 -58
  37. package/dist/{call-Cl6Q0T5z.js → call-DFhcVchO.js} +1 -1
  38. package/dist/{call-BIVg1gmJ.js → call-PE59cW0J.js} +1 -1
  39. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  40. package/dist/{channel-activity-DNq7LYjU.js → channel-activity-BJHm_pDV.js} +3 -3
  41. package/dist/{channel-options-CsgHOF5l.js → channel-options-BmfLwNE6.js} +1 -1
  42. package/dist/{channel-options-DRnowLFK.js → channel-options-CurDeT7Z.js} +1 -1
  43. package/dist/{channels-cli-Cn1IUfM3.js → channels-cli-CZqlXMjZ.js} +28 -28
  44. package/dist/{channels-cli-BN4oTmr6.js → channels-cli-D2PB80Ed.js} +28 -28
  45. package/dist/{chrome-FHxGdLnd.js → chrome-DTJprCGv.js} +15 -15
  46. package/dist/{chunk-BhntPUH_.js → chunk-eNEsWhab.js} +3 -3
  47. package/dist/{clawbot-cli-C-wEI2Wc.js → clawbot-cli-BL_gdm6D.js} +5 -5
  48. package/dist/{clawbot-cli-DWWHmqlt.js → clawbot-cli-C91sysrP.js} +5 -5
  49. package/dist/cli/daemon-cli.js +1 -1
  50. package/dist/{cli-CFIRmNaZ.js → cli-DJUeQG1g.js} +22 -22
  51. package/dist/{cli-BGAvAUiU.js → cli-YKA_HQlq.js} +22 -22
  52. package/dist/{client-BbpMX08n.js → client-D7IpaFCL.js} +2 -1
  53. package/dist/{client-BMkNNUux.js → client-DN-SMVBn.js} +2 -1
  54. package/dist/{client-profiles-DP8BWND2.js → client-profiles-DEoACLX5.js} +1 -1
  55. package/dist/{client-profiles-BNQu4_Z_.js → client-profiles-soWN7eGC.js} +1 -1
  56. package/dist/{command-queue-zXu22yak.js → command-queue-B3_VRNOr.js} +8 -2
  57. package/dist/{command-queue-CmpLmuvI.js → command-queue-Bjb4nYXi.js} +8 -2
  58. package/dist/{command-queue-DtybAhHH.js → command-queue-Bn2PHabT.js} +8 -2
  59. package/dist/{command-queue-SzKgkaS6.js → command-queue-smA8JaO_.js} +9 -3
  60. package/dist/{command-registry-DBfEAwIt.js → command-registry-Dok3-b8T.js} +12 -12
  61. package/dist/{command-secret-targets-DtDJB3vv.js → command-secret-targets-BAFcvtYe.js} +2 -2
  62. package/dist/{command-secret-targets-B54n8F_3.js → command-secret-targets-CJ1czw_Q.js} +2 -2
  63. package/dist/{commands-registry-DC0fovy_.js → commands-registry-DdQg21ct.js} +2 -2
  64. package/dist/{completion-cli-BfRsix3J.js → completion-cli-Ctg9QIDB.js} +2 -2
  65. package/dist/{completion-cli-L5YP0rxV.js → completion-cli-DzgbSYNf.js} +1 -1
  66. package/dist/{config-cli-dgRsXbD3.js → config-cli-BUrIABmo.js} +1 -1
  67. package/dist/{config-cli-D4Gxd0pm.js → config-cli-Bp3NVXJ8.js} +1 -1
  68. package/dist/config.js +9 -9
  69. package/dist/{configure-DtRyMLwO.js → configure-CAdfZJx3.js} +6 -6
  70. package/dist/{configure-BN-JNKf7.js → configure-CFjjPHas.js} +6 -6
  71. package/dist/{cron-cli-_Mwn7mzJ.js → cron-cli-BuVrA_FU.js} +3 -3
  72. package/dist/{cron-cli-BuO3qskK.js → cron-cli-CEOGOJUA.js} +3 -3
  73. package/dist/{daemon-cli-YmPcKhvo.js → daemon-cli-BTld-maF.js} +2 -2
  74. package/dist/{daemon-cli-CiPY543O.js → daemon-cli-D874Hxry.js} +2 -2
  75. package/dist/daemon-cli.js +2 -1
  76. package/dist/{deliver-Aw7d03gL.js → deliver-BLp1Q7uO.js} +1 -1
  77. package/dist/{deliver-CXqNQ8yi.js → deliver-CVWbwPkb.js} +24 -24
  78. package/dist/{deliver-D37woOwV.js → deliver-rLn-23ud.js} +1 -1
  79. package/dist/{devices-cli-HXNfviPB.js → devices-cli-CVrx_5o-.js} +2 -2
  80. package/dist/{devices-cli-CxSEOWZs.js → devices-cli-PIMtgiCQ.js} +2 -2
  81. package/dist/{diagnostic-Cid_Tw67.js → diagnostic-85mWzvQi.js} +1 -1
  82. package/dist/{diagnostic-Bbg-zObh.js → diagnostic-DI-K8155.js} +5 -5
  83. package/dist/{diagnostic-lG00b_zg.js → diagnostic-u64kcpDQ.js} +1 -1
  84. package/dist/{dm-policy-shared-BJNH9gNN.js → dm-policy-shared-CV1uWhMc.js} +1 -1
  85. package/dist/{doctor-completion-ChF4A40n.js → doctor-completion-Cfe2nTpN.js} +1 -1
  86. package/dist/{doctor-completion-DIFx6d6S.js → doctor-completion-CpGKbe63.js} +1 -1
  87. package/dist/entry.js +2 -2
  88. package/dist/{exec-approvals-cli-BAJ3sxzP.js → exec-approvals-cli-BShAvkW4.js} +4 -4
  89. package/dist/{exec-approvals-cli-DIUYxvM0.js → exec-approvals-cli-CABBuuEP.js} +4 -4
  90. package/dist/extensionAPI.js +3 -3
  91. package/dist/{fetch-BoHKSk-O.js → fetch-BzXaK9px.js} +8 -8
  92. package/dist/{fetch-guard-TJjLK0FV.js → fetch-guard-0mkjBgri.js} +3 -3
  93. package/dist/{frontmatter-saAwiKEb.js → frontmatter-PMByWrfP.js} +5 -5
  94. package/dist/{fs-safe-LRpYbPaA.js → fs-safe-DwICJjkN.js} +4 -4
  95. package/dist/{gateway-cli-BJ9wa3Hc.js → gateway-cli-3YUOWIal.js} +415 -169
  96. package/dist/{gateway-cli-CVnksdlt.js → gateway-cli-CDCwUJ0Z.js} +415 -169
  97. package/dist/{gateway-rpc-DNsG0xAN.js → gateway-rpc-Bs4EcgS4.js} +1 -1
  98. package/dist/{gateway-rpc-BeRn5nUX.js → gateway-rpc-DOfMq6W1.js} +1 -1
  99. package/dist/{github-copilot-token-zGOMIGSh.js → github-copilot-token-WSjo05vB.js} +7 -7
  100. package/dist/{health-Cxv6ou16.js → health-B5jHSu9i.js} +3 -3
  101. package/dist/{health-Q4hCJ8O2.js → health-BEgp6PEF.js} +3 -3
  102. package/dist/{hooks-cli-ChZY2urb.js → hooks-cli-D1_UuIh4.js} +24 -24
  103. package/dist/{hooks-cli-DOHX--ha.js → hooks-cli-Dy5LfGKt.js} +24 -24
  104. package/dist/{image-ops-D_fm2PuR.js → image-ops-O8pHxo7i.js} +1 -1
  105. package/dist/index.js +26 -26
  106. package/dist/{installs-Du8n8Do9.js → installs-4lGALZOo.js} +1 -1
  107. package/dist/{installs-78zhoWuO.js → installs-puN7yKHH.js} +1 -1
  108. package/dist/{ir-C4MMLUJr.js → ir-fzpdYPWw.js} +5 -5
  109. package/dist/{legacy-names-vLJrYADD.js → legacy-names-CLlrMq8r.js} +1 -1
  110. package/dist/llm-slug-generator.js +58 -58
  111. package/dist/{logger-a0-zAY5a.js → logger-DNehzD_s.js} +1 -1
  112. package/dist/{logs-cli-BrL9UDGB.js → logs-cli-CrUZySOS.js} +3 -3
  113. package/dist/{logs-cli-BdR6-Q3U.js → logs-cli-CwN6ZrMz.js} +3 -3
  114. package/dist/{manager-DdA_cy40.js → manager-DH-MILAU.js} +12 -12
  115. package/dist/{markdown-tables-Dd7jV1JF.js → markdown-tables-UWspJNAH.js} +2 -2
  116. package/dist/{memory-cli-DZyEfnsr.js → memory-cli-CqS6VXEu.js} +1 -1
  117. package/dist/{memory-cli-D_89Y9nb.js → memory-cli-DVqLwNhN.js} +1 -1
  118. package/dist/{model-selection-CdZITU0t.js → model-selection-9qbqwsOT.js} +86 -86
  119. package/dist/{models-BbhdUY5g.js → models-Kq9m-LfF.js} +3 -3
  120. package/dist/{models-cli-BekoSHw2.js → models-cli-B4wVcMjJ.js} +23 -23
  121. package/dist/{models-cli-BmL2dpSq.js → models-cli-dyUiDMqX.js} +22 -22
  122. package/dist/{node-cli-BVgH-DXq.js → node-cli-DGi3DELS.js} +4 -4
  123. package/dist/{node-cli-BTywy8AL.js → node-cli-Dm9lnwVF.js} +4 -4
  124. package/dist/{node-command-policy-B9A0wAU6.js → node-command-policy-6yjbNtx-.js} +1 -1
  125. package/dist/{node-command-policy-wwMY6dIH.js → node-command-policy-C1Fy9dcA.js} +1 -1
  126. package/dist/{nodes-cli-OzWTp207.js → nodes-cli-Bp2RePXd.js} +3 -3
  127. package/dist/{nodes-cli-D9vz6Yaa.js → nodes-cli-CLzaLC3L.js} +3 -3
  128. package/dist/{npm-pack-install-opyKYSmS.js → npm-pack-install-BgBpeTJk.js} +1 -1
  129. package/dist/{npm-pack-install-B-cOWuiF.js → npm-pack-install-Dlm0MIZy.js} +1 -1
  130. package/dist/{npm-resolution-6WKQ6nBu.js → npm-resolution-DWE5khjC.js} +2 -2
  131. package/dist/{npm-resolution-51BBOWpQ.js → npm-resolution-Ey8dK3VI.js} +2 -2
  132. package/dist/{onboard-CnRiqboN.js → onboard-CneU0GqJ.js} +3 -3
  133. package/dist/{onboard-channels-DAwHVQ1P.js → onboard-channels-B1oC1rop.js} +3 -3
  134. package/dist/{onboard-channels-DYRTySsa.js → onboard-channels-Bm2XVN3C.js} +3 -3
  135. package/dist/{onboard-helpers-ziqfw3UR.js → onboard-helpers-DLBTH9b_.js} +1 -1
  136. package/dist/{onboard-helpers-BgbRKH4z.js → onboard-helpers-DNbkQX5v.js} +1 -1
  137. package/dist/{onboard-remote-BsnRgDQj.js → onboard-remote-DUy7Ew-K.js} +1 -1
  138. package/dist/{onboard-remote-NW_cPnaV.js → onboard-remote-DsBkNMeO.js} +1 -1
  139. package/dist/{onboard-skills-DwbAJ4nt.js → onboard-skills-D3L4yX2A.js} +1 -1
  140. package/dist/{onboard-skills-DCYqOaTS.js → onboard-skills-DX_x-MfC.js} +1 -1
  141. package/dist/{onboard-Cj-sLY2K.js → onboard-trNO818c.js} +3 -3
  142. package/dist/{onboarding-CujUbWy2.js → onboarding-BKoaWOxQ.js} +7 -7
  143. package/dist/{onboarding-DidWWI3X.js → onboarding-R2m4j7Dp.js} +7 -7
  144. package/dist/{onboarding.finalize-CDE1nAu8.js → onboarding.finalize-B6K3hYJZ.js} +28 -28
  145. package/dist/{onboarding.finalize-DTqRxVZH.js → onboarding.finalize-C0X_xaHh.js} +27 -27
  146. package/dist/{onboarding.gateway-config-DOvEzkIo.js → onboarding.gateway-config-CFRbyVyW.js} +4 -4
  147. package/dist/{onboarding.gateway-config-SrBY4Yem.js → onboarding.gateway-config-DKLUe3Ul.js} +4 -4
  148. package/dist/{operator-commands-Ct0WXISe.js → operator-commands-BmGo9Ngv.js} +2 -2
  149. package/dist/{operator-commands-Bfd55UfE.js → operator-commands-EsKoI4yV.js} +2 -2
  150. package/dist/{outbound-attachment-CqtMGpsJ.js → outbound-attachment-DVKqk30B.js} +2 -2
  151. package/dist/{outbound-message-hooks-RBQbGzGm.js → outbound-message-hooks-S_VhlJs3.js} +4 -4
  152. package/dist/{path-alias-guards-Zj-NwKjV.js → path-alias-guards-Cd5yHmTq.js} +1 -1
  153. package/dist/{paths-C6TxBCvO.js → paths-Cvc9EM8Y.js} +5 -5
  154. package/dist/{pi-embedded-B6sr5IdC.js → pi-embedded-B7d9LrI1.js} +16 -4
  155. package/dist/{pi-embedded-helpers-BYLOFsUc.js → pi-embedded-helpers-5JApWu7A.js} +24 -24
  156. package/dist/{pi-embedded-helpers-BAjtRn7m.js → pi-embedded-helpers-C9XqX-Jq.js} +1 -1
  157. package/dist/{pi-embedded-helpers-CPorV-Mk.js → pi-embedded-helpers-DIUrv2Ua.js} +1 -1
  158. package/dist/{pi-embedded-B9bOSjfE.js → pi-embedded-maiK_yr9.js} +183 -171
  159. package/dist/{pi-embedded-recovery-adapter-Cs1EJElw.js → pi-embedded-recovery-adapter-8xq2SINa.js} +8 -8
  160. package/dist/{pi-embedded-recovery-adapter-B8Goyik3.js → pi-embedded-recovery-adapter-BHTdeEKa.js} +8 -8
  161. package/dist/{pi-embedded-recovery-adapter-swbNIWgT.js → pi-embedded-recovery-adapter-DPjgp8q4.js} +2 -2
  162. package/dist/{pi-embedded-recovery-adapter-ZPyX9YC1.js → pi-embedded-recovery-adapter-DytV4fjp.js} +2 -2
  163. package/dist/{pi-embedded-utils-CT_f_S3Y.js → pi-embedded-utils-BV_Dtzrw.js} +1 -1
  164. package/dist/{pi-embedded-utils-lp-U3XQ9.js → pi-embedded-utils-BetZbS6i.js} +1 -1
  165. package/dist/{pi-embedded-utils-DOtaZ7KV.js → pi-embedded-utils-kHMmP2Xh.js} +3 -3
  166. package/dist/{pi-model-discovery-B9KKtGuw.js → pi-model-discovery-CsC6yTDG.js} +7 -7
  167. package/dist/{pi-tools.policy-r9H_A-NQ.js → pi-tools.policy-B7YiM0PW.js} +1 -1
  168. package/dist/{plugin-registry-CwGfmKsn.js → plugin-registry-AEemJBCl.js} +1 -1
  169. package/dist/{plugin-registry-EHKfjAoe.js → plugin-registry-BjZ0q-dW.js} +1 -1
  170. package/dist/plugin-sdk/{agent-scope-BLF4nZUv.js → agent-scope-BYp_CjdU.js} +2 -2
  171. package/dist/plugin-sdk/{agent-turn-execute-BVPDW02i.js → agent-turn-execute-BRJa_EBt.js} +12 -12
  172. package/dist/plugin-sdk/agent-turn-execute-lFEMcNl2.js +61 -0
  173. package/dist/plugin-sdk/{agent-turn-runner-DDIT9POj.js → agent-turn-runner-CqIBwx4o.js} +3 -3
  174. package/dist/plugin-sdk/agent-turn-runner-LfHz7Qc1.js +11 -0
  175. package/dist/plugin-sdk/{agent-turn-runner-DjK-LdTA.js → agent-turn-runner-nXQCZaSU.js} +6 -6
  176. package/dist/plugin-sdk/{api-key-rotation-XDUKz2gd.js → api-key-rotation-CDNf_4cI.js} +2 -2
  177. package/dist/plugin-sdk/{artifacts-HAYpGlG1.js → artifacts-BMLMg3MG.js} +1 -1
  178. package/dist/plugin-sdk/{audio-preflight-Bi8RI9zM.js → audio-preflight-BVO3xBbT.js} +5 -5
  179. package/dist/plugin-sdk/{audio-preflight-BS29OWk3.js → audio-preflight-BmKL6FNP.js} +2 -2
  180. package/dist/plugin-sdk/audio-preflight-DlGohKMs.js +28 -0
  181. package/dist/plugin-sdk/{audio-transcription-runner-CGgNZVZv.js → audio-transcription-runner-DXiOiQMw.js} +1 -1
  182. package/dist/plugin-sdk/{audio-transcription-runner-BNafitZj.js → audio-transcription-runner-TBjJv_mZ.js} +10 -10
  183. package/dist/plugin-sdk/{auth-profiles-CCJQoedi.js → auth-profiles-DHZjW8Vk.js} +5 -5
  184. package/dist/plugin-sdk/{channel-activity-BKwRzYJb.js → channel-activity-Dr4PYej7.js} +3 -3
  185. package/dist/plugin-sdk/{chrome-D0eLSqkP.js → chrome-BDy1zYAr.js} +4 -4
  186. package/dist/plugin-sdk/{chrome-CT_6RvJg.js → chrome-DDIL8pIX.js} +8 -8
  187. package/dist/plugin-sdk/{chunk-DI-5pBck.js → chunk-BTSnO1wn.js} +6 -6
  188. package/dist/plugin-sdk/{chunk-CDvvv9SU.js → chunk-DGQdf0JN.js} +3 -3
  189. package/dist/plugin-sdk/{command-detection-WNHSrul-.js → command-detection-O-osZdkd.js} +99 -87
  190. package/dist/plugin-sdk/command-queue-BYvVRYdf.js +13 -0
  191. package/dist/plugin-sdk/{command-queue-DH8k55DC.js → command-queue-Cveon04f.js} +9 -3
  192. package/dist/plugin-sdk/{command-queue-CHiQj9Ji.js → command-queue-d5XPm8KU.js} +7 -2
  193. package/dist/plugin-sdk/{commands-registry-Do_g2It_.js → commands-registry-8sy0wsK_.js} +6 -6
  194. package/dist/plugin-sdk/{commands-registry-DpLk11E7.js → commands-registry-N6f_lsxF.js} +2 -2
  195. package/dist/plugin-sdk/{config-CQNfmIC8.js → config-Biusjzx-.js} +7 -7
  196. package/dist/plugin-sdk/{deliver-_UyigkEK.js → deliver-BD3gpFAY.js} +1 -1
  197. package/dist/plugin-sdk/{deliver-L6eu6zyG.js → deliver-BgHA8c9F.js} +11 -11
  198. package/dist/plugin-sdk/deliver-DBCz1GqU.js +32 -0
  199. package/dist/plugin-sdk/{deliver-DuDcszu1.js → deliver-DZoYhDxC.js} +3 -3
  200. package/dist/plugin-sdk/{diagnostic-Dk57KVjE.js → diagnostic-BhLorIrS.js} +1 -1
  201. package/dist/plugin-sdk/{diagnostic-DfxuMWHd.js → diagnostic-Bni_8VyY.js} +7 -7
  202. package/dist/plugin-sdk/{diagnostic-C7lPoqyv.js → diagnostic-D6hSjxiv.js} +5 -5
  203. package/dist/plugin-sdk/{fetch-guard-CZT8FU1i.js → fetch-guard-C1a1KfEb.js} +3 -3
  204. package/dist/plugin-sdk/{fs-safe-B0JgGdXa.js → fs-safe-CbZ6uRVv.js} +3 -3
  205. package/dist/plugin-sdk/{hook-runner-global-WRI53ibi.js → hook-runner-global-BvxlnAyu.js} +3 -3
  206. package/dist/plugin-sdk/{image-ops-kuILYHZv.js → image-ops-DY_SZfXk.js} +1 -1
  207. package/dist/plugin-sdk/index.js +54 -54
  208. package/dist/plugin-sdk/{ir-Bm7oqkwT.js → ir-BNohi6ZW.js} +5 -5
  209. package/dist/plugin-sdk/{local-roots-D-CHzVr1.js → local-roots-Bm7nDW20.js} +7 -7
  210. package/dist/plugin-sdk/{logger-BSK-0Yjx.js → logger-D6KsqbNW.js} +1 -1
  211. package/dist/plugin-sdk/{manager-D2jffdjH.js → manager-B_vK9MbM.js} +8 -8
  212. package/dist/plugin-sdk/manager-ByaW_O4Y.js +16 -0
  213. package/dist/plugin-sdk/{markdown-tables-DIWQQ2W1.js → markdown-tables-G4vK24xc.js} +2 -2
  214. package/dist/plugin-sdk/markdown-tables-J4hZ7eWU.js +10 -0
  215. package/dist/plugin-sdk/{outbound-attachment-CtKKNyms.js → outbound-attachment-Cw7T2Mrt.js} +2 -2
  216. package/dist/plugin-sdk/{path-alias-guards-CHfCMaeX.js → path-alias-guards-CVybi_GQ.js} +1 -1
  217. package/dist/plugin-sdk/{pi-embedded-helpers-BRymkO_1.js → pi-embedded-helpers-B_jgacW8.js} +11 -11
  218. package/dist/plugin-sdk/{pi-embedded-helpers-CELD3Ns3.js → pi-embedded-helpers-D74AHWBs.js} +3 -3
  219. package/dist/plugin-sdk/{pi-embedded-utils-BHmc3RVS.js → pi-embedded-utils-DOXEm_H8.js} +3 -3
  220. package/dist/plugin-sdk/{pi-embedded-utils-AFQ-oCFM.js → pi-embedded-utils-DQaOun1y.js} +1 -1
  221. package/dist/plugin-sdk/{pi-model-discovery-6BBajZds.js → pi-model-discovery-DWUrLRLg.js} +1 -1
  222. package/dist/plugin-sdk/{pi-model-discovery-4X7_2_nP.js → pi-model-discovery-DWw1ReX-.js} +6 -6
  223. package/dist/plugin-sdk/provider-dispatcher-CC6PgYPM.js +61 -0
  224. package/dist/plugin-sdk/{provider-dispatcher-D7UK3G8K.js → provider-dispatcher-NB8R-FyS.js} +12 -12
  225. package/dist/plugin-sdk/provider-image-B_dJDOl5.js +22 -0
  226. package/dist/plugin-sdk/{provider-image-DBye3Ln5.js → provider-image-CEQrHWYz.js} +5 -5
  227. package/dist/plugin-sdk/{provider-image-CbZOYl0b.js → provider-image-Cy9HRMER.js} +1 -1
  228. package/dist/plugin-sdk/{provider-image-Bumd1GBG.js → provider-image-g3vmjlkZ.js} +4 -4
  229. package/dist/plugin-sdk/provider-media-understanding.js +7 -7
  230. package/dist/plugin-sdk/{proxy-DJ2nskkh.js → proxy-BWc9guJs.js} +1 -1
  231. package/dist/plugin-sdk/proxy-DwbYzxBy.js +7 -0
  232. package/dist/plugin-sdk/{proxy-fetch-CuQpjpkI.js → proxy-fetch-BYkGxQnh.js} +1 -1
  233. package/dist/plugin-sdk/{pw-ai-BJrhPMHJ.js → pw-ai-DQv6Xhce.js} +10 -10
  234. package/dist/plugin-sdk/{pw-ai-hVucoF_I.js → pw-ai-DlM8D_uP.js} +1 -1
  235. package/dist/plugin-sdk/{qmd-manager-DhW_frb3.js → qmd-manager-CpV0SFnY.js} +8 -8
  236. package/dist/plugin-sdk/{query-expansion-NpBeKA8F.js → query-expansion-CwmHvvV_.js} +3 -3
  237. package/dist/plugin-sdk/{recorder-DdbAQ2HO.js → recorder-BXZMRSjO.js} +4 -4
  238. package/dist/plugin-sdk/{redact-CUjmZn2Y.js → redact-C88Ryyfs.js} +1 -1
  239. package/dist/plugin-sdk/replies-B9uDLFOE.js +25 -0
  240. package/dist/plugin-sdk/{replies-Dw3jvqpR.js → replies-l2hZAzbt.js} +4 -4
  241. package/dist/plugin-sdk/{reply-directives-BS8Ge06Z.js → reply-directives-BwxzQXmX.js} +2 -2
  242. package/dist/plugin-sdk/reply-prefix-BQMEQam1.js +7 -0
  243. package/dist/plugin-sdk/{reply-prefix-Dt1hESHJ.js → reply-prefix-qLQRxqrf.js} +1 -1
  244. package/dist/plugin-sdk/{resolve-route-BpLuk-wC.js → resolve-route-50KoArP9.js} +4 -4
  245. package/dist/plugin-sdk/{resolve-route-DiQTL1qI.js → resolve-route-6v1HVvWk.js} +6 -6
  246. package/dist/plugin-sdk/{runs-CPWQbljV.js → runs-B4G4Txj3.js} +3 -3
  247. package/dist/plugin-sdk/runs-BQhYekhr.js +25 -0
  248. package/dist/plugin-sdk/{runs-D6fAvItC.js → runs-CiohhBb8.js} +7 -7
  249. package/dist/plugin-sdk/{runs-B3DB63tB.js → runs-Dzlj-BO5.js} +5 -5
  250. package/dist/plugin-sdk/{send-CpXGZgrS.js → send-BMSqETcU.js} +6 -6
  251. package/dist/plugin-sdk/send-CeWqZTK0.js +23 -0
  252. package/dist/plugin-sdk/{send-BDwTyH6I.js → send-Cv2CGnsK.js} +8 -8
  253. package/dist/plugin-sdk/{send-Ce2XBaKF.js → send-Cx6gHjnA.js} +6 -6
  254. package/dist/plugin-sdk/send-CzcKgBBf.js +25 -0
  255. package/dist/plugin-sdk/{send-R0HB1-l-.js → send-DG4MQPPm.js} +13 -13
  256. package/dist/plugin-sdk/{send-C28pxKhC.js → send-DHNKlQPv.js} +2 -2
  257. package/dist/plugin-sdk/{send-CE_6VOiQ.js → send-DM6RpDCL.js} +7 -7
  258. package/dist/plugin-sdk/{send-GMYUhBtJ.js → send-DO0C4Uva.js} +19 -19
  259. package/dist/plugin-sdk/send-Dvna5ey-.js +27 -0
  260. package/dist/plugin-sdk/{send-DE9YP1gQ.js → send-Tg5PT6ci.js} +1 -1
  261. package/dist/plugin-sdk/send-xPV0QIjh.js +24 -0
  262. package/dist/plugin-sdk/{session-meta-BU2WXD0N.js → session-meta-CiqJP0pO.js} +2 -2
  263. package/dist/plugin-sdk/session-meta-n4SCcAbJ.js +10 -0
  264. package/dist/plugin-sdk/skill-commands-BOV3NIbU.js +14 -0
  265. package/dist/plugin-sdk/{skill-commands-BYfWIPfV.js → skill-commands-CE_SkRQk.js} +5 -5
  266. package/dist/plugin-sdk/{skills-BuJjEYto.js → skills-CjW6uGTa.js} +6 -6
  267. package/dist/plugin-sdk/src/auto-reply/reply/agent-runner-execution.d.ts +2 -0
  268. package/dist/plugin-sdk/src/config/talk.d.ts +0 -4
  269. package/dist/plugin-sdk/src/gateway/storage-startup-gate.d.ts +28 -8
  270. package/dist/plugin-sdk/src/process/command-queue.d.ts +3 -0
  271. package/dist/plugin-sdk/src/talk/realtime-transcription-provider-types.d.ts +4 -1
  272. package/dist/plugin-sdk/src/talk/streaming-speech-provider-types.d.ts +2 -0
  273. package/dist/plugin-sdk/{ssrf-DiAz1Z_z.js → ssrf-BUCEDxp5.js} +2 -2
  274. package/dist/plugin-sdk/{store-Bl3Yjf_w.js → store-yBNTHg3N.js} +2 -2
  275. package/dist/plugin-sdk/{subagent-registry-Bxwla-0-.js → subagent-registry-B5xaoVWq.js} +12 -12
  276. package/dist/plugin-sdk/subagent-registry-BiarU1g8.js +61 -0
  277. package/dist/plugin-sdk/{subsystem-B2x33s9h.js → subsystem-CUUKL6Fr.js} +4 -4
  278. package/dist/plugin-sdk/{tables-CTmQQyfU.js → tables-DKYi6grj.js} +1 -1
  279. package/dist/plugin-sdk/testing.js +12 -12
  280. package/dist/plugin-sdk/{tokens-DxJSOoJn.js → tokens-ysZUkYZZ.js} +1 -1
  281. package/dist/plugin-sdk/{tool-loop-detection-Buouaxew.js → tool-loop-detection-LsvZ1dIY.js} +1 -1
  282. package/dist/plugin-sdk/{tools-iyXmO6p1.js → tools-Sk-IqHBP.js} +46 -34
  283. package/dist/plugin-sdk/{user-run-recording-juCW_uQ-.js → user-run-recording-BMaK7jNR.js} +2 -2
  284. package/dist/plugin-sdk/user-run-recording-DiKcNdjn.js +11 -0
  285. package/dist/{plugins-cli-CmYpruM_.js → plugins-cli-CjgLVUxJ.js} +27 -27
  286. package/dist/{plugins-cli-B0I1Xkrz.js → plugins-cli-Di9VhU7J.js} +27 -27
  287. package/dist/{program-CA1rDqtK.js → program-Dus5j4vB.js} +28 -28
  288. package/dist/{program-context-BCo6By7P.js → program-context-CQrxOpXH.js} +36 -36
  289. package/dist/{prompt-select-styled-cL1dmYcO.js → prompt-select-styled-D1Kc5Amb.js} +9 -9
  290. package/dist/{prompt-select-styled-BAmwLkut.js → prompt-select-styled-D3Li9uy2.js} +9 -9
  291. package/dist/{provider-image-CIpRvhkS.js → provider-image-BICZzOki.js} +1 -1
  292. package/dist/{provider-image-D9B_J5Ys.js → provider-image-Bsivqxw8.js} +1 -1
  293. package/dist/{provider-image-BllyLBJM.js → provider-image-Cb4z6zUu.js} +5 -5
  294. package/dist/{proxy-fWL7CKDP.js → proxy-C9sq6M-h.js} +1 -1
  295. package/dist/{proxy-env-CzGKpJY_.js → proxy-env-i0jn5uxB.js} +2 -2
  296. package/dist/{proxy-fetch-DCI0KuH6.js → proxy-fetch-CK5AQAYw.js} +1 -1
  297. package/dist/{push-apns-Bhf8qK68.js → push-apns-BcZzA03X.js} +2 -2
  298. package/dist/{push-apns-BmrddV2R.js → push-apns-qUm5cL9P.js} +2 -2
  299. package/dist/{pw-ai-CKjrjwfw.js → pw-ai-Ci1kADkJ.js} +1 -1
  300. package/dist/{pw-ai-Cd08hlBj.js → pw-ai-DT3fj2Kt.js} +1 -1
  301. package/dist/{pw-ai-CXSJw34w.js → pw-ai-DziGw6Jy.js} +14 -14
  302. package/dist/{qmd-manager-BwZ0V5fL.js → qmd-manager-p036XU01.js} +10 -10
  303. package/dist/{qr-cli-BCIfpQUF.js → qr-cli-BE3QWMP3.js} +3 -3
  304. package/dist/{qr-cli-BTOCXqFJ.js → qr-cli-DhJ37DZK.js} +3 -3
  305. package/dist/{query-expansion-31VWpPCz.js → query-expansion-30x7RlZY.js} +5 -5
  306. package/dist/{reconcile-bundled-Bl6XpmI5.js → reconcile-bundled-CAKTvY-C.js} +1 -1
  307. package/dist/{reconcile-bundled-TswjG3xv.js → reconcile-bundled-DJKaKSgk.js} +1 -1
  308. package/dist/{recorder-DNRxe9C8.js → recorder-C_ViZLf1.js} +4 -4
  309. package/dist/{recovery-adapter-DyPV7syS.js → recovery-adapter-BT12fVyO.js} +8 -8
  310. package/dist/{recovery-adapter-DW0R_vFE.js → recovery-adapter-DF25-zSH.js} +1 -1
  311. package/dist/{recovery-adapter-DOizlZvv.js → recovery-adapter-Df87xZQp.js} +8 -8
  312. package/dist/{recovery-adapter-mi8jbyvy.js → recovery-adapter-okaOo6tO.js} +1 -1
  313. package/dist/{redact-DZne_lu8.js → redact-BOHmCPP_.js} +1 -1
  314. package/dist/{register.agent-B3BSgQcW.js → register.agent-BCNYDn8G.js} +27 -27
  315. package/dist/{register.agent-CSHtI9uN.js → register.agent-CqGVQ2N1.js} +28 -28
  316. package/dist/{register.configure-CYwDM9d3.js → register.configure-CPTDt8eL.js} +30 -30
  317. package/dist/{register.configure-Cu4CPpm4.js → register.configure-DxdNTBIk.js} +30 -30
  318. package/dist/{register.maintenance-BXiHFIyG.js → register.maintenance-BOCv2N1t.js} +28 -28
  319. package/dist/{register.maintenance-C6vjRY-I.js → register.maintenance-CFjB31Z5.js} +29 -29
  320. package/dist/{register.message-BsBClRov.js → register.message-CiT53tgD.js} +23 -23
  321. package/dist/{register.message-DNpBTvto.js → register.message-dqrK9EsG.js} +23 -23
  322. package/dist/{register.onboard-BKQLGJhh.js → register.onboard-BKoeYDAF.js} +5 -5
  323. package/dist/{register.onboard-t_7lOkRu.js → register.onboard-xtBBqce9.js} +5 -5
  324. package/dist/{register.setup-B7QHn0Qv.js → register.setup-qHCNX6LC.js} +5 -5
  325. package/dist/{register.setup-DEg7fSPZ.js → register.setup-xIVMlLYx.js} +5 -5
  326. package/dist/{register.status-health-sessions-7E-y6cw7.js → register.status-health-sessions-CaxJw1rr.js} +27 -27
  327. package/dist/{register.status-health-sessions-D9iuSOb8.js → register.status-health-sessions-D4hMq0I7.js} +27 -27
  328. package/dist/{register.subclis-R6keQnon.js → register.subclis-srwCZnD0.js} +25 -25
  329. package/dist/{replies-NkETqb6B.js → replies-BsctLhfp.js} +4 -4
  330. package/dist/{reply-B4TgvJrJ.js → reply-B_SiN91-.js} +41 -30
  331. package/dist/{reply-directives-DGITtNUL.js → reply-directives-D9wYtPPy.js} +2 -2
  332. package/dist/{reply-prefix-DVkNDBNe.js → reply-prefix-C7WlN3qm.js} +1 -1
  333. package/dist/{resolve-route-jDAjkfZE.js → resolve-route-BV8k5qjX.js} +5 -5
  334. package/dist/{rpc-B2GRFhpM.js → rpc-BgMIbqpb.js} +1 -1
  335. package/dist/{rpc-BljNUarN.js → rpc-htgXg_yf.js} +1 -1
  336. package/dist/{run-main-CMTfGYjG.js → run-main-BzfK-GcH.js} +36 -36
  337. package/dist/{runs-B0TxOQnF.js → runs-BW5fW5nB.js} +3 -3
  338. package/dist/{runs-BMp7jOLL.js → runs-BjLs5ozo.js} +3 -3
  339. package/dist/{runs-DGWNXyKA.js → runs-ucQd8Fc-.js} +8 -8
  340. package/dist/{sandbox-DbfWdQha.js → sandbox-7YCCMJoM.js} +1 -1
  341. package/dist/{sandbox-CQwpubTx.js → sandbox-BpdiWabc.js} +1 -1
  342. package/dist/{sandbox-cli-CSjghLhl.js → sandbox-cli-Dv0Viev8.js} +2 -2
  343. package/dist/{sandbox-cli-DwhgE7u4.js → sandbox-cli-UfXu5kvh.js} +2 -2
  344. package/dist/{secrets-cli-jj1RZiK2.js → secrets-cli-DD5pd5lU.js} +3 -3
  345. package/dist/{secrets-cli-mfGtyiPb.js → secrets-cli-DMX3vuhP.js} +3 -3
  346. package/dist/{security-cli-DSB1NLa6.js → security-cli-DCKCspHc.js} +7 -7
  347. package/dist/{security-cli-DlMcCXl1.js → security-cli-DRALCMFL.js} +7 -7
  348. package/dist/{send-Do1AlhD5.js → send-BGps2i_C.js} +8 -8
  349. package/dist/{send-ENMm5qbW.js → send-Ba3pDq6E.js} +7 -7
  350. package/dist/{send-Dq8ChBfS.js → send-BiDcVZSc.js} +6 -6
  351. package/dist/{send-l57G-s8y.js → send-CZsC4D3G.js} +1 -1
  352. package/dist/{send-DEFcgo-1.js → send-TscXeVY8.js} +27 -27
  353. package/dist/{send-CNLmncRW.js → send-Tx-ew59_.js} +6 -6
  354. package/dist/{send-DAYMV49d.js → send-s0RNLFLX.js} +1 -1
  355. package/dist/{server-BAGUd2MH.js → server-DWJmtex3.js} +4 -4
  356. package/dist/{server-context-BUX61Gwl.js → server-context-BEjWhzMi.js} +2 -2
  357. package/dist/{server-context-FPrSnBNG.js → server-context-CQQ6Q5Kp.js} +2 -2
  358. package/dist/{server-lifecycle-7QoL5fyb.js → server-lifecycle-B9IQKSom.js} +1 -1
  359. package/dist/{server-lifecycle-DXRap2AR.js → server-lifecycle-C3hCCbXm.js} +1 -1
  360. package/dist/{server-node-events-DSTI4JnV.js → server-node-events-8k0OLCvW.js} +23 -23
  361. package/dist/{server-node-events-MOX6FUiJ.js → server-node-events-BYTgaAay.js} +23 -23
  362. package/dist/{server-IDopagLT.js → server-y8WhCQvu.js} +4 -4
  363. package/dist/{session-meta-DuK_BrWT.js → session-meta-DH__PMKt.js} +2 -2
  364. package/dist/{sessions-Dcu0bdQ7.js → sessions-BlXxa7bM.js} +6 -6
  365. package/dist/{sessions-CgVN798h.js → sessions-DFDrcshi.js} +6 -6
  366. package/dist/{sessions-claims-status-D5th0G34.js → sessions-claims-status-BWkOZDb1.js} +2 -2
  367. package/dist/{sessions-claims-status-Bt9unG8h.js → sessions-claims-status-BzqTiwuz.js} +2 -2
  368. package/dist/{skill-commands-BhMQp_i8.js → skill-commands-CRZajtK_.js} +9 -9
  369. package/dist/{skills-ckuLxkyg.js → skills-DOc6uEd1.js} +21 -21
  370. package/dist/{status-B3eNMcE3.js → status-BacPIpt6.js} +8 -8
  371. package/dist/{status-C5pbfqhh.js → status-BsGjriqM.js} +8 -8
  372. package/dist/{store-gQ6FSjVk.js → store-xxN6qyAh.js} +2 -2
  373. package/dist/{subsystem-CPYnUTN4.js → subsystem-BCjklMkJ.js} +64 -64
  374. package/dist/{system-cli-B-THY8xp.js → system-cli-DaeSeaNj.js} +3 -3
  375. package/dist/{system-cli-BqCA8eq3.js → system-cli-LSxX4WjX.js} +3 -3
  376. package/dist/{tables-DEyD0zuy.js → tables-o3ZpyPWV.js} +1 -1
  377. package/dist/{task-pipeline-boot-BLEjtMkt.js → task-pipeline-boot-CM-3tH09.js} +23 -23
  378. package/dist/{task-pipeline-boot-DKqT4VdZ.js → task-pipeline-boot-Dihxq0Tg.js} +23 -23
  379. package/dist/{task-runlog-retention-cEBecqvb.js → task-runlog-retention-DCbMK2T8.js} +65 -10
  380. package/dist/{task-runlog-retention-BZrnJGL1.js → task-runlog-retention-GZu-QuBY.js} +65 -10
  381. package/dist/{tasks-DXPXCFmn.js → tasks-DCbYQt5N.js} +2 -2
  382. package/dist/{tasks-YUokA114.js → tasks-Dm1ljmuN.js} +2 -2
  383. package/dist/{tokens-9BPY4SaX.js → tokens-9Mla_HDp.js} +1 -1
  384. package/dist/{tool-loop-detection-C1fqyXXD.js → tool-loop-detection-8uvf8mSd.js} +2 -2
  385. package/dist/{tui-CetFSZIt.js → tui-DQwfx20_.js} +3 -3
  386. package/dist/{tui-5QhX2Lcm.js → tui-X8LP2ykY.js} +3 -3
  387. package/dist/{tui-cli-Bo-8qeoa.js → tui-cli-DFen3XYb.js} +6 -6
  388. package/dist/{tui-cli-DFak7s89.js → tui-cli-Dhj11694.js} +6 -6
  389. package/dist/{update-Dwt-MeRL.js → update-CYcHPlAS.js} +1 -1
  390. package/dist/{update-B3jJ2yVe.js → update-VuewNwzn.js} +1 -1
  391. package/dist/{update-cli-Dhxx3iie.js → update-cli-DE0ttohR.js} +32 -32
  392. package/dist/{update-cli-D5knJbn5.js → update-cli-DECVfh7L.js} +33 -33
  393. package/dist/{update-runner-18yD5NLo.js → update-runner-C8NxlRy7.js} +1 -1
  394. package/dist/{update-runner-DohE1D7D.js → update-runner-CBbs-iN_.js} +1 -1
  395. package/dist/{user-run-recording-B0XAAUwL.js → user-run-recording-CAk1Ketk.js} +2 -2
  396. package/dist/{validation-cli-Dfac8Duq.js → validation-cli-D8dTZ830.js} +23 -23
  397. package/dist/{validation-cli-CAge8d_F.js → validation-cli-Di7B-mhn.js} +23 -23
  398. package/dist/{with-timeout-DD5bV7yq.js → with-timeout-BfG7k9-4.js} +2 -2
  399. package/dist/{with-timeout-1SSQaGSz.js → with-timeout-CpZZ4mMw.js} +2 -2
  400. package/dist/{workspace-B707AGIc.js → workspace-Dbn4gFdH.js} +9 -9
  401. package/extensions/acpx/package.json +1 -1
  402. package/extensions/anthropic/package.json +1 -1
  403. package/extensions/bifrost/package.json +1 -1
  404. package/extensions/bluebubbles/package.json +1 -1
  405. package/extensions/copilot-proxy/package.json +1 -1
  406. package/extensions/deepgram/package.json +1 -1
  407. package/extensions/deepinfra/package.json +1 -1
  408. package/extensions/diagnostics-otel/package.json +1 -1
  409. package/extensions/diffs/package.json +1 -1
  410. package/extensions/discord/package.json +1 -1
  411. package/extensions/dream-cycle/package.json +1 -1
  412. package/extensions/elevenlabs/package.json +1 -1
  413. package/extensions/elevenlabs/src/realtime-transcription-provider-faults.test.ts +0 -39
  414. package/extensions/elevenlabs/src/realtime-transcription-provider.test.ts +34 -32
  415. package/extensions/elevenlabs/src/realtime-transcription-provider.ts +5 -34
  416. package/extensions/elevenlabs/src/streaming-speech-provider.ts +5 -0
  417. package/extensions/feishu/package.json +1 -1
  418. package/extensions/gemini-search/package.json +1 -1
  419. package/extensions/google/package.json +1 -1
  420. package/extensions/google-gemini-cli-auth/package.json +1 -1
  421. package/extensions/googlechat/package.json +1 -1
  422. package/extensions/grok-search/package.json +1 -1
  423. package/extensions/groq/package.json +1 -1
  424. package/extensions/imessage/package.json +1 -1
  425. package/extensions/irc/package.json +1 -1
  426. package/extensions/kimi-search/package.json +1 -1
  427. package/extensions/learning-core/package.json +1 -1
  428. package/extensions/line/package.json +1 -1
  429. package/extensions/llm-task/package.json +1 -1
  430. package/extensions/lobster/package.json +1 -1
  431. package/extensions/matrix/CHANGELOG.md +1 -1
  432. package/extensions/matrix/package.json +1 -1
  433. package/extensions/mattermost/package.json +1 -1
  434. package/extensions/memory-core/package.json +1 -1
  435. package/extensions/memory-lancedb/package.json +1 -1
  436. package/extensions/minimax/package.json +1 -1
  437. package/extensions/minimax-portal-auth/package.json +1 -1
  438. package/extensions/mistral/package.json +1 -1
  439. package/extensions/moonshot/package.json +1 -1
  440. package/extensions/msteams/CHANGELOG.md +1 -1
  441. package/extensions/msteams/package.json +1 -1
  442. package/extensions/nextcloud-talk/package.json +1 -1
  443. package/extensions/nostr/CHANGELOG.md +1 -1
  444. package/extensions/nostr/package.json +1 -1
  445. package/extensions/open-prose/package.json +1 -1
  446. package/extensions/openai/package.json +1 -1
  447. package/extensions/openai-realtime/package.json +1 -1
  448. package/extensions/openrouter/package.json +1 -1
  449. package/extensions/perplexity-search/package.json +1 -1
  450. package/extensions/searxng-search/package.json +1 -1
  451. package/extensions/signal/package.json +1 -1
  452. package/extensions/slack/package.json +1 -1
  453. package/extensions/synology-chat/package.json +1 -1
  454. package/extensions/telegram/package.json +1 -1
  455. package/extensions/tlon/package.json +1 -1
  456. package/extensions/twitch/CHANGELOG.md +1 -1
  457. package/extensions/twitch/package.json +1 -1
  458. package/extensions/voice-call/CHANGELOG.md +1 -1
  459. package/extensions/voice-call/package.json +1 -1
  460. package/extensions/whatsapp/package.json +1 -1
  461. package/extensions/zai/package.json +1 -1
  462. package/extensions/zalo/CHANGELOG.md +1 -1
  463. package/extensions/zalo/package.json +1 -1
  464. package/extensions/zalouser/CHANGELOG.md +1 -1
  465. package/extensions/zalouser/package.json +1 -1
  466. package/package.json +1 -1
  467. package/dist/plugin-sdk/agent-turn-execute-zuw0S_Lh.js +0 -61
  468. package/dist/plugin-sdk/agent-turn-runner-BcrkoR1M.js +0 -11
  469. package/dist/plugin-sdk/audio-preflight-DE04bi4M.js +0 -28
  470. package/dist/plugin-sdk/command-queue-BnJsJc_w.js +0 -13
  471. package/dist/plugin-sdk/deliver-D4fWK65M.js +0 -32
  472. package/dist/plugin-sdk/manager-BlYRVNJI.js +0 -16
  473. package/dist/plugin-sdk/markdown-tables-cZSKCBuW.js +0 -10
  474. package/dist/plugin-sdk/provider-dispatcher-B4PdTha5.js +0 -61
  475. package/dist/plugin-sdk/provider-image-CNlYbRab.js +0 -22
  476. package/dist/plugin-sdk/proxy-D2uiu68M.js +0 -7
  477. package/dist/plugin-sdk/replies-XUkqz_7S.js +0 -25
  478. package/dist/plugin-sdk/reply-prefix-MU3uY52y.js +0 -7
  479. package/dist/plugin-sdk/runs-R28wdt7j.js +0 -25
  480. package/dist/plugin-sdk/send-Cg2VXcO0.js +0 -27
  481. package/dist/plugin-sdk/send-DAs6FmWB.js +0 -23
  482. package/dist/plugin-sdk/send-UIQH_kN6.js +0 -25
  483. package/dist/plugin-sdk/send-tASIQF-Q.js +0 -24
  484. package/dist/plugin-sdk/session-meta-Dd1ZONel.js +0 -10
  485. package/dist/plugin-sdk/skill-commands-C7ZE3rKj.js +0 -14
  486. package/dist/plugin-sdk/subagent-registry-CTZBVVPF.js +0 -61
  487. package/dist/plugin-sdk/user-run-recording-BMikDBXR.js +0 -11
@@ -1,79 +1,79 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { _ as toAgentModelListLike, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentDir, l as resolveDefaultAgentId, n as listAgentIds, p as resolveSessionAgentIds, r as resolveAgentConfig, s as resolveAgentSkillsFilter, t as hasConfiguredModelFallbacks, u as resolveEffectiveModelFallbacks } from "./agent-scope-DxKPMu8w.js";
3
- import { a as resolveGatewayPort, c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix, n as STATE_DIR, r as resolveConfigPath } from "./paths-C6TxBCvO.js";
4
- import { C as appendFileLog, F as openBoundaryFileSync, K as isDangerousHostEnvVarName, O as INCLUDE_KEY, P as openBoundaryFile, Q as clampInt, T as normalizeLogLevel, W as normalizeWindowsPathForComparison, Z as CONFIG_DIR, _ as colorize, a as createNonExitingRuntime, b as getChildLogger, c as registerActiveProgressLine, dt as sleep$1, et as ensureDir$3, f as logVerbose, ft as sliceUtf16Safe, g as warn, h as shouldLogVerbose, it as normalizeE164, j as isBlockedObjectKey, l as unregisterActiveProgressLine, lt as shortenHomeInString, m as setVerbose, mt as resolvePreferredOpenClawTmpDir, nt as formatTerminalLink, o as defaultRuntime, pt as truncateUtf16Safe, rt as isRecord$1, s as clearActiveProgressLine, st as resolveUserPath, t as createSubsystemLogger, tt as escapeRegExp, u as danger, ut as shortenHomePath, v as isRich, y as theme } from "./subsystem-CPYnUTN4.js";
2
+ import { _ as toAgentModelListLike, c as resolveAgentWorkspaceDir, d as resolveRunModelFallbacksOverride, f as resolveSessionAgentId, g as resolveAgentModelPrimaryValue, h as resolveAgentModelFallbackValues, i as resolveAgentDir, l as resolveDefaultAgentId, n as listAgentIds, p as resolveSessionAgentIds, r as resolveAgentConfig, s as resolveAgentSkillsFilter, t as hasConfiguredModelFallbacks, u as resolveEffectiveModelFallbacks } from "./agent-scope-cbxkoURo.js";
3
+ import { a as resolveGatewayPort, c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix, n as STATE_DIR, r as resolveConfigPath } from "./paths-Cvc9EM8Y.js";
4
+ import { C as appendFileLog, F as openBoundaryFileSync, K as isDangerousHostEnvVarName, O as INCLUDE_KEY, P as openBoundaryFile, Q as clampInt, T as normalizeLogLevel, W as normalizeWindowsPathForComparison, Z as CONFIG_DIR, _ as colorize, a as createNonExitingRuntime, b as getChildLogger, c as registerActiveProgressLine, dt as sleep$1, et as ensureDir$3, f as logVerbose, ft as sliceUtf16Safe, g as warn, h as shouldLogVerbose, it as normalizeE164, j as isBlockedObjectKey, l as unregisterActiveProgressLine, lt as shortenHomeInString, m as setVerbose, mt as resolvePreferredOpenClawTmpDir, nt as formatTerminalLink, o as defaultRuntime, pt as truncateUtf16Safe, rt as isRecord$1, s as clearActiveProgressLine, st as resolveUserPath, t as createSubsystemLogger, tt as escapeRegExp, u as danger, ut as shortenHomePath, v as isRich, y as theme } from "./subsystem-BCjklMkJ.js";
5
5
  import { t as isPlainObject } from "./plain-object-CLm2c5Nu.js";
6
- import { A as resolveCanonicalIdentity, B as deriveSessionChatType, C as classifySessionKeyShape, D as normalizeAgentId, E as isValidAgentId, F as toAgentStoreSessionKey, G as parseAgentSessionKey, H as isAcpSessionKey, I as DEFAULT_ACCOUNT_ID, K as resolveThreadParentSessionKey, L as normalizeAccountId$3, M as resolveLinkedPeerIdForChannel, N as resolveThreadSessionKeys, O as normalizeMainKey, P as sanitizeAgentId, R as normalizeOptionalAccountId, T as isKnownAgentMainSessionKey, U as isCronSessionKey, V as getSubagentDepth, W as isSubagentSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, i as DEFAULT_HEARTBEAT_FILENAME, j as resolveConfiguredCanonicalIdentity, k as resolveAgentIdFromSessionKey, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as buildAgentMainSessionKey, y as DEFAULT_AGENT_ID, z as WAKE_GATE_SESSION_KEY_SEGMENT } from "./workspace-B707AGIc.js";
7
- import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-a0-zAY5a.js";
8
- import { $i as getConfigValueAtPath, $n as TASK_RUN_MODES, $r as resolveSlackBotToken, $t as normalizePluginHttpPath, A as requireApiKey, Aa as resolveSlackStreamingMode, Ai as normalizeAtHashSlug, An as parseInlineDirectives$1, Ar as resolveFreshSessionTotalTokens, At as normalizePluginsConfig, B as resolveProfilesUnavailableReason, Ba as VERSION, Bi as stringEnum, Bn as extractDeliveryInfo, Br as getChannelDock, Bt as normalizeAnyChannelId, C as createOllamaStreamFn, Ca as normalizeSafeBinProfileFixtures, Ci as listDeliverableMessageChannels, Cn as normalizeDeliveryContext, Cr as evaluateSessionFreshness, Ct as isPathWithinRoot, D as buildUsageWithNoCost, Da as mapStreamingModeToSlackLegacyDraftStreamMode, Di as GATEWAY_CLIENT_IDS, Dn as capArrayByJsonBytes, Dr as resolveThreadFlag, Dt as BUNDLED_ENABLED_BY_DEFAULT, E as buildStreamErrorAssistantMessage, Ea as isSafeExecutableValue, Ei as resolveMessageChannel, En as archiveSessionTranscripts, Er as resolveSessionResetType, Et as loadPluginManifestRegistry, F as resolveAuthProfileOrder, Fa as isRecord$2, Fi as resolveSessionLockMaxHoldFromTimeout, Fn as jsonUtf8Bytes, Fr as resolveMainSessionKey, Ft as safeStatSync, Ga as dedupeProfileIds, Gi as discardBufferedPluginTaskPasses, Gn as withPreservationWriterPermit, Gr as listTelegramAccountIds, Gt as getActivePluginRegistry, Ha as resolveShellEnvFallbackTimeoutMs, Hi as actionHasTarget, Hn as appendAssistantMessageToSessionTranscript, Hr as normalizeSignalMessagingTarget, Ht as normalizeChatChannelId, I as getSoonestCooldownExpiry, Ia as parseDotPath, Ii as readTaskWorkStates, In as createAsyncLock, Ir as deriveSessionMetaPatch, J as TELEGRAM_COMMAND_NAME_PATTERN, Ja as ensureAuthProfileStore, Ji as RecoveryAdmissionError, Jn as drainPendingPrimaryWrites, Jr as buildChannelAccountBindings, Jt as requireActivePluginRegistry, K as writeConfigFile, Ka as listProfilesForProvider, Ki as listBufferedPluginTaskPasses, Kn as isJsonlSessionBackend, Kr as resolveTelegramAccount, Kt as getActivePluginRegistryKey, L as isProfileInCooldown, La as secretRefKey, Li as channelTargetSchema, Ln as readJsonFile, Lr as getChannelPlugin, Lt as CHAT_CHANNEL_ORDER, M as resolveEnvApiKey, Ma as resolveSecretRefValues, Mi as normalizeStringEntries, Mn as applyInputProvenanceToUserMessage, Mr as canonicalizeMainSessionAlias, Mt as resolveMemorySlotDecision, N as resolveModelAuthMode, Na as describeUnknownError$1, Ni as normalizeStringEntriesLower, Nn as hasInterSessionUserProvenance, Nr as resolveAgentMainSessionKey, Nt as discoverOpenClawPlugins, O as getApiKeyForModel, Oa as resolveDiscordPreviewStreamMode, Oi as GATEWAY_CLIENT_MODES, On as countToolResults, Or as DEFAULT_RESET_TRIGGERS, Ot as applyTestPluginDefaults, Pa as isNonEmptyString, Pi as acquireSessionWriteLock, Pn as normalizeInputProvenance, Pr as resolveExplicitAgentSessionKey, Pt as isPathInside, Q as isInboundPathAllowed, Qa as resolveAuthProfileDisplayLabel, Qi as unsetConfigOverride, Qn as onSessionTranscriptUpdate, Qr as resolveSlackAppToken, Qt as createPluginRegistry, R as markAuthProfileFailure, Ra as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Ri as channelTargetsSchema, Rn as writeJsonAtomic, Rr as listChannelPlugins, Rt as getChatChannelMeta, S as OLLAMA_NATIVE_BASE_URL, Sa as SAFE_BIN_PROFILES, Si as isMarkdownCapableMessageChannel, Sn as mergeDeliveryContext, Sr as resolveSessionKey, St as isAvatarHttpUrl, T as buildAssistantMessageWithZeroUsage, Ta as applyMergePatch, Ti as resolveGatewayMessageChannel, Tn as normalizeAccountId$4, Tr as resolveSessionResetPolicy, Tt as validateJsonSchemaValue, U as loadConfig, Ua as isTruthyEnvValue, Ui as actionRequiresTarget, Ur as createTelegramActionGate, Ut as resolveChannelConfigId, V as resolveApiKeyForProfile, Va as getShellPathFromLoginShell, Vi as applyTargetToParams, Vn as parseSessionThreadInfo, Vr as listChannelDocks, Vt as normalizeChannelId$2, W as readConfigFileSnapshot, Wa as resolveOwnerDisplaySetting, Wn as resolveAndPersistSessionFile, Wr as listEnabledTelegramAccounts, Wt as getActiveGatewayPluginRegistry, X as resolveTelegramCustomCommands, Xa as resolveOpenClawAgentDir, Xi as resetConfigOverrides, Xn as hydrateSessionManagerFromDb, Xr as resolveSlackAccount, Xt as addRegisteredPluginApi, Y as normalizeTelegramCommandName, Ya as resolveAuthStorePathForDisplay, Yi as getConfigOverrides, Yn as DB_SESSION_HYDRATION_LIMIT, Yt as setActivePluginRegistry, Za as withFileLock, Zi as setConfigOverride, Zn as emitSessionTranscriptUpdate, Zr as resolveSlackReplyToMode, Zt as clearRegisteredPluginApis, _a as isDispatchWrapperExecutable, _i as resolveGroupSessionKey, _n as updateSessionStoreEntry, _r as hasNonzeroUsage, a as isCliProvider, aa as listWritableExplicitTrustedSafeBinDirs, ai as resolveWhatsAppAccount, an as matchPluginCommand, ao as splitTrailingAuthProfile, ar as mergePromptContributions, at as resolveExecPolicyPreset, ba as unwrapKnownShellMultiplexerInvocation, bi as isGatewayMessageChannel, bn as deliveryContextFromSession, bt as AVATAR_MAX_BYTES, c as normalizeProviderId, ca as analyzeShellCommand, ci as resolveIMessageAccount, cn as getActivePreservationLease, co as DEFAULT_PROVIDER, cr as buildInboundUserContextPrefix, d as resolveDefaultModelForAgent, da as splitCommandChain, di as resolveDiscordAccount, dn as loadSessionStore, dr as resolveTimezone, ea as parseConfigPath, ei as listEnabledSignalAccounts, en as buildPluginHealthReport, eo as normalizeSecretInput, er as TASK_RUN_STATUSES, et as resolveIMessageAttachmentRoots, f as resolveModelRefFromString, fa as DEFAULT_SAFE_BINS, fi as normalizeDiscordToken, fn as readSessionUpdatedAt, fr as resolveSenderLabel, ga as extractShellWrapperInlineCommand, gi as resolveAccountEntry, gn as updateSessionStore, gr as deriveSessionTotalTokens, h as resolveThinkingDefault, ha as resolveCommandResolutionFromArgv, hi as resolveChannelGroupToolsPolicy, hn as updateLastRoute, hr as derivePromptTokens, i as findNormalizedProviderValue, ia as isTrustedSafeBinPath, ii as hasAnyWhatsAppAuth, in as listPluginCommands, io as resolveSecretInputRef, ir as createCurrentUserPromptEnvelope, it as ASSISTANT_IDENTITY_COLORS, j as resolveApiKeyForProvider, ji as normalizeHyphenSlug, jn as INPUT_PROVENANCE_KIND_VALUES, jr as setSessionRuntimeModel, jt as resolveEffectiveEnableState, k as getCustomProviderApiKey, ka as resolveSlackNativeStreaming, ki as GATEWAY_CLIENT_NAMES, kn as extractToolCallNames, kr as mergeSessionEntry, kt as isBundledChannelEnabledByChannelConfig, l as parseModelRef, la as buildEnforcedShellCommand, li as createDiscordActionGate, ln as getConfiguredSessionStorageRuntime, lr as formatUtcTimestamp, m as resolveSubagentSpawnModelSelection, ma as resolveAllowlistCandidatePath, mi as resolveChannelGroupRequireMention, mn as syncConfiguredSessionTranscriptToRuntime, mr as isDiagnosticsEnabled, n as buildConfiguredAllowlistKeys, na as unsetConfigValueAtPath, ni as isWhatsAppGroupJid, nn as executePluginCommand, no as hasConfiguredSecretInput, nr as sanitizeJsonb, nt as normalizeScpRemoteHost, o as modelKey, oa as normalizeTrustedSafeBinDirs, oi as formatCliCommand, on as registerPluginCommand, oo as DEFAULT_CONTEXT_TOKENS, or as toJsonValue$1, p as resolveReasoningDefault, pa as matchAllowlist, pi as resolveChannelGroupPolicy, pn as recordSessionMetaFromInbound, pr as emitDiagnosticEvent, q as validateConfigObjectWithPlugins, qa as markAuthProfileGood, qi as replaceBufferedPluginTaskPasses, qn as createPrimaryWriteInterceptor, qr as resolveTelegramToken, r as buildModelAliasIndex, ra as getTrustedSafeBinDirs, ri as normalizeWhatsAppTarget, rn as getPluginCommandSpecs, ro as normalizeResolvedSecretInputString, rr as sha256, rt as parseNonNegativeByteSize, s as normalizeModelRef$2, sa as validateSafeBinArgv, si as resolveCliName, so as DEFAULT_MODEL, sr as buildInboundMetaSystemPrompt, t as buildAllowedModelSet, ta as setConfigValueAtPath, ti as resolveSignalAccount, tn as clearPluginCommands, to as coerceSecretRef, tt as resolveIMessageRemoteAttachmentRoots, u as resolveConfiguredModelRef, ua as isWindowsPlatform, ui as listEnabledDiscordAccounts, un as isPreservationArmed, ur as formatZonedTimestamp, va as isShellWrapperExecutable, vi as INTERNAL_MESSAGE_CHANNEL, vn as isCacheEnabled, vr as makeZeroUsageSnapshot, w as buildAssistantMessage, wa as resolveSafeBinProfiles, wi as normalizeMessageChannel, wn as normalizeSessionDeliveryFields, wr as resolveChannelResetConfig, wt as isSupportedLocalAvatarExtension, x as retryAsync, xa as splitShellArgs, xi as isInternalMessageChannel, xn as deliveryContextKey, xr as SESSION_RUN_STATUSES, xt as isAvatarDataUrl, ya as unwrapKnownDispatchWrapperInvocation, yi as isDeliverableMessageChannel, yn as resolveCacheTtlMs$1, yr as normalizeUsage, z as markAuthProfileUsed, za as resolveAgentMaxConcurrent, zi as optionalStringEnum, zn as parseDurationMs, zr as normalizeChannelId$1, zt as listChatChannels } from "./model-selection-CdZITU0t.js";
9
- import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken } from "./github-copilot-token-zGOMIGSh.js";
10
- import { n as createInternalHookEvent, o as triggerInternalHook, s as parseBooleanValue$1, t as readManifestNamespace } from "./legacy-names-vLJrYADD.js";
11
- import { c as resolveSessionFilePathOptions, d as resolveSessionTranscriptsDirForAgent, f as resolveStorePath, l as resolveSessionTranscriptPath, n as isPrimarySessionTranscriptFileName, o as resolveDefaultSessionStorePath, p as runTasksWithConcurrency, s as resolveSessionFilePath } from "./artifacts-QHme-vnS.js";
6
+ import { A as resolveCanonicalIdentity, B as deriveSessionChatType, C as classifySessionKeyShape, D as normalizeAgentId, E as isValidAgentId, F as toAgentStoreSessionKey, G as parseAgentSessionKey, H as isAcpSessionKey, I as DEFAULT_ACCOUNT_ID, K as resolveThreadParentSessionKey, L as normalizeAccountId$3, M as resolveLinkedPeerIdForChannel, N as resolveThreadSessionKeys, O as normalizeMainKey, P as sanitizeAgentId, R as normalizeOptionalAccountId, T as isKnownAgentMainSessionKey, U as isCronSessionKey, V as getSubagentDepth, W as isSubagentSessionKey, _ as runExec, a as DEFAULT_IDENTITY_FILENAME, f as loadWorkspaceBootstrapFiles, g as runCommandWithTimeout, i as DEFAULT_HEARTBEAT_FILENAME, j as resolveConfiguredCanonicalIdentity, k as resolveAgentIdFromSessionKey, l as ensureAgentWorkspace, m as resolveOpenClawPackageRoot, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, u as filterBootstrapFilesForSession, v as spawnWithFallback, x as buildAgentMainSessionKey, y as DEFAULT_AGENT_ID, z as WAKE_GATE_SESSION_KEY_SEGMENT } from "./workspace-Dbn4gFdH.js";
7
+ import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-DNehzD_s.js";
8
+ import { $i as getConfigValueAtPath, $n as TASK_RUN_MODES, $r as resolveSlackBotToken, $t as normalizePluginHttpPath, A as requireApiKey, Aa as resolveSlackStreamingMode, Ai as normalizeAtHashSlug, An as parseInlineDirectives$1, Ar as resolveFreshSessionTotalTokens, At as normalizePluginsConfig, B as resolveProfilesUnavailableReason, Ba as VERSION, Bi as stringEnum, Bn as extractDeliveryInfo, Br as getChannelDock, Bt as normalizeAnyChannelId, C as createOllamaStreamFn, Ca as normalizeSafeBinProfileFixtures, Ci as listDeliverableMessageChannels, Cn as normalizeDeliveryContext, Cr as evaluateSessionFreshness, Ct as isPathWithinRoot, D as buildUsageWithNoCost, Da as mapStreamingModeToSlackLegacyDraftStreamMode, Di as GATEWAY_CLIENT_IDS, Dn as capArrayByJsonBytes, Dr as resolveThreadFlag, Dt as BUNDLED_ENABLED_BY_DEFAULT, E as buildStreamErrorAssistantMessage, Ea as isSafeExecutableValue, Ei as resolveMessageChannel, En as archiveSessionTranscripts, Er as resolveSessionResetType, Et as loadPluginManifestRegistry, F as resolveAuthProfileOrder, Fa as isRecord$2, Fi as resolveSessionLockMaxHoldFromTimeout, Fn as jsonUtf8Bytes, Fr as resolveMainSessionKey, Ft as safeStatSync, Ga as dedupeProfileIds, Gi as discardBufferedPluginTaskPasses, Gn as withPreservationWriterPermit, Gr as listTelegramAccountIds, Gt as getActivePluginRegistry, Ha as resolveShellEnvFallbackTimeoutMs, Hi as actionHasTarget, Hn as appendAssistantMessageToSessionTranscript, Hr as normalizeSignalMessagingTarget, Ht as normalizeChatChannelId, I as getSoonestCooldownExpiry, Ia as parseDotPath, Ii as readTaskWorkStates, In as createAsyncLock, Ir as deriveSessionMetaPatch, J as TELEGRAM_COMMAND_NAME_PATTERN, Ja as ensureAuthProfileStore, Ji as RecoveryAdmissionError, Jn as drainPendingPrimaryWrites, Jr as buildChannelAccountBindings, Jt as requireActivePluginRegistry, K as writeConfigFile, Ka as listProfilesForProvider, Ki as listBufferedPluginTaskPasses, Kn as isJsonlSessionBackend, Kr as resolveTelegramAccount, Kt as getActivePluginRegistryKey, L as isProfileInCooldown, La as secretRefKey, Li as channelTargetSchema, Ln as readJsonFile, Lr as getChannelPlugin, Lt as CHAT_CHANNEL_ORDER, M as resolveEnvApiKey, Ma as resolveSecretRefValues, Mi as normalizeStringEntries, Mn as applyInputProvenanceToUserMessage, Mr as canonicalizeMainSessionAlias, Mt as resolveMemorySlotDecision, N as resolveModelAuthMode, Na as describeUnknownError$1, Ni as normalizeStringEntriesLower, Nn as hasInterSessionUserProvenance, Nr as resolveAgentMainSessionKey, Nt as discoverOpenClawPlugins, O as getApiKeyForModel, Oa as resolveDiscordPreviewStreamMode, Oi as GATEWAY_CLIENT_MODES, On as countToolResults, Or as DEFAULT_RESET_TRIGGERS, Ot as applyTestPluginDefaults, Pa as isNonEmptyString, Pi as acquireSessionWriteLock, Pn as normalizeInputProvenance, Pr as resolveExplicitAgentSessionKey, Pt as isPathInside, Q as isInboundPathAllowed, Qa as resolveAuthProfileDisplayLabel, Qi as unsetConfigOverride, Qn as onSessionTranscriptUpdate, Qr as resolveSlackAppToken, Qt as createPluginRegistry, R as markAuthProfileFailure, Ra as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Ri as channelTargetsSchema, Rn as writeJsonAtomic, Rr as listChannelPlugins, Rt as getChatChannelMeta, S as OLLAMA_NATIVE_BASE_URL, Sa as SAFE_BIN_PROFILES, Si as isMarkdownCapableMessageChannel, Sn as mergeDeliveryContext, Sr as resolveSessionKey, St as isAvatarHttpUrl, T as buildAssistantMessageWithZeroUsage, Ta as applyMergePatch, Ti as resolveGatewayMessageChannel, Tn as normalizeAccountId$4, Tr as resolveSessionResetPolicy, Tt as validateJsonSchemaValue, U as loadConfig, Ua as isTruthyEnvValue, Ui as actionRequiresTarget, Ur as createTelegramActionGate, Ut as resolveChannelConfigId, V as resolveApiKeyForProfile, Va as getShellPathFromLoginShell, Vi as applyTargetToParams, Vn as parseSessionThreadInfo, Vr as listChannelDocks, Vt as normalizeChannelId$2, W as readConfigFileSnapshot, Wa as resolveOwnerDisplaySetting, Wn as resolveAndPersistSessionFile, Wr as listEnabledTelegramAccounts, Wt as getActiveGatewayPluginRegistry, X as resolveTelegramCustomCommands, Xa as resolveOpenClawAgentDir, Xi as resetConfigOverrides, Xn as hydrateSessionManagerFromDb, Xr as resolveSlackAccount, Xt as addRegisteredPluginApi, Y as normalizeTelegramCommandName, Ya as resolveAuthStorePathForDisplay, Yi as getConfigOverrides, Yn as DB_SESSION_HYDRATION_LIMIT, Yt as setActivePluginRegistry, Za as withFileLock, Zi as setConfigOverride, Zn as emitSessionTranscriptUpdate, Zr as resolveSlackReplyToMode, Zt as clearRegisteredPluginApis, _a as isDispatchWrapperExecutable, _i as resolveGroupSessionKey, _n as updateSessionStoreEntry, _r as hasNonzeroUsage, a as isCliProvider, aa as listWritableExplicitTrustedSafeBinDirs, ai as resolveWhatsAppAccount, an as matchPluginCommand, ao as splitTrailingAuthProfile, ar as mergePromptContributions, at as resolveExecPolicyPreset, ba as unwrapKnownShellMultiplexerInvocation, bi as isGatewayMessageChannel, bn as deliveryContextFromSession, bt as AVATAR_MAX_BYTES, c as normalizeProviderId, ca as analyzeShellCommand, ci as resolveIMessageAccount, cn as getActivePreservationLease, co as DEFAULT_PROVIDER, cr as buildInboundUserContextPrefix, d as resolveDefaultModelForAgent, da as splitCommandChain, di as resolveDiscordAccount, dn as loadSessionStore, dr as resolveTimezone, ea as parseConfigPath, ei as listEnabledSignalAccounts, en as buildPluginHealthReport, eo as normalizeSecretInput, er as TASK_RUN_STATUSES, et as resolveIMessageAttachmentRoots, f as resolveModelRefFromString, fa as DEFAULT_SAFE_BINS, fi as normalizeDiscordToken, fn as readSessionUpdatedAt, fr as resolveSenderLabel, ga as extractShellWrapperInlineCommand, gi as resolveAccountEntry, gn as updateSessionStore, gr as deriveSessionTotalTokens, h as resolveThinkingDefault, ha as resolveCommandResolutionFromArgv, hi as resolveChannelGroupToolsPolicy, hn as updateLastRoute, hr as derivePromptTokens, i as findNormalizedProviderValue, ia as isTrustedSafeBinPath, ii as hasAnyWhatsAppAuth, in as listPluginCommands, io as resolveSecretInputRef, ir as createCurrentUserPromptEnvelope, it as ASSISTANT_IDENTITY_COLORS, j as resolveApiKeyForProvider, ji as normalizeHyphenSlug, jn as INPUT_PROVENANCE_KIND_VALUES, jr as setSessionRuntimeModel, jt as resolveEffectiveEnableState, k as getCustomProviderApiKey, ka as resolveSlackNativeStreaming, ki as GATEWAY_CLIENT_NAMES, kn as extractToolCallNames, kr as mergeSessionEntry, kt as isBundledChannelEnabledByChannelConfig, l as parseModelRef, la as buildEnforcedShellCommand, li as createDiscordActionGate, ln as getConfiguredSessionStorageRuntime, lr as formatUtcTimestamp, m as resolveSubagentSpawnModelSelection, ma as resolveAllowlistCandidatePath, mi as resolveChannelGroupRequireMention, mn as syncConfiguredSessionTranscriptToRuntime, mr as isDiagnosticsEnabled, n as buildConfiguredAllowlistKeys, na as unsetConfigValueAtPath, ni as isWhatsAppGroupJid, nn as executePluginCommand, no as hasConfiguredSecretInput, nr as sanitizeJsonb, nt as normalizeScpRemoteHost, o as modelKey, oa as normalizeTrustedSafeBinDirs, oi as formatCliCommand, on as registerPluginCommand, oo as DEFAULT_CONTEXT_TOKENS, or as toJsonValue$1, p as resolveReasoningDefault, pa as matchAllowlist, pi as resolveChannelGroupPolicy, pn as recordSessionMetaFromInbound, pr as emitDiagnosticEvent, q as validateConfigObjectWithPlugins, qa as markAuthProfileGood, qi as replaceBufferedPluginTaskPasses, qn as createPrimaryWriteInterceptor, qr as resolveTelegramToken, r as buildModelAliasIndex, ra as getTrustedSafeBinDirs, ri as normalizeWhatsAppTarget, rn as getPluginCommandSpecs, ro as normalizeResolvedSecretInputString, rr as sha256, rt as parseNonNegativeByteSize, s as normalizeModelRef$2, sa as validateSafeBinArgv, si as resolveCliName, so as DEFAULT_MODEL, sr as buildInboundMetaSystemPrompt, t as buildAllowedModelSet, ta as setConfigValueAtPath, ti as resolveSignalAccount, tn as clearPluginCommands, to as coerceSecretRef, tt as resolveIMessageRemoteAttachmentRoots, u as resolveConfiguredModelRef, ua as isWindowsPlatform, ui as listEnabledDiscordAccounts, un as isPreservationArmed, ur as formatZonedTimestamp, va as isShellWrapperExecutable, vi as INTERNAL_MESSAGE_CHANNEL, vn as isCacheEnabled, vr as makeZeroUsageSnapshot, w as buildAssistantMessage, wa as resolveSafeBinProfiles, wi as normalizeMessageChannel, wn as normalizeSessionDeliveryFields, wr as resolveChannelResetConfig, wt as isSupportedLocalAvatarExtension, x as retryAsync, xa as splitShellArgs, xi as isInternalMessageChannel, xn as deliveryContextKey, xr as SESSION_RUN_STATUSES, xt as isAvatarDataUrl, ya as unwrapKnownDispatchWrapperInvocation, yi as isDeliverableMessageChannel, yn as resolveCacheTtlMs$1, yr as normalizeUsage, z as markAuthProfileUsed, za as resolveAgentMaxConcurrent, zi as optionalStringEnum, zn as parseDurationMs, zr as normalizeChannelId$1, zt as listChatChannels } from "./model-selection-9qbqwsOT.js";
9
+ import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken } from "./github-copilot-token-WSjo05vB.js";
10
+ import { n as createInternalHookEvent, o as triggerInternalHook, s as parseBooleanValue$1, t as readManifestNamespace } from "./legacy-names-CLlrMq8r.js";
11
+ import { c as resolveSessionFilePathOptions, d as resolveSessionTranscriptsDirForAgent, f as resolveStorePath, l as resolveSessionTranscriptPath, n as isPrimarySessionTranscriptFileName, o as resolveDefaultSessionStorePath, p as runTasksWithConcurrency, s as resolveSessionFilePath } from "./artifacts-DUhYSSmK.js";
12
12
  import { n as resolveConversationLabel, r as normalizeChatType } from "./conversation-label-BnH5Yy9T.js";
13
- import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-ENMm5qbW.js";
14
- import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-Do1AlhD5.js";
15
- import { a as clearDelayedReleaseHold, c as mergeDelayedAgentTurn, d as KeyedAsyncQueue, i as agentTurnIdempotencyKey, l as peekDelayedAgentTurn, n as getAgentTurnRuntime, o as enqueueAgentTurn, r as tryGetAgentTurnRuntime, s as isClaimableAgentTurnWorkId, u as setDelayedReleaseHold } from "./agent-turn-runner-BsxQBFRB.js";
16
- import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-9BPY4SaX.js";
13
+ import { a as createSlackWebClient, c as validateSlackBlocksArray, d as resolveSlackChannelId, i as normalizeSlackOutboundText, l as buildSlackBlocksFallbackText, o as resolveSlackWebClientOptions, s as parseSlackBlocksInput, t as sendMessageSlack, u as parseSlackTarget } from "./send-Ba3pDq6E.js";
14
+ import { $ as fetchChannelPermissionsDiscord, A as unpinMessageDiscord, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveTimestampMs, D as pinMessageDiscord, Dt as normalizeChannelSlug, E as listThreadsDiscord, Et as buildChannelKeyCandidates, F as fetchMemberInfoDiscord, G as uploadStickerDiscord, H as timeoutMemberDiscord, I as fetchRoleInfoDiscord, J as editChannelDiscord, K as createChannelDiscord, L as fetchVoiceStatusDiscord, M as banMemberDiscord, N as createScheduledEventDiscord, O as readMessagesDiscord, Ot as resolveChannelEntryMatchWithFallback, P as fetchChannelInfoDiscord, Q as stripUndefinedFields, R as kickMemberDiscord, S as deleteMessageDiscord, St as resolveDiscordSystemLocation, T as listPinsDiscord, Tt as applyChannelMatchMeta, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendPollDiscord, _t as resolveDiscordShouldRequireMention, a as removeReactionDiscord, at as resolveDiscordChannelId, b as sendWebhookMessageDiscord, bt as formatDiscordReactionEmoji, c as formatDiscordComponentEventText, ct as isDiscordGroupAllowedByPolicy, d as parseDiscordModalCustomId, dt as resolveDiscordAllowListMatch, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordChannelConfigWithFallback, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordOwnerAccess, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as normalizeDiscordAllowList, m as resolveDiscordComponentEntry, mt as resolveDiscordMemberAccessState, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordGuildEntry, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordSlug, v as sendStickerDiscord, vt as resolveGroupDmAllow, w as fetchMessageDiscord, wt as fetchDiscord, x as createThreadDiscord, xt as formatDiscordUserTag, y as sendVoiceMessageDiscord, yt as shouldEmitDiscordReactionNotification, z as listGuildChannelsDiscord } from "./send-BGps2i_C.js";
15
+ import { a as clearDelayedReleaseHold, c as mergeDelayedAgentTurn, d as KeyedAsyncQueue, i as agentTurnIdempotencyKey, l as peekDelayedAgentTurn, n as getAgentTurnRuntime, o as enqueueAgentTurn, r as tryGetAgentTurnRuntime, s as isClaimableAgentTurnWorkId, u as setDelayedReleaseHold } from "./agent-turn-runner-CXf6g-6f.js";
16
+ import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-9Mla_HDp.js";
17
17
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-BDA1WAvZ.js";
18
- import { _ as resolveProviderPromptCacheKey, a as toInternalMessageReceivedContext, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, f as getGlobalHookRunner, g as buildPluginTurnIdentity, h as buildPluginRuntimeIdentity, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, m as promptBuildResultToContribution, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, p as initializeGlobalHookRunner, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext, v as resolveProviderRuntimeIdentity } from "./outbound-message-hooks-RBQbGzGm.js";
19
- import { A as boundDiagnosticContent, C as logWebhookError, D as refreshRunProgress, E as recordSystemPromptHashComparison, M as resetCommandPollCount, O as startDiagnosticHeartbeat, S as logToolExecutionStarted, T as logWebhookReceived, b as logToolExecutionBlocked, d as logRunCompleted, f as logRunStarted, j as recordCommandPoll, k as stopDiagnosticHeartbeat, l as logModelCallError, o as logMessageProcessed, p as logSessionStateChange, s as logMessageQueued, w as logWebhookProcessed, x as logToolExecutionCompleted } from "./diagnostic-Bbg-zObh.js";
18
+ import { _ as resolveProviderPromptCacheKey, a as toInternalMessageReceivedContext, c as toPluginMessageReceivedEvent, d as resolveOutboundSessionId, f as getGlobalHookRunner, g as buildPluginTurnIdentity, h as buildPluginRuntimeIdentity, i as toInternalMessagePreprocessedContext, l as fireAndForgetHook, m as promptBuildResultToContribution, n as createMessageSentEmitter, o as toInternalMessageTranscribedContext, p as initializeGlobalHookRunner, r as deriveInboundMessageHookContext, s as toPluginMessageContext, t as applyMessageSendingHook, u as buildOutboundSessionContext, v as resolveProviderRuntimeIdentity } from "./outbound-message-hooks-S_VhlJs3.js";
19
+ import { A as boundDiagnosticContent, C as logWebhookError, D as refreshRunProgress, E as recordSystemPromptHashComparison, M as resetCommandPollCount, O as startDiagnosticHeartbeat, S as logToolExecutionStarted, T as logWebhookReceived, b as logToolExecutionBlocked, d as logRunCompleted, f as logRunStarted, j as recordCommandPoll, k as stopDiagnosticHeartbeat, l as logModelCallError, o as logMessageProcessed, p as logSessionStateChange, s as logMessageQueued, w as logWebhookProcessed, x as logToolExecutionCompleted } from "./diagnostic-DI-K8155.js";
20
20
  import { r as getDiagnosticSessionState, s as redactChannelCorrelation } from "./diagnostic-session-state-Bnyx-w0F.js";
21
21
  import { t as redactIdentifier } from "./redact-identifier-WYElxwAZ.js";
22
- import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-DZne_lu8.js";
22
+ import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-BOHmCPP_.js";
23
23
  import { t as CommandLane } from "./lanes-DTaUAkeG.js";
24
- import { a as getCommandLaneSnapshots, i as enqueueCommandInLane, n as clearCommandLane, o as getQueueSize, t as CommandLaneAbortedError } from "./command-queue-SzKgkaS6.js";
25
- import { $ as resolveTelegramStreamMode, A as resolveTelegramFetch, B as buildTelegramParentPeer, C as getTelegramFleetSupervisor, D as recordWebhook, E as recordUpdate, F as buildGroupLabel, G as extractTelegramLocation, H as buildTypingThreadParams, I as buildSenderLabel, J as resolveTelegramDirectPeerId, K as hasBotMention, L as buildSenderName, M as withTelegramApiErrorLogging, N as loadCronStore, O as registerAccount, P as resolveCronStorePath, Q as resolveTelegramReplyId, R as buildTelegramGroupFrom, S as fingerprintTelegramToken, T as recordState, U as describeReplyTarget, V as buildTelegramThreadParams, W as expandTextLinks, X as resolveTelegramGroupAllowFromContext, Y as resolveTelegramForumThreadId, Z as resolveTelegramMediaPlaceholder, _ as isTelegramEditMayHaveLandedError, _t as getPairingAdapter, a as reactMessageTelegram, at as firstDefined$1, b as renderTelegramHtmlText, bt as parseTelegramTarget, c as sendStickerTelegram, ct as resolveGroupAllowFromSources, d as wasSentByBot, dt as addChannelAllowFromStoreEntry, et as resolveTelegramThreadSpec, f as extractTelegramErrorText, ft as readChannelAllowFromStore, g as isTelegramClientRejection, gt as writeJsonFileAtomically, h as isSafeToRetrySendError, ht as readJsonFileWithFallback, i as editMessageTelegram, it as resolveSenderAllowMatch$1, j as splitTelegramCaption, k as releaseAccountOwner, lt as formatLocationText, m as isRecoverableTelegramNetworkError, mt as upsertChannelPairingRequest, n as createForumTopicTelegram, nt as normalizeAllowFrom$2, o as sendMessageTelegram, ot as isSenderIdAllowed, p as isDefiniteTelegramRequestNonDeliveryError, pt as removeChannelAllowFromStoreEntry, q as normalizeForwardedContext, r as deleteMessageTelegram, rt as normalizeDmAllowFromWithStore$1, s as sendPollTelegram, st as mergeDmAllowFromSources, t as buildInlineKeyboard, tt as isSenderAllowed$1, u as resolveTelegramVoiceSend, ut as toLocationContext, v as markdownToTelegramChunks, vt as listPairingChannels, w as recordApiRequest, x as wrapFileReferencesInHtml, xt as resolveTelegramTargetChatType, y as markdownToTelegramHtml, yt as isVoiceCompatibleAudio, z as buildTelegramGroupPeerId } from "./send-DEFcgo-1.js";
26
- import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-D_fm2PuR.js";
27
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-B9KKtGuw.js";
28
- import { $ as resolveSandboxConfigForAgent, A as isFailoverAssistantError, B as isTimeoutErrorMessage, C as formatRawAssistantErrorForUi, D as isCloudCodeAssistFormatError, E as isBillingAssistantError, F as isTransientHttpError, G as registerBrowserRoutes, H as resolveSandboxContext, I as parseImageDimensionError, J as getBridgeAuthForPort, K as resolveBrowserConfig, L as parseImageSizeError, M as isLikelyContextOverflowError, N as isRateLimitAssistantError, O as isCompactionFailureError, P as isRawApiErrorPayload, Q as trimToUndefined$1, R as sanitizeUserFacingText, S as formatBillingErrorMessage, T as isAuthAssistantError, U as resolveSandboxRuntimeStatus, V as ensureSandboxWorkspaceForSession, W as createBrowserRouteContext, X as resolveBrowserControlAuth, Y as ensureBrowserControlAuth, Z as resolveGatewayCredentialsFromConfig, _ as downgradeOpenAIReasoningBlocks, a as isMessagingToolDuplicateNormalized, at as stripPluginOnlyAllowlist, b as classifyFailoverReason, c as sanitizeImageBlocks, ct as resolveToolProfilePolicy, d as canonicalizeBase64, dt as buildBootstrapContextFiles, et as applyOwnerOnlyToolPolicy, f as estimateBase64DecodedBytes, ft as ensureSessionHeader, g as downgradeOpenAIFunctionCallReasoningPairs, h as sanitizeToolCallIdsForCloudCodeAssist, ht as sanitizeGoogleTurnOrdering, it as mergeAlsoAllowPolicy, j as isFailoverErrorMessage, k as isContextOverflowError, l as sanitizeToolResultImages, lt as compileGlobPatterns, m as extractToolResultId, mt as resolveBootstrapTotalMaxChars, n as validateGeminiTurns, nt as collectExplicitAllowlist, o as normalizeTextForComparison, ot as expandToolGroups, p as extractToolCallsFromAssistant, pt as resolveBootstrapMaxChars, q as resolveProfile, r as pickFallbackThinkingLevel, rt as expandPolicyWithPluginGroups, s as sanitizeSessionMessagesImages, st as normalizeToolName, t as validateAnthropicTurns, tt as buildPluginToolGroups, u as resolveImageSanitizationLimits, ut as matchesAnyGlobPattern, v as isGoogleModelApi, w as getApiErrorPayloadFingerprint, x as formatAssistantErrorText, y as BILLING_ERROR_USER_MESSAGE, z as isAuthPermanentErrorMessage } from "./pi-embedded-helpers-BYLOFsUc.js";
29
- import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, V as resolveClientIp, W as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-FHxGdLnd.js";
30
- import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-ckuLxkyg.js";
31
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-Zj-NwKjV.js";
32
- import { _ as readErrorName, a as isBlockedHostnameOrIp, f as formatErrorChainMessage, h as hasErrnoCode, l as normalizeHostname, m as formatUncaughtError, n as SsrFBlockedError, p as formatErrorMessage, u as collectErrorGraphCandidates } from "./proxy-env-CzGKpJY_.js";
33
- import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-LRpYbPaA.js";
34
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-gQ6FSjVk.js";
24
+ import { a as getCommandLaneSnapshots, i as enqueueCommandInLane, n as clearCommandLane, o as getQueueSize, s as isQueuedCommandCancellation, t as CommandLaneAbortedError } from "./command-queue-smA8JaO_.js";
25
+ import { $ as resolveTelegramStreamMode, A as resolveTelegramFetch, B as buildTelegramParentPeer, C as getTelegramFleetSupervisor, D as recordWebhook, E as recordUpdate, F as buildGroupLabel, G as extractTelegramLocation, H as buildTypingThreadParams, I as buildSenderLabel, J as resolveTelegramDirectPeerId, K as hasBotMention, L as buildSenderName, M as withTelegramApiErrorLogging, N as loadCronStore, O as registerAccount, P as resolveCronStorePath, Q as resolveTelegramReplyId, R as buildTelegramGroupFrom, S as fingerprintTelegramToken, T as recordState, U as describeReplyTarget, V as buildTelegramThreadParams, W as expandTextLinks, X as resolveTelegramGroupAllowFromContext, Y as resolveTelegramForumThreadId, Z as resolveTelegramMediaPlaceholder, _ as isTelegramEditMayHaveLandedError, _t as getPairingAdapter, a as reactMessageTelegram, at as firstDefined$1, b as renderTelegramHtmlText, bt as parseTelegramTarget, c as sendStickerTelegram, ct as resolveGroupAllowFromSources, d as wasSentByBot, dt as addChannelAllowFromStoreEntry, et as resolveTelegramThreadSpec, f as extractTelegramErrorText, ft as readChannelAllowFromStore, g as isTelegramClientRejection, gt as writeJsonFileAtomically, h as isSafeToRetrySendError, ht as readJsonFileWithFallback, i as editMessageTelegram, it as resolveSenderAllowMatch$1, j as splitTelegramCaption, k as releaseAccountOwner, lt as formatLocationText, m as isRecoverableTelegramNetworkError, mt as upsertChannelPairingRequest, n as createForumTopicTelegram, nt as normalizeAllowFrom$2, o as sendMessageTelegram, ot as isSenderIdAllowed, p as isDefiniteTelegramRequestNonDeliveryError, pt as removeChannelAllowFromStoreEntry, q as normalizeForwardedContext, r as deleteMessageTelegram, rt as normalizeDmAllowFromWithStore$1, s as sendPollTelegram, st as mergeDmAllowFromSources, t as buildInlineKeyboard, tt as isSenderAllowed$1, u as resolveTelegramVoiceSend, ut as toLocationContext, v as markdownToTelegramChunks, vt as listPairingChannels, w as recordApiRequest, x as wrapFileReferencesInHtml, xt as resolveTelegramTargetChatType, y as markdownToTelegramHtml, yt as isVoiceCompatibleAudio, z as buildTelegramGroupPeerId } from "./send-TscXeVY8.js";
26
+ import { c as detectMime, d as imageMimeFromFormat, f as isAudioFileName, g as MAX_IMAGE_BYTES, i as getImageMetadata, l as extensionForMime, m as kindFromMime, p as isGifMedia, s as resizeToJpeg, v as mediaKindFromMime } from "./image-ops-O8pHxo7i.js";
27
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-CsC6yTDG.js";
28
+ import { $ as resolveSandboxConfigForAgent, A as isFailoverAssistantError, B as isTimeoutErrorMessage, C as formatRawAssistantErrorForUi, D as isCloudCodeAssistFormatError, E as isBillingAssistantError, F as isTransientHttpError, G as registerBrowserRoutes, H as resolveSandboxContext, I as parseImageDimensionError, J as getBridgeAuthForPort, K as resolveBrowserConfig, L as parseImageSizeError, M as isLikelyContextOverflowError, N as isRateLimitAssistantError, O as isCompactionFailureError, P as isRawApiErrorPayload, Q as trimToUndefined$1, R as sanitizeUserFacingText, S as formatBillingErrorMessage, T as isAuthAssistantError, U as resolveSandboxRuntimeStatus, V as ensureSandboxWorkspaceForSession, W as createBrowserRouteContext, X as resolveBrowserControlAuth, Y as ensureBrowserControlAuth, Z as resolveGatewayCredentialsFromConfig, _ as downgradeOpenAIReasoningBlocks, a as isMessagingToolDuplicateNormalized, at as stripPluginOnlyAllowlist, b as classifyFailoverReason, c as sanitizeImageBlocks, ct as resolveToolProfilePolicy, d as canonicalizeBase64, dt as buildBootstrapContextFiles, et as applyOwnerOnlyToolPolicy, f as estimateBase64DecodedBytes, ft as ensureSessionHeader, g as downgradeOpenAIFunctionCallReasoningPairs, h as sanitizeToolCallIdsForCloudCodeAssist, ht as sanitizeGoogleTurnOrdering, it as mergeAlsoAllowPolicy, j as isFailoverErrorMessage, k as isContextOverflowError, l as sanitizeToolResultImages, lt as compileGlobPatterns, m as extractToolResultId, mt as resolveBootstrapTotalMaxChars, n as validateGeminiTurns, nt as collectExplicitAllowlist, o as normalizeTextForComparison, ot as expandToolGroups, p as extractToolCallsFromAssistant, pt as resolveBootstrapMaxChars, q as resolveProfile, r as pickFallbackThinkingLevel, rt as expandPolicyWithPluginGroups, s as sanitizeSessionMessagesImages, st as normalizeToolName, t as validateAnthropicTurns, tt as buildPluginToolGroups, u as resolveImageSanitizationLimits, ut as matchesAnyGlobPattern, v as isGoogleModelApi, w as getApiErrorPayloadFingerprint, x as formatAssistantErrorText, y as BILLING_ERROR_USER_MESSAGE, z as isAuthPermanentErrorMessage } from "./pi-embedded-helpers-5JApWu7A.js";
29
+ import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, V as resolveClientIp, W as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-DTJprCGv.js";
30
+ import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-DOc6uEd1.js";
31
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-Cd5yHmTq.js";
32
+ import { _ as readErrorName, a as isBlockedHostnameOrIp, f as formatErrorChainMessage, h as hasErrnoCode, l as normalizeHostname, m as formatUncaughtError, n as SsrFBlockedError, p as formatErrorMessage, u as collectErrorGraphCandidates } from "./proxy-env-i0jn5uxB.js";
33
+ import { a as readFileWithinRoot, c as writeFileWithinRoot, i as openFileWithinRoot, n as copyFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-DwICJjkN.js";
34
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-xxN6qyAh.js";
35
35
  import { t as resolveNetworkSsrFPolicy } from "./ssrf-config-CNiEVKpL.js";
36
36
  import { a as normalizeReasoningLevel, c as normalizeVerboseLevel, i as normalizeElevatedLevel, l as resolveResponseUsageMode, n as formatXHighModelHint, o as normalizeThinkLevel, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking } from "./thinking-CwmtMy_H.js";
37
- import { a as decodeDataUrl, c as ensureOpenClawModelsJson, i as coerceImageModelConfig, o as resolveProviderVisionModelFromConfig, r as coerceImageAssistantText, s as minimaxUnderstandImage } from "./provider-image-BllyLBJM.js";
38
- import { C as loadModelCatalog, S as findModelInCatalog, _ as stripCarriedTranscriptFromBody, a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, l as resolveConcurrency, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as buildRandomTempFilePath, w as modelSupportsVision, x as resolveAttachmentKind, y as registerUnhandledRejectionHandler } from "./audio-transcription-runner-XFfvRPXl.js";
39
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-BoHKSk-O.js";
37
+ import { a as decodeDataUrl, c as ensureOpenClawModelsJson, i as coerceImageModelConfig, o as resolveProviderVisionModelFromConfig, r as coerceImageAssistantText, s as minimaxUnderstandImage } from "./provider-image-Cb4z6zUu.js";
38
+ import { C as loadModelCatalog, S as findModelInCatalog, _ as stripCarriedTranscriptFromBody, a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, i as normalizeMediaAttachments, l as resolveConcurrency, n as buildProviderRegistry, o as resolveMediaAttachmentLocalRoots, p as CLI_OUTPUT_MAX_BUFFER, r as createMediaAttachmentCache, s as runCapability, t as runAudioTranscription, u as resolveTimeoutMs$2, v as buildRandomTempFilePath, w as modelSupportsVision, x as resolveAttachmentKind, y as registerUnhandledRejectionHandler } from "./audio-transcription-runner-ipSQoPp8.js";
39
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-BzXaK9px.js";
40
40
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-BfPtlUW6.js";
41
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-TJjLK0FV.js";
42
- import { r as makeProxyFetch } from "./proxy-fetch-DCI0KuH6.js";
43
- import { _ as extractTextFromChatContent, a as formatReasoningMessage, d as stripThinkingTagsFromText, f as formatToolSummary, g as isInsideCode, h as findCodeRegions, l as stripDowngradedToolCallText, m as stripReasoningTagsFromText, n as extractAssistantThinking, o as inferToolMetaFromArgs, p as resolveToolDisplay, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-DOtaZ7KV.js";
44
- import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-DVkNDBNe.js";
41
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-0mkjBgri.js";
42
+ import { r as makeProxyFetch } from "./proxy-fetch-CK5AQAYw.js";
43
+ import { _ as extractTextFromChatContent, a as formatReasoningMessage, d as stripThinkingTagsFromText, f as formatToolSummary, g as isInsideCode, h as findCodeRegions, l as stripDowngradedToolCallText, m as stripReasoningTagsFromText, n as extractAssistantThinking, o as inferToolMetaFromArgs, p as resolveToolDisplay, s as isAssistantMessage, t as extractAssistantText$1, u as stripMinimaxToolCallXml } from "./pi-embedded-utils-kHMmP2Xh.js";
44
+ import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-C7WlN3qm.js";
45
45
  import { n as isSafeFenceBreak, r as parseFenceSpans, t as findFenceSpanAt } from "./fences-DHXKaTRv.js";
46
- import { a as chunkText, c as resolveChunkDelivery, d as resolveTextChunkLimit, i as chunkMarkdownTextWithMode, l as resolveChunkMode, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as resolveChunkNewlinePacking } from "./chunk-BhntPUH_.js";
47
- import { n as resolveMarkdownTableMode } from "./markdown-tables-Dd7jV1JF.js";
48
- import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-C4MMLUJr.js";
49
- import { _ as isNativeCommandsExplicitlyDisabled, a as listChatCommands, b as resolveNativeSkillsEnabled, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody, v as isRestartEnabled, y as resolveNativeCommandsEnabled } from "./commands-registry-DC0fovy_.js";
50
- import { c as getSkillsSnapshotVersion, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-BhMQp_i8.js";
51
- import { _ as endModelCall, a as isEmbeddedPiRunActive, b as onAgentEvent, d as handleMessageEnd, f as handleMessageStart, g as createInlineCodeState, h as buildCodeSpanIndex, i as endInFlightEmbeddedAttempt, l as setActiveEmbeddedRun, m as emitEmbeddedAgentEvent, n as beginInFlightEmbeddedAttempt, o as isEmbeddedPiRunStreaming, p as handleMessageUpdate, r as clearActiveEmbeddedRun, s as queueEmbeddedPiMessage, t as abortEmbeddedPiRun, u as waitForEmbeddedPiRunEnd, v as clearAgentRunContext, x as registerAgentRunContext, y as emitAgentEvent } from "./runs-DGWNXyKA.js";
52
- import { _ as resolveReplyToMode, a as normalizeOutboundPayloadsForJson, b as normalizeTargetForProvider, c as loadChannelOutboundAdapter, d as filterMessagingToolDuplicates, f as filterMessagingToolMediaDuplicates, g as createReplyToModeFilterForChannel, h as shouldSuppressReasoningPayload, i as normalizeOutboundPayloads, l as applyReplyTagsToPayload, m as shouldSuppressMessagingToolReplies, o as normalizeReplyPayloadsForDelivery, p as isRenderablePayload, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyThreading, v as buildTargetResolverSignature, y as normalizeChannelTargetInput } from "./deliver-CXqNQ8yi.js";
53
- import { a as resolveSessionRunStore, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-DNRxe9C8.js";
46
+ import { a as chunkText, c as resolveChunkDelivery, d as resolveTextChunkLimit, i as chunkMarkdownTextWithMode, l as resolveChunkMode, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as resolveChunkNewlinePacking } from "./chunk-eNEsWhab.js";
47
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-UWspJNAH.js";
48
+ import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-fzpdYPWw.js";
49
+ import { _ as isNativeCommandsExplicitlyDisabled, a as listChatCommands, b as resolveNativeSkillsEnabled, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, g as isCommandFlagEnabled, h as shouldHandleTextCommands, i as isCommandEnabled, l as maybeResolveTextAlias, m as serializeCommandArgs, o as listChatCommandsForConfig, p as resolveCommandArgMenu, r as findCommandByNativeName, s as listNativeCommandSpecs, t as buildCommandTextFromArgs, u as normalizeCommandBody, v as isRestartEnabled, y as resolveNativeCommandsEnabled } from "./commands-registry-DdQg21ct.js";
50
+ import { c as getSkillsSnapshotVersion, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-CRZajtK_.js";
51
+ import { _ as endModelCall, a as isEmbeddedPiRunActive, b as onAgentEvent, d as handleMessageEnd, f as handleMessageStart, g as createInlineCodeState, h as buildCodeSpanIndex, i as endInFlightEmbeddedAttempt, l as setActiveEmbeddedRun, m as emitEmbeddedAgentEvent, n as beginInFlightEmbeddedAttempt, o as isEmbeddedPiRunStreaming, p as handleMessageUpdate, r as clearActiveEmbeddedRun, s as queueEmbeddedPiMessage, t as abortEmbeddedPiRun, u as waitForEmbeddedPiRunEnd, v as clearAgentRunContext, x as registerAgentRunContext, y as emitAgentEvent } from "./runs-ucQd8Fc-.js";
52
+ import { _ as resolveReplyToMode, a as normalizeOutboundPayloadsForJson, b as normalizeTargetForProvider, c as loadChannelOutboundAdapter, d as filterMessagingToolDuplicates, f as filterMessagingToolMediaDuplicates, g as createReplyToModeFilterForChannel, h as shouldSuppressReasoningPayload, i as normalizeOutboundPayloads, l as applyReplyTagsToPayload, m as shouldSuppressMessagingToolReplies, o as normalizeReplyPayloadsForDelivery, p as isRenderablePayload, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyThreading, v as buildTargetResolverSignature, y as normalizeChannelTargetInput } from "./deliver-CVWbwPkb.js";
53
+ import { a as resolveSessionRunStore, r as inferSessionRunKind, t as createSessionRunRecorder } from "./recorder-C_ViZLf1.js";
54
54
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-BXGkQwOQ.js";
55
55
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-D61IHNsz.js";
56
- import { a as createDiscordRetryRunner, i as normalizePollInput, n as recordChannelActivity, t as getChannelActivity } from "./channel-activity-DNq7LYjU.js";
56
+ import { a as createDiscordRetryRunner, i as normalizePollInput, n as recordChannelActivity, t as getChannelActivity } from "./channel-activity-BJHm_pDV.js";
57
57
  import { t as buildOutboundMediaLoadOptions } from "./load-options-DzQsLh91.js";
58
- import { t as convertMarkdownTables } from "./tables-DEyD0zuy.js";
59
- import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-B0XAAUwL.js";
60
- import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-DGITtNUL.js";
61
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-Dq8ChBfS.js";
62
- import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-CNLmncRW.js";
63
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-jDAjkfZE.js";
64
- import { t as createTelegramPollingTransport } from "./proxy-fWL7CKDP.js";
65
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-NkETqb6B.js";
66
- import { t as recordInboundSessionMetaSafe } from "./session-meta-DuK_BrWT.js";
67
- import { n as resolveMemorySearchConfig } from "./manager-DdA_cy40.js";
68
- import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-31VWpPCz.js";
58
+ import { t as convertMarkdownTables } from "./tables-o3ZpyPWV.js";
59
+ import { i as AGENT_LANE_SUBAGENT, r as AGENT_LANE_NESTED, t as startUserSessionRun } from "./user-run-recording-CAk1Ketk.js";
60
+ import { n as splitMediaFromOutput, t as parseReplyDirectives } from "./reply-directives-D9wYtPPy.js";
61
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-BiDcVZSc.js";
62
+ import { a as formatIMessageChatTarget, c as parseIMessageTarget, i as DEFAULT_IMESSAGE_PROBE_TIMEOUT_MS, o as isAllowedIMessageSender, r as createIMessageRpcClient, s as normalizeIMessageHandle, t as sendMessageIMessage } from "./send-Tx-ew59_.js";
63
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-BV8k5qjX.js";
64
+ import { t as createTelegramPollingTransport } from "./proxy-C9sq6M-h.js";
65
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-BsctLhfp.js";
66
+ import { t as recordInboundSessionMetaSafe } from "./session-meta-DH__PMKt.js";
67
+ import { n as resolveMemorySearchConfig } from "./manager-DH-MILAU.js";
68
+ import { f as listMemoryFiles, p as normalizeExtraMemoryPaths } from "./query-expansion-30x7RlZY.js";
69
69
  import { createRequire } from "node:module";
70
- import * as fs$1 from "node:fs/promises";
70
+ import * as fs$2 from "node:fs/promises";
71
71
  import fs, { mkdir, readFile, writeFile } from "node:fs/promises";
72
72
  import os, { homedir } from "node:os";
73
73
  import * as path$1 from "node:path";
74
74
  import path, { basename, isAbsolute, join } from "node:path";
75
- import syncFs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
76
- import json5 from "json5";
75
+ import fs$1, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
76
+ import JSON5 from "json5";
77
77
  import { inspect, isDeepStrictEqual, promisify } from "node:util";
78
78
  import { execFile, execFileSync, spawn, spawnSync } from "node:child_process";
79
79
  import { fileURLToPath } from "node:url";
@@ -3100,7 +3100,7 @@ function setPromptSourceCacheEntry(key, entry) {
3100
3100
  }
3101
3101
  function readOpenFileUtf8(fd) {
3102
3102
  return new Promise((resolve, reject) => {
3103
- syncFs.readFile(fd, "utf-8", (error, data) => {
3103
+ fs$1.readFile(fd, "utf-8", (error, data) => {
3104
3104
  if (error) {
3105
3105
  reject(error);
3106
3106
  return;
@@ -3111,7 +3111,7 @@ function readOpenFileUtf8(fd) {
3111
3111
  }
3112
3112
  function closeOpenFile(fd) {
3113
3113
  return new Promise((resolve, reject) => {
3114
- syncFs.close(fd, (error) => {
3114
+ fs$1.close(fd, (error) => {
3115
3115
  if (error) {
3116
3116
  reject(error);
3117
3117
  return;
@@ -3550,9 +3550,9 @@ async function copyIfMissing(params) {
3550
3550
  if (!opened.ok) return opened.reason === "path" ? "missing-source" : "invalid";
3551
3551
  let content;
3552
3552
  try {
3553
- content = syncFs.readFileSync(opened.fd);
3553
+ content = fs$1.readFileSync(opened.fd);
3554
3554
  } finally {
3555
- syncFs.closeSync(opened.fd);
3555
+ fs$1.closeSync(opened.fd);
3556
3556
  }
3557
3557
  try {
3558
3558
  await writeFileWithinRoot({
@@ -3915,7 +3915,7 @@ async function resolveOpenClawDocsPath(params) {
3915
3915
  const workspaceDir = params.workspaceDir?.trim();
3916
3916
  if (workspaceDir) {
3917
3917
  const workspaceDocs = path.join(workspaceDir, "docs");
3918
- if (syncFs.existsSync(workspaceDocs)) return workspaceDocs;
3918
+ if (fs$1.existsSync(workspaceDocs)) return workspaceDocs;
3919
3919
  }
3920
3920
  const packageRoot = await resolveOpenClawPackageRoot({
3921
3921
  cwd: params.cwd,
@@ -3924,7 +3924,7 @@ async function resolveOpenClawDocsPath(params) {
3924
3924
  });
3925
3925
  if (packageRoot) {
3926
3926
  const packageDocs = path.join(packageRoot, "docs");
3927
- if (syncFs.existsSync(path.join(packageDocs, "docs.json"))) return packageDocs;
3927
+ if (fs$1.existsSync(path.join(packageDocs, "docs.json"))) return packageDocs;
3928
3928
  }
3929
3929
  return DOCS_SITE_URL;
3930
3930
  }
@@ -8338,7 +8338,7 @@ function resolveDefaultIdentityPath() {
8338
8338
  return path.join(resolveStateDir(), "identity", "device.json");
8339
8339
  }
8340
8340
  function ensureDir$2(filePath) {
8341
- syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
8341
+ fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
8342
8342
  }
8343
8343
  const ED25519_SPKI_PREFIX = Buffer.from("302a300506032b6570032100", "hex");
8344
8344
  function base64UrlEncode(buf) {
@@ -8374,8 +8374,8 @@ function generateIdentity() {
8374
8374
  }
8375
8375
  function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
8376
8376
  try {
8377
- if (syncFs.existsSync(filePath)) {
8378
- const raw = syncFs.readFileSync(filePath, "utf8");
8377
+ if (fs$1.existsSync(filePath)) {
8378
+ const raw = fs$1.readFileSync(filePath, "utf8");
8379
8379
  const parsed = JSON.parse(raw);
8380
8380
  if (parsed?.version === 1 && typeof parsed.deviceId === "string" && typeof parsed.publicKeyPem === "string" && typeof parsed.privateKeyPem === "string") {
8381
8381
  const derivedId = fingerprintPublicKey(parsed.publicKeyPem);
@@ -8384,9 +8384,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
8384
8384
  ...parsed,
8385
8385
  deviceId: derivedId
8386
8386
  };
8387
- syncFs.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
8387
+ fs$1.writeFileSync(filePath, `${JSON.stringify(updated, null, 2)}\n`, { mode: 384 });
8388
8388
  try {
8389
- syncFs.chmodSync(filePath, 384);
8389
+ fs$1.chmodSync(filePath, 384);
8390
8390
  } catch {}
8391
8391
  return {
8392
8392
  deviceId: derivedId,
@@ -8411,9 +8411,9 @@ function loadOrCreateDeviceIdentity(filePath = resolveDefaultIdentityPath()) {
8411
8411
  privateKeyPem: identity.privateKeyPem,
8412
8412
  createdAtMs: Date.now()
8413
8413
  };
8414
- syncFs.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
8414
+ fs$1.writeFileSync(filePath, `${JSON.stringify(stored, null, 2)}\n`, { mode: 384 });
8415
8415
  try {
8416
- syncFs.chmodSync(filePath, 384);
8416
+ fs$1.chmodSync(filePath, 384);
8417
8417
  } catch {}
8418
8418
  return identity;
8419
8419
  }
@@ -8605,8 +8605,8 @@ function resolveDeviceAuthPath(env = process.env) {
8605
8605
  }
8606
8606
  function readStore(filePath) {
8607
8607
  try {
8608
- if (!syncFs.existsSync(filePath)) return null;
8609
- const raw = syncFs.readFileSync(filePath, "utf8");
8608
+ if (!fs$1.existsSync(filePath)) return null;
8609
+ const raw = fs$1.readFileSync(filePath, "utf8");
8610
8610
  const parsed = JSON.parse(raw);
8611
8611
  if (parsed?.version !== 1 || typeof parsed.deviceId !== "string") return null;
8612
8612
  if (!parsed.tokens || typeof parsed.tokens !== "object") return null;
@@ -8616,10 +8616,10 @@ function readStore(filePath) {
8616
8616
  }
8617
8617
  }
8618
8618
  function writeStore(filePath, store) {
8619
- syncFs.mkdirSync(path.dirname(filePath), { recursive: true });
8620
- syncFs.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
8619
+ fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
8620
+ fs$1.writeFileSync(filePath, `${JSON.stringify(store, null, 2)}\n`, { mode: 384 });
8621
8621
  try {
8622
- syncFs.chmodSync(filePath, 384);
8622
+ fs$1.chmodSync(filePath, 384);
8623
8623
  } catch {}
8624
8624
  }
8625
8625
  function loadDeviceAuthToken(params) {
@@ -10233,7 +10233,8 @@ const TalkCatalogTranscriptionResultSchema = Type.Object({
10233
10233
  const TalkCatalogDiagnosticCauseSchema = stringEnum([
10234
10234
  "missing-api-key",
10235
10235
  "secret-ref-unresolved",
10236
- "provider-error"
10236
+ "provider-error",
10237
+ "missing-voice-id"
10237
10238
  ]);
10238
10239
  const TalkCatalogStreamingTranscriptionRowSchema = Type.Object({
10239
10240
  id: Type.String(),
@@ -12475,7 +12476,7 @@ async function routeReply(params) {
12475
12476
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
12476
12477
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
12477
12478
  try {
12478
- const { deliverOutboundPayloads } = await import("./deliver-CXqNQ8yi.js").then((n) => n.n);
12479
+ const { deliverOutboundPayloads } = await import("./deliver-CVWbwPkb.js").then((n) => n.n);
12479
12480
  const outboundSession = buildOutboundSessionContext({
12480
12481
  cfg,
12481
12482
  agentId: resolvedAgentId,
@@ -14063,7 +14064,7 @@ async function sendTranscriptEcho(params) {
14063
14064
  }
14064
14065
  const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
14065
14066
  try {
14066
- const { deliverOutboundPayloads } = await import("./deliver-CXqNQ8yi.js").then((n) => n.n);
14067
+ const { deliverOutboundPayloads } = await import("./deliver-CVWbwPkb.js").then((n) => n.n);
14067
14068
  await deliverOutboundPayloads({
14068
14069
  cfg,
14069
14070
  channel: normalizedChannel,
@@ -18345,7 +18346,7 @@ function mergeLegacyAgent(current, legacy) {
18345
18346
  }
18346
18347
  function ensureDir$1(filePath) {
18347
18348
  const dir = path.dirname(filePath);
18348
- syncFs.mkdirSync(dir, { recursive: true });
18349
+ fs$1.mkdirSync(dir, { recursive: true });
18349
18350
  }
18350
18351
  function coerceAllowlistEntries(allowlist) {
18351
18352
  if (!Array.isArray(allowlist) || allowlist.length === 0) return Array.isArray(allowlist) ? allowlist : void 0;
@@ -18415,11 +18416,11 @@ function generateToken() {
18415
18416
  function loadExecApprovals() {
18416
18417
  const filePath = resolveExecApprovalsPath();
18417
18418
  try {
18418
- if (!syncFs.existsSync(filePath)) return normalizeExecApprovals({
18419
+ if (!fs$1.existsSync(filePath)) return normalizeExecApprovals({
18419
18420
  version: 1,
18420
18421
  agents: {}
18421
18422
  });
18422
- const raw = syncFs.readFileSync(filePath, "utf8");
18423
+ const raw = fs$1.readFileSync(filePath, "utf8");
18423
18424
  const parsed = JSON.parse(raw);
18424
18425
  if (parsed?.version !== 1) return normalizeExecApprovals({
18425
18426
  version: 1,
@@ -18436,9 +18437,9 @@ function loadExecApprovals() {
18436
18437
  function saveExecApprovals(file) {
18437
18438
  const filePath = resolveExecApprovalsPath();
18438
18439
  ensureDir$1(filePath);
18439
- syncFs.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
18440
+ fs$1.writeFileSync(filePath, `${JSON.stringify(file, null, 2)}\n`, { mode: 384 });
18440
18441
  try {
18441
- syncFs.chmodSync(filePath, 384);
18442
+ fs$1.chmodSync(filePath, 384);
18442
18443
  } catch {}
18443
18444
  }
18444
18445
  function ensureExecApprovals() {
@@ -19004,18 +19005,18 @@ function peekSystemEventEntries(sessionKey) {
19004
19005
  function resolvePowerShellPath() {
19005
19006
  const programFiles = process.env.ProgramFiles || process.env.PROGRAMFILES || "C:\\Program Files";
19006
19007
  const pwsh7 = path.join(programFiles, "PowerShell", "7", "pwsh.exe");
19007
- if (syncFs.existsSync(pwsh7)) return pwsh7;
19008
+ if (fs$1.existsSync(pwsh7)) return pwsh7;
19008
19009
  const programW6432 = process.env.ProgramW6432;
19009
19010
  if (programW6432 && programW6432 !== programFiles) {
19010
19011
  const pwsh7Alt = path.join(programW6432, "PowerShell", "7", "pwsh.exe");
19011
- if (syncFs.existsSync(pwsh7Alt)) return pwsh7Alt;
19012
+ if (fs$1.existsSync(pwsh7Alt)) return pwsh7Alt;
19012
19013
  }
19013
19014
  const pwshInPath = resolveShellFromPath("pwsh");
19014
19015
  if (pwshInPath) return pwshInPath;
19015
19016
  const systemRoot = process.env.SystemRoot || process.env.WINDIR;
19016
19017
  if (systemRoot) {
19017
19018
  const candidate = path.join(systemRoot, "System32", "WindowsPowerShell", "v1.0", "powershell.exe");
19018
- if (syncFs.existsSync(candidate)) return candidate;
19019
+ if (fs$1.existsSync(candidate)) return candidate;
19019
19020
  }
19020
19021
  return "powershell.exe";
19021
19022
  }
@@ -19053,7 +19054,7 @@ function resolveShellFromPath(name) {
19053
19054
  for (const entry of entries) {
19054
19055
  const candidate = path.join(entry, name);
19055
19056
  try {
19056
- syncFs.accessSync(candidate, syncFs.constants.X_OK);
19057
+ fs$1.accessSync(candidate, fs$1.constants.X_OK);
19057
19058
  return candidate;
19058
19059
  } catch {}
19059
19060
  }
@@ -22654,7 +22655,7 @@ function ensureContextWindowCacheLoaded() {
22654
22655
  await ensureOpenClawModelsJson(cfg);
22655
22656
  } catch {}
22656
22657
  try {
22657
- const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-B9KKtGuw.js").then((n) => n.r);
22658
+ const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-CsC6yTDG.js").then((n) => n.r);
22658
22659
  const agentDir = resolveOpenClawAgentDir();
22659
22660
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
22660
22661
  applyDiscoveredContextWindows({
@@ -22737,7 +22738,7 @@ function walkUpFrom(startDir, opts, resolveAtDir) {
22737
22738
  function hasGitMarker(repoRoot) {
22738
22739
  const gitPath = path.join(repoRoot, ".git");
22739
22740
  try {
22740
- const stat = syncFs.statSync(gitPath);
22741
+ const stat = fs$1.statSync(gitPath);
22741
22742
  return stat.isDirectory() || stat.isFile();
22742
22743
  } catch {
22743
22744
  return false;
@@ -22749,10 +22750,10 @@ function findGitRoot(startDir, opts = {}) {
22749
22750
  function resolveGitDirFromMarker(repoRoot) {
22750
22751
  const gitPath = path.join(repoRoot, ".git");
22751
22752
  try {
22752
- const stat = syncFs.statSync(gitPath);
22753
+ const stat = fs$1.statSync(gitPath);
22753
22754
  if (stat.isDirectory()) return gitPath;
22754
22755
  if (!stat.isFile()) return null;
22755
- const match = syncFs.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
22756
+ const match = fs$1.readFileSync(gitPath, "utf-8").match(/gitdir:\s*(.+)/i);
22756
22757
  if (!match?.[1]) return null;
22757
22758
  return path.resolve(repoRoot, match[1].trim());
22758
22759
  } catch {
@@ -22819,7 +22820,7 @@ const resolveCommitHash = (options = {}) => {
22819
22820
  cachedCommit = null;
22820
22821
  return cachedCommit;
22821
22822
  }
22822
- const head = syncFs.readFileSync(headPath, "utf-8").trim();
22823
+ const head = fs$1.readFileSync(headPath, "utf-8").trim();
22823
22824
  if (!head) {
22824
22825
  cachedCommit = null;
22825
22826
  return cachedCommit;
@@ -22827,7 +22828,7 @@ const resolveCommitHash = (options = {}) => {
22827
22828
  if (head.startsWith("ref:")) {
22828
22829
  const ref = head.replace(/^ref:\s*/i, "").trim();
22829
22830
  const refPath = path.resolve(path.dirname(headPath), ref);
22830
- cachedCommit = formatCommit(syncFs.readFileSync(refPath, "utf-8").trim());
22831
+ cachedCommit = formatCommit(fs$1.readFileSync(refPath, "utf-8").trim());
22831
22832
  return cachedCommit;
22832
22833
  }
22833
22834
  cachedCommit = formatCommit(head);
@@ -23052,17 +23053,17 @@ const readUsageFromSessionLog = (sessionId, sessionEntry, agentId, sessionKey, s
23052
23053
  } catch {
23053
23054
  return;
23054
23055
  }
23055
- if (!syncFs.existsSync(logPath)) return;
23056
+ if (!fs$1.existsSync(logPath)) return;
23056
23057
  try {
23057
23058
  const TAIL_BYTES = 8192;
23058
- const stat = syncFs.statSync(logPath);
23059
+ const stat = fs$1.statSync(logPath);
23059
23060
  const offset = Math.max(0, stat.size - TAIL_BYTES);
23060
23061
  const buf = Buffer.alloc(Math.min(TAIL_BYTES, stat.size));
23061
- const fd = syncFs.openSync(logPath, "r");
23062
+ const fd = fs$1.openSync(logPath, "r");
23062
23063
  try {
23063
- syncFs.readSync(fd, buf, 0, buf.length, offset);
23064
+ fs$1.readSync(fd, buf, 0, buf.length, offset);
23064
23065
  } finally {
23065
- syncFs.closeSync(fd);
23066
+ fs$1.closeSync(fd);
23066
23067
  }
23067
23068
  const tail = buf.toString("utf-8");
23068
23069
  const lines = (offset > 0 ? tail.slice(tail.indexOf("\n") + 1) : tail).split(/\n+/);
@@ -27499,7 +27500,7 @@ function resolveRepoRoot(params) {
27499
27500
  const configured = params.config?.agents?.defaults?.repoRoot?.trim();
27500
27501
  if (configured) try {
27501
27502
  const resolved = path.resolve(configured);
27502
- if (syncFs.statSync(resolved).isDirectory()) return resolved;
27503
+ if (fs$1.statSync(resolved).isDirectory()) return resolved;
27503
27504
  } catch {}
27504
27505
  const candidates = [params.workspaceDir, params.cwd].map((value) => value?.trim()).filter(Boolean);
27505
27506
  const seen = /* @__PURE__ */ new Set();
@@ -27896,7 +27897,7 @@ async function buildContextReply(params) {
27896
27897
  //#region src/auto-reply/reply/commands-export-session.ts
27897
27898
  const EXPORT_HTML_DIR = path.join(path.dirname(fileURLToPath(import.meta.url)), "export-html");
27898
27899
  function loadTemplate(fileName) {
27899
- return syncFs.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
27900
+ return fs$1.readFileSync(path.join(EXPORT_HTML_DIR, fileName), "utf-8");
27900
27901
  }
27901
27902
  function generateHtml(sessionData) {
27902
27903
  const template = loadTemplate("template.html");
@@ -27970,7 +27971,7 @@ async function buildExportSessionReply(params) {
27970
27971
  } catch (err) {
27971
27972
  return { text: `❌ Failed to resolve session file: ${err instanceof Error ? err.message : String(err)}` };
27972
27973
  }
27973
- if (!syncFs.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
27974
+ if (!fs$1.existsSync(sessionFile)) return { text: `❌ Session file not found: ${sessionFile}` };
27974
27975
  const sessionManager = SessionManager.open(sessionFile);
27975
27976
  const entries = sessionManager.getEntries();
27976
27977
  const header = sessionManager.getHeader();
@@ -27991,8 +27992,8 @@ async function buildExportSessionReply(params) {
27991
27992
  const defaultFileName = `openclaw-session-${entry.sessionId.slice(0, 8)}-${timestamp}.html`;
27992
27993
  const outputPath = args.outputPath ? path.resolve(args.outputPath.startsWith("~") ? args.outputPath.replace("~", process.env.HOME ?? "") : args.outputPath) : path.join(params.workspaceDir, defaultFileName);
27993
27994
  const outputDir = path.dirname(outputPath);
27994
- if (!syncFs.existsSync(outputDir)) syncFs.mkdirSync(outputDir, { recursive: true });
27995
- syncFs.writeFileSync(outputPath, html, "utf-8");
27995
+ if (!fs$1.existsSync(outputDir)) fs$1.mkdirSync(outputDir, { recursive: true });
27996
+ fs$1.writeFileSync(outputPath, html, "utf-8");
27996
27997
  const relativePath = path.relative(params.workspaceDir, outputPath);
27997
27998
  return { text: [
27998
27999
  "✅ Session exported!",
@@ -28167,8 +28168,8 @@ function resolveZaiApiKey() {
28167
28168
  }
28168
28169
  try {
28169
28170
  const authPath = path.join(resolveRequiredHomeDir(process.env, os.homedir), ".pi", "agent", "auth.json");
28170
- if (!syncFs.existsSync(authPath)) return;
28171
- const data = JSON.parse(syncFs.readFileSync(authPath, "utf-8"));
28171
+ if (!fs$1.existsSync(authPath)) return;
28172
+ const data = JSON.parse(fs$1.readFileSync(authPath, "utf-8"));
28172
28173
  return data["z-ai"]?.access || data.zai?.access;
28173
28174
  } catch {
28174
28175
  return;
@@ -29987,7 +29988,7 @@ function shouldPersistAnyBindingState() {
29987
29988
  }
29988
29989
  function shouldPersistBindingMutations() {
29989
29990
  if (shouldPersistAnyBindingState()) return true;
29990
- return syncFs.existsSync(resolveThreadBindingsPath());
29991
+ return fs$1.existsSync(resolveThreadBindingsPath());
29991
29992
  }
29992
29993
  function saveBindingsToDisk(params = {}) {
29993
29994
  if (!params.force && !shouldPersistAnyBindingState()) return;
@@ -31251,7 +31252,7 @@ const applyCostTotal = (totals, costTotal) => {
31251
31252
  totals.totalCost += costTotal;
31252
31253
  };
31253
31254
  async function* readJsonlRecords(filePath) {
31254
- const fileStream = syncFs.createReadStream(filePath, { encoding: "utf-8" });
31255
+ const fileStream = fs$1.createReadStream(filePath, { encoding: "utf-8" });
31255
31256
  const rl = readline.createInterface({
31256
31257
  input: fileStream,
31257
31258
  crlfDelay: Infinity
@@ -31323,10 +31324,10 @@ async function loadCostUsageSummary(params) {
31323
31324
  const dailyMap = /* @__PURE__ */ new Map();
31324
31325
  const totals = emptyTotals();
31325
31326
  const sessionsDir = resolveSessionTranscriptsDirForAgent(params?.agentId);
31326
- const entries = await syncFs.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
31327
+ const entries = await fs$1.promises.readdir(sessionsDir, { withFileTypes: true }).catch(() => []);
31327
31328
  const files = (await Promise.all(entries.filter((entry) => entry.isFile() && isPrimarySessionTranscriptFileName(entry.name)).map(async (entry) => {
31328
31329
  const filePath = path.join(sessionsDir, entry.name);
31329
- const stats = await syncFs.promises.stat(filePath).catch(() => null);
31330
+ const stats = await fs$1.promises.stat(filePath).catch(() => null);
31330
31331
  if (!stats) return null;
31331
31332
  if (stats.mtimeMs < sinceTime) return null;
31332
31333
  return filePath;
@@ -31359,7 +31360,7 @@ async function loadCostUsageSummary(params) {
31359
31360
  }
31360
31361
  async function loadSessionCostSummary(params) {
31361
31362
  const sessionFile = params.sessionFile ?? (params.sessionId ? resolveSessionFilePath(params.sessionId, params.sessionEntry, { agentId: params.agentId }) : void 0);
31362
- if (!sessionFile || !syncFs.existsSync(sessionFile)) return null;
31363
+ if (!sessionFile || !fs$1.existsSync(sessionFile)) return null;
31363
31364
  const totals = emptyTotals();
31364
31365
  let firstActivity;
31365
31366
  let lastActivity;
@@ -32538,8 +32539,8 @@ function normalizeSessionKey(value) {
32538
32539
  }
32539
32540
  function readSessionStore(storePath) {
32540
32541
  try {
32541
- const raw = syncFs.readFileSync(storePath, "utf-8");
32542
- const parsed = json5.parse(raw);
32542
+ const raw = fs$1.readFileSync(storePath, "utf-8");
32543
+ const parsed = JSON5.parse(raw);
32543
32544
  if (parsed && typeof parsed === "object" && !Array.isArray(parsed)) return parsed;
32544
32545
  } catch {}
32545
32546
  return {};
@@ -34202,7 +34203,7 @@ async function createModelSelectionState(params) {
34202
34203
  }
34203
34204
  }
34204
34205
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
34205
- const { ensureAuthProfileStore } = await import("./model-selection-CdZITU0t.js").then((n) => n.P);
34206
+ const { ensureAuthProfileStore } = await import("./model-selection-9qbqwsOT.js").then((n) => n.P);
34206
34207
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
34207
34208
  const providerKey = normalizeProviderId(provider);
34208
34209
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -37724,7 +37725,7 @@ function asBoolean(value) {
37724
37725
  }
37725
37726
  function resolveTempPathParts(opts) {
37726
37727
  const tmpDir = opts.tmpDir ?? resolvePreferredOpenClawTmpDir();
37727
- if (!opts.tmpDir) syncFs.mkdirSync(tmpDir, {
37728
+ if (!opts.tmpDir) fs$1.mkdirSync(tmpDir, {
37728
37729
  recursive: true,
37729
37730
  mode: 448
37730
37731
  });
@@ -37810,7 +37811,7 @@ async function writeUrlToFile(filePath, url, opts) {
37810
37811
  if (typeof contentLength === "number" && Number.isFinite(contentLength) && contentLength > MAX_CAMERA_URL_DOWNLOAD_BYTES) throw new Error(`writeUrlToFile: content-length ${contentLength} exceeds max ${MAX_CAMERA_URL_DOWNLOAD_BYTES}`);
37811
37812
  const body = res.body;
37812
37813
  if (!body) throw new Error(`failed to download ${url}: empty response body`);
37813
- const fileHandle = await fs$1.open(filePath, "w");
37814
+ const fileHandle = await fs$2.open(filePath, "w");
37814
37815
  let thrown;
37815
37816
  try {
37816
37817
  const reader = body.getReader();
@@ -37828,7 +37829,7 @@ async function writeUrlToFile(filePath, url, opts) {
37828
37829
  await fileHandle.close();
37829
37830
  }
37830
37831
  if (thrown) {
37831
- await fs$1.unlink(filePath).catch(() => {});
37832
+ await fs$2.unlink(filePath).catch(() => {});
37832
37833
  throw thrown;
37833
37834
  }
37834
37835
  } finally {
@@ -37841,7 +37842,7 @@ async function writeUrlToFile(filePath, url, opts) {
37841
37842
  }
37842
37843
  async function writeBase64ToFile(filePath, base64) {
37843
37844
  const buf = Buffer.from(base64, "base64");
37844
- await fs$1.writeFile(filePath, buf);
37845
+ await fs$2.writeFile(filePath, buf);
37845
37846
  return {
37846
37847
  path: filePath,
37847
37848
  bytes: buf.length
@@ -39445,7 +39446,7 @@ function isFallbackAbortError(err) {
39445
39446
  return ("name" in err ? String(err.name) : "") === "AbortError";
39446
39447
  }
39447
39448
  function shouldRethrowAbort(err) {
39448
- return isFallbackAbortError(err) && !isTimeoutError(err);
39449
+ return isQueuedCommandCancellation(err) || isFallbackAbortError(err) && !isTimeoutError(err);
39449
39450
  }
39450
39451
  function createModelCandidateCollector(allowlist) {
39451
39452
  const seen = /* @__PURE__ */ new Set();
@@ -41280,9 +41281,9 @@ function loadExternalCatalogEntries(options) {
41280
41281
  const entries = [];
41281
41282
  for (const rawPath of paths) {
41282
41283
  const resolved = resolveUserPath(rawPath);
41283
- if (!syncFs.existsSync(resolved)) continue;
41284
+ if (!fs$1.existsSync(resolved)) continue;
41284
41285
  try {
41285
- const payload = JSON.parse(syncFs.readFileSync(resolved, "utf-8"));
41286
+ const payload = JSON.parse(fs$1.readFileSync(resolved, "utf-8"));
41286
41287
  entries.push(...parseCatalogEntries(payload));
41287
41288
  } catch {}
41288
41289
  }
@@ -45202,7 +45203,7 @@ function listExistingAgentIdsFromDisk() {
45202
45203
  const root = resolveStateDir();
45203
45204
  const agentsDir = path.join(root, "agents");
45204
45205
  try {
45205
- return syncFs.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
45206
+ return fs$1.readdirSync(agentsDir, { withFileTypes: true }).filter((entry) => entry.isDirectory()).map((entry) => normalizeAgentId(entry.name)).filter(Boolean);
45206
45207
  } catch {
45207
45208
  return [];
45208
45209
  }
@@ -51462,6 +51463,11 @@ async function runAgentTurnWithFallback(params) {
51462
51463
  break;
51463
51464
  } catch (err) {
51464
51465
  const message = err instanceof Error ? err.message : String(err);
51466
+ if (isQueuedCommandCancellation(err)) {
51467
+ logVerbose(`Embedded agent run cancelled while queued: ${message}`);
51468
+ await sessionRun.abort("cancelled while queued");
51469
+ return { kind: "cancelled" };
51470
+ }
51465
51471
  const isContextOverflow = isLikelyContextOverflowError(message);
51466
51472
  const isCompactionFailure = isCompactionFailureError(message);
51467
51473
  const isSessionCorruption = /function call turn comes immediately after/i.test(message);
@@ -51492,7 +51498,7 @@ async function runAgentTurnWithFallback(params) {
51492
51498
  if (corruptedSessionId) {
51493
51499
  const transcriptPath = resolveSessionTranscriptPath(corruptedSessionId);
51494
51500
  try {
51495
- syncFs.unlinkSync(transcriptPath);
51501
+ fs$1.unlinkSync(transcriptPath);
51496
51502
  } catch {}
51497
51503
  }
51498
51504
  delete params.activeSessionStore[sessionKey];
@@ -52288,7 +52294,7 @@ async function readSessionLogSnapshot(params) {
52288
52294
  if (!logPath) return {};
52289
52295
  const snapshot = {};
52290
52296
  if (params.includeByteSize) try {
52291
- const stat = await syncFs.promises.stat(logPath);
52297
+ const stat = await fs$1.promises.stat(logPath);
52292
52298
  const size = Math.floor(stat.size);
52293
52299
  snapshot.byteSize = Number.isFinite(size) && size >= 0 ? size : void 0;
52294
52300
  } catch {
@@ -52302,7 +52308,7 @@ async function readSessionLogSnapshot(params) {
52302
52308
  return snapshot;
52303
52309
  }
52304
52310
  async function readLastNonzeroUsageFromSessionLog(logPath) {
52305
- const handle = await syncFs.promises.open(logPath, "r");
52311
+ const handle = await fs$1.promises.open(logPath, "r");
52306
52312
  try {
52307
52313
  let position = (await handle.stat()).size;
52308
52314
  let leadingPartial = "";
@@ -52965,6 +52971,11 @@ function createFollowupRunner(params) {
52965
52971
  fallbackModel = fallbackResult.model;
52966
52972
  } catch (err) {
52967
52973
  const message = err instanceof Error ? err.message : String(err);
52974
+ if (isQueuedCommandCancellation(err)) {
52975
+ logVerbose(`Followup agent run cancelled while queued: ${message}`);
52976
+ await sessionRun.abort("cancelled while queued");
52977
+ return;
52978
+ }
52968
52979
  defaultRuntime.error?.(`Followup agent failed before reply: ${message}`);
52969
52980
  await sessionRun.fail(err);
52970
52981
  return;
@@ -53070,9 +53081,9 @@ async function readPostCompactionContext(workspaceDir) {
53070
53081
  if (!opened.ok) return null;
53071
53082
  const sections = extractSections((() => {
53072
53083
  try {
53073
- return syncFs.readFileSync(opened.fd, "utf-8");
53084
+ return fs$1.readFileSync(opened.fd, "utf-8");
53074
53085
  } finally {
53075
- syncFs.closeSync(opened.fd);
53086
+ fs$1.closeSync(opened.fd);
53076
53087
  }
53077
53088
  })(), ["Session Startup", "Red Lines"]);
53078
53089
  if (sections.length === 0) return null;
@@ -53315,7 +53326,7 @@ async function runReplyAgent(params) {
53315
53326
  if (resolved) transcriptCandidates.add(resolved);
53316
53327
  transcriptCandidates.add(resolveSessionTranscriptPath(prevSessionId, agentId));
53317
53328
  for (const candidate of transcriptCandidates) try {
53318
- syncFs.unlinkSync(candidate);
53329
+ fs$1.unlinkSync(candidate);
53319
53330
  } catch {}
53320
53331
  }
53321
53332
  return true;
@@ -53354,6 +53365,7 @@ async function runReplyAgent(params) {
53354
53365
  storePath,
53355
53366
  resolvedVerboseLevel
53356
53367
  });
53368
+ if (runOutcome.kind === "cancelled") return finalizeWithFollowup(void 0, queueKey, runFollowupTurn);
53357
53369
  if (runOutcome.kind === "final") return finalizeWithFollowup(runOutcome.payload, queueKey, runFollowupTurn);
53358
53370
  const { runId, runResult, fallbackProvider, fallbackModel, fallbackAttempts, directlySentBlockKeys } = runOutcome;
53359
53371
  let { didLogHeartbeatStrip, autoCompactionCompleted } = runOutcome;
@@ -54423,7 +54435,7 @@ async function deliverSessionMaintenanceWarning(params) {
54423
54435
  return;
54424
54436
  }
54425
54437
  try {
54426
- const { deliverOutboundPayloads } = await import("./deliver-CXqNQ8yi.js").then((n) => n.n);
54438
+ const { deliverOutboundPayloads } = await import("./deliver-CVWbwPkb.js").then((n) => n.n);
54427
54439
  const outboundSession = buildOutboundSessionContext({
54428
54440
  cfg: params.cfg,
54429
54441
  sessionKey: params.sessionKey
@@ -54529,7 +54541,7 @@ async function forkSessionFromParent(params) {
54529
54541
  agentId: params.agentId,
54530
54542
  sessionsDir: params.sessionsDir
54531
54543
  });
54532
- if (!parentSessionFile || !syncFs.existsSync(parentSessionFile)) return null;
54544
+ if (!parentSessionFile || !fs$1.existsSync(parentSessionFile)) return null;
54533
54545
  try {
54534
54546
  const manager = SessionManager.open(parentSessionFile);
54535
54547
  const leafId = manager.getLeafId();
@@ -54553,7 +54565,7 @@ async function forkSessionFromParent(params) {
54553
54565
  cwd: manager.getCwd(),
54554
54566
  parentSession: parentSessionFile
54555
54567
  };
54556
- syncFs.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
54568
+ fs$1.writeFileSync(sessionFile, `${JSON.stringify(header)}\n`, "utf-8");
54557
54569
  return {
54558
54570
  sessionId,
54559
54571
  sessionFile
@@ -63612,7 +63624,7 @@ async function describeStickerImage(params) {
63612
63624
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
63613
63625
  try {
63614
63626
  const buffer = await fs.readFile(imagePath);
63615
- const { describeImageWithModel } = await import("./provider-image-BllyLBJM.js").then((n) => n.n);
63627
+ const { describeImageWithModel } = await import("./provider-image-Cb4z6zUu.js").then((n) => n.n);
63616
63628
  return (await describeImageWithModel({
63617
63629
  buffer,
63618
63630
  fileName: "sticker.webp",
@@ -65325,7 +65337,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
65325
65337
  let transcript;
65326
65338
  let carry;
65327
65339
  if (needsPreflightTranscription) try {
65328
- const { transcribeFirstAudio } = await import("./audio-preflight-B_5sTSyb.js");
65340
+ const { transcribeFirstAudio } = await import("./audio-preflight-ifCgpG3c.js");
65329
65341
  const uploadable = audioAttachments.filter((att) => typeof att.url === "string" && att.url.length > 0);
65330
65342
  if (uploadable.length > 0) {
65331
65343
  const preflight = await transcribeFirstAudio({
@@ -66786,7 +66798,7 @@ function identityHasValues(identity) {
66786
66798
  }
66787
66799
  function loadIdentityFromFile(identityPath) {
66788
66800
  try {
66789
- const parsed = parseIdentityMarkdown(syncFs.readFileSync(identityPath, "utf-8"));
66801
+ const parsed = parseIdentityMarkdown(fs$1.readFileSync(identityPath, "utf-8"));
66790
66802
  if (!identityHasValues(parsed)) return null;
66791
66803
  return parsed;
66792
66804
  } catch {
@@ -66810,7 +66822,7 @@ function resolveAvatarSource(cfg, agentId) {
66810
66822
  }
66811
66823
  function resolveExistingPath(value) {
66812
66824
  try {
66813
- return syncFs.realpathSync(value);
66825
+ return fs$1.realpathSync(value);
66814
66826
  } catch {
66815
66827
  return path.resolve(value);
66816
66828
  }
@@ -66828,7 +66840,7 @@ function resolveLocalAvatarPath(params) {
66828
66840
  reason: "unsupported_extension"
66829
66841
  };
66830
66842
  try {
66831
- const stat = syncFs.statSync(realPath);
66843
+ const stat = fs$1.statSync(realPath);
66832
66844
  if (!stat.isFile()) return {
66833
66845
  ok: false,
66834
66846
  reason: "missing"
@@ -72529,23 +72541,23 @@ function createDefaultDeps() {
72529
72541
  };
72530
72542
  },
72531
72543
  sendMessageTelegram: async (...args) => {
72532
- const { sendMessageTelegram } = await import("./send-DEFcgo-1.js").then((n) => n.l);
72544
+ const { sendMessageTelegram } = await import("./send-TscXeVY8.js").then((n) => n.l);
72533
72545
  return await sendMessageTelegram(...args);
72534
72546
  },
72535
72547
  sendMessageDiscord: async (...args) => {
72536
- const { sendMessageDiscord } = await import("./send-Do1AlhD5.js").then((n) => n.t);
72548
+ const { sendMessageDiscord } = await import("./send-BGps2i_C.js").then((n) => n.t);
72537
72549
  return await sendMessageDiscord(...args);
72538
72550
  },
72539
72551
  sendMessageSlack: async (...args) => {
72540
- const { sendMessageSlack } = await import("./send-ENMm5qbW.js").then((n) => n.n);
72552
+ const { sendMessageSlack } = await import("./send-Ba3pDq6E.js").then((n) => n.n);
72541
72553
  return await sendMessageSlack(...args);
72542
72554
  },
72543
72555
  sendMessageSignal: async (...args) => {
72544
- const { sendMessageSignal } = await import("./send-Dq8ChBfS.js").then((n) => n.i);
72556
+ const { sendMessageSignal } = await import("./send-BiDcVZSc.js").then((n) => n.i);
72545
72557
  return await sendMessageSignal(...args);
72546
72558
  },
72547
72559
  sendMessageIMessage: async (...args) => {
72548
- const { sendMessageIMessage } = await import("./send-CNLmncRW.js").then((n) => n.n);
72560
+ const { sendMessageIMessage } = await import("./send-Tx-ew59_.js").then((n) => n.n);
72549
72561
  return await sendMessageIMessage(...args);
72550
72562
  }
72551
72563
  };
@@ -78445,7 +78457,7 @@ async function monitorIMessageProvider(opts = {}) {
78445
78457
  function readFileIfExists(filePath) {
78446
78458
  if (!filePath) return;
78447
78459
  try {
78448
- return syncFs.readFileSync(filePath, "utf-8").trim();
78460
+ return fs$1.readFileSync(filePath, "utf-8").trim();
78449
78461
  } catch {
78450
78462
  return;
78451
78463
  }
@@ -79066,7 +79078,7 @@ async function downloadLineMedia(messageId, channelAccessToken, maxBytes = 10 *
79066
79078
  prefix: "line-media",
79067
79079
  extension: getExtensionForContentType(contentType)
79068
79080
  });
79069
- await syncFs.promises.writeFile(filePath, buffer);
79081
+ await fs$1.promises.writeFile(filePath, buffer);
79070
79082
  logVerbose(`line: downloaded media ${messageId} to ${filePath} (${buffer.length} bytes)`);
79071
79083
  return {
79072
79084
  path: filePath,
@@ -84862,7 +84874,7 @@ function readSlackExternalArgMenuToken(raw) {
84862
84874
  }
84863
84875
  let commandsRegistry;
84864
84876
  async function getCommandsRegistry() {
84865
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-DC0fovy_.js").then((n) => n.n);
84877
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-DdQg21ct.js").then((n) => n.n);
84866
84878
  return commandsRegistry;
84867
84879
  }
84868
84880
  function encodeSlackCommandArgValue(parts) {
@@ -85192,14 +85204,14 @@ async function registerSlackMonitorSlashCommands(params) {
85192
85204
  const channelName = channelInfo?.name;
85193
85205
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
85194
85206
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
85195
- import("./resolve-route-jDAjkfZE.js").then((n) => n.r),
85207
+ import("./resolve-route-BV8k5qjX.js").then((n) => n.r),
85196
85208
  import("./inbound-context-BXGkQwOQ.js").then((n) => n.n),
85197
85209
  Promise.resolve().then(() => provider_dispatcher_exports)
85198
85210
  ]);
85199
85211
  const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
85200
85212
  import("./conversation-label-BnH5Yy9T.js").then((n) => n.t),
85201
- import("./reply-prefix-DVkNDBNe.js").then((n) => n.n),
85202
- import("./session-meta-DuK_BrWT.js").then((n) => n.n)
85213
+ import("./reply-prefix-C7WlN3qm.js").then((n) => n.n),
85214
+ import("./session-meta-DH__PMKt.js").then((n) => n.n)
85203
85215
  ]);
85204
85216
  const route = resolveAgentRoute({
85205
85217
  cfg,
@@ -85264,9 +85276,9 @@ async function registerSlackMonitorSlashCommands(params) {
85264
85276
  });
85265
85277
  const deliverSlashPayloads = async (replies) => {
85266
85278
  const [{ deliverSlackSlashReplies }, { resolveChunkMode, resolveChunkNewlinePacking }, { resolveMarkdownTableMode }] = await Promise.all([
85267
- import("./replies-NkETqb6B.js").then((n) => n.r),
85268
- import("./chunk-BhntPUH_.js").then((n) => n.s),
85269
- import("./markdown-tables-Dd7jV1JF.js").then((n) => n.t)
85279
+ import("./replies-BsctLhfp.js").then((n) => n.r),
85280
+ import("./chunk-eNEsWhab.js").then((n) => n.s),
85281
+ import("./markdown-tables-UWspJNAH.js").then((n) => n.t)
85270
85282
  ]);
85271
85283
  await deliverSlackSlashReplies({
85272
85284
  replies,
@@ -85320,7 +85332,7 @@ async function registerSlackMonitorSlashCommands(params) {
85320
85332
  let nativeCommands = [];
85321
85333
  if (nativeEnabled) {
85322
85334
  reg = await getCommandsRegistry();
85323
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-BhMQp_i8.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
85335
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-CRZajtK_.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
85324
85336
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
85325
85337
  skillCommands,
85326
85338
  provider: "slack"
@@ -85839,7 +85851,7 @@ async function auditTelegramGroupMembership(params) {
85839
85851
  groups: [],
85840
85852
  elapsedMs: Date.now() - started
85841
85853
  };
85842
- const fetcher = params.proxyUrl ? (await import("./proxy-fWL7CKDP.js").then((n) => n.n)).makeProxyFetch(params.proxyUrl) : fetch;
85854
+ const fetcher = params.proxyUrl ? (await import("./proxy-C9sq6M-h.js").then((n) => n.n)).makeProxyFetch(params.proxyUrl) : fetch;
85843
85855
  const { fetchWithTimeout } = await import("./fetch-timeout-BfPtlUW6.js").then((n) => n.r);
85844
85856
  const base = `${TELEGRAM_API_BASE$1}/bot${token}`;
85845
85857
  const groups = [];
@@ -88373,7 +88385,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
88373
88385
  let audioPreflightCarry;
88374
88386
  const audioConfigEnabled = cfg.tools?.media?.audio && cfg.tools.media.audio.enabled !== false;
88375
88387
  if (hasAudio && !hasUserText && !disableAudioPreflight && (isGroup && requireMention && mentionRegexes.length > 0 || audioConfigEnabled === true)) try {
88376
- const { transcribeFirstAudio } = await import("./audio-preflight-B_5sTSyb.js");
88388
+ const { transcribeFirstAudio } = await import("./audio-preflight-ifCgpG3c.js");
88377
88389
  const preflight = await transcribeFirstAudio({
88378
88390
  ctx: {
88379
88391
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -92783,7 +92795,7 @@ async function getMemorySearchManager(params) {
92783
92795
  if (cached) return { manager: cached };
92784
92796
  }
92785
92797
  try {
92786
- const { QmdMemoryManager } = await import("./qmd-manager-BwZ0V5fL.js");
92798
+ const { QmdMemoryManager } = await import("./qmd-manager-p036XU01.js");
92787
92799
  const primary = await QmdMemoryManager.create({
92788
92800
  cfg: params.cfg,
92789
92801
  agentId: params.agentId,
@@ -92795,7 +92807,7 @@ async function getMemorySearchManager(params) {
92795
92807
  const wrapper = new FallbackMemoryManager({
92796
92808
  primary,
92797
92809
  fallbackFactory: async () => {
92798
- const { MemoryIndexManager } = await import("./manager-DdA_cy40.js").then((n) => n.t);
92810
+ const { MemoryIndexManager } = await import("./manager-DH-MILAU.js").then((n) => n.t);
92799
92811
  return await MemoryIndexManager.get(params);
92800
92812
  }
92801
92813
  }, () => {
@@ -92810,7 +92822,7 @@ async function getMemorySearchManager(params) {
92810
92822
  }
92811
92823
  }
92812
92824
  try {
92813
- const { MemoryIndexManager } = await import("./manager-DdA_cy40.js").then((n) => n.t);
92825
+ const { MemoryIndexManager } = await import("./manager-DH-MILAU.js").then((n) => n.t);
92814
92826
  return { manager: await MemoryIndexManager.get(params) };
92815
92827
  } catch (err) {
92816
92828
  return {
@@ -93362,7 +93374,7 @@ async function withMemoryManagerForAgent(params) {
93362
93374
  }
93363
93375
  async function checkReadableFile(pathname) {
93364
93376
  try {
93365
- await fs.access(pathname, syncFs.constants.R_OK);
93377
+ await fs.access(pathname, fs$1.constants.R_OK);
93366
93378
  return { exists: true };
93367
93379
  } catch (err) {
93368
93380
  const code = err.code;
@@ -93421,7 +93433,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
93421
93433
  }
93422
93434
  let dirReadable = null;
93423
93435
  try {
93424
- await fs.access(memoryDir, syncFs.constants.R_OK);
93436
+ await fs.access(memoryDir, fs$1.constants.R_OK);
93425
93437
  dirReadable = true;
93426
93438
  } catch (err) {
93427
93439
  const code = err.code;
@@ -93868,7 +93880,7 @@ function createPluginRuntime(options = {}) {
93868
93880
  workStates: readTaskWorkStates
93869
93881
  },
93870
93882
  resolveLearningWorkspaceDir: (agentId) => resolveLearningWorkspaceDir(loadConfig(), agentId),
93871
- sessions: { startUserRun: async (params) => (await import("./user-run-recording-B0XAAUwL.js").then((n) => n.n)).startUserSessionRun(params) }
93883
+ sessions: { startUserRun: async (params) => (await import("./user-run-recording-CAk1Ketk.js").then((n) => n.n)).startUserSessionRun(params) }
93872
93884
  };
93873
93885
  Object.defineProperty(runtime, "analysis", {
93874
93886
  enumerable: true,
@@ -93911,7 +93923,7 @@ const resolvePluginSdkAliasFile = (params) => {
93911
93923
  const srcCandidate = path.join(cursor, "src", "plugin-sdk", params.srcFile);
93912
93924
  const distCandidate = path.join(cursor, "dist", "plugin-sdk", params.distFile);
93913
93925
  const orderedCandidates = isDistRuntime ? [distCandidate, srcCandidate] : isTest ? [distCandidate, srcCandidate] : [distCandidate];
93914
- for (const candidate of orderedCandidates) if (syncFs.existsSync(candidate)) return candidate;
93926
+ for (const candidate of orderedCandidates) if (fs$1.existsSync(candidate)) return candidate;
93915
93927
  const parent = path.dirname(cursor);
93916
93928
  if (parent === cursor) break;
93917
93929
  cursor = parent;
@@ -94454,7 +94466,7 @@ function loadOpenClawPlugins(options = {}) {
94454
94466
  continue;
94455
94467
  }
94456
94468
  const safeSource = opened.path;
94457
- syncFs.closeSync(opened.fd);
94469
+ fs$1.closeSync(opened.fd);
94458
94470
  let mod = null;
94459
94471
  try {
94460
94472
  mod = getJiti()(safeSource);
@@ -94614,7 +94626,7 @@ function loadOpenClawPlugins(options = {}) {
94614
94626
  }
94615
94627
  function safeRealpathOrResolve(value) {
94616
94628
  try {
94617
- return syncFs.realpathSync(value);
94629
+ return fs$1.realpathSync(value);
94618
94630
  } catch {
94619
94631
  return path.resolve(value);
94620
94632
  }
@@ -95076,9 +95088,9 @@ function resolvePatchFileOps(options) {
95076
95088
  });
95077
95089
  assertBoundaryRead(opened, filePath);
95078
95090
  try {
95079
- return syncFs.readFileSync(opened.fd, "utf8");
95091
+ return fs$1.readFileSync(opened.fd, "utf8");
95080
95092
  } finally {
95081
- syncFs.closeSync(opened.fd);
95093
+ fs$1.closeSync(opened.fd);
95082
95094
  }
95083
95095
  },
95084
95096
  writeFile: async (filePath, content) => {
@@ -95374,7 +95386,7 @@ async function recordLoopOutcome(args) {
95374
95386
  if (!args.ctx?.sessionKey) return;
95375
95387
  try {
95376
95388
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Bnyx-w0F.js").then((n) => n.n);
95377
- const { recordToolCallOutcome } = await import("./tool-loop-detection-C1fqyXXD.js");
95389
+ const { recordToolCallOutcome } = await import("./tool-loop-detection-8uvf8mSd.js");
95378
95390
  recordToolCallOutcome(getDiagnosticSessionState({
95379
95391
  sessionKey: args.ctx.sessionKey,
95380
95392
  sessionId: args.ctx?.agentId
@@ -95401,8 +95413,8 @@ async function runBeforeToolCallHook(args) {
95401
95413
  const params = args.params;
95402
95414
  if (args.ctx?.sessionKey) {
95403
95415
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Bnyx-w0F.js").then((n) => n.n);
95404
- const { logToolLoopAction } = await import("./diagnostic-Bbg-zObh.js").then((n) => n.n);
95405
- const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-C1fqyXXD.js");
95416
+ const { logToolLoopAction } = await import("./diagnostic-DI-K8155.js").then((n) => n.n);
95417
+ const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-8uvf8mSd.js");
95406
95418
  const sessionState = getDiagnosticSessionState({
95407
95419
  sessionKey: args.ctx.sessionKey,
95408
95420
  sessionId: args.ctx?.agentId
@@ -97822,9 +97834,9 @@ async function readWorkspaceContextForSummary() {
97822
97834
  if (!opened.ok) return "";
97823
97835
  const sections = extractSections((() => {
97824
97836
  try {
97825
- return syncFs.readFileSync(opened.fd, "utf-8");
97837
+ return fs$1.readFileSync(opened.fd, "utf-8");
97826
97838
  } finally {
97827
- syncFs.closeSync(opened.fd);
97839
+ fs$1.closeSync(opened.fd);
97828
97840
  }
97829
97841
  })(), ["Session Startup", "Red Lines"]);
97830
97842
  if (sections.length === 0) return "";
@@ -99657,7 +99669,7 @@ async function compactEmbeddedPiSessionDirect(params) {
99657
99669
  if (!apiKeyInfo.apiKey) {
99658
99670
  if (apiKeyInfo.mode !== "aws-sdk") throw new Error(`No API key resolved for provider "${model.provider}" (auth mode: ${apiKeyInfo.mode}).`);
99659
99671
  } else if (model.provider === "github-copilot") {
99660
- const { resolveCopilotApiToken } = await import("./github-copilot-token-zGOMIGSh.js").then((n) => n.n);
99672
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-WSjo05vB.js").then((n) => n.n);
99661
99673
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
99662
99674
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
99663
99675
  } else authStorage.setRuntimeApiKey(model.provider, apiKeyInfo.apiKey);
@@ -106702,7 +106714,7 @@ async function runEmbeddedPiAgent(params) {
106702
106714
  await copilotTokenState.refreshInFlight;
106703
106715
  return;
106704
106716
  }
106705
- const { resolveCopilotApiToken } = await import("./github-copilot-token-zGOMIGSh.js").then((n) => n.n);
106717
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-WSjo05vB.js").then((n) => n.n);
106706
106718
  copilotTokenState.refreshInFlight = (async () => {
106707
106719
  const githubToken = copilotTokenState.githubToken.trim();
106708
106720
  if (!githubToken) throw new Error("Copilot refresh requires a GitHub token.");
@@ -106794,7 +106806,7 @@ async function runEmbeddedPiAgent(params) {
106794
106806
  return;
106795
106807
  }
106796
106808
  if (model.provider === "github-copilot") {
106797
- const { resolveCopilotApiToken } = await import("./github-copilot-token-zGOMIGSh.js").then((n) => n.n);
106809
+ const { resolveCopilotApiToken } = await import("./github-copilot-token-WSjo05vB.js").then((n) => n.n);
106798
106810
  const copilotToken = await resolveCopilotApiToken({ githubToken: apiKeyInfo.apiKey });
106799
106811
  authStorage.setRuntimeApiKey(model.provider, copilotToken.token);
106800
106812
  if (copilotTokenState) {