openclaw-multi-auto 1.2.4 → 1.2.5

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 (289) hide show
  1. package/dist/{accounts-C_lW3Ag9.js → accounts-BOzyfwW4.js} +2 -2
  2. package/dist/{accounts-C9HcPI9h.js → accounts-L9ByEpnP.js} +2 -2
  3. package/dist/{accounts-Tgelvk0C.js → accounts-yfBeCZtS.js} +17 -17
  4. package/dist/{active-listener-BEdprTkn.js → active-listener-D1yqT1cw.js} +2 -2
  5. package/dist/{api-key-rotation-BJpKWXy0.js → api-key-rotation-DtsNS2Nb.js} +2 -2
  6. package/dist/{audio-preflight-5FEeDooz.js → audio-preflight-DDBLZBdb.js} +4 -4
  7. package/dist/{audio-preflight-BMvgEQ5j.js → audio-preflight-DoPfNXDz.js} +32 -32
  8. package/dist/{audio-transcription-runner-gLFfz8fr.js → audio-transcription-runner-CzjuH3uL.js} +12 -12
  9. package/dist/{audio-transcription-runner-B-UvoDjZ.js → audio-transcription-runner-DZbSWT9E.js} +1 -1
  10. package/dist/{audit-membership-runtime-Dntemq07.js → audit-membership-runtime-DWyHWAHM.js} +4 -4
  11. package/dist/build-info.json +3 -3
  12. package/dist/bundled/boot-md/handler.js +51 -51
  13. package/dist/bundled/bootstrap-extra-files/handler.js +6 -6
  14. package/dist/bundled/command-logger/handler.js +2 -2
  15. package/dist/bundled/session-memory/handler.js +51 -51
  16. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  17. package/dist/{channel-activity-BDnjYF7B.js → channel-activity-xHOMiarp.js} +3 -3
  18. package/dist/{chrome-D45SyhQL.js → chrome-CMU2WVFh.js} +8 -8
  19. package/dist/{chrome-DxxEKrY7.js → chrome-DlhJHqj8.js} +26 -26
  20. package/dist/{commands-registry-D5qXbFJn.js → commands-registry-V1zZ5pPC.js} +4 -4
  21. package/dist/{deliver-B9cys0EZ.js → deliver-BXVcFIHL.js} +1 -1
  22. package/dist/{deliver-DbdywYJE.js → deliver-CApVJA_l.js} +21 -21
  23. package/dist/deliver-runtime-D1z-h5eg.js +36 -0
  24. package/dist/{deliver-runtime-DhaQJ0pI.js → deliver-runtime-DTaIS-1i.js} +3 -3
  25. package/dist/deps-send-discord.runtime-DnbhTFX9.js +26 -0
  26. package/dist/deps-send-imessage.runtime-BOiQ6mDx.js +25 -0
  27. package/dist/deps-send-signal.runtime-CTcl388M.js +24 -0
  28. package/dist/deps-send-slack.runtime-CCqBz4Kg.js +22 -0
  29. package/dist/deps-send-telegram.runtime-DGSKTCpH.js +27 -0
  30. package/dist/{deps-send-whatsapp.runtime-DvTL2tzN.js → deps-send-whatsapp.runtime-CIZqFAqb.js} +7 -7
  31. package/dist/deps-send-whatsapp.runtime-Dz_4fi2D.js +60 -0
  32. package/dist/{diagnostic-Co6Kghr-.js → diagnostic-Bn4PZjMZ.js} +2 -2
  33. package/dist/{errors-xt401nuk.js → errors-CCLeFWAg.js} +1 -1
  34. package/dist/extensionAPI.js +6 -6
  35. package/dist/{fetch-DuraYswo.js → fetch-BlJWzEP6.js} +5 -5
  36. package/dist/{fetch-guard-DWr0d00H.js → fetch-guard-ChYBwfiy.js} +2 -2
  37. package/dist/{frontmatter-BkTfEZ93.js → frontmatter-CvaMP376.js} +3 -3
  38. package/dist/{fs-safe-CTYUrIgQ.js → fs-safe-0jAo_Whb.js} +4 -4
  39. package/dist/{github-copilot-token-BDioPmd6.js → github-copilot-token-D13V9YBz.js} +7 -7
  40. package/dist/{image-eT7Y-nP5.js → image-B3Mz7N5I.js} +6 -6
  41. package/dist/{image-DAOPwVXi.js → image-BCVLo0qw.js} +1 -1
  42. package/dist/{image-ops-BuUnEOE0.js → image-ops-CehkHxmW.js} +2 -2
  43. package/dist/image-runtime-DWjhow2W.js +29 -0
  44. package/dist/{image-runtime-wlCLVvVv.js → image-runtime-DtCKpMPZ.js} +3 -3
  45. package/dist/{ir-B83looB-.js → ir-DAP-B-Xw.js} +8 -8
  46. package/dist/{legacy-names-DOC03BkU.js → legacy-names-TyzbVqa_.js} +1 -1
  47. package/dist/llm-slug-generator.js +51 -51
  48. package/dist/{logger-BfjWMCSD.js → logger-DMZQQtxK.js} +7 -7
  49. package/dist/{login-CrIwcrVI.js → login-DiCctRo1.js} +5 -5
  50. package/dist/{login-qr-BpPDZdl_.js → login-qr-MUbXgjtd.js} +10 -10
  51. package/dist/{manager-1bvuGrNR.js → manager-BW_NSIMl.js} +13 -13
  52. package/dist/manager-runtime-BN6VevdC.js +18 -0
  53. package/dist/{model-selection-Dna0Gz1k.js → model-selection-idoqPmw0.js} +43 -43
  54. package/dist/{outbound-ChDjtuD6.js → outbound-C2kanETZ.js} +6 -6
  55. package/dist/{outbound-attachment-DqHlD21U.js → outbound-attachment-DBrYWX8h.js} +2 -2
  56. package/dist/{path-alias-guards-BzvdLvTI.js → path-alias-guards-DqXRZmsL.js} +1 -1
  57. package/dist/{paths-Cvc9EM8Y.js → paths-C6TxBCvO.js} +5 -5
  58. package/dist/{paths-Bkr-BCxW.js → paths-CCxysrzL.js} +4 -4
  59. package/dist/{pi-embedded-DYU79yGe.js → pi-embedded-CgQ_W6Xs.js} +24 -24
  60. package/dist/{pi-embedded-BQQa91aA.js → pi-embedded-bcjMe3wj.js} +167 -167
  61. package/dist/{pi-embedded-helpers-uTRAmQ4n.js → pi-embedded-helpers-CwuBTKza.js} +3 -3
  62. package/dist/{pi-embedded-helpers-CLXm10bV.js → pi-embedded-helpers-D5yyGEvA.js} +52 -52
  63. package/dist/pi-model-discovery-BGgOlX8N.js +134 -0
  64. package/dist/pi-model-discovery-runtime-Bwmi4Ev8.js +11 -0
  65. package/dist/{pi-tools.before-tool-call.runtime-Cwab_5W1.js → pi-tools.before-tool-call.runtime-BuLxSyx9.js} +9 -9
  66. package/dist/plugin-sdk/{accounts-DyFCXtHv.js → accounts-BslAlVYS.js} +2 -2
  67. package/dist/plugin-sdk/{accounts-BJAXxY46.js → accounts-C3m65--E.js} +2 -2
  68. package/dist/plugin-sdk/accounts-CJWOBzwB.js +35 -0
  69. package/dist/plugin-sdk/{accounts-C1j7HSL0.js → accounts-CNCCkdEF.js} +3 -3
  70. package/dist/plugin-sdk/accounts-DP1-L-QS.js +288 -0
  71. package/dist/plugin-sdk/accounts-DZhWlEg3.js +46 -0
  72. package/dist/plugin-sdk/{active-listener-CftX5jLD.js → active-listener-B_sLJTXM.js} +2 -2
  73. package/dist/plugin-sdk/active-listener-CkPnMUkB.js +50 -0
  74. package/dist/plugin-sdk/{api-key-rotation-8nyyt1kx.js → api-key-rotation-BRE4X2tf.js} +2 -2
  75. package/dist/plugin-sdk/api-key-rotation-BXnNsojA.js +181 -0
  76. package/dist/plugin-sdk/{audio-preflight-C_aSAPR1.js → audio-preflight-CtO4fFvp.js} +26 -26
  77. package/dist/plugin-sdk/audio-preflight-DGEUDxxR.js +69 -0
  78. package/dist/plugin-sdk/audio-transcription-runner-DkoPNPYt.js +2176 -0
  79. package/dist/plugin-sdk/{audio-transcription-runner-CB53F7_7.js → audio-transcription-runner-DnxvOS1-.js} +11 -11
  80. package/dist/plugin-sdk/{audit-membership-runtime-BXndI4LG.js → audit-membership-runtime-BpfoSk8M.js} +2 -2
  81. package/dist/plugin-sdk/audit-membership-runtime-DSBHHw7o.js +58 -0
  82. package/dist/plugin-sdk/channel-activity-F3d0yUwy.js +94 -0
  83. package/dist/plugin-sdk/{channel-activity-C5y8AgAV.js → channel-activity-WJYxcJ3S.js} +3 -3
  84. package/dist/plugin-sdk/channel-web-QF7EpjeP.js +2256 -0
  85. package/dist/plugin-sdk/{channel-web-DBTRO03V.js → channel-web-dO5k3ubM.js} +18 -18
  86. package/dist/plugin-sdk/chrome-BXoCyCkY.js +2415 -0
  87. package/dist/plugin-sdk/{chrome-f00sZkDX.js → chrome-CjNTuJML.js} +6 -6
  88. package/dist/plugin-sdk/{commands-registry-BJ_NxG2F.js → commands-registry-CdYjoI0i.js} +4 -4
  89. package/dist/plugin-sdk/commands-registry-t7cXBTfN.js +1125 -0
  90. package/dist/plugin-sdk/{common-Cf27Jwxu.js → common-oYc5vPFl.js} +2 -2
  91. package/dist/plugin-sdk/{config-CHQrpx-Q.js → config-B1z-UxQ3.js} +7 -7
  92. package/dist/plugin-sdk/config-BkEnz2Po.js +17913 -0
  93. package/dist/plugin-sdk/deliver-B6AG_l67.js +1694 -0
  94. package/dist/plugin-sdk/{deliver-DNEuetST.js → deliver-D5_6T567.js} +10 -10
  95. package/dist/plugin-sdk/deliver-runtime-C5dgvvga.js +32 -0
  96. package/dist/plugin-sdk/deliver-runtime-D585kJZc.js +32 -0
  97. package/dist/plugin-sdk/deps-send-discord.runtime-Dg4N7PHJ.js +23 -0
  98. package/dist/plugin-sdk/deps-send-discord.runtime-a_OKY2js.js +23 -0
  99. package/dist/plugin-sdk/deps-send-imessage.runtime-0OEwzMQm.js +22 -0
  100. package/dist/plugin-sdk/deps-send-imessage.runtime-Baxy9TD4.js +22 -0
  101. package/dist/plugin-sdk/deps-send-signal.runtime-BM1jRt3G.js +21 -0
  102. package/dist/plugin-sdk/deps-send-signal.runtime-BwXoCrFl.js +21 -0
  103. package/dist/plugin-sdk/deps-send-slack.runtime-1E3BYRdF.js +19 -0
  104. package/dist/plugin-sdk/deps-send-slack.runtime-CLmKjgso.js +19 -0
  105. package/dist/plugin-sdk/deps-send-telegram.runtime-BKfdBKnZ.js +24 -0
  106. package/dist/plugin-sdk/deps-send-telegram.runtime-DNCxIflA.js +24 -0
  107. package/dist/plugin-sdk/deps-send-whatsapp.runtime-BOTwkbx_.js +57 -0
  108. package/dist/plugin-sdk/deps-send-whatsapp.runtime-OLwr-9c8.js +57 -0
  109. package/dist/plugin-sdk/{diagnostic-LYUUmjJ5.js → diagnostic-Bxxu0ig-.js} +2 -2
  110. package/dist/plugin-sdk/diagnostic-CsP-lEkI.js +319 -0
  111. package/dist/plugin-sdk/{errors-CtMWwS2Z.js → errors-B3cHyZZA.js} +1 -1
  112. package/dist/plugin-sdk/errors-DaiAM-yU.js +54 -0
  113. package/dist/plugin-sdk/fetch-guard-DETCcJzQ.js +156 -0
  114. package/dist/plugin-sdk/{fetch-guard-CxYB5Kg6.js → fetch-guard-Dcgod0tg.js} +2 -2
  115. package/dist/plugin-sdk/fs-safe-B8y811FR.js +352 -0
  116. package/dist/plugin-sdk/{fs-safe-DtfhxbrI.js → fs-safe-BaKqI3G4.js} +3 -3
  117. package/dist/plugin-sdk/{image-BwjYjRHx.js → image-B2mQW9Rb.js} +6 -6
  118. package/dist/plugin-sdk/image-DjTEkYZE.js +2310 -0
  119. package/dist/plugin-sdk/image-ops-BSiMpAw4.js +584 -0
  120. package/dist/plugin-sdk/{image-ops-BnZKcbd6.js → image-ops-Cbzr4U9l.js} +2 -2
  121. package/dist/plugin-sdk/image-runtime-6xPp8m5a.js +25 -0
  122. package/dist/plugin-sdk/image-runtime-BFm45j49.js +25 -0
  123. package/dist/plugin-sdk/index.js +50 -50
  124. package/dist/plugin-sdk/ir-DQ7_HbvK.js +1296 -0
  125. package/dist/plugin-sdk/{ir-Z4hX67TJ.js → ir-ZEmrTr4J.js} +7 -7
  126. package/dist/plugin-sdk/local-roots-BUP4YBmR.js +186 -0
  127. package/dist/plugin-sdk/{local-roots-KhjQw04O.js → local-roots-CIPRxA-4.js} +4 -4
  128. package/dist/plugin-sdk/logger-CZY9KIoY.js +1163 -0
  129. package/dist/plugin-sdk/{logger-DHIIvMxj.js → logger-CvPFVOgT.js} +2 -2
  130. package/dist/plugin-sdk/login-BxEKLlCo.js +57 -0
  131. package/dist/plugin-sdk/{login-C31642Ld.js → login-CCTew9bt.js} +4 -4
  132. package/dist/plugin-sdk/{login-qr--y2SG_Ue.js → login-qr-BI3Vi_wJ.js} +5 -5
  133. package/dist/plugin-sdk/login-qr-BQIpMPr9.js +320 -0
  134. package/dist/plugin-sdk/{manager-2UZBMCc7.js → manager-BEoYPn7R.js} +8 -8
  135. package/dist/plugin-sdk/manager-I6KbPihW.js +3917 -0
  136. package/dist/plugin-sdk/manager-runtime-CFfYYWIQ.js +15 -0
  137. package/dist/plugin-sdk/manager-runtime-DxclHQ4U.js +15 -0
  138. package/dist/plugin-sdk/mattermost.js +3 -3
  139. package/dist/plugin-sdk/{outbound-Ba0QUI5h.js → outbound-ByOw1K6W.js} +5 -5
  140. package/dist/plugin-sdk/outbound-NS6UHnB6.js +212 -0
  141. package/dist/plugin-sdk/{outbound-attachment-B1Laso-8.js → outbound-attachment-BzVhxRRw.js} +2 -2
  142. package/dist/plugin-sdk/outbound-attachment-Dy6fyf6H.js +19 -0
  143. package/dist/plugin-sdk/{path-alias-guards-C7Vm5DZ1.js → path-alias-guards-DBjLbIX_.js} +1 -1
  144. package/dist/plugin-sdk/path-alias-guards-sWayacde.js +43 -0
  145. package/dist/plugin-sdk/{paths-DopV9PQG.js → paths-Dpg3qxcl.js} +1 -1
  146. package/dist/plugin-sdk/paths-vTM3Lh3X.js +166 -0
  147. package/dist/plugin-sdk/pi-embedded-helpers-1R1gu7eX.js +9627 -0
  148. package/dist/plugin-sdk/{pi-embedded-helpers-DnA_OCzP.js → pi-embedded-helpers-DIxXkGJf.js} +16 -16
  149. package/dist/plugin-sdk/{pi-model-discovery-DdPqXk8f.js → pi-model-discovery-DM_2uFtj.js} +1 -1
  150. package/dist/plugin-sdk/pi-model-discovery-runtime-BuzvkvNR.js +8 -0
  151. package/dist/plugin-sdk/pi-model-discovery-runtime-Do9o-dUd.js +8 -0
  152. package/dist/{pi-model-discovery-Dymwdjt0.js → plugin-sdk/pi-model-discovery-v-XPUOOf.js} +2 -2
  153. package/dist/plugin-sdk/pi-tools.before-tool-call.runtime-D4sFsIks.js +354 -0
  154. package/dist/plugin-sdk/{pi-tools.before-tool-call.runtime-DxFHiLUE.js → pi-tools.before-tool-call.runtime-w1dqL_ty.js} +4 -4
  155. package/dist/plugin-sdk/{plugins-CbCt4osF.js → plugins-C4USiH29.js} +4 -4
  156. package/dist/plugin-sdk/plugins-DeBZB9l_.js +864 -0
  157. package/dist/plugin-sdk/{proxy-env-C63mMdas.js → proxy-env-ET-rp8eg.js} +1 -1
  158. package/dist/plugin-sdk/{proxy-fetch-Ch95c_Y2.js → proxy-fetch-ChxOhWF4.js} +1 -1
  159. package/dist/{proxy-fetch-B2pEfjbR.js → plugin-sdk/proxy-fetch-uDXGKG3Z.js} +1 -1
  160. package/dist/plugin-sdk/{pw-ai-DpJk62D4.js → pw-ai-CyOt3RDA.js} +9 -9
  161. package/dist/plugin-sdk/pw-ai-DEOmCSSC.js +1938 -0
  162. package/dist/plugin-sdk/{qmd-manager-Ca-iSfEE.js → qmd-manager-BySdoVR7.js} +7 -7
  163. package/dist/plugin-sdk/qmd-manager-HyYKoEch.js +1448 -0
  164. package/dist/plugin-sdk/{query-expansion-B_Xe41Ab.js → query-expansion-C6uS-7lj.js} +4 -4
  165. package/dist/plugin-sdk/query-expansion-CeyKUeDW.js +1011 -0
  166. package/dist/plugin-sdk/{redact-hp9TOulW.js → redact-Bvxt1T_Q.js} +1 -1
  167. package/dist/{redact-COik8ET1.js → plugin-sdk/redact-DjVX-1N3.js} +1 -1
  168. package/dist/plugin-sdk/{reply-CovBlFea.js → reply-CTCSeQqW.js} +73 -73
  169. package/dist/plugin-sdk/reply-DAo_Jt8K.js +97916 -0
  170. package/dist/plugin-sdk/resolve-outbound-target-B42qgQS9.js +40 -0
  171. package/dist/plugin-sdk/{resolve-outbound-target-BbrHgyUk.js → resolve-outbound-target-Bw8YNANu.js} +2 -2
  172. package/dist/plugin-sdk/run-with-concurrency-Bt_ks0Qa.js +1994 -0
  173. package/dist/plugin-sdk/{run-with-concurrency-BR1DXa8T.js → run-with-concurrency-C_KCHwvf.js} +1 -1
  174. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-B6W989eF.js +10 -0
  175. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-BxgRDkhc.js +10 -0
  176. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-c_GDFy37.js +19 -0
  177. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-elOqrkfg.js +19 -0
  178. package/dist/plugin-sdk/{send-BvAtLLPl.js → send-BZ6nYFZr.js} +5 -5
  179. package/dist/plugin-sdk/{send-BTztm3D2.js → send-C0w6xP2x.js} +6 -6
  180. package/dist/plugin-sdk/{send-CWJUuG0i.js → send-CFf-1V89.js} +8 -8
  181. package/dist/plugin-sdk/send-CQpMudwO.js +2587 -0
  182. package/dist/plugin-sdk/{send-EcglC4cG.js → send-CY-Qfwia.js} +7 -7
  183. package/dist/plugin-sdk/send-DQHLzVyO.js +414 -0
  184. package/dist/plugin-sdk/send-DTB24bEF.js +3135 -0
  185. package/dist/plugin-sdk/send-DfHadjZ_.js +503 -0
  186. package/dist/plugin-sdk/send-XXlW2iny.js +540 -0
  187. package/dist/plugin-sdk/{send-BXpXBwM_.js → send-qPyNGSe4.js} +13 -13
  188. package/dist/plugin-sdk/session-6TF6MyaC.js +169 -0
  189. package/dist/plugin-sdk/{session-k256LJZT.js → session-COrvpvUQ.js} +3 -3
  190. package/dist/plugin-sdk/skill-commands-CkGeFUMl.js +342 -0
  191. package/dist/plugin-sdk/{skill-commands-DoRqLzxm.js → skill-commands-DZqhtmiv.js} +4 -4
  192. package/dist/plugin-sdk/skills-CBkHBYPq.js +1428 -0
  193. package/dist/plugin-sdk/{skills-QudILG6e.js → skills-Cw_vXEJb.js} +6 -6
  194. package/dist/plugin-sdk/slash-commands.runtime-CxliuGaP.js +13 -0
  195. package/dist/plugin-sdk/slash-commands.runtime-D67JLweo.js +13 -0
  196. package/dist/plugin-sdk/slash-dispatch.runtime-DFaeYlJQ.js +52 -0
  197. package/dist/plugin-sdk/slash-dispatch.runtime-DvcpvCJ0.js +52 -0
  198. package/dist/plugin-sdk/slash-skill-commands.runtime-0M0OLCxq.js +16 -0
  199. package/dist/plugin-sdk/slash-skill-commands.runtime-BM1x3azR.js +16 -0
  200. package/dist/plugin-sdk/ssrf-cFtplYtS.js +202 -0
  201. package/dist/plugin-sdk/store-5nyxY3WU.js +81 -0
  202. package/dist/plugin-sdk/{store-BbDQw3g6.js → store-CMHj6IIw.js} +2 -2
  203. package/dist/plugin-sdk/subagent-registry-runtime-1lbDyRzz.js +52 -0
  204. package/dist/plugin-sdk/subagent-registry-runtime-DCtmDwna.js +52 -0
  205. package/dist/plugin-sdk/tables-C47P4GTN.js +55 -0
  206. package/dist/plugin-sdk/{tables-BhvloMKN.js → tables-CSqrHsKL.js} +1 -1
  207. package/dist/{target-errors-mnlwhAjP.js → plugin-sdk/target-errors-Blia4S69.js} +2 -2
  208. package/dist/plugin-sdk/thinking-Bo2eosVa.js +1206 -0
  209. package/dist/plugin-sdk/{thinking-URzkT-3p.js → thinking-DOnsR_A8.js} +7 -7
  210. package/dist/plugin-sdk/{tokens-B1PW5Ayy.js → tokens-BDr0Z9o3.js} +1 -1
  211. package/dist/{tokens-q32vI39c.js → plugin-sdk/tokens-DgNRBwIg.js} +1 -1
  212. package/dist/plugin-sdk/{tool-images-xpqbP6RR.js → tool-images-Gk_-0y2N.js} +2 -2
  213. package/dist/plugin-sdk/tool-images-eEfOVkzf.js +274 -0
  214. package/dist/plugin-sdk/web-BLyT64pW.js +56 -0
  215. package/dist/plugin-sdk/web-CVxZbXyH.js +56 -0
  216. package/dist/plugin-sdk/whatsapp-actions-Bw0H9g-n.js +80 -0
  217. package/dist/plugin-sdk/{whatsapp-actions-RcZ6vp61.js → whatsapp-actions-xcleMoMv.js} +17 -17
  218. package/dist/plugin-sdk/whatsapp.js +50 -50
  219. package/dist/{plugins-4Rj4OjLY.js → plugins-CWkRQYDj.js} +11 -11
  220. package/dist/{proxy-env-DlmzDx8x.js → proxy-env-Cq5gdrbj.js} +1 -1
  221. package/dist/proxy-fetch-CCjEYbFm.js +38 -0
  222. package/dist/{pw-ai-DNMjFMqH.js → pw-ai-CDQDCfUa.js} +14 -14
  223. package/dist/{pw-ai-GcYO6HPE.js → pw-ai-CmphSzHx.js} +1 -1
  224. package/dist/{qmd-manager-BtIKUaO9.js → qmd-manager-BsYsO9Ii.js} +10 -10
  225. package/dist/{query-expansion-CX-1fS52.js → query-expansion-DtLc3wjL.js} +6 -6
  226. package/dist/redact-ClbcYG1J.js +319 -0
  227. package/dist/{run-with-concurrency-BgYfgkXT.js → run-with-concurrency-D_ZpbgEG.js} +4 -4
  228. package/dist/runtime-whatsapp-login.runtime-IeylZEl4.js +13 -0
  229. package/dist/runtime-whatsapp-outbound.runtime-ClBRuLsq.js +22 -0
  230. package/dist/{send-dfu6_rgf.js → send-BQERFNyo.js} +5 -5
  231. package/dist/{send-L7gRiwyd.js → send-Bj776ESJ.js} +7 -7
  232. package/dist/{send-PE6cwoTe.js → send-DcxmcFi_.js} +8 -8
  233. package/dist/{send-6lz6rNVP.js → send-Dx2RkUOZ.js} +6 -6
  234. package/dist/{send-BHTiZcH3.js → send-vmONuVgL.js} +26 -26
  235. package/dist/{session-D8ImowSs.js → session-A4QhBRvH.js} +8 -8
  236. package/dist/{skill-commands-DNqJ-kwn.js → skill-commands-CMzBZKG2.js} +9 -9
  237. package/dist/{skills-7ODkHQYp.js → skills-CE_iqvM5.js} +22 -22
  238. package/dist/slash-commands.runtime-Cpn2tYW4.js +16 -0
  239. package/dist/{slash-dispatch.runtime-Dh053pQK.js → slash-dispatch.runtime-131yup2e.js} +6 -6
  240. package/dist/slash-dispatch.runtime-CWbpp23S.js +56 -0
  241. package/dist/slash-skill-commands.runtime-DKMvvdDW.js +20 -0
  242. package/dist/{store-D89wDcz9.js → store--eR1R_UX.js} +2 -2
  243. package/dist/subagent-registry-runtime-DEVpAaAP.js +56 -0
  244. package/dist/{subagent-registry-runtime-DSi5mnCQ.js → subagent-registry-runtime-DbSf_Je6.js} +6 -6
  245. package/dist/{subsystem-B45WV3qB.js → subsystem-Di1z8l0Z.js} +14 -14
  246. package/dist/{tables-mE4cJBN2.js → tables-d739Y1xW.js} +1 -1
  247. package/dist/target-errors-CBI2Ga0y.js +195 -0
  248. package/dist/{thinking-BeGmb5k6.js → thinking-DXYisHiZ.js} +7 -7
  249. package/dist/tokens-DxnY9ui_.js +52 -0
  250. package/dist/{tool-images-RZdHiZcG.js → tool-images-2cBx1W8h.js} +2 -2
  251. package/dist/{web-1hWJDzNA.js → web-MR9d7KyB.js} +6 -6
  252. package/dist/{web-Btj-e8kN.js → web-NWKn8ABz.js} +55 -55
  253. package/dist/{whatsapp-actions-BHbJJyqw.js → whatsapp-actions-iEArE_Ez.js} +21 -21
  254. package/dist/{workspace-U-DyR64O.js → workspace-CUVC6GX1.js} +20 -20
  255. package/package.json +1 -1
  256. package/scripts/create-instance.sh +142 -92
  257. package/dist/deliver-runtime-BFs7iAZF.js +0 -36
  258. package/dist/deps-send-discord.runtime-DZUccI6Z.js +0 -26
  259. package/dist/deps-send-imessage.runtime-CF3OpoqY.js +0 -25
  260. package/dist/deps-send-signal.runtime-Cw4-ozeO.js +0 -24
  261. package/dist/deps-send-slack.runtime-BDsDhS1P.js +0 -22
  262. package/dist/deps-send-telegram.runtime-D_4xVasO.js +0 -27
  263. package/dist/deps-send-whatsapp.runtime-DK8jqd14.js +0 -60
  264. package/dist/image-runtime-BcAK3n8a.js +0 -29
  265. package/dist/manager-runtime-FO1Sx3W8.js +0 -18
  266. package/dist/pi-model-discovery-runtime-BeY4EUPp.js +0 -11
  267. package/dist/plugin-sdk/deliver-runtime-BFdqklJM.js +0 -32
  268. package/dist/plugin-sdk/deps-send-discord.runtime-DuqpYwU0.js +0 -23
  269. package/dist/plugin-sdk/deps-send-imessage.runtime-CZ2rS8Lb.js +0 -22
  270. package/dist/plugin-sdk/deps-send-signal.runtime-BdqiWhIh.js +0 -21
  271. package/dist/plugin-sdk/deps-send-slack.runtime-04s36qiC.js +0 -19
  272. package/dist/plugin-sdk/deps-send-telegram.runtime-LE5tkPvr.js +0 -24
  273. package/dist/plugin-sdk/deps-send-whatsapp.runtime-Bz57lobC.js +0 -57
  274. package/dist/plugin-sdk/image-runtime-B8twoubs.js +0 -25
  275. package/dist/plugin-sdk/manager-runtime-CMeLwose.js +0 -15
  276. package/dist/plugin-sdk/pi-model-discovery-runtime-D8CJhtJY.js +0 -8
  277. package/dist/plugin-sdk/runtime-whatsapp-login.runtime-SkO91TZH.js +0 -10
  278. package/dist/plugin-sdk/runtime-whatsapp-outbound.runtime-B0VWK5hm.js +0 -19
  279. package/dist/plugin-sdk/slash-commands.runtime-DS6vCNSL.js +0 -13
  280. package/dist/plugin-sdk/slash-dispatch.runtime-BXrxb2wd.js +0 -52
  281. package/dist/plugin-sdk/slash-skill-commands.runtime-Bd6qQ2oT.js +0 -16
  282. package/dist/plugin-sdk/subagent-registry-runtime-1uwQbuXj.js +0 -52
  283. package/dist/plugin-sdk/web-B74yhL2N.js +0 -56
  284. package/dist/runtime-whatsapp-login.runtime-DUb55byQ.js +0 -13
  285. package/dist/runtime-whatsapp-outbound.runtime-Bii_xSfI.js +0 -22
  286. package/dist/slash-commands.runtime-CVw6566g.js +0 -16
  287. package/dist/slash-dispatch.runtime-B9Ygtzi4.js +0 -56
  288. package/dist/slash-skill-commands.runtime-DxZ4z5h6.js +0 -20
  289. package/dist/subagent-registry-runtime-DL1Wv7nA.js +0 -56
@@ -1,16 +1,16 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { _ as toAgentModelListLike, c as resolveAgentWorkspaceDir, g as resolveAgentModelPrimaryValue, i as resolveAgentConfig, l as resolveDefaultAgentId, o as resolveAgentEffectiveModelPrimary, t as runTasksWithConcurrency } from "./run-with-concurrency-BgYfgkXT.js";
3
- import { c as resolveStateDir, d as resolveRequiredHomeDir, i as resolveDefaultConfigCandidates, l as expandHomePrefix, r as resolveConfigPath, s as resolveOAuthPath, t as DEFAULT_GATEWAY_PORT } from "./paths-Cvc9EM8Y.js";
4
- import { n as stripAnsi, t as createSubsystemLogger, u as logVerbose } from "./subsystem-B45WV3qB.js";
5
- import { O as isPathInside$2, R as normalizeAgentId, _ as runExec, j as DEFAULT_AGENT_ID, q as isBlockedObjectKey, x as openBoundaryFileSync, y as canUseBoundaryFileOpen } from "./workspace-U-DyR64O.js";
6
- import { C as sleep, D as isPlainObject$2, _ as resolveConfigDir, f as isRecord$3, y as resolveUserPath } from "./logger-BfjWMCSD.js";
7
- import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-BDioPmd6.js";
8
- import { c as parseBooleanValue, n as MANIFEST_KEY, o as registerInternalHook } from "./legacy-names-DOC03BkU.js";
2
+ import { _ as toAgentModelListLike, c as resolveAgentWorkspaceDir, g as resolveAgentModelPrimaryValue, i as resolveAgentConfig, l as resolveDefaultAgentId, o as resolveAgentEffectiveModelPrimary, t as runTasksWithConcurrency } from "./run-with-concurrency-D_ZpbgEG.js";
3
+ import { c as resolveStateDir, d as resolveRequiredHomeDir, i as resolveDefaultConfigCandidates, l as expandHomePrefix, r as resolveConfigPath, s as resolveOAuthPath, t as DEFAULT_GATEWAY_PORT } from "./paths-C6TxBCvO.js";
4
+ import { n as stripAnsi, t as createSubsystemLogger, u as logVerbose } from "./subsystem-Di1z8l0Z.js";
5
+ import { O as isPathInside$2, R as normalizeAgentId, _ as runExec, j as DEFAULT_AGENT_ID, q as isBlockedObjectKey, x as openBoundaryFileSync, y as canUseBoundaryFileOpen } from "./workspace-CUVC6GX1.js";
6
+ import { C as sleep, D as isPlainObject$2, _ as resolveConfigDir, f as isRecord$3, y as resolveUserPath } from "./logger-DMZQQtxK.js";
7
+ import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-D13V9YBz.js";
8
+ import { c as parseBooleanValue, n as MANIFEST_KEY, o as registerInternalHook } from "./legacy-names-TyzbVqa_.js";
9
9
  import { createRequire } from "node:module";
10
10
  import fs from "node:fs/promises";
11
11
  import os from "node:os";
12
12
  import path from "node:path";
13
- import fs$1 from "node:fs";
13
+ import syncFs from "node:fs";
14
14
  import JSON5 from "json5";
15
15
  import { isDeepStrictEqual } from "node:util";
16
16
  import { execFileSync, spawn } from "node:child_process";
@@ -321,7 +321,7 @@ function isValidPid(pid) {
321
321
  function isZombieProcess(pid) {
322
322
  if (process.platform !== "linux") return false;
323
323
  try {
324
- return fs$1.readFileSync(`/proc/${pid}/status`, "utf8").match(/^State:\s+(\S)/m)?.[1] === "Z";
324
+ return syncFs.readFileSync(`/proc/${pid}/status`, "utf8").match(/^State:\s+(\S)/m)?.[1] === "Z";
325
325
  } catch {
326
326
  return false;
327
327
  }
@@ -348,7 +348,7 @@ function getProcessStartTime(pid) {
348
348
  if (process.platform !== "linux") return null;
349
349
  if (!isValidPid(pid)) return null;
350
350
  try {
351
- const stat = fs$1.readFileSync(`/proc/${pid}/stat`, "utf8");
351
+ const stat = syncFs.readFileSync(`/proc/${pid}/stat`, "utf8");
352
352
  const commEndIndex = stat.lastIndexOf(")");
353
353
  if (commEndIndex < 0) return null;
354
354
  const fields = stat.slice(commEndIndex + 1).trimStart().split(/\s+/);
@@ -617,7 +617,7 @@ function resolveAuthStorePathForDisplay(agentDir) {
617
617
  return pathname.startsWith("~") ? pathname : resolveUserPath(pathname);
618
618
  }
619
619
  function ensureAuthStoreFile(pathname) {
620
- if (fs$1.existsSync(pathname)) return;
620
+ if (syncFs.existsSync(pathname)) return;
621
621
  saveJsonFile(pathname, {
622
622
  version: AUTH_STORE_VERSION,
623
623
  profiles: {}
@@ -879,7 +879,7 @@ function loadAuthProfileStoreForAgent(agentDir, options) {
879
879
  if (shouldWrite && legacy !== null) {
880
880
  const legacyPath = resolveLegacyAuthStorePath(agentDir);
881
881
  try {
882
- fs$1.unlinkSync(legacyPath);
882
+ syncFs.unlinkSync(legacyPath);
883
883
  } catch (err) {
884
884
  if (err?.code !== "ENOENT") log$8.warn("failed to delete legacy auth.json after migration", {
885
885
  err,
@@ -1067,7 +1067,7 @@ function loadDotEnv(opts) {
1067
1067
  const quiet = opts?.quiet ?? true;
1068
1068
  dotenv.config({ quiet });
1069
1069
  const globalEnvPath = path.join(resolveConfigDir(process.env), ".env");
1070
- if (!fs$1.existsSync(globalEnvPath)) return;
1070
+ if (!syncFs.existsSync(globalEnvPath)) return;
1071
1071
  dotenv.config({
1072
1072
  quiet,
1073
1073
  path: globalEnvPath,
@@ -1197,7 +1197,7 @@ function resolveTimeoutMs(timeoutMs) {
1197
1197
  function readEtcShells() {
1198
1198
  if (cachedEtcShells !== void 0) return cachedEtcShells;
1199
1199
  try {
1200
- const entries = fs$1.readFileSync("/etc/shells", "utf8").split(/\r?\n/).map((line) => line.trim()).filter((line) => line.length > 0 && !line.startsWith("#") && path.isAbsolute(line));
1200
+ const entries = syncFs.readFileSync("/etc/shells", "utf8").split(/\r?\n/).map((line) => line.trim()).filter((line) => line.length > 0 && !line.startsWith("#") && path.isAbsolute(line));
1201
1201
  cachedEtcShells = new Set(entries);
1202
1202
  } catch {
1203
1203
  cachedEtcShells = null;
@@ -1674,7 +1674,7 @@ function resolveActiveTalkProviderConfig(talk) {
1674
1674
  };
1675
1675
  }
1676
1676
  function readTalkApiKeyFromProfile(deps = {}) {
1677
- const fsImpl = deps.fs ?? fs$1;
1677
+ const fsImpl = deps.fs ?? syncFs;
1678
1678
  const osImpl = deps.os ?? os;
1679
1679
  const pathImpl = deps.path ?? path;
1680
1680
  const home = osImpl.homedir();
@@ -2310,7 +2310,7 @@ function isPathInside$1(basePath, candidatePath) {
2310
2310
  }
2311
2311
  function safeRealpathSync$1(filePath) {
2312
2312
  try {
2313
- return fs$1.realpathSync(filePath);
2313
+ return syncFs.realpathSync(filePath);
2314
2314
  } catch {
2315
2315
  return null;
2316
2316
  }
@@ -2420,7 +2420,7 @@ var IncludeProcessor = class IncludeProcessor {
2420
2420
  const normalized = path.normalize(resolved);
2421
2421
  if (!isPathInside$1(this.rootDir, normalized)) throw new ConfigIncludeError(`Include path escapes config directory: ${includePath} (root: ${this.rootDir})`, includePath);
2422
2422
  try {
2423
- const real = fs$1.realpathSync(normalized);
2423
+ const real = syncFs.realpathSync(normalized);
2424
2424
  if (!isPathInside$1(this.rootRealDir, real)) throw new ConfigIncludeError(`Include path resolves outside config directory (symlink): ${includePath} (root: ${this.rootDir})`, includePath);
2425
2425
  } catch (err) {
2426
2426
  if (err instanceof ConfigIncludeError) throw err;
@@ -2462,13 +2462,13 @@ var IncludeProcessor = class IncludeProcessor {
2462
2462
  };
2463
2463
  function safeRealpath(target) {
2464
2464
  try {
2465
- return fs$1.realpathSync(target);
2465
+ return syncFs.realpathSync(target);
2466
2466
  } catch {
2467
2467
  return target;
2468
2468
  }
2469
2469
  }
2470
2470
  function readConfigIncludeFileWithGuards(params) {
2471
- const ioFs = params.ioFs ?? fs$1;
2471
+ const ioFs = params.ioFs ?? syncFs;
2472
2472
  const maxBytes = params.maxBytes ?? MAX_INCLUDE_FILE_BYTES;
2473
2473
  if (!canUseBoundaryFileOpen(ioFs)) return ioFs.readFileSync(params.resolvedPath, "utf-8");
2474
2474
  const opened = openBoundaryFileSync({
@@ -2491,7 +2491,7 @@ function readConfigIncludeFileWithGuards(params) {
2491
2491
  }
2492
2492
  }
2493
2493
  const defaultResolver = {
2494
- readFile: (p) => fs$1.readFileSync(p, "utf-8"),
2494
+ readFile: (p) => syncFs.readFileSync(p, "utf-8"),
2495
2495
  readFileWithGuards: ({ includePath, resolvedPath, rootRealDir }) => readConfigIncludeFileWithGuards({
2496
2496
  includePath,
2497
2497
  resolvedPath,
@@ -4144,7 +4144,7 @@ function normalizeMatchTarget(value) {
4144
4144
  }
4145
4145
  function tryRealpath(value) {
4146
4146
  try {
4147
- return fs$1.realpathSync(value);
4147
+ return syncFs.realpathSync(value);
4148
4148
  } catch {
4149
4149
  return null;
4150
4150
  }
@@ -4697,8 +4697,8 @@ function resolveWindowsExecutableExtensions(executable, env) {
4697
4697
  }
4698
4698
  function isExecutableFile(filePath) {
4699
4699
  try {
4700
- if (!fs$1.statSync(filePath).isFile()) return false;
4701
- if (process.platform !== "win32") fs$1.accessSync(filePath, fs$1.constants.X_OK);
4700
+ if (!syncFs.statSync(filePath).isFile()) return false;
4701
+ if (process.platform !== "win32") syncFs.accessSync(filePath, syncFs.constants.X_OK);
4702
4702
  return true;
4703
4703
  } catch {
4704
4704
  return false;
@@ -4737,7 +4737,7 @@ const DEFAULT_SAFE_BINS = [
4737
4737
  function tryResolveRealpath(filePath) {
4738
4738
  if (!filePath) return;
4739
4739
  try {
4740
- return fs$1.realpathSync(filePath);
4740
+ return syncFs.realpathSync(filePath);
4741
4741
  } catch {
4742
4742
  return;
4743
4743
  }
@@ -5612,7 +5612,7 @@ function listWritableExplicitTrustedSafeBinDirs(entries) {
5612
5612
  for (const dir of resolved) {
5613
5613
  let stat;
5614
5614
  try {
5615
- stat = fs$1.statSync(dir);
5615
+ stat = syncFs.statSync(dir);
5616
5616
  } catch {
5617
5617
  continue;
5618
5618
  }
@@ -6681,13 +6681,13 @@ function resolveBundledPluginsDir() {
6681
6681
  try {
6682
6682
  const execDir = path.dirname(process.execPath);
6683
6683
  const sibling = path.join(execDir, "extensions");
6684
- if (fs$1.existsSync(sibling)) return sibling;
6684
+ if (syncFs.existsSync(sibling)) return sibling;
6685
6685
  } catch {}
6686
6686
  try {
6687
6687
  let cursor = path.dirname(fileURLToPath(import.meta.url));
6688
6688
  for (let i = 0; i < 6; i += 1) {
6689
6689
  const candidate = path.join(cursor, "extensions");
6690
- if (fs$1.existsSync(candidate)) return candidate;
6690
+ if (syncFs.existsSync(candidate)) return candidate;
6691
6691
  const parent = path.dirname(cursor);
6692
6692
  if (parent === cursor) break;
6693
6693
  cursor = parent;
@@ -6706,7 +6706,7 @@ function normalizeStringList(value) {
6706
6706
  function resolvePluginManifestPath(rootDir) {
6707
6707
  for (const filename of PLUGIN_MANIFEST_FILENAMES) {
6708
6708
  const candidate = path.join(rootDir, filename);
6709
- if (fs$1.existsSync(candidate)) return candidate;
6709
+ if (syncFs.existsSync(candidate)) return candidate;
6710
6710
  }
6711
6711
  return path.join(rootDir, PLUGIN_MANIFEST_FILENAME);
6712
6712
  }
@@ -6732,7 +6732,7 @@ function loadPluginManifest(rootDir, rejectHardlinks = true) {
6732
6732
  }
6733
6733
  let raw;
6734
6734
  try {
6735
- raw = JSON.parse(fs$1.readFileSync(opened.fd, "utf-8"));
6735
+ raw = JSON.parse(syncFs.readFileSync(opened.fd, "utf-8"));
6736
6736
  } catch (err) {
6737
6737
  return {
6738
6738
  ok: false,
@@ -6740,7 +6740,7 @@ function loadPluginManifest(rootDir, rejectHardlinks = true) {
6740
6740
  manifestPath
6741
6741
  };
6742
6742
  } finally {
6743
- fs$1.closeSync(opened.fd);
6743
+ syncFs.closeSync(opened.fd);
6744
6744
  }
6745
6745
  if (!isRecord$3(raw)) return {
6746
6746
  ok: false,
@@ -6821,7 +6821,7 @@ function safeRealpathSync(targetPath, cache) {
6821
6821
  const cached = cache?.get(targetPath);
6822
6822
  if (cached) return cached;
6823
6823
  try {
6824
- const resolved = fs$1.realpathSync(targetPath);
6824
+ const resolved = syncFs.realpathSync(targetPath);
6825
6825
  cache?.set(targetPath, resolved);
6826
6826
  return resolved;
6827
6827
  } catch {
@@ -6830,7 +6830,7 @@ function safeRealpathSync(targetPath, cache) {
6830
6830
  }
6831
6831
  function safeStatSync(targetPath) {
6832
6832
  try {
6833
- return fs$1.statSync(targetPath);
6833
+ return syncFs.statSync(targetPath);
6834
6834
  } catch {
6835
6835
  return null;
6836
6836
  }
@@ -6980,12 +6980,12 @@ function readPackageManifest(dir, rejectHardlinks = true) {
6980
6980
  });
6981
6981
  if (!opened.ok) return null;
6982
6982
  try {
6983
- const raw = fs$1.readFileSync(opened.fd, "utf-8");
6983
+ const raw = syncFs.readFileSync(opened.fd, "utf-8");
6984
6984
  return JSON.parse(raw);
6985
6985
  } catch {
6986
6986
  return null;
6987
6987
  } finally {
6988
- fs$1.closeSync(opened.fd);
6988
+ syncFs.closeSync(opened.fd);
6989
6989
  }
6990
6990
  }
6991
6991
  function deriveIdHint(params) {
@@ -7038,14 +7038,14 @@ function resolvePackageEntrySource(params) {
7038
7038
  return null;
7039
7039
  }
7040
7040
  const safeSource = opened.path;
7041
- fs$1.closeSync(opened.fd);
7041
+ syncFs.closeSync(opened.fd);
7042
7042
  return safeSource;
7043
7043
  }
7044
7044
  function discoverInDirectory(params) {
7045
- if (!fs$1.existsSync(params.dir)) return;
7045
+ if (!syncFs.existsSync(params.dir)) return;
7046
7046
  let entries = [];
7047
7047
  try {
7048
- entries = fs$1.readdirSync(params.dir, { withFileTypes: true });
7048
+ entries = syncFs.readdirSync(params.dir, { withFileTypes: true });
7049
7049
  } catch (err) {
7050
7050
  params.diagnostics.push({
7051
7051
  level: "warn",
@@ -7106,7 +7106,7 @@ function discoverInDirectory(params) {
7106
7106
  }
7107
7107
  continue;
7108
7108
  }
7109
- const indexFile = [...DEFAULT_PLUGIN_ENTRY_CANDIDATES].map((candidate) => path.join(fullPath, candidate)).find((candidate) => fs$1.existsSync(candidate));
7109
+ const indexFile = [...DEFAULT_PLUGIN_ENTRY_CANDIDATES].map((candidate) => path.join(fullPath, candidate)).find((candidate) => syncFs.existsSync(candidate));
7110
7110
  if (indexFile && isExtensionFile(indexFile)) addCandidate({
7111
7111
  candidates: params.candidates,
7112
7112
  diagnostics: params.diagnostics,
@@ -7124,7 +7124,7 @@ function discoverInDirectory(params) {
7124
7124
  }
7125
7125
  function discoverFromPath(params) {
7126
7126
  const resolved = resolveUserPath(params.rawPath);
7127
- if (!fs$1.existsSync(resolved)) {
7127
+ if (!syncFs.existsSync(resolved)) {
7128
7128
  params.diagnostics.push({
7129
7129
  level: "error",
7130
7130
  message: `plugin path not found: ${resolved}`,
@@ -7132,7 +7132,7 @@ function discoverFromPath(params) {
7132
7132
  });
7133
7133
  return;
7134
7134
  }
7135
- const stat = fs$1.statSync(resolved);
7135
+ const stat = syncFs.statSync(resolved);
7136
7136
  if (stat.isFile()) {
7137
7137
  if (!isExtensionFile(resolved)) {
7138
7138
  params.diagnostics.push({
@@ -7190,7 +7190,7 @@ function discoverFromPath(params) {
7190
7190
  }
7191
7191
  return;
7192
7192
  }
7193
- const indexFile = [...DEFAULT_PLUGIN_ENTRY_CANDIDATES].map((candidate) => path.join(resolved, candidate)).find((candidate) => fs$1.existsSync(candidate));
7193
+ const indexFile = [...DEFAULT_PLUGIN_ENTRY_CANDIDATES].map((candidate) => path.join(resolved, candidate)).find((candidate) => syncFs.existsSync(candidate));
7194
7194
  if (indexFile && isExtensionFile(indexFile)) {
7195
7195
  addCandidate({
7196
7196
  candidates: params.candidates,
@@ -7323,7 +7323,7 @@ function buildCacheKey$1(params) {
7323
7323
  }
7324
7324
  function safeStatMtimeMs(filePath) {
7325
7325
  try {
7326
- return fs$1.statSync(filePath).mtimeMs;
7326
+ return syncFs.statSync(filePath).mtimeMs;
7327
7327
  } catch {
7328
7328
  return null;
7329
7329
  }
@@ -12426,7 +12426,7 @@ function resolveConfigPathForDeps(deps) {
12426
12426
  }
12427
12427
  function normalizeDeps(overrides = {}) {
12428
12428
  return {
12429
- fs: overrides.fs ?? fs$1,
12429
+ fs: overrides.fs ?? syncFs,
12430
12430
  json5: overrides.json5 ?? JSON5,
12431
12431
  env: overrides.env ?? process.env,
12432
12432
  homedir: overrides.homedir ?? (() => resolveRequiredHomeDir(overrides.env ?? process.env, os.homedir)),
@@ -1,11 +1,11 @@
1
- import { t as createSubsystemLogger, y as getChildLogger } from "./subsystem-B45WV3qB.js";
2
- import { T as toWhatsappJid, u as escapeRegExp } from "./logger-BfjWMCSD.js";
3
- import { X as loadConfig } from "./model-selection-Dna0Gz1k.js";
1
+ import { t as createSubsystemLogger, y as getChildLogger } from "./subsystem-Di1z8l0Z.js";
2
+ import { T as toWhatsappJid, u as escapeRegExp } from "./logger-DMZQQtxK.js";
3
+ import { X as loadConfig } from "./model-selection-idoqPmw0.js";
4
4
  import { n as generateSecureUuid } from "./secure-random-CXrBi7Jq.js";
5
- import { a as loadWebMedia, s as resolveMarkdownTableMode } from "./ir-B83looB-.js";
5
+ import { a as loadWebMedia, s as resolveMarkdownTableMode } from "./ir-DAP-B-Xw.js";
6
6
  import { n as normalizePollInput } from "./polls-CYTwXmA1.js";
7
- import { t as convertMarkdownTables } from "./tables-mE4cJBN2.js";
8
- import { i as redactIdentifier, n as requireActiveWebListener } from "./active-listener-BEdprTkn.js";
7
+ import { t as convertMarkdownTables } from "./tables-d739Y1xW.js";
8
+ import { i as redactIdentifier, n as requireActiveWebListener } from "./active-listener-D1yqT1cw.js";
9
9
 
10
10
  //#region src/markdown/whatsapp.ts
11
11
  /**
@@ -1,5 +1,5 @@
1
- import { i as saveMediaBuffer } from "./store-D89wDcz9.js";
2
- import { a as loadWebMedia } from "./ir-B83looB-.js";
1
+ import { i as saveMediaBuffer } from "./store--eR1R_UX.js";
2
+ import { a as loadWebMedia } from "./ir-DAP-B-Xw.js";
3
3
  import { t as buildOutboundMediaLoadOptions } from "./load-options-BFUunM8u.js";
4
4
 
5
5
  //#region src/media/outbound-attachment.ts
@@ -1,4 +1,4 @@
1
- import { C as BOUNDARY_PATH_ALIAS_POLICIES, D as isNotFoundPathError, w as resolveBoundaryPath } from "./workspace-U-DyR64O.js";
1
+ import { C as BOUNDARY_PATH_ALIAS_POLICIES, D as isNotFoundPathError, w as resolveBoundaryPath } from "./workspace-CUVC6GX1.js";
2
2
  import fs from "node:fs/promises";
3
3
  import os from "node:os";
4
4
 
@@ -1,6 +1,6 @@
1
1
  import os from "node:os";
2
2
  import path from "node:path";
3
- import fs from "node:fs";
3
+ import syncFs from "node:fs";
4
4
 
5
5
  //#region src/infra/home-dir.ts
6
6
  function normalize(value) {
@@ -94,10 +94,10 @@ function resolveStateDir(env = process.env, homedir = envHomedir(env)) {
94
94
  const newDir = newStateDir(effectiveHomedir);
95
95
  if (env.OPENCLAW_TEST_FAST === "1") return newDir;
96
96
  const legacyDirs = legacyStateDirs(effectiveHomedir);
97
- if (fs.existsSync(newDir)) return newDir;
97
+ if (syncFs.existsSync(newDir)) return newDir;
98
98
  const existingLegacy = legacyDirs.find((dir) => {
99
99
  try {
100
- return fs.existsSync(dir);
100
+ return syncFs.existsSync(dir);
101
101
  } catch {
102
102
  return false;
103
103
  }
@@ -137,7 +137,7 @@ function resolveConfigPathCandidate(env = process.env, homedir = envHomedir(env)
137
137
  if (env.OPENCLAW_TEST_FAST === "1") return resolveCanonicalConfigPath(env, resolveStateDir(env, homedir));
138
138
  const existing = resolveDefaultConfigCandidates(env, homedir).find((candidate) => {
139
139
  try {
140
- return fs.existsSync(candidate);
140
+ return syncFs.existsSync(candidate);
141
141
  } catch {
142
142
  return false;
143
143
  }
@@ -155,7 +155,7 @@ function resolveConfigPath(env = process.env, stateDir = resolveStateDir(env, en
155
155
  const stateOverride = env.OPENCLAW_STATE_DIR?.trim();
156
156
  const existing = [path.join(stateDir, CONFIG_FILENAME), ...LEGACY_CONFIG_FILENAMES.map((name) => path.join(stateDir, name))].find((candidate) => {
157
157
  try {
158
- return fs.existsSync(candidate);
158
+ return syncFs.existsSync(candidate);
159
159
  } catch {
160
160
  return false;
161
161
  }
@@ -1,8 +1,8 @@
1
- import { c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix } from "./paths-Cvc9EM8Y.js";
2
- import { R as normalizeAgentId, j as DEFAULT_AGENT_ID } from "./workspace-U-DyR64O.js";
1
+ import { c as resolveStateDir, d as resolveRequiredHomeDir, l as expandHomePrefix } from "./paths-C6TxBCvO.js";
2
+ import { R as normalizeAgentId, j as DEFAULT_AGENT_ID } from "./workspace-CUVC6GX1.js";
3
3
  import os from "node:os";
4
4
  import path from "node:path";
5
- import fs from "node:fs";
5
+ import syncFs from "node:fs";
6
6
 
7
7
  //#region src/config/sessions/paths.ts
8
8
  function resolveAgentSessionsDir(agentId, env = process.env, homedir = () => resolveRequiredHomeDir(env, os.homedir)) {
@@ -88,7 +88,7 @@ function resolveStructuralSessionFallbackPath(candidateAbsPath, expectedAgentId)
88
88
  }
89
89
  function safeRealpathSync(filePath) {
90
90
  try {
91
- return fs.realpathSync(filePath);
91
+ return syncFs.realpathSync(filePath);
92
92
  } catch {
93
93
  return;
94
94
  }
@@ -10,15 +10,15 @@ import { a as logWebSelfId, h as resolveAccountEntry, i as getWebAuthAgeMs, m as
10
10
  import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, n as markdownToSlackMrkdwnChunks, o as parseSlackBlocksInput, r as normalizeSlackOutboundText, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-gxHdLxHb.js";
11
11
  import { $ as stripUndefinedFields, A as unpinMessageDiscord, At as resolveChannelEntryMatchWithFallback, B as listScheduledEventsDiscord, C as editMessageDiscord, Ct as resolveDiscordSystemLocation, D as pinMessageDiscord, Dt as applyChannelMatchMeta, E as listThreadsDiscord, Et as fetchDiscord, 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 buildChannelKeyCandidates, P as fetchChannelInfoDiscord, Q as sendDiscordText, R as kickMemberDiscord, S as deleteMessageDiscord, St as formatDiscordUserTag, T as listPinsDiscord, Tt as DiscordApiError, U as listGuildEmojisDiscord, V as removeRoleDiscord, W as uploadEmojiDiscord, X as removeChannelPermissionDiscord, Y as moveChannelDiscord, Z as setChannelPermissionDiscord, _ as sendStickerDiscord, _t as resolveDiscordOwnerAllowFrom, a as sendDiscordComponentMessage, at as parseDiscordTarget, b as formatMention, bt as shouldEmitDiscordReactionNotification, c as parseDiscordComponentCustomId, ct as listDiscordDirectoryPeersLive, d as parseDiscordModalCustomIdForCarbon, dt as normalizeDiscordSlug, et as fetchChannelPermissionsDiscord, f as readDiscordComponentSpec, ft as resolveDiscordAllowListMatch, g as sendPollDiscord, gt as resolveDiscordOwnerAccess, h as sendMessageDiscord, ht as resolveDiscordMemberAccessState, i as removeReactionDiscord, it as createDiscordRestClient, j as addRoleDiscord, k as searchMessagesDiscord, kt as normalizeChannelSlug, l as parseDiscordComponentCustomIdForCarbon, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordModalEntry, mt as resolveDiscordGuildEntry, n as reactMessageDiscord, nt as chunkDiscordTextWithMode, o as createDiscordFormModal, ot as resolveDiscordChannelId, p as resolveDiscordComponentEntry, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as removeOwnReactionsDiscord, rt as createDiscordClient, s as formatDiscordComponentEventText, st as listDiscordDirectoryGroupsLive, t as fetchReactionsDiscord, tt as hasAnyGuildPermissionDiscord, u as parseDiscordModalCustomId, ut as normalizeDiscordAllowList, v as sendVoiceMessageDiscord, vt as resolveDiscordShouldRequireMention, w as fetchMessageDiscord, wt as resolveTimestampMs, x as createThreadDiscord, xt as formatDiscordReactionEmoji, y as sendWebhookMessageDiscord, yt as resolveGroupDmAllow, z as listGuildChannelsDiscord } from "./send-coHgGFcr.js";
12
12
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-D68-1Hhs.js";
13
- import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-B9cys0EZ.js";
13
+ import { C as createReplyToModeFilterForChannel, D as normalizeTargetForProvider, E as normalizeChannelTargetInput, O as getGlobalHookRunner, S as shouldSuppressReasoningPayload, T as buildTargetResolverSignature, _ as applyReplyThreading, a as normalizeReplyPayloadsForDelivery, b as isRenderablePayload, c as splitMediaFromOutput, d as toInternalMessageReceivedContext, f as toInternalMessageTranscribedContext, g as applyReplyTagsToPayload, h as fireAndForgetHook, i as normalizeOutboundPayloadsForJson, k as initializeGlobalHookRunner, l as deriveInboundMessageHookContext, m as toPluginMessageReceivedEvent, n as formatOutboundPayloadLog, o as throwIfAborted, p as toPluginMessageContext, r as normalizeOutboundPayloads, s as parseReplyDirectives, t as deliverOutboundPayloads, u as toInternalMessagePreprocessedContext, v as filterMessagingToolDuplicates, w as resolveReplyToMode, x as shouldSuppressMessagingToolReplies, y as filterMessagingToolMediaDuplicates } from "./deliver-BXVcFIHL.js";
14
14
  import { a as logMessageQueued, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, h as isDiagnosticsEnabled, i as logMessageProcessed, l as logWebhookProcessed, m as emitDiagnosticEvent, n as logLaneDequeue, o as logSessionStateChange, p as getDiagnosticSessionState, r as logLaneEnqueue, t as diag, u as logWebhookReceived } from "./diagnostic-B6424ZSe.js";
15
15
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-D0b225eZ.js";
16
16
  import { i as resolveTelegramTargetChatType, r as parseTelegramTarget } from "./targets-D1wBrTyc.js";
17
17
  import { A as mediaKindFromMime, C as imageMimeFromFormat, E as kindFromMime, O as MAX_IMAGE_BYTES, T as isGifMedia, _ as GATEWAY_CLIENT_IDS, b as detectMime, c as INTERNAL_MESSAGE_CHANNEL, d as isInternalMessageChannel, f as isMarkdownCapableMessageChannel, g as resolveMessageChannel, h as resolveGatewayMessageChannel, i as getImageMetadata, l as isDeliverableMessageChannel, m as normalizeMessageChannel, p as listDeliverableMessageChannels, s as resizeToJpeg, u as isGatewayMessageChannel, v as GATEWAY_CLIENT_MODES, w as isAudioFileName, x as extensionForMime, y as GATEWAY_CLIENT_NAMES } from "./image-ops-Cdb65Ugz.js";
18
18
  import { $ as removeChannelAllowFromStoreEntry, A as expandTextLinks, B as resolveTelegramThreadSpec, C as buildSenderName, D as buildTelegramThreadParams, E as buildTelegramParentPeer, F as resolveTelegramForumThreadId, G as firstDefined$1, H as normalizeAllowFrom$2, I as resolveTelegramGroupAllowFromContext, J as resolveGroupAllowFromSources, K as isSenderIdAllowed, L as resolveTelegramMediaPlaceholder, M as hasBotMention, N as normalizeForwardedContext, O as buildTypingThreadParams, P as resolveTelegramDirectPeerId, Q as readChannelAllowFromStore, R as resolveTelegramReplyId, S as buildSenderLabel, T as buildTelegramGroupPeerId, U as normalizeDmAllowFromWithStore$1, V as isSenderAllowed$1, W as resolveSenderAllowMatch$1, X as toLocationContext, Y as formatLocationText, Z as addChannelAllowFromStoreEntry, _ as splitTelegramCaption, a as reactMessageTelegram, at as isVoiceCompatibleAudio, b as resolveCronStorePath, c as sendStickerTelegram, d as isRecoverableTelegramNetworkError, et as upsertChannelPairingRequest, f as markdownToTelegramChunks, g as resolveTelegramFetch, h as wrapFileReferencesInHtml, i as editMessageTelegram, it as listPairingChannels, j as extractTelegramLocation, k as describeReplyTarget, l as resolveTelegramVoiceSend, m as renderTelegramHtmlText, n as createForumTopicTelegram, nt as writeJsonFileAtomically, o as sendMessageTelegram, p as markdownToTelegramHtml, q as mergeDmAllowFromSources, r as deleteMessageTelegram, rt as getPairingAdapter, s as sendPollTelegram, t as buildInlineKeyboard, tt as readJsonFileWithFallback, u as wasSentByBot, v as withTelegramApiErrorLogging, w as buildTelegramGroupFrom, x as buildGroupLabel, y as loadCronStore, z as resolveTelegramStreamMode } from "./send-DEuQpTH0.js";
19
19
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-BKJwRHhi.js";
20
- import { $ as deliveryContextFromSession, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as resolveFreshSessionTotalTokens, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateLastRoute, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as resolveCacheTtlMs$1, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as mergeSessionEntry, T as isFailoverAssistantError, Tt as canonicalizeMainSessionAlias, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as updateSessionStoreEntry, Xt as normalizeToolName, Y as updateSessionStore, Yt as expandToolGroups, Z as isCacheEnabled, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveChannelResetConfig, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as archiveSessionTranscripts, b as isAuthAssistantError, bt as resolveThreadFlag, c as extractToolCallsFromAssistant, ct as extractToolCallNames, d as downgradeOpenAIFunctionCallReasoningPairs, dt as applyInputProvenanceToUserMessage, en as buildBootstrapContextFiles, et as deliveryContextKey, f as downgradeOpenAIReasoningBlocks, ft as hasInterSessionUserProvenance, g as formatAssistantErrorText, gt as evaluateSessionFreshness, h as classifyFailoverReason, ht as resolveSessionKey, in as resolveBootstrapTotalMaxChars, it as normalizeAccountId$3, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as parseInlineDirectives$1, m as BILLING_ERROR_USER_MESSAGE, mt as jsonUtf8Bytes, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeDeliveryContext, o as normalizeTextForComparison, ot as capArrayByJsonBytes, p as isGoogleModelApi, pt as normalizeInputProvenance, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeSessionDeliveryFields, s as sanitizeSessionMessagesImages, st as countToolResults, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as mergeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as INPUT_PROVENANCE_KIND_VALUES, v as formatRawAssistantErrorForUi, vt as resolveSessionResetPolicy, w as isContextOverflowError, wt as setSessionRuntimeModel, x as isBillingAssistantError, xt as DEFAULT_RESET_TRIGGERS, y as getApiErrorPayloadFingerprint, yt as resolveSessionResetType, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-uTRAmQ4n.js";
21
- import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-D45SyhQL.js";
20
+ import { $ as deliveryContextFromSession, $t as matchesAnyGlobPattern, A as isTransientHttpError, At as resolveGroupSessionKey, B as parseSessionThreadInfo, Bt as resolveGatewayCredentialsFromConfig, C as isCompactionFailureError, Ct as resolveFreshSessionTotalTokens, D as isLikelyContextOverflowError, Dt as resolveMainSessionKey, E as isFailoverErrorMessage, Et as resolveExplicitAgentSessionKey, F as isTimeoutErrorMessage, Ft as resolveBrowserConfig, G as readSessionUpdatedAt, Gt as collectExplicitAllowlist, Ht as resolveSandboxConfigForAgent, I as ensureSandboxWorkspaceForSession, It as resolveProfile, J as updateLastRoute, Jt as stripPluginOnlyAllowlist, K as recordSessionMetaFromInbound, Kt as expandPolicyWithPluginGroups, L as resolveSandboxContext, Lt as getBridgeAuthForPort, M as parseImageSizeError, Mt as resolveSessionLockMaxHoldFromTimeout, N as sanitizeUserFacingText, Nt as createBrowserRouteContext, O as isRateLimitAssistantError, Ot as deriveSessionMetaPatch, P as isAuthPermanentErrorMessage, Pt as registerBrowserRoutes, Q as resolveCacheTtlMs$1, Qt as compileGlobPatterns, R as resolveSandboxRuntimeStatus, Rt as ensureBrowserControlAuth, S as isCloudCodeAssistFormatError, St as mergeSessionEntry, T as isFailoverAssistantError, Tt as canonicalizeMainSessionAlias, U as resolveAndPersistSessionFile, Ut as applyOwnerOnlyToolPolicy, V as appendAssistantMessageToSessionTranscript, Vt as trimToUndefined$1, W as loadSessionStore, Wt as buildPluginToolGroups, X as updateSessionStoreEntry, Xt as normalizeToolName, Y as updateSessionStore, Yt as expandToolGroups, Z as isCacheEnabled, Zt as resolveToolProfilePolicy, _ as formatBillingErrorMessage, _t as resolveChannelResetConfig, a as isMessagingToolDuplicateNormalized, an as sanitizeGoogleTurnOrdering, at as archiveSessionTranscripts, b as isAuthAssistantError, bt as resolveThreadFlag, c as extractToolCallsFromAssistant, ct as extractToolCallNames, d as downgradeOpenAIFunctionCallReasoningPairs, dt as applyInputProvenanceToUserMessage, en as buildBootstrapContextFiles, et as deliveryContextKey, f as downgradeOpenAIReasoningBlocks, ft as hasInterSessionUserProvenance, g as formatAssistantErrorText, gt as evaluateSessionFreshness, h as classifyFailoverReason, ht as resolveSessionKey, in as resolveBootstrapTotalMaxChars, it as normalizeAccountId$3, j as parseImageDimensionError, jt as acquireSessionWriteLock, k as isRawApiErrorPayload, kt as resolveConversationLabel, l as extractToolResultId, lt as parseInlineDirectives$1, m as BILLING_ERROR_USER_MESSAGE, mt as jsonUtf8Bytes, n as validateGeminiTurns, nn as resolveBootstrapMaxChars, nt as normalizeDeliveryContext, o as normalizeTextForComparison, ot as capArrayByJsonBytes, p as isGoogleModelApi, pt as normalizeInputProvenance, qt as mergeAlsoAllowPolicy, r as pickFallbackThinkingLevel, rn as resolveBootstrapPromptTruncationWarningMode, rt as normalizeSessionDeliveryFields, s as sanitizeSessionMessagesImages, st as countToolResults, t as validateAnthropicTurns, tn as ensureSessionHeader, tt as mergeDeliveryContext, u as sanitizeToolCallIdsForCloudCodeAssist, ut as INPUT_PROVENANCE_KIND_VALUES, v as formatRawAssistantErrorForUi, vt as resolveSessionResetPolicy, w as isContextOverflowError, wt as setSessionRuntimeModel, x as isBillingAssistantError, xt as DEFAULT_RESET_TRIGGERS, y as getApiErrorPayloadFingerprint, yt as resolveSessionResetType, z as extractDeliveryInfo, zt as resolveBrowserControlAuth } from "./pi-embedded-helpers-CwuBTKza.js";
21
+ import { A as rawDataToString, B as isSecureWebSocketUrl, C as ensureChromeExtensionRelayServer, N as DEFAULT_UPLOAD_DIR, P as resolveExistingPathsWithinRoot, U as DEFAULT_AI_SNAPSHOT_MAX_CHARS, s as resolveLsofCommandSync, z as isLoopbackHost } from "./chrome-CMU2WVFh.js";
22
22
  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-DhJjHaBz.js";
23
23
  import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-B6LFrksx.js";
24
24
  import { i as testRegexWithBoundedInput, r as compileSafeRegex, t as redactSensitiveText } from "./redact-DBcTOmRL.js";
@@ -31,8 +31,8 @@ import { t as resolveIMessageAccount } from "./accounts-CTAmvqQt.js";
31
31
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-BgCTr3-D.js";
32
32
  import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-UAKcGiUQ.js";
33
33
  import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-DpgWhBLv.js";
34
- import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureOpenClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-DAOPwVXi.js";
35
- import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, 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 findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-B-UvoDjZ.js";
34
+ import { C as minimaxUnderstandImage, S as extractTextFromChatContent, _ as formatToolSummary, a as resolveProviderVisionModelFromConfig, b as findCodeRegions, c as extractThinkingFromTaggedStream, d as inferToolMetaFromArgs, f as isAssistantMessage, g as stripThinkingTagsFromText, h as stripMinimaxToolCallXml, i as decodeDataUrl, l as extractThinkingFromTaggedText, m as stripDowngradedToolCallText, n as coerceImageAssistantText, o as extractAssistantText$1, p as promoteThinkingTagsToBlocks, r as coerceImageModelConfig, s as extractAssistantThinking, u as formatReasoningMessage, v as resolveToolDisplay, w as ensureOpenClawModelsJson, x as isInsideCode, y as stripReasoningTagsFromText } from "./image-BCVLo0qw.js";
35
+ import { _ as resolveAttachmentKind, a as resolveAutoImageModel, b as modelSupportsVision, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, h as registerUnhandledRejectionHandler, i as normalizeMediaAttachments, l as resolveConcurrency, m as buildRandomTempFilePath, 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 findModelInCatalog, y as loadModelCatalog } from "./audio-transcription-runner-DZbSWT9E.js";
36
36
  import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-Bz-lmDr4.js";
37
37
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-B_Wivh-n.js";
38
38
  import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-BiA86VyP.js";
@@ -69,7 +69,7 @@ import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, Setting
69
69
  import { EdgeTTS } from "node-edge-tts";
70
70
  import { createServer } from "node:http";
71
71
  import { ProxyAgent, fetch as fetch$1 } from "undici";
72
- import WebSocket$1, { WebSocket } from "ws";
72
+ import WebSocket, { WebSocket as WebSocket$1 } from "ws";
73
73
  import { Buffer as Buffer$1 } from "node:buffer";
74
74
  import { createJiti } from "jiti";
75
75
  import AjvPkg from "ajv";
@@ -8210,7 +8210,7 @@ var GatewayClient = class {
8210
8210
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
8211
8211
  });
8212
8212
  }
8213
- this.ws = new WebSocket(url, wsOptions);
8213
+ this.ws = new WebSocket$1(url, wsOptions);
8214
8214
  this.ws.on("open", () => {
8215
8215
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
8216
8216
  const tlsError = this.validateTlsFingerprint();
@@ -8406,7 +8406,7 @@ var GatewayClient = class {
8406
8406
  const connectChallengeTimeoutMs = typeof rawConnectDelayMs === "number" && Number.isFinite(rawConnectDelayMs) ? Math.max(250, Math.min(1e4, rawConnectDelayMs)) : 2e3;
8407
8407
  if (this.connectTimer) clearTimeout(this.connectTimer);
8408
8408
  this.connectTimer = setTimeout(() => {
8409
- if (this.connectSent || this.ws?.readyState !== WebSocket.OPEN) return;
8409
+ if (this.connectSent || this.ws?.readyState !== WebSocket$1.OPEN) return;
8410
8410
  this.opts.onConnectError?.(/* @__PURE__ */ new Error("gateway connect challenge timeout"));
8411
8411
  this.ws?.close(1008, "connect challenge timeout");
8412
8412
  }, connectChallengeTimeoutMs);
@@ -8448,7 +8448,7 @@ var GatewayClient = class {
8448
8448
  return null;
8449
8449
  }
8450
8450
  async request(method, params, opts) {
8451
- if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
8451
+ if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
8452
8452
  const id = randomUUID();
8453
8453
  const frame = {
8454
8454
  type: "req",
@@ -9870,7 +9870,7 @@ function normalizeReplyPayload(payload, opts = {}) {
9870
9870
  */
9871
9871
  let deliverRuntimePromise$2 = null;
9872
9872
  function loadDeliverRuntime$2() {
9873
- deliverRuntimePromise$2 ??= import("./deliver-runtime-DhaQJ0pI.js");
9873
+ deliverRuntimePromise$2 ??= import("./deliver-runtime-DTaIS-1i.js");
9874
9874
  return deliverRuntimePromise$2;
9875
9875
  }
9876
9876
  /**
@@ -11158,7 +11158,7 @@ const DEFAULT_SUBAGENT_ANNOUNCE_TIMEOUT_MS = 6e4;
11158
11158
  const MAX_TIMER_SAFE_TIMEOUT_MS = 2147e6;
11159
11159
  let subagentRegistryRuntimePromise = null;
11160
11160
  function loadSubagentRegistryRuntime() {
11161
- subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DSi5mnCQ.js");
11161
+ subagentRegistryRuntimePromise ??= import("./subagent-registry-runtime-DbSf_Je6.js");
11162
11162
  return subagentRegistryRuntimePromise;
11163
11163
  }
11164
11164
  const DIRECT_ANNOUNCE_TRANSIENT_RETRY_DELAYS_MS = FAST_TEST_MODE ? [
@@ -14512,7 +14512,7 @@ async function runWithConcurrency(tasks, limit) {
14512
14512
  //#region src/media-understanding/echo-transcript.ts
14513
14513
  let deliverRuntimePromise$1 = null;
14514
14514
  function loadDeliverRuntime$1() {
14515
- deliverRuntimePromise$1 ??= import("./deliver-runtime-DhaQJ0pI.js");
14515
+ deliverRuntimePromise$1 ??= import("./deliver-runtime-DTaIS-1i.js");
14516
14516
  return deliverRuntimePromise$1;
14517
14517
  }
14518
14518
  const DEFAULT_ECHO_TRANSCRIPT_FORMAT = "📝 \"{transcript}\"";
@@ -50944,7 +50944,7 @@ const warnedContexts = /* @__PURE__ */ new Map();
50944
50944
  const log$10 = createSubsystemLogger("session-maintenance-warning");
50945
50945
  let deliverRuntimePromise = null;
50946
50946
  function loadDeliverRuntime() {
50947
- deliverRuntimePromise ??= import("./deliver-runtime-DhaQJ0pI.js");
50947
+ deliverRuntimePromise ??= import("./deliver-runtime-DTaIS-1i.js");
50948
50948
  return deliverRuntimePromise;
50949
50949
  }
50950
50950
  function shouldSendWarning() {
@@ -55921,7 +55921,7 @@ const VISION_PROVIDERS = [
55921
55921
  ];
55922
55922
  let imageRuntimePromise = null;
55923
55923
  function loadImageRuntime() {
55924
- imageRuntimePromise ??= import("./image-runtime-wlCLVvVv.js");
55924
+ imageRuntimePromise ??= import("./image-runtime-DtCKpMPZ.js");
55925
55925
  return imageRuntimePromise;
55926
55926
  }
55927
55927
  /**
@@ -57914,7 +57914,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
57914
57914
  const needsPreflightTranscription = !params.isDirectMessage && params.shouldRequireMention && hasAudioAttachment && !hasTypedText && params.mentionRegexes.length > 0;
57915
57915
  let transcript;
57916
57916
  if (needsPreflightTranscription) try {
57917
- const { transcribeFirstAudio } = await import("./audio-preflight-5FEeDooz.js");
57917
+ const { transcribeFirstAudio } = await import("./audio-preflight-DDBLZBdb.js");
57918
57918
  const audioUrls = audioAttachments.map((att) => att.url).filter((url) => typeof url === "string" && url.length > 0);
57919
57919
  if (audioUrls.length > 0) transcript = await transcribeFirstAudio({
57920
57920
  ctx: {
@@ -65174,7 +65174,7 @@ let slackSenderRuntimePromise = null;
65174
65174
  let signalSenderRuntimePromise = null;
65175
65175
  let imessageSenderRuntimePromise = null;
65176
65176
  function loadWhatsAppSenderRuntime() {
65177
- whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-DvTL2tzN.js");
65177
+ whatsappSenderRuntimePromise ??= import("./deps-send-whatsapp.runtime-CIZqFAqb.js");
65178
65178
  return whatsappSenderRuntimePromise;
65179
65179
  }
65180
65180
  function loadTelegramSenderRuntime() {
@@ -68878,7 +68878,7 @@ function createDiscordGatewayPlugin(params) {
68878
68878
  return super.registerClient(client);
68879
68879
  }
68880
68880
  createWebSocket(url) {
68881
- return new WebSocket$1(url, { agent: wsAgent });
68881
+ return new WebSocket(url, { agent: wsAgent });
68882
68882
  }
68883
68883
  }
68884
68884
  return new ProxyGatewayPlugin();
@@ -77933,7 +77933,7 @@ function loadSlashCommandsRuntime() {
77933
77933
  return slashCommandsRuntimePromise;
77934
77934
  }
77935
77935
  function loadSlashDispatchRuntime() {
77936
- slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-Dh053pQK.js");
77936
+ slashDispatchRuntimePromise ??= import("./slash-dispatch.runtime-131yup2e.js");
77937
77937
  return slashDispatchRuntimePromise;
77938
77938
  }
77939
77939
  function loadSlashSkillCommandsRuntime() {
@@ -81302,7 +81302,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
81302
81302
  const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
81303
81303
  let preflightTranscript;
81304
81304
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
81305
- const { transcribeFirstAudio } = await import("./audio-preflight-5FEeDooz.js");
81305
+ const { transcribeFirstAudio } = await import("./audio-preflight-DDBLZBdb.js");
81306
81306
  preflightTranscript = await transcribeFirstAudio({
81307
81307
  ctx: {
81308
81308
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -84202,7 +84202,7 @@ function loadWebLoginQr() {
84202
84202
  return webLoginQrPromise;
84203
84203
  }
84204
84204
  function loadWebChannel() {
84205
- webChannelPromise ??= import("./web-1hWJDzNA.js");
84205
+ webChannelPromise ??= import("./web-MR9d7KyB.js");
84206
84206
  return webChannelPromise;
84207
84207
  }
84208
84208
  function loadWhatsAppActions() {
@@ -92465,7 +92465,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
92465
92465
  * Throws if the connection is not open.
92466
92466
  */
92467
92467
  send(event) {
92468
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
92468
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error(`OpenAIWebSocketManager: cannot send — connection is not open (readyState=${this.ws?.readyState ?? "no socket"})`);
92469
92469
  this.ws.send(JSON.stringify(event));
92470
92470
  }
92471
92471
  /**
@@ -92482,7 +92482,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
92482
92482
  * Returns true if the WebSocket is currently open and ready to send.
92483
92483
  */
92484
92484
  isConnected() {
92485
- return this.ws !== null && this.ws.readyState === WebSocket$1.OPEN;
92485
+ return this.ws !== null && this.ws.readyState === WebSocket.OPEN;
92486
92486
  }
92487
92487
  /**
92488
92488
  * Permanently closes the WebSocket connection and disables auto-reconnect.
@@ -92492,7 +92492,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
92492
92492
  this._cancelRetryTimer();
92493
92493
  if (this.ws) {
92494
92494
  this.ws.removeAllListeners();
92495
- if (this.ws.readyState === WebSocket$1.OPEN || this.ws.readyState === WebSocket$1.CONNECTING) this.ws.close(1e3, "Client closed");
92495
+ if (this.ws.readyState === WebSocket.OPEN || this.ws.readyState === WebSocket.CONNECTING) this.ws.close(1e3, "Client closed");
92496
92496
  this.ws = null;
92497
92497
  }
92498
92498
  }
@@ -92502,7 +92502,7 @@ var OpenAIWebSocketManager = class extends EventEmitter {
92502
92502
  reject(/* @__PURE__ */ new Error("OpenAIWebSocketManager: apiKey is required before connecting."));
92503
92503
  return;
92504
92504
  }
92505
- const socket = new WebSocket$1(this.wsUrl, { headers: {
92505
+ const socket = new WebSocket(this.wsUrl, { headers: {
92506
92506
  Authorization: `Bearer ${this.apiKey}`,
92507
92507
  "OpenAI-Beta": "responses-websocket=v1"
92508
92508
  } });