@bitseek/claw 1.3.8-beta.4 → 1.3.8

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 (314) hide show
  1. package/dist/{accounts-YtMo-RPC.js → accounts-B4wV9IFm.js} +1 -1
  2. package/dist/{accounts-CzfKkJDx.js → accounts-CTKra7aS.js} +7 -7
  3. package/dist/{accounts-CQrvvU8V.js → accounts-DtaSiAum.js} +1 -1
  4. package/dist/{acp-cli-C0Oz6RFa.js → acp-cli-CSRDFixR.js} +8 -8
  5. package/dist/{agent-scope-qYbUVCHn.js → agent-scope-BrbgAMci.js} +1 -1
  6. package/dist/{agents-Co_-XzRP.js → agents-B3roVbYI.js} +15 -15
  7. package/dist/{agents.config-EnxTBynI.js → agents.config-BLKDc8io.js} +2 -2
  8. package/dist/{api-key-rotation-XTdz_cvI.js → api-key-rotation-BdoPDM3X.js} +1 -1
  9. package/dist/{audio-preflight-DWC4cRxQ.js → audio-preflight-D-sfV0QK.js} +4 -4
  10. package/dist/{audio-preflight-B6Jw9LUM.js → audio-preflight-Pdv9uiw6.js} +36 -36
  11. package/dist/{audio-transcription-runner-BC2TeD8r.js → audio-transcription-runner-BVp79Ioa.js} +1 -1
  12. package/dist/{audio-transcription-runner-CF3DjqKy.js → audio-transcription-runner-DBPatTZv.js} +22 -22
  13. package/dist/{audit-pIY_GfjC.js → audit-p4lBCTPz.js} +29 -29
  14. package/dist/{auth-DhaM6Od5.js → auth-DuCrQ5K9.js} +1 -1
  15. package/dist/{auth-choice-CfoGAmJm.js → auth-choice-BogBxPQ0.js} +14 -14
  16. package/dist/{auth-choice-r5CXFvMV.js → auth-choice-CWhbVAmr.js} +12 -12
  17. package/dist/{auth-choice.apply-helpers-DI1qnxc_.js → auth-choice.apply-helpers-CtAelPdF.js} +1 -1
  18. package/dist/{auth-profiles-CDN1QqUB.js → auth-profiles-k09E8RLJ.js} +16 -16
  19. package/dist/{auth-token-BtyMfDQt.js → auth-token-CWb4NQTJ.js} +1 -1
  20. package/dist/{banner-CDZD_rv-.js → banner-DyZFjt3Q.js} +2 -2
  21. package/dist/{bindings-D9ZiGe2K.js → bindings-C9vpkXej.js} +1 -1
  22. package/dist/{bonjour-discovery-CBcz-0Ts.js → bonjour-discovery-DyLRXLw1.js} +1 -1
  23. package/dist/{browser-cli-CTcWXrJp.js → browser-cli-CDsv9Dvw.js} +12 -12
  24. package/dist/build-info.json +2 -2
  25. package/dist/bundled/boot-md/handler.js +6 -6
  26. package/dist/bundled/session-memory/handler.js +6 -6
  27. package/dist/{call-BSBuLNiX.js → call-CBH5yDff.js} +10 -10
  28. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  29. package/dist/{channel-account-context-Cc-TbAKt.js → channel-account-context-C3TU0o4T.js} +5 -5
  30. package/dist/{channel-options-BfDmqXBz.js → channel-options-9r0jhaF7.js} +3 -3
  31. package/dist/{channel-selection-BKyzCX35.js → channel-selection-DZrPYytY.js} +1 -1
  32. package/dist/{channel-web-DJtTLglg.js → channel-web-Df9c4iPg.js} +18 -18
  33. package/dist/{channels-cli-BdbCWhq7.js → channels-cli-Bi5IcGws.js} +95 -95
  34. package/dist/{channels-status-issues-Cn340Vbe.js → channels-status-issues-Bb3ugkRr.js} +1 -1
  35. package/dist/{chrome-zP7qr3zd.js → chrome-BVlYi4nu.js} +4 -4
  36. package/dist/{chrome-CGMBwBlZ.js → chrome-D8KosHAE.js} +8 -8
  37. package/dist/{clawbot-cli-Nk_oXaxe.js → clawbot-cli-CkZGXd20.js} +5 -5
  38. package/dist/{cli-BAFODF--.js → cli-2CbkQG_y.js} +76 -76
  39. package/dist/{client-Swf30UOh.js → client-CIji7FpE.js} +2 -2
  40. package/dist/{command-registry-RTq7TBkJ.js → command-registry-C96NPlx4.js} +13 -13
  41. package/dist/{commands-B8w5Izi1.js → commands-B7V-vN3N.js} +1 -1
  42. package/dist/{commands-registry-Ctux_Nq3.js → commands-registry-B6LbRm3U.js} +3 -3
  43. package/dist/{completion-cli-JABAzgO6.js → completion-cli-Die9PKu8.js} +1 -1
  44. package/dist/{completion-cli-Cp4gleu_.js → completion-cli-DujZccrD.js} +13 -13
  45. package/dist/{config-cli-BNaHtYNZ.js → config-cli-DgKjaGSi.js} +7 -7
  46. package/dist/{config-guard-CSxpqsBG.js → config-guard-D5XZLbXA.js} +3 -3
  47. package/dist/{config-validation-Tf6YL4jH.js → config-validation-DT8qQYoa.js} +3 -3
  48. package/dist/{configure-Dwelp0U_.js → configure-D51Hau9O.js} +17 -17
  49. package/dist/{control-ui-assets-BxJ3OmP_.js → control-ui-assets-Bn4e_1By.js} +1 -1
  50. package/dist/{cron-cli-BrpTLnwT.js → cron-cli-D6OHJFdO.js} +12 -12
  51. package/dist/{daemon-cli-S2o4Kcwu.js → daemon-cli-BxFuWNM-.js} +15 -15
  52. package/dist/{daemon-install-C0YHpEQQ.js → daemon-install-BjgH7Ld5.js} +4 -4
  53. package/dist/{daemon-install-helpers-DLIsWH31.js → daemon-install-helpers-Crntu4pF.js} +11 -11
  54. package/dist/{dashboard-B_7Hjxc6.js → dashboard-B0FYUw0G.js} +2 -2
  55. package/dist/{deliver-CPCEIyDG.js → deliver-3f8JxB_A.js} +1 -1
  56. package/dist/{deliver-CQmmhMaR.js → deliver-Bm4UojU1.js} +7 -7
  57. package/dist/{devices-cli-CXtMoEZv.js → devices-cli-D2qzgS6n.js} +8 -8
  58. package/dist/{diagnostic-C5Por-ID.js → diagnostic-DOls91uN.js} +1 -1
  59. package/dist/{diagnostics-0PFoNolS.js → diagnostics-D4xhje-h.js} +5 -5
  60. package/dist/{directory-cli-NpBfkxfT.js → directory-cli-BDxc1M2a.js} +8 -8
  61. package/dist/{dns-cli-CNYoy9mq.js → dns-cli-DImurxu6.js} +5 -5
  62. package/dist/{dock-CHDx-TGb.js → dock-CcEfMX5D.js} +4 -4
  63. package/dist/{docs-cli-CLZqiB15.js → docs-cli-Cp25W8Hv.js} +4 -4
  64. package/dist/{doctor-completion-CpA-KQ0h.js → doctor-completion-DvD6Gxce.js} +2 -2
  65. package/dist/{doctor-completion-BEtcv-8P.js → doctor-completion-lIcN0oMj.js} +1 -1
  66. package/dist/{doctor-config-flow-m-m_m5Ot.js → doctor-config-flow-DtaIUiEk.js} +15 -15
  67. package/dist/{enable-yaF2vNOj.js → enable-Dfmg2SV3.js} +1 -1
  68. package/dist/entry.js +2 -2
  69. package/dist/{exec-approvals-allowlist-Cw4xMxbI.js → exec-approvals-allowlist-IOB4HV3z.js} +1 -1
  70. package/dist/{exec-approvals-cli-BffaLELS.js → exec-approvals-cli-B6X8jOx7.js} +16 -16
  71. package/dist/{exec-safe-bin-runtime-policy-Bu0TwxE1.js → exec-safe-bin-runtime-policy-CEdwujzY.js} +2 -2
  72. package/dist/{fetch-lTdl-0IY.js → fetch-BAv7yBBS.js} +3 -3
  73. package/dist/{fetch-guard-CQZ5FOwI.js → fetch-guard-oYuVfv1t.js} +1 -1
  74. package/dist/{fs-safe-BQS_SZ0h.js → fs-safe--YXsniNZ.js} +24 -24
  75. package/dist/{gateway-cli-C44pKHoa.js → gateway-cli-DY5myR89.js} +162 -162
  76. package/dist/{gateway-cli-D1e4MuAA.js → gateway-cli-DdxZ9xQz.js} +2 -2
  77. package/dist/{gateway-rpc-qWYRLZ-Z.js → gateway-rpc-C6F7QPVq.js} +1 -1
  78. package/dist/{health-DIS2FlPd.js → health-DOIxOlnm.js} +14 -14
  79. package/dist/{hooks-cli-C4Wqknt2.js → hooks-cli-B3VUhq72.js} +84 -84
  80. package/dist/{hooks-status-BE0dSQIW.js → hooks-status-qBCorl-z.js} +1 -1
  81. package/dist/{image-BgCM5v5-.js → image-BOSsTjNj.js} +5 -5
  82. package/dist/{image-RroCfqy3.js → image-XbGdWslx.js} +1 -1
  83. package/dist/{plugin-sdk/image-ops-DhVTERkS.js → image-ops-B2K36FLD.js} +1 -1
  84. package/dist/index.js +1 -1
  85. package/dist/{inspect-DY_qpyux.js → inspect-DkrsY9Gy.js} +4 -4
  86. package/dist/{install-safe-path-K9dhxxcy.js → install-safe-path-DXP_88Em.js} +25 -25
  87. package/dist/{installs-BYz0q4kc.js → installs-DgI58LlC.js} +9 -9
  88. package/dist/{ipv4-Bj71-jpu.js → ipv4-BuO7nxQZ.js} +1 -1
  89. package/dist/{ir-C_-vG6Lv.js → ir-BCl0dA3G.js} +6 -6
  90. package/dist/{issue-format-1i6b6tFd.js → issue-format-Cat2txpr.js} +1 -1
  91. package/dist/{json-files-1hhV5hS6.js → json-files-DrZ4qfxw.js} +8 -8
  92. package/dist/{lifecycle-core-BZVbJEGI.js → lifecycle-core-CliTbXyj.js} +5 -5
  93. package/dist/llm-slug-generator.js +6 -6
  94. package/dist/{login-KG5TFHFb.js → login-_s-srXtA.js} +3 -3
  95. package/dist/{login-qr-D4L1NDeu.js → login-qr-BNBXsYor.js} +6 -6
  96. package/dist/{logs-cli-D2lMkM4P.js → logs-cli-B4Nwp099.js} +9 -9
  97. package/dist/{manager-C0nx9SKi.js → manager-rK3J4Po3.js} +14 -14
  98. package/dist/{manifest-registry-Co__Fy6F.js → manifest-registry-hRB5Jb3F.js} +1 -1
  99. package/dist/{markdown-tables-D47ZANhY.js → markdown-tables-Mk_tnsfY.js} +1 -1
  100. package/dist/{memory-cli-BwxTb296.js → memory-cli-BbEwsmor.js} +12 -12
  101. package/dist/{model-C30BtXEI.js → model-Cd4C4aY1.js} +2 -2
  102. package/dist/{model-catalog-C0pv85X0.js → model-catalog-Chb7lzRo.js} +3 -3
  103. package/dist/{model-picker-Dediiqpo.js → model-picker-CdgwJ2MU.js} +4 -4
  104. package/dist/{models-Dy35lY8K.js → models-CL1jaXSC.js} +18 -18
  105. package/dist/{models-cli-DBsERrAX.js → models-cli-BeARCGBj.js} +81 -81
  106. package/dist/{models-config-NbV2Gu7N.js → models-config-CkOKPbk9.js} +6 -6
  107. package/dist/{net-DrfP4uzJ.js → net-Bxr80JTs.js} +2 -2
  108. package/dist/{node-cli-CnKN38mM.js → node-cli-DelBH0Tb.js} +33 -33
  109. package/dist/{node-command-policy-xyqdwsT9.js → node-command-policy-DKPye8Fx.js} +1 -1
  110. package/dist/{node-service-DEfPXKwF.js → node-service-Cei5AkFg.js} +1 -1
  111. package/dist/{nodes-cli-CFaqvZCM.js → nodes-cli-CLNRURvx.js} +16 -16
  112. package/dist/{nodes-screen-DNzr75bx.js → nodes-screen-NjyoMja_.js} +7 -7
  113. package/dist/{npm-pack-install-U_Bbmdqc.js → npm-pack-install-B5tn-EtA.js} +18 -18
  114. package/dist/{npm-resolution-BzCW7TCH.js → npm-resolution-Brdkv6mO.js} +5 -5
  115. package/dist/{onboard-F7n3_iVh.js → onboard-Bh-I_8wZ.js} +6 -6
  116. package/dist/{onboard-Ch8Y1L6r.js → onboard-HvQow36S.js} +1 -1
  117. package/dist/{onboard-channels-CXnqSbh7.js → onboard-channels-gTeBkpnk.js} +20 -20
  118. package/dist/{onboard-custom-xXrb_3q4.js → onboard-custom-DhEI_A-m.js} +3 -3
  119. package/dist/{onboard-custom.shared-fTdY9R_i.js → onboard-custom.shared-DoXUpHZV.js} +2 -2
  120. package/dist/{onboard-helpers-DX8Hw_zc.js → onboard-helpers-ngPRx_6_.js} +11 -11
  121. package/dist/{onboard-hooks-DCPdhrCK.js → onboard-hooks-CJvqjkid.js} +4 -4
  122. package/dist/{onboard-remote-aF3GW6mE.js → onboard-remote-DRt29Vs4.js} +3 -3
  123. package/dist/{onboard-skills-CzFxXcom.js → onboard-skills-CoWAaHHg.js} +4 -4
  124. package/dist/{onboarding-BM2AMtOF.js → onboarding-COYDqpHi.js} +1 -1
  125. package/dist/{onboarding-C3pHfO7a.js → onboarding-DeqWu7mq.js} +13 -13
  126. package/dist/{onboarding.finalize-8dcfbjPv.js → onboarding.finalize-BAWi9byG.js} +3 -3
  127. package/dist/{onboarding.finalize-Ca_Zcpts.js → onboarding.finalize-DsXoykZY.js} +89 -89
  128. package/dist/{onboarding.gateway-config-B5jnM62F.js → onboarding.gateway-config-B1orRdI7.js} +18 -18
  129. package/dist/{openai-model-default-eaULYpD0.js → openai-model-default-DRYz3m4d.js} +2 -2
  130. package/dist/{outbound-CF1Hd23W.js → outbound-BGJh4s6Y.js} +4 -4
  131. package/dist/{outbound-attachment-BMlPpVOn.js → outbound-attachment-Baso-yal.js} +2 -2
  132. package/dist/{pairing-cli-DkVLCjGa.js → pairing-cli-DgUIYETM.js} +9 -9
  133. package/dist/{pairing-labels-CesrJlbr.js → pairing-labels-BPTURWrI.js} +1 -1
  134. package/dist/{pairing-store-BcJH8WDh.js → pairing-store-WGGwqFJB.js} +3 -3
  135. package/dist/{path-alias-guards-C_j0uB0Y.js → path-alias-guards-DdR4BKPM.js} +3 -3
  136. package/dist/{path-safety-BHBxNYfO.js → path-safety-DiJhMaUA.js} +1 -1
  137. package/dist/{paths-Bj8pNglF.js → paths-BPXmr3Zn.js} +9 -9
  138. package/dist/{pi-embedded-DbU5C8eR.js → pi-embedded-BJ2D2U7f.js} +22 -22
  139. package/dist/{pi-embedded-helpers-DAITpRHR.js → pi-embedded-helpers-BL7vjkKS.js} +3 -3
  140. package/dist/{pi-embedded-helpers-Cc4tC0fE.js → pi-embedded-helpers-ET1kDdN1.js} +6 -6
  141. package/dist/{pi-model-discovery-ItDCP5Ab.js → pi-model-discovery-COnY_kTM.js} +1 -1
  142. package/dist/{pi-tools.policy-BbLCMNCc.js → pi-tools.policy-Cp3wptYh.js} +5 -5
  143. package/dist/{plugin-auto-enable-BxiIEIvc.js → plugin-auto-enable-Bm8hMcPA.js} +3 -3
  144. package/dist/{plugin-registry-DT2OvA5Z.js → plugin-registry-DWd-znRA.js} +3 -3
  145. package/dist/plugin-sdk/{accounts-DFIfXHdI.js → accounts-B_Sil4df.js} +3 -3
  146. package/dist/plugin-sdk/{accounts-BME088co.js → accounts-CqgyHS8h.js} +1 -1
  147. package/dist/plugin-sdk/{accounts-CxgIc7BC.js → accounts-kIersDAH.js} +1 -1
  148. package/dist/plugin-sdk/{active-listener-Dx4YdW0B.js → active-listener-B1c6rQRy.js} +1 -1
  149. package/dist/plugin-sdk/{agent-scope-BL5NPpGJ.js → agent-scope-DS0HILk_.js} +3 -3
  150. package/dist/plugin-sdk/{api-key-rotation-DZ1mvKN0.js → api-key-rotation-C2Z5xB6w.js} +2 -2
  151. package/dist/plugin-sdk/{audio-preflight-B8r8qUhZ.js → audio-preflight-Byc0yvPV.js} +33 -33
  152. package/dist/plugin-sdk/{audio-transcription-runner-B8gQ16hV.js → audio-transcription-runner-DHcTy4Wb.js} +10 -10
  153. package/dist/plugin-sdk/{bindings-YKerL1Tc.js → bindings-D8UvbNti.js} +2 -2
  154. package/dist/plugin-sdk/{channel-activity-Dzyx86FD.js → channel-activity-CMtaqeTg.js} +3 -3
  155. package/dist/plugin-sdk/{channel-web-dQSyVWDp.js → channel-web-D3N-Ttls.js} +23 -23
  156. package/dist/plugin-sdk/{chrome-Hte84S6l.js → chrome-DoDlUT7F.js} +7 -7
  157. package/dist/plugin-sdk/{chunk-4pLJcTE-.js → chunk-BuHZrtLn.js} +1 -1
  158. package/dist/plugin-sdk/{command-format-TmcJI6nP.js → command-format-9ttCUvaP.js} +1 -1
  159. package/dist/plugin-sdk/{commands-registry-D1UwEKAH.js → commands-registry-ydkoxruZ.js} +5 -5
  160. package/dist/plugin-sdk/{config-kqUrcUGI.js → config-BkeO1N4t.js} +10 -10
  161. package/dist/plugin-sdk/{deliver-DymnzypV.js → deliver-BcAT1l6Y.js} +11 -11
  162. package/dist/plugin-sdk/{diagnostic-1MgpiorV.js → diagnostic-BefhWusS.js} +2 -2
  163. package/dist/plugin-sdk/{dock-Csf-65jq.js → dock-yYEdNzbx.js} +6 -6
  164. package/dist/plugin-sdk/{errors-BRahpZsP.js → errors-D2KyTKs6.js} +1 -1
  165. package/dist/plugin-sdk/{fetch-guard-cD2GBmNp.js → fetch-guard-BC92RxgN.js} +2 -2
  166. package/dist/plugin-sdk/{fs-safe-DgdRzasF.js → fs-safe-CC4mG_Hc.js} +3 -3
  167. package/dist/plugin-sdk/{image-m9sEMr_K.js → image-Cjm_y1ht.js} +6 -6
  168. package/dist/{image-ops-HxQLrFqd.js → plugin-sdk/image-ops-CfQjZch5.js} +11 -11
  169. package/dist/plugin-sdk/index.js +64 -64
  170. package/dist/plugin-sdk/{ir-DyMWDxUp.js → ir-CLKvSg7X.js} +6 -6
  171. package/dist/plugin-sdk/{local-roots-ChmGReXd.js → local-roots-DYmtEf6P.js} +4 -4
  172. package/dist/plugin-sdk/{logger-BwzMchOl.js → logger-Dqmpx59X.js} +1 -1
  173. package/dist/plugin-sdk/{login-DIgrxuIQ.js → login-DYEbRdfH.js} +6 -6
  174. package/dist/plugin-sdk/{login-qr-DeAbaqfx.js → login-qr-0YUEfC35.js} +9 -9
  175. package/dist/plugin-sdk/{manager-Bic1h3Nu.js → manager-J_9hr0Yu.js} +10 -10
  176. package/dist/plugin-sdk/{markdown-tables-BEWLluuz.js → markdown-tables-BA_MdGIq.js} +1 -1
  177. package/dist/plugin-sdk/{message-channel-Be6xIObc.js → message-channel-CeYrurhu.js} +1 -1
  178. package/dist/plugin-sdk/{outbound-D7OdBk5M.js → outbound-B386FQiU.js} +7 -7
  179. package/dist/plugin-sdk/{outbound-attachment-Y-wO2Csk.js → outbound-attachment-DgC7KgEZ.js} +2 -2
  180. package/dist/plugin-sdk/{path-alias-guards-CsekuFRi.js → path-alias-guards-KB1li1UU.js} +1 -1
  181. package/dist/plugin-sdk/{pi-embedded-helpers-BWFPgWTA.js → pi-embedded-helpers-CbevdnHV.js} +17 -17
  182. package/dist/plugin-sdk/{pi-model-discovery-DRomJojM.js → pi-model-discovery-Blr1NdM4.js} +1 -1
  183. package/dist/plugin-sdk/{plugins-DKZ5hSLA.js → plugins-Dupyelyu.js} +6 -6
  184. package/dist/plugin-sdk/{proxy-DIYzaAvh.js → proxy-CnPaiSZ0.js} +1 -1
  185. package/dist/plugin-sdk/{proxy-fetch-X6Ja_eZx.js → proxy-fetch-BY4mmpys.js} +1 -1
  186. package/dist/plugin-sdk/{pw-ai-MuLgIL01.js → pw-ai-C1rLCgeF.js} +13 -13
  187. package/dist/plugin-sdk/{qmd-manager-D3p7PB5n.js → qmd-manager-BtfjLkaZ.js} +8 -8
  188. package/dist/plugin-sdk/{query-expansion-C90Jc5uo.js → query-expansion-DgHoeKXG.js} +2 -2
  189. package/dist/plugin-sdk/{redact-DEfi9F2o.js → redact-Civ2olvH.js} +1 -1
  190. package/dist/plugin-sdk/{registry-BfD4IdFK.js → registry-Cq-TQPU8.js} +2 -2
  191. package/dist/plugin-sdk/{replies-GRjUBMUL.js → replies-a2WeMkU6.js} +3 -3
  192. package/dist/plugin-sdk/{reply-BlPlf4OC.js → reply-C2XVty9G.js} +93 -93
  193. package/dist/plugin-sdk/{reply-prefix-CobEDhG_.js → reply-prefix-BRomwQau.js} +1 -1
  194. package/dist/plugin-sdk/{resolve-outbound-target-DkNri48r.js → resolve-outbound-target-B_xKgqWe.js} +2 -2
  195. package/dist/plugin-sdk/{resolve-route-fu19EHnm.js → resolve-route-yLtq9xkG.js} +4 -4
  196. package/dist/plugin-sdk/{retry-Agt7ZiSn.js → retry-D9aKv766.js} +1 -1
  197. package/dist/plugin-sdk/{send-BUpepCol.js → send-Bs-YbYdN.js} +6 -6
  198. package/dist/plugin-sdk/{send-BB06ROuk.js → send-Ct2mLh8U.js} +15 -15
  199. package/dist/plugin-sdk/{send-C5ymrC3h.js → send-WwwzoTNW.js} +7 -7
  200. package/dist/plugin-sdk/{send-DwXcBQYC.js → send-_MTxUi5p.js} +8 -8
  201. package/dist/plugin-sdk/{send-CvC0d45Z.js → send-kJXSgFcu.js} +10 -10
  202. package/dist/plugin-sdk/{session-D8BNggg2.js → session-Bfpm71Tg.js} +5 -5
  203. package/dist/plugin-sdk/{session-meta-DYb6KCvG.js → session-meta-CM4K7B00.js} +1 -1
  204. package/dist/plugin-sdk/{sessions-BtJmhzev.js → sessions-DFx8MKSO.js} +6 -6
  205. package/dist/plugin-sdk/{skill-commands-C3OZ4W61.js → skill-commands-CakvOluN.js} +5 -5
  206. package/dist/plugin-sdk/{skills-CIvz2coj.js → skills-CZFBOkwT.js} +8 -8
  207. package/dist/plugin-sdk/{ssrf-EGzUkeVq.js → ssrf-BjVCUeM7.js} +1 -1
  208. package/dist/plugin-sdk/{store-Dij_2k2X.js → store-DALs5PIC.js} +2 -2
  209. package/dist/plugin-sdk/{subsystem-C84uWxqx.js → subsystem-DQdKZm8Z.js} +2 -2
  210. package/dist/plugin-sdk/{tables-CTWsNiUf.js → tables-BQwHnOX0.js} +1 -1
  211. package/dist/plugin-sdk/{target-errors-Bgd_Uo0g.js → target-errors-DqlHqAmV.js} +2 -2
  212. package/dist/plugin-sdk/{tokens-B9E-mnf_.js → tokens-C_Ieeb03.js} +1 -1
  213. package/dist/plugin-sdk/{tool-images-0gnewwTL.js → tool-images-RhD8geto.js} +2 -2
  214. package/dist/plugin-sdk/{tool-loop-detection-Bsh07kcw.js → tool-loop-detection-CKnmaEeR.js} +2 -2
  215. package/dist/plugin-sdk/{utils-BA7Xm0uM.js → utils-hxOwZduA.js} +1 -1
  216. package/dist/plugin-sdk/web-DLrSMEN4.js +72 -0
  217. package/dist/plugin-sdk/{whatsapp-actions-BLoPRR5B.js → whatsapp-actions-CudQXAzF.js} +25 -25
  218. package/dist/{plugins--_65-dc5.js → plugins-CO6qDFdk.js} +2 -2
  219. package/dist/{plugins-cli-BmJ7h0-l.js → plugins-cli-B90nR_VK.js} +86 -86
  220. package/dist/{ports-Cw4Nwv2D.js → ports-CUjMnvTs.js} +1 -1
  221. package/dist/{ports-DgCQT1oY.js → ports-Dczj_PV_.js} +2 -2
  222. package/dist/{program-CStT3Tdz.js → program-CoUWrOuU.js} +84 -84
  223. package/dist/{program-context-uwFKpk8g.js → program-context-BW36TXnn.js} +7 -7
  224. package/dist/{prompt-select-styled-ByCoxIUa.js → prompt-select-styled-BY0UebAF.js} +1 -1
  225. package/dist/{prompt-select-styled-BOM_B36f.js → prompt-select-styled-CCeKGXxa.js} +39 -39
  226. package/dist/{provider-auth-helpers-BubJ5s-y.js → provider-auth-helpers-Btf9aI1h.js} +5 -5
  227. package/dist/{proxy-env-DHBs_DSq.js → proxy-env-DQGTNk9X.js} +1 -1
  228. package/dist/{push-apns-Ck9shhvZ.js → push-apns-CzIypSJf.js} +5 -5
  229. package/dist/{pw-ai-BlcIl51R.js → pw-ai-B5Q17lfW.js} +1 -1
  230. package/dist/{pw-ai-DYEHR6w8.js → pw-ai-D1Ry3gcn.js} +15 -15
  231. package/dist/{qmd-manager-BHSD3_rI.js → qmd-manager-BNFUTVvk.js} +20 -20
  232. package/dist/{qr-cli-CKOGSVK_.js → qr-cli-BTrl8Tw4.js} +1 -1
  233. package/dist/{query-expansion-BkWbp0bs.js → query-expansion-CP4BjmxS.js} +12 -12
  234. package/dist/{redact-snapshot-BzZpHz-O.js → redact-snapshot-QpVJSBBX.js} +1 -1
  235. package/dist/{register.agent-DT71MEX9.js → register.agent-BksD8xqL.js} +97 -97
  236. package/dist/register.configure-CJVJLDtX.js +175 -0
  237. package/dist/{register.init-CIS-LY0i.js → register.init-ChyHcEAX.js} +24 -34
  238. package/dist/{register.init-BzRts3RZ.js → register.init-EOlDrQTS.js} +9 -19
  239. package/dist/{register.maintenance-BTwdTZnP.js → register.maintenance-BiWaNm96.js} +4 -4
  240. package/dist/{register.maintenance-DWo73fOE.js → register.maintenance-C0zxZg0K.js} +99 -99
  241. package/dist/{register.message-6kMQG_ny.js → register.message-DW2G2t5n.js} +77 -77
  242. package/dist/{register.onboard-ps-7r0Bx.js → register.onboard-CBbSomv2.js} +2 -2
  243. package/dist/{register.onboard-Cu-xLkmj.js → register.onboard-DeZ6BYWf.js} +18 -18
  244. package/dist/{register.setup-DFniVrQp.js → register.setup-DFYvGlPy.js} +2 -2
  245. package/dist/{register.setup-DOgl3Biv.js → register.setup-DWdi6O74.js} +21 -21
  246. package/dist/{register.start-D0pe3Bgs.js → register.start-CbfmMKWY.js} +17 -17
  247. package/dist/{register.status-health-sessions-tMSX9Z5o.js → register.status-health-sessions-CMZuvcON.js} +91 -91
  248. package/dist/{register.subclis-BMjHVUZN.js → register.subclis-CS79-xpm.js} +31 -31
  249. package/dist/{replies-uQ56Hw52.js → replies-Dx5zA8IX.js} +1 -1
  250. package/dist/{reply-prefix-XmrGZdy_.js → reply-prefix-CS57j6KU.js} +1 -1
  251. package/dist/{resolve-route-Ukn_7wVk.js → resolve-route-Bxji0kZW.js} +2 -2
  252. package/dist/{rpc-3QEhCMY4.js → rpc-cRmU1tSk.js} +1 -1
  253. package/dist/{run-main-DoPcdD6j.js → run-main-BH5kmZli.js} +95 -95
  254. package/dist/{runtime-B4lkRQQD.js → runtime-COI_IE2j.js} +2 -2
  255. package/dist/{sandbox-CEIoYXZN.js → sandbox-BNSLjYyu.js} +18 -18
  256. package/dist/{sandbox-cli-BrTy3weD.js → sandbox-cli-C1OPjNfD.js} +26 -26
  257. package/dist/{secrets-cli-DeFPoA0b.js → secrets-cli-7Md_QcpC.js} +10 -10
  258. package/dist/{security-cli-CpDjK_Rg.js → security-cli-D68NIF3V.js} +43 -43
  259. package/dist/{send-CtAy9-2u.js → send-BpYBrb6S.js} +5 -5
  260. package/dist/{send-6U8MorA7.js → send-C8xKNHVm.js} +6 -6
  261. package/dist/{send-CVDGeH7A.js → send-CUvJIfFz.js} +11 -11
  262. package/dist/{send-BY8NE-y9.js → send-DX2I6KZU.js} +8 -8
  263. package/dist/{send-BdKdRPi6.js → send-DikEpk7w.js} +6 -6
  264. package/dist/{server-C9XFPL3c.js → server-D_wuOlkf.js} +19 -19
  265. package/dist/{server-context-DtOlWY9P.js → server-context-Dl8XC4vq.js} +12 -12
  266. package/dist/{server-lifecycle-CXzU2NM3.js → server-lifecycle-BIuR7Tj0.js} +2 -2
  267. package/dist/{server-middleware-Bp3DeSvQ.js → server-middleware-C_4mR9wU.js} +1 -1
  268. package/dist/{server-node-events-BcOJ7KmG.js → server-node-events-B-IAFJfU.js} +77 -77
  269. package/dist/{service-DPP3q6R4.js → service-BcyKtT1n.js} +15 -15
  270. package/dist/{session-6uNAHyWp.js → session-DyGs2JIG.js} +1 -1
  271. package/dist/{session-meta-DGKTOhxQ.js → session-meta-C7WybT5h.js} +1 -1
  272. package/dist/{session-utils-hbZzVDyj.js → session-utils-CYaFN47T.js} +6 -6
  273. package/dist/{sessions-CbWqJtkx.js → sessions-Cd7cVPC-.js} +4 -4
  274. package/dist/{sessions-DB4MRK6L.js → sessions-i5lEEEca.js} +15 -15
  275. package/dist/{shared-yo9kxQZW.js → shared-BKC5qsuY.js} +3 -3
  276. package/dist/{shared-D6mi8wP1.js → shared-CL0m0H8G.js} +1 -1
  277. package/dist/{skill-commands-Duha9iIC.js → skill-commands-Cl6M7kpE.js} +5 -5
  278. package/dist/{skill-scanner-Di-O2Hg-.js → skill-scanner-WUtERLdW.js} +6 -6
  279. package/dist/{skills-dNa7QxCF.js → skills-B18XPCNc.js} +3 -3
  280. package/dist/{skills-cli-Dkjzn2SU.js → skills-cli-C0gXv9PH.js} +5 -5
  281. package/dist/{skills-install-ARBA7lP0.js → skills-install-DYR6yH15.js} +6 -6
  282. package/dist/{skills-status-B4yuFDEj.js → skills-status-D9Rnj4xI.js} +1 -1
  283. package/dist/{status-CfL923KW.js → status-Dwe_iuCP.js} +26 -26
  284. package/dist/{status.update-aARe-MF6.js → status.update-C0psHodW.js} +2 -2
  285. package/dist/{store-BpvlJ70I.js → store-D-c26kSk.js} +5 -5
  286. package/dist/{subagent-registry-DEFti4F9.js → subagent-registry-eE5PhOhY.js} +157 -157
  287. package/dist/{system-cli-CYspMbRb.js → system-cli-kpN0Gb37.js} +9 -9
  288. package/dist/{system-run-command-BJQ7Q63p.js → system-run-command-DFxer2oq.js} +1 -1
  289. package/dist/{systemd-BtVy3Rbo.js → systemd-ebIdQGFn.js} +9 -9
  290. package/dist/{systemd-hints-BetNJuAX.js → systemd-hints-tCX_kug7.js} +6 -6
  291. package/dist/{systemd-linger-CWPZsER4.js → systemd-linger-IFrOwkb9.js} +1 -1
  292. package/dist/{tables-Bv2Hq-F0.js → tables-FZbGazqi.js} +1 -1
  293. package/dist/{tailnet-Dynp_Pgs.js → tailnet-BKoOcmOa.js} +1 -1
  294. package/dist/{target-errors-Bwi1jTIf.js → target-errors-CL097N6P.js} +4 -4
  295. package/dist/{tool-images-D7dXfsZW.js → tool-images-CXfdtMwT.js} +1 -1
  296. package/dist/{tui-CYj3VX-Y.js → tui-D3HyXPhF.js} +6 -6
  297. package/dist/{tui-cli-g7SERHtf.js → tui-cli-BYXDIVRr.js} +33 -33
  298. package/dist/{update-DbGfT3_u.js → update-D372fHKr.js} +3 -3
  299. package/dist/{update-cli-CO3mOkqg.js → update-cli-D2hEVao1.js} +4 -4
  300. package/dist/{update-cli-ny6m1bJQ.js → update-cli-DZeEWYpT.js} +107 -107
  301. package/dist/{update-runner-BjX-ARIw.js → update-runner-j5RoheCK.js} +16 -16
  302. package/dist/{web-DoyNp6wO.js → web-DcyT3FlY.js} +6 -6
  303. package/dist/web-Kse4dEsw.js +127 -0
  304. package/dist/{webhooks-cli-CoxuOMZ6.js → webhooks-cli-DgLGWDer.js} +6 -6
  305. package/dist/{whatsapp-actions-0CZKI1og.js → whatsapp-actions-BC00XF83.js} +19 -19
  306. package/dist/{with-timeout-cpgy0l-9.js → with-timeout-DvPUrPuK.js} +3 -3
  307. package/dist/{workspace-DYiAh9n2.js → workspace-Cuq5sS-4.js} +1 -1
  308. package/dist/{workspace-DtFDeYRa.js → workspace-DkRZH7vl.js} +23 -23
  309. package/dist/{workspace-dirs-BAyX7JI2.js → workspace-dirs-DBhaJ0y_.js} +1 -1
  310. package/dist/{wsl-CiVud8tt.js → wsl-KDz114y6.js} +2 -2
  311. package/package.json +1 -1
  312. package/dist/plugin-sdk/web-D48I7g5u.js +0 -72
  313. package/dist/register.configure-BWunAqlW.js +0 -175
  314. package/dist/web-CqfFsaTH.js +0 -127
@@ -4,122 +4,122 @@ import { g as resolveStateDir, r as STATE_DIR, u as resolveGatewayPort, y as res
4
4
  import { d as defaultRuntime, t as createSubsystemLogger, u as createNonExitingRuntime } from "./subsystem-CD-_2ECk.js";
5
5
  import { t as parseBooleanValue$1 } from "./boolean-DtWR5bt3.js";
6
6
  import { r as isTruthyEnvValue } from "./entry.js";
7
- import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-CDN1QqUB.js";
7
+ import { $n as resolveAuthStorePathForDisplay, $r as buildAssistantMessageWithZeroUsage, Ai as DEFAULT_MODEL, Bn as listProfilesForProvider, Bt as unsetConfigValueAtPath, Cr as resolveReasoningDefault, Ct as isAvatarDataUrl, Dn as resolveSlackNativeStreaming, Dt as isSupportedLocalAvatarExtension, En as resolveDiscordPreviewStreamMode, Er as resolveThinkingDefault, Et as isPathWithinRoot, Ft as setConfigOverride, G as isInboundPathAllowed, H as normalizeTelegramCommandName, I as resolveConfigSnapshotHash, It as unsetConfigOverride, J as resolveIMessageRemoteAttachmentRoots, Jt as buildEnforcedShellCommand, Kn as ensureAuthProfileStore, Ln as resolveOwnerDisplaySetting, Lt as getConfigValueAtPath, M as loadConfig, Mi as resolveAuthProfileDisplayLabel, Nn as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, Nt as getConfigOverrides, Oi as splitTrailingAuthProfile, On as resolveSlackStreamingMode, P as readConfigFileSnapshot, Pn as resolveAgentMaxConcurrent, Pt as resetConfigOverrides, Qr as buildAssistantMessage, R as writeConfigFile, Rt as parseConfigPath, Si as normalizeSecretInput, Sr as resolveModelRefFromString, St as AVATAR_MAX_BYTES, Tn as mapStreamingModeToSlackLegacyDraftStreamMode, Tr as resolveSubagentSpawnModelSelection, U as resolveTelegramCustomCommands, V as TELEGRAM_COMMAND_NAME_PATTERN, Vn as markAuthProfileGood, X as parseNonNegativeByteSize, Xr as OLLAMA_NATIVE_BASE_URL, Y as normalizeScpRemoteHost, Zr as createOllamaStreamFn, a as markAuthProfileFailure, ai as resolveApiKeyForProvider, ar as buildAllowedModelSet, at as parseDurationMs, br as resolveDefaultModelForAgent, c as resolveProfilesUnavailableReason, ci as resolveModelAuthMode, cr as findNormalizedProviderValue, di as resolveShellEnvFallbackTimeoutMs, dr as isCliProvider, ei as buildStreamErrorAssistantMessage, er as resolveOpenClawAgentDir, fr as modelKey, hr as normalizeProviderId, i as isProfileInCooldown, ii as requireApiKey, ji as DEFAULT_PROVIDER, jt as validateJsonSchemaValue, ki as DEFAULT_CONTEXT_TOKENS, l as resolveApiKeyForProfile, n as resolveAuthProfileOrder, ni as getApiKeyForModel, o as markAuthProfileUsed, or as buildConfiguredAllowlistKeys, pr as normalizeModelRef$2, q as resolveIMessageAttachmentRoots, r as getSoonestCooldownExpiry, ri as getCustomProviderApiKey, si as resolveEnvApiKey, sr as buildModelAliasIndex, ti as buildUsageWithNoCost, tr as withFileLock, ui as getShellPathFromLoginShell, wt as isAvatarHttpUrl, yn as applyMergePatch, yr as resolveConfiguredModelRef, z as validateConfigObjectWithPlugins, zn as dedupeProfileIds, zt as setConfigValueAtPath } from "./auth-profiles-k09E8RLJ.js";
8
8
  import { t as formatCliCommand } from "./command-format-DmULG-oQ.js";
9
- import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-qYbUVCHn.js";
9
+ import { _ as resolveAgentModelPrimaryValue, a as resolveAgentDir, d as resolveDefaultAgentId, f as resolveEffectiveModelFallbacks, g as resolveAgentModelFallbackValues, h as resolveSessionAgentIds, i as resolveAgentConfig, l as resolveAgentSkillsFilter, m as resolveSessionAgentId, p as resolveRunModelFallbacksOverride, r as listAgentIds, t as hasConfiguredModelFallbacks, u as resolveAgentWorkspaceDir, v as toAgentModelListLike } from "./agent-scope-BrbgAMci.js";
10
10
  import { C as isCronSessionKey, E as resolveThreadParentSessionKey, T as parseAgentSessionKey, _ as normalizeOptionalAccountId, b as getSubagentDepth, c as normalizeAgentId, d as resolveThreadSessionKeys, f as sanitizeAgentId, g as normalizeAccountId$2, h as DEFAULT_ACCOUNT_ID, l as normalizeMainKey, o as classifySessionKeyShape, r as buildAgentMainSessionKey, s as isValidAgentId, t as DEFAULT_AGENT_ID, u as resolveAgentIdFromSessionKey, v as isBlockedObjectKey, w as isSubagentSessionKey, x as isAcpSessionKey, y as deriveSessionChatType } from "./session-key-BLprDJYq.js";
11
11
  import { C as sliceUtf16Safe, E as isPlainObject, S as sleep$1, T as truncateUtf16Safe, b as shortenHomeInString, c as escapeRegExp, p as normalizeE164, r as clampInt, t as CONFIG_DIR, u as isRecord$1, v as resolveUserPath, x as shortenHomePath } from "./utils-BHAtQ0dM.js";
12
- import { A as isNotFoundPathError, C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, j as isPathInside, k as hasNodeErrorCode, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-DtFDeYRa.js";
12
+ import { A as isNotFoundPathError, C as openBoundaryFileSync, N as normalizeWindowsPathForComparison, S as openBoundaryFile, a as DEFAULT_IDENTITY_FILENAME, d as ensureAgentWorkspace, f as filterBootstrapFilesForSession, g as resolveWorkspaceAttachmentsRoot, j as isPathInside, k as hasNodeErrorCode, m as loadWorkspaceBootstrapFiles, n as DEFAULT_AGENT_WORKSPACE_DIR, r as DEFAULT_BOOTSTRAP_FILENAME, y as resolveOpenClawPackageRoot } from "./workspace-DkRZH7vl.js";
13
13
  import { i as logWarn, n as logError, r as logInfo, t as logDebug } from "./logger-rnlD7CTs.js";
14
14
  import { n as runExec, r as spawnWithFallback, t as runCommandWithTimeout } from "./exec-lwQ7X6bf.js";
15
15
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-b8zw2qi2.js";
16
16
  import { n as isDangerousHostEnvVarName } from "./host-env-security-CJMD0__Z.js";
17
17
  import { t as VERSION } from "./version-CGDNfh5C.js";
18
18
  import { E as triggerInternalHook, S as matchPluginCommand, _ as normalizePluginHttpPath, b as getPluginCommandSpecs, c as normalizeChannelId$1, d as getActivePluginRegistryKey, g as createPluginRegistry, m as setActivePluginRegistry, n as CHAT_CHANNEL_ORDER, p as requireActivePluginRegistry, s as normalizeAnyChannelId, u as getActivePluginRegistry, v as clearPluginCommands, w as createInternalHookEvent, x as listPluginCommands, y as executePluginCommand } from "./registry-eN0IzwTo.js";
19
- import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside$1, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-Co__Fy6F.js";
20
- import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-CHDx-TGb.js";
19
+ import { a as safeStatSync, d as normalizePluginsConfig, f as resolveEffectiveEnableState, i as isPathInside$1, l as applyTestPluginDefaults, n as loadPluginManifestRegistry, p as resolveMemorySlotDecision, r as discoverOpenClawPlugins } from "./manifest-registry-hRB5Jb3F.js";
20
+ import { a as resolveChannelGroupRequireMention, c as normalizeHyphenSlug, i as resolveChannelGroupPolicy, l as normalizeStringEntries, n as listChannelDocks, r as normalizeSignalMessagingTarget, s as normalizeAtHashSlug, t as getChannelDock, u as normalizeStringEntriesLower } from "./dock-CcEfMX5D.js";
21
21
  import { t as runTasksWithConcurrency } from "./run-with-concurrency-kzSMVKJz.js";
22
22
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-KDiSpWTU.js";
23
- import { i as buildModelAliasLines, n as resolveModel } from "./model-C30BtXEI.js";
24
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-ItDCP5Ab.js";
25
- import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-dNa7QxCF.js";
26
- import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-C_j0uB0Y.js";
23
+ import { i as buildModelAliasLines, n as resolveModel } from "./model-Cd4C4aY1.js";
24
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-COnY_kTM.js";
25
+ import { a as resolveSkillsPromptForRun, d as resolveSandboxInputPath, h as applySkillEnvOverridesFromSnapshot, i as loadWorkspaceSkillEntries, l as assertMediaNotDataUrl, m as applySkillEnvOverrides, p as resolveSandboxedMediaSource, r as buildWorkspaceSkillSnapshot, u as assertSandboxPath } from "./skills-B18XPCNc.js";
26
+ import { t as PATH_ALIAS_POLICIES } from "./path-alias-guards-DdR4BKPM.js";
27
27
  import { a as isInternalMessageChannel, c as listDeliverableMessageChannels, d as resolveMessageChannel, h as GATEWAY_CLIENT_NAMES, i as isGatewayMessageChannel, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, o as isMarkdownCapableMessageChannel, p as GATEWAY_CLIENT_IDS, t as INTERNAL_MESSAGE_CHANNEL, u as resolveGatewayMessageChannel } from "./message-channel-bQJz_2wn.js";
28
- import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-DB4MRK6L.js";
28
+ import { C as normalizeSessionDeliveryFields, D as capArrayByJsonBytes, E as archiveSessionTranscripts, F as parseInlineDirectives$1, G as resolveSessionResetPolicy, H as resolveSessionKey, J as DEFAULT_RESET_TRIGGERS, K as resolveSessionResetType, R as jsonUtf8Bytes, S as normalizeDeliveryContext, U as evaluateSessionFreshness, V as resolveSessionLockMaxHoldFromTimeout, W as resolveChannelResetConfig, X as resolveFreshSessionTotalTokens, Y as mergeSessionEntry, Z as setSessionRuntimeModel, _ as isCacheEnabled, a as resolveAndPersistSessionFile, b as deliveryContextKey, c as recordSessionMetaFromInbound, ct as resolveGroupSessionKey, d as updateSessionStore, et as resolveExplicitAgentSessionKey, f as updateSessionStoreEntry, n as parseSessionThreadInfo, o as loadSessionStore, q as resolveThreadFlag, r as appendAssistantMessageToSessionTranscript, rt as deriveSessionMetaPatch, s as readSessionUpdatedAt, t as extractDeliveryInfo, tt as resolveMainSessionKey, u as updateLastRoute, v as resolveCacheTtlMs$1, w as normalizeAccountId$3, x as mergeDeliveryContext, y as deliveryContextFromSession, z as acquireSessionWriteLock } from "./sessions-i5lEEEca.js";
29
29
  import { t as normalizeChatType } from "./chat-type-CfYBRycO.js";
30
30
  import { n as resolveConversationLabel } from "./conversation-label-mOUC6IlY.js";
31
31
  import { t as resolveAccountEntry } from "./account-lookup-9wuXWwa_.js";
32
- import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins--_65-dc5.js";
33
- import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-CzfKkJDx.js";
34
- import { r as resolveIMessageAccount } from "./accounts-YtMo-RPC.js";
35
- import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-CQrvvU8V.js";
36
- import { t as buildChannelAccountBindings } from "./bindings-D9ZiGe2K.js";
37
- 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-CtAy9-2u.js";
38
- 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-CVDGeH7A.js";
32
+ import { C as resolveDiscordAccount, _ as isWhatsAppGroupJid, a as createTelegramActionGate, g as resolveSlackBotToken, h as resolveSlackAppToken, l as resolveTelegramAccount, m as resolveSlackReplyToMode, n as listChannelPlugins, o as listEnabledTelegramAccounts, p as resolveSlackAccount, r as normalizeChannelId$2, s as listTelegramAccountIds, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeWhatsAppTarget, w as normalizeDiscordToken, x as listEnabledDiscordAccounts, y as createDiscordActionGate } from "./plugins-CO6qDFdk.js";
33
+ import { _ as webAuthExists, c as logWebSelfId, i as resolveWhatsAppAccount, l as logoutWeb, p as readWebSelfId, s as getWebAuthAgeMs } from "./accounts-CTKra7aS.js";
34
+ import { r as resolveIMessageAccount } from "./accounts-B4wV9IFm.js";
35
+ import { i as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-DtaSiAum.js";
36
+ import { t as buildChannelAccountBindings } from "./bindings-C9vpkXej.js";
37
+ 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-BpYBrb6S.js";
38
+ 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-CUvJIfFz.js";
39
39
  import { c as resolveStorePath, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, r as resolveSessionFilePathOptions, t as resolveDefaultSessionStorePath } from "./paths-Be1MArvM.js";
40
40
  import { i as normalizeInputProvenance, n as applyInputProvenanceToUserMessage, r as hasInterSessionUserProvenance } from "./input-provenance-BDYpbBeC.js";
41
- import { r as writeJsonAtomic } from "./json-files-1hhV5hS6.js";
41
+ import { r as writeJsonAtomic } from "./json-files-DrZ4qfxw.js";
42
42
  import { n as onSessionTranscriptUpdate, t as emitSessionTranscriptUpdate } from "./transcript-events-GAEkuGlu.js";
43
- import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-Swf30UOh.js";
44
- import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-BSBuLNiX.js";
45
- import { r as isLoopbackHost } from "./net-DrfP4uzJ.js";
43
+ import { Ft as SESSION_LABEL_MAX_LENGTH, t as GatewayClient } from "./client-CIji7FpE.js";
44
+ import { a as randomIdempotencyKey, d as resolveLeastPrivilegeOperatorScopesForMethod, n as callGateway, r as callGatewayLeastPrivilege, t as buildGatewayConnectionDetails } from "./call-CBH5yDff.js";
45
+ import { r as isLoopbackHost } from "./net-Bxr80JTs.js";
46
46
  import { r as trimToUndefined, t as resolveGatewayCredentialsFromConfig } from "./credentials-DfK6Oke5.js";
47
47
  import { a as stripSilentToken, i as isSilentReplyText, n as SILENT_REPLY_TOKEN, r as isSilentReplyPrefixText, t as HEARTBEAT_TOKEN } from "./tokens-C5eaMCmn.js";
48
- import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-cpgy0l-9.js";
48
+ import { a as getMachineDisplayName, i as startBrowserControlServiceFromConfig, n as createBrowserRouteDispatcher, r as createBrowserControlContext, t as withTimeout$4 } from "./with-timeout-DvPUrPuK.js";
49
49
  import { n as generateSecureUuid, t as generateSecureToken } from "./secure-random-C6AVByhV.js";
50
- import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-CQmmhMaR.js";
51
- import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-C5Por-ID.js";
50
+ import { A as initializeGlobalHookRunner, C as toInternalMessagePreprocessedContext, D as toPluginMessageReceivedEvent, E as toPluginMessageContext, O as fireAndForgetHook, S as deriveInboundMessageHookContext, T as toInternalMessageTranscribedContext, _ as createReplyToModeFilterForChannel, a as normalizeOutboundPayloadsForJson, b as normalizeChannelTargetInput, c as parseReplyDirectives, d as applyReplyThreading, f as filterMessagingToolDuplicates, g as shouldSuppressReasoningPayload, h as shouldSuppressMessagingToolReplies, i as normalizeOutboundPayloads, k as getGlobalHookRunner, l as splitMediaFromOutput, m as isRenderablePayload, o as normalizeReplyPayloadsForDelivery, p as filterMessagingToolMediaDuplicates, r as formatOutboundPayloadLog, s as throwIfAborted, t as deliverOutboundPayloads, u as applyReplyTagsToPayload, v as resolveReplyToMode, w as toInternalMessageReceivedContext, x as normalizeTargetForProvider, y as buildTargetResolverSignature } from "./deliver-Bm4UojU1.js";
51
+ import { a as logMessageProcessed, c as logWebhookError, d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, i as logLaneEnqueue, l as logWebhookProcessed, m as isDiagnosticsEnabled, o as logMessageQueued, p as emitDiagnosticEvent, r as logLaneDequeue, s as logSessionStateChange, t as diag, u as logWebhookReceived } from "./diagnostic-DOls91uN.js";
52
52
  import { n as getDiagnosticSessionState } from "./diagnostic-session-state-B5Z0I32_.js";
53
- import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-BY8NE-y9.js";
54
- 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-HxQLrFqd.js";
55
- import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isCompactionFailureError, x as isAuthPermanentErrorMessage, y as getApiErrorPayloadFingerprint, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-Cc4tC0fE.js";
56
- import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-CEIoYXZN.js";
57
- import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-zP7qr3zd.js";
58
- import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-DtOlWY9P.js";
59
- import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-Bj8pNglF.js";
53
+ import { A as buildTypingThreadParams, B as resolveTelegramReplyId, C as buildGroupLabel, D as buildTelegramGroupPeerId, E as buildTelegramGroupFrom, F as normalizeForwardedContext, G as normalizeDmAllowFromWithStore$1, H as resolveTelegramThreadSpec, I as resolveTelegramDirectPeerId, J as toLocationContext, K as resolveSenderAllowMatch$1, L as resolveTelegramForumThreadId, M as expandTextLinks, N as extractTelegramLocation, O as buildTelegramParentPeer, P as hasBotMention, R as resolveTelegramGroupAllowFromContext, T as buildSenderName, U as isSenderAllowed$1, V as resolveTelegramStreamMode, W as normalizeAllowFrom$2, X as parseTelegramTarget, Y as isVoiceCompatibleAudio, Z as resolveTelegramTargetChatType, _ as resolveTelegramFetch, a as reactMessageTelegram, b as loadCronStore, c as sendStickerTelegram, d as wasSentByBot, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as describeReplyTarget, k as buildTelegramThreadParams, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as formatLocationText, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildSenderLabel, x as resolveCronStorePath, y as withTelegramApiErrorLogging, z as resolveTelegramMediaPlaceholder } from "./send-DX2I6KZU.js";
54
+ 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-B2K36FLD.js";
55
+ import { A as isRawApiErrorPayload, B as sanitizeGoogleTurnOrdering, C as isCloudCodeAssistFormatError, D as isFailoverErrorMessage, E as isFailoverAssistantError, F as sanitizeUserFacingText, I as buildBootstrapContextFiles, L as ensureSessionHeader, M as isTransientHttpError, N as parseImageDimensionError, O as isLikelyContextOverflowError, P as parseImageSizeError, R as resolveBootstrapMaxChars, S as isBillingAssistantError, T as isContextOverflowError, _ as formatBillingErrorMessage, a as isMessagingToolDuplicateNormalized, b as isAuthAssistantError, c as extractToolCallsFromAssistant, d as downgradeOpenAIFunctionCallReasoningPairs, f as downgradeOpenAIReasoningBlocks, g as formatAssistantErrorText, h as classifyFailoverReason, j as isTimeoutErrorMessage, k as isRateLimitAssistantError, l as extractToolResultId, m as BILLING_ERROR_USER_MESSAGE, n as validateGeminiTurns, o as normalizeTextForComparison, p as isGoogleModelApi, r as pickFallbackThinkingLevel, s as sanitizeSessionMessagesImages, t as validateAnthropicTurns, u as sanitizeToolCallIdsForCloudCodeAssist, v as formatRawAssistantErrorForUi, w as isCompactionFailureError, x as isAuthPermanentErrorMessage, y as getApiErrorPayloadFingerprint, z as resolveBootstrapTotalMaxChars } from "./pi-embedded-helpers-ET1kDdN1.js";
56
+ import { C as resolveToolProfilePolicy, S as normalizeToolName, T as matchesAnyGlobPattern, _ as collectExplicitAllowlist, a as ensureSandboxWorkspaceForSession, b as stripPluginOnlyAllowlist, c as resolveSandboxRuntimeStatus, d as getBridgeAuthForPort, f as resolveSandboxConfigForAgent, g as buildPluginToolGroups, h as applyOwnerOnlyToolPolicy, o as resolveSandboxContext, v as expandPolicyWithPluginGroups, w as compileGlobPatterns, y as mergeAlsoAllowPolicy } from "./sandbox-BNSLjYyu.js";
57
+ import { j as DEFAULT_AI_SNAPSHOT_MAX_CHARS } from "./chrome-BVlYi4nu.js";
58
+ import { c as resolveBrowserControlAuth, i as resolveBrowserConfig } from "./server-context-Dl8XC4vq.js";
59
+ import { i as resolveExistingPathsWithinRoot, r as DEFAULT_UPLOAD_DIR } from "./paths-BPXmr3Zn.js";
60
60
  import { a as testRegexWithBoundedInput, i as compileSafeRegex, n as redactSensitiveText } from "./redact-BMVmEUXt.js";
61
61
  import { i as formatUncaughtError, r as formatErrorMessage, s as readErrorName } from "./errors-BkARgYnD.js";
62
- import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe-BQS_SZ0h.js";
63
- import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-DHBs_DSq.js";
64
- import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-BpvlJ70I.js";
65
- import { i as resolveLsofCommandSync } from "./ports-DgCQT1oY.js";
66
- import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-D7dXfsZW.js";
62
+ import { i as openFileWithinRoot, l as writeFileWithinRoot, n as copyFileWithinRoot, o as readFileWithinRoot, r as createRootScopedReadFile, t as SafeOpenError } from "./fs-safe--YXsniNZ.js";
63
+ import { a as isBlockedHostnameOrIp, c as normalizeHostname, n as SsrFBlockedError } from "./proxy-env-DQGTNk9X.js";
64
+ import { i as saveMediaBuffer, r as getMediaDir, t as MEDIA_MAX_BYTES } from "./store-D-c26kSk.js";
65
+ import { i as resolveLsofCommandSync } from "./ports-Dczj_PV_.js";
66
+ import { a as canonicalizeBase64, i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, o as estimateBase64DecodedBytes, r as sanitizeToolResultImages } from "./tool-images-CXfdtMwT.js";
67
67
  import { a as normalizeElevatedLevel, c as normalizeUsageDisplay, d as supportsXHighThinking, l as normalizeVerboseLevel, n as formatXHighModelHint, o as normalizeReasoningLevel, s as normalizeThinkLevel, t as formatThinkingLevels, u as resolveResponseUsageMode } from "./thinking-BxCyPtl0.js";
68
- import { t as ensureOpenClawModelsJson } from "./models-config-NbV2Gu7N.js";
69
- import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-Cw4xMxbI.js";
70
- import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-Bu0TwxE1.js";
71
- import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-C0pv85X0.js";
72
- import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-lTdl-0IY.js";
73
- import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g 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$1, v as resolveAttachmentKind } from "./audio-transcription-runner-CF3DjqKy.js";
68
+ import { t as ensureOpenClawModelsJson } from "./models-config-CkOKPbk9.js";
69
+ import { n as evaluateShellAllowlist, r as resolveAllowAlwaysPatterns } from "./exec-approvals-allowlist-IOB4HV3z.js";
70
+ import { n as resolveExecSafeBinRuntimePolicy, r as resolveMergedSafeBinProfileFixtures } from "./exec-safe-bin-runtime-policy-CEdwujzY.js";
71
+ import { n as loadModelCatalog, r as modelSupportsVision, t as findModelInCatalog } from "./model-catalog-Chb7lzRo.js";
72
+ import { a as getDefaultMediaLocalRoots, i as getAgentScopedMediaLocalRoots, n as fetchRemoteMedia, r as readResponseWithLimit, t as MediaFetchError } from "./fetch-BAv7yBBS.js";
73
+ import { a as resolveAutoImageModel, c as applyTemplate, d as normalizeMediaUnderstandingChatType, f as resolveMediaUnderstandingScope, g 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$1, v as resolveAttachmentKind } from "./audio-transcription-runner-DBPatTZv.js";
74
74
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-COrrU_w2.js";
75
- import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-CQZ5FOwI.js";
76
- import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-BgCM5v5-.js";
75
+ import { n as withStrictGuardedFetchMode, r as withTrustedEnvProxyGuardedFetchMode, t as fetchWithSsrFGuard } from "./fetch-guard-oYuVfv1t.js";
76
+ import { S as minimaxUnderstandImage, _ as stripThinkingTagsFromText, a as decodeDataUrl, b as isInsideCode, c as extractAssistantThinking, d as formatReasoningMessage, f as inferToolMetaFromArgs, g as stripMinimaxToolCallXml, h as stripDowngradedToolCallText, i as coerceImageModelConfig, l as extractThinkingFromTaggedStream, m as promoteThinkingTagsToBlocks, o as resolveProviderVisionModelFromConfig, p as isAssistantMessage, r as coerceImageAssistantText, s as extractAssistantText$1, u as extractThinkingFromTaggedText, v as stripReasoningTagsFromText, x as extractTextFromChatContent, y as findCodeRegions } from "./image-BOSsTjNj.js";
77
77
  import { n as formatToolSummary, r as resolveToolDisplay } from "./tool-display-B8GyZt-E.js";
78
78
  import { t as makeProxyFetch } from "./proxy-fetch-DNS2eEZm.js";
79
- import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-XmrGZdy_.js";
79
+ import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-CS57j6KU.js";
80
80
  import { a as chunkText, c as resolveChunkMode, d as isSafeFenceBreak, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, o as chunkTextWithMode, r as chunkMarkdownText, t as chunkByNewline, u as findFenceSpanAt } from "./chunk-C0-ifupK.js";
81
- import { n as resolveMarkdownTableMode } from "./markdown-tables-D47ZANhY.js";
82
- import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-C_-vG6Lv.js";
83
- import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-Bwi1jTIf.js";
84
- import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-B8w5Izi1.js";
85
- import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, 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 } from "./commands-registry-Ctux_Nq3.js";
81
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-Mk_tnsfY.js";
82
+ import { a as loadWebMedia, i as getDefaultLocalRoots, o as loadWebMediaRaw } from "./ir-BCl0dA3G.js";
83
+ import { a as ToolInputError, c as imageResultFromFile, d as readNumberParam, f as readReactionParams, h as readStringParam, l as jsonResult, m as readStringOrNumberParam, n as missingTargetError, o as createActionGate, p as readStringArrayParam, r as unknownTargetError, s as imageResult, t as ambiguousTargetError, u as parseAvailableTags } from "./target-errors-CL097N6P.js";
84
+ import { a as resolveNativeSkillsEnabled, i as resolveNativeCommandsEnabled, n as isNativeCommandsExplicitlyDisabled, r as isRestartEnabled, t as isCommandFlagEnabled } from "./commands-B7V-vN3N.js";
85
+ import { a as listChatCommands, c as listNativeCommandSpecsForConfig, d as parseCommandArgs, f as resolveCommandArgChoices, 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 } from "./commands-registry-B6LbRm3U.js";
86
86
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-DrgeDGXO.js";
87
87
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-BAIuE19S.js";
88
88
  import { n as retryAsync } from "./retry-CtBUwwIQ.js";
89
89
  import { n as formatTimeAgo } from "./format-relative-DdvuDKIv.js";
90
- import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-BcJH8WDh.js";
90
+ import { c as readJsonFileWithFallback, d as listPairingChannels, i as readChannelAllowFromStore, l as writeJsonFileAtomically, o as removeChannelAllowFromStoreEntry, s as upsertChannelPairingRequest, t as addChannelAllowFromStoreEntry } from "./pairing-store-WGGwqFJB.js";
91
91
  import { d as resolveExecApprovals, f as resolveExecApprovalsFromFile, i as maxAsk, l as recordAllowlistUse, n as addAllowlistEntry, o as minSecurity, u as requiresExecApproval } from "./exec-approvals-CUPLFghN.js";
92
- import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-DNzr75bx.js";
92
+ import { C as mergePathPrepend, S as findPathKey, a as canvasSnapshotTempPath, b as buildNodeShellCommand, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeCameraPayloadToFile, i as parseEnvPairs, l as parseCameraSnapPayload, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as parsePreparedSystemRunPayload, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile, w as normalizePathPrepend, x as applyPathPrepend } from "./nodes-screen-NjyoMja_.js";
93
93
  import { t as killProcessTree$1 } from "./kill-tree-B3qqul4J.js";
94
- import { t as formatExecCommand } from "./system-run-command-BJQ7Q63p.js";
94
+ import { t as formatExecCommand } from "./system-run-command-DFxer2oq.js";
95
95
  import { i as parsePairingList, n as resolveNodeIdFromNodeList, r as parseNodeList, t as resolveNodeFromNodeList } from "./node-resolve-kOyUD0le.js";
96
96
  import { i as formatDurationSeconds, r as formatDurationPrecise, t as formatDurationCompact$1 } from "./format-duration-BUg_QUd4.js";
97
- import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-hbZzVDyj.js";
97
+ import { a as loadCombinedSessionStoreForGateway, d as resolveContextTokensForModel, u as lookupContextTokens } from "./session-utils-CYaFN47T.js";
98
98
  import { c as hasNonzeroUsage, l as makeZeroUsageSnapshot, n as loadCostUsageSummary, o as derivePromptTokens, r as loadSessionCostSummary, s as deriveSessionTotalTokens, u as normalizeUsage } from "./session-cost-usage-vUeaQKAz.js";
99
99
  import { i as resolveModelCostConfig, n as formatTokenCount$2, r as formatUsd, t as estimateUsageCost } from "./usage-format-BzVVjHV2.js";
100
- import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-Duha9iIC.js";
100
+ import { b as ensureSkillsWatcher, i as resolveSkillCommandInvocation, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, r as listSkillCommandsForWorkspace, t as listReservedChatSlashCommandNames, x as getSkillsSnapshotVersion } from "./skill-commands-Cl6M7kpE.js";
101
101
  import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-EI_tOOrC.js";
102
102
  import { t as buildOutboundMediaLoadOptions } from "./load-options-BRu0610C.js";
103
103
  import { n as normalizePollInput } from "./polls-DXeUmcgz.js";
104
- import { t as convertMarkdownTables } from "./tables-Bv2Hq-F0.js";
104
+ import { t as convertMarkdownTables } from "./tables-FZbGazqi.js";
105
105
  import { f as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-CVdMnAs9.js";
106
106
  import { i as parseAbsoluteTimeMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-Bi1uV655.js";
107
- import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-BKyzCX35.js";
108
- import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BxiIEIvc.js";
109
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-6U8MorA7.js";
110
- 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-BdKdRPi6.js";
111
- import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Ukn_7wVk.js";
107
+ import { n as resolveMessageChannelSelection, t as listConfiguredMessageChannels } from "./channel-selection-DZrPYytY.js";
108
+ import { t as applyPluginAutoEnable } from "./plugin-auto-enable-Bm8hMcPA.js";
109
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-C8xKNHVm.js";
110
+ 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-DikEpk7w.js";
111
+ import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-Bxji0kZW.js";
112
112
  import { n as isSenderIdAllowed, r as mergeDmAllowFromSources, t as firstDefined$1 } from "./allow-from-Dw5EiUPa.js";
113
113
  import { t as parseTimeoutMs } from "./parse-timeout-kGl8Fsas.js";
114
114
  import { i as redactIdentifier, t as getActiveWebListener } from "./active-listener-B3LN6sMo.js";
115
- import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-BbLCMNCc.js";
115
+ import { a as resolveSubagentToolPolicy, c as readStoreAllowFromForDmPolicy, d as resolveDmGroupAccessWithLists, f as resolvePinnedMainDmOwnerFromAllowlist, i as resolveGroupToolPolicy, m as resolveControlCommandGate, n as isToolAllowedByPolicies, p as resolveCommandAuthorizedFromAuthorizers, r as resolveEffectiveToolPolicy, s as DM_GROUP_ACCESS_REASON, t as filterToolsByPolicy } from "./pi-tools.policy-Cp3wptYh.js";
116
116
  import { n as isDangerousNameMatchingEnabled } from "./dangerous-name-matching-CAHqhE34.js";
117
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-uQ56Hw52.js";
118
- import { r as detectBinary } from "./onboard-helpers-DX8Hw_zc.js";
119
- import { t as resolvePairingIdLabel } from "./pairing-labels-CesrJlbr.js";
120
- import { t as recordInboundSessionMetaSafe } from "./session-meta-DGKTOhxQ.js";
121
- import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-BwxTb296.js";
122
- import { r as resolveMemorySearchConfig } from "./manager-C0nx9SKi.js";
117
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-Dx5zA8IX.js";
118
+ import { r as detectBinary } from "./onboard-helpers-ngPRx_6_.js";
119
+ import { t as resolvePairingIdLabel } from "./pairing-labels-BPTURWrI.js";
120
+ import { t as recordInboundSessionMetaSafe } from "./session-meta-C7WybT5h.js";
121
+ import { i as resolveMemoryBackendConfig, n as registerMemoryCli, r as getMemorySearchManager } from "./memory-cli-BbEwsmor.js";
122
+ import { r as resolveMemorySearchConfig } from "./manager-rK3J4Po3.js";
123
123
  import { s as BITSEEK_PROVIDER_ID } from "./constants-D1Q8yQ1_.js";
124
124
  import { a as resolveContextWindowInfo, i as resolveContextWindowHardMinTokens, n as CONTEXT_WINDOW_WARN_BELOW_TOKENS, r as evaluateContextWindowGuard } from "./context-window-guard-BqrKjiIm.js";
125
125
  import { createRequire } from "node:module";
@@ -130,7 +130,7 @@ import os, { homedir } from "node:os";
130
130
  import fs, { existsSync, mkdirSync, mkdtempSync, promises, readFileSync, renameSync, rmSync, statSync, unlinkSync, writeFileSync } from "node:fs";
131
131
  import JSON5 from "json5";
132
132
  import { inspect } from "node:util";
133
- import fsPromises from "node:fs/promises";
133
+ import fs$1 from "node:fs/promises";
134
134
  import { complete, completeSimple, createAssistantMessageEventStream, streamSimple } from "@mariozechner/pi-ai";
135
135
  import crypto, { createHash, createHmac, randomBytes, randomUUID } from "node:crypto";
136
136
  import { CURRENT_SESSION_VERSION, DefaultResourceLoader, SessionManager, SettingsManager, codingTools, createAgentSession, createEditTool, createReadTool, createWriteTool, estimateTokens, generateSummary, readTool } from "@mariozechner/pi-coding-agent";
@@ -5075,7 +5075,7 @@ async function resolveAgentSessionDirs(stateDir) {
5075
5075
  const agentsDir = path.join(stateDir, "agents");
5076
5076
  let entries = [];
5077
5077
  try {
5078
- entries = await fsPromises.readdir(agentsDir, { withFileTypes: true });
5078
+ entries = await fs$1.readdir(agentsDir, { withFileTypes: true });
5079
5079
  } catch (err) {
5080
5080
  if (err.code === "ENOENT") return [];
5081
5081
  throw err;
@@ -8142,7 +8142,7 @@ async function sendTranscriptEcho(params) {
8142
8142
  }
8143
8143
  const text = formatEchoTranscript(transcript, params.format ?? DEFAULT_ECHO_TRANSCRIPT_FORMAT);
8144
8144
  try {
8145
- const { deliverOutboundPayloads } = await import("./deliver-CQmmhMaR.js").then((n) => n.n);
8145
+ const { deliverOutboundPayloads } = await import("./deliver-Bm4UojU1.js").then((n) => n.n);
8146
8146
  await deliverOutboundPayloads({
8147
8147
  cfg,
8148
8148
  channel: normalizedChannel,
@@ -12944,7 +12944,7 @@ async function resolveSandboxWorkdir(params) {
12944
12944
  cwd: process.cwd(),
12945
12945
  root: params.sandbox.workspaceDir
12946
12946
  });
12947
- if (!(await fsPromises.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
12947
+ if (!(await fs$1.stat(resolved.resolved)).isDirectory()) throw new Error("workdir is not a directory");
12948
12948
  const relative = resolved.relative ? resolved.relative.split(path.sep).join(path.posix.sep) : "";
12949
12949
  const containerWorkdir = relative ? path.posix.join(params.sandbox.containerWorkdir, relative) : params.sandbox.containerWorkdir;
12950
12950
  return {
@@ -14188,13 +14188,13 @@ async function validateScriptFileForShellBleed(params) {
14188
14188
  cwd: params.workdir,
14189
14189
  root: params.workdir
14190
14190
  });
14191
- stat = await fsPromises.stat(absPath);
14191
+ stat = await fs$1.stat(absPath);
14192
14192
  } catch {
14193
14193
  return;
14194
14194
  }
14195
14195
  if (!stat.isFile()) return;
14196
14196
  if (stat.size > 512 * 1024) return;
14197
- const content = await fsPromises.readFile(absPath, "utf-8");
14197
+ const content = await fs$1.readFile(absPath, "utf-8");
14198
14198
  const first = /\$[A-Z_][A-Z0-9_]{1,}/g.exec(content);
14199
14199
  if (first) {
14200
14200
  const idx = first.index;
@@ -23283,7 +23283,7 @@ async function routeReply(params) {
23283
23283
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
23284
23284
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
23285
23285
  try {
23286
- const { deliverOutboundPayloads } = await import("./deliver-CQmmhMaR.js").then((n) => n.n);
23286
+ const { deliverOutboundPayloads } = await import("./deliver-Bm4UojU1.js").then((n) => n.n);
23287
23287
  const outboundSession = buildOutboundSessionContext({
23288
23288
  cfg,
23289
23289
  agentId: resolvedAgentId,
@@ -23363,7 +23363,7 @@ async function emitResetCommandHooks(params) {
23363
23363
  try {
23364
23364
  const messages = [];
23365
23365
  if (sessionFile) {
23366
- const content = await fsPromises.readFile(sessionFile, "utf-8");
23366
+ const content = await fs$1.readFile(sessionFile, "utf-8");
23367
23367
  for (const line of content.split("\n")) {
23368
23368
  if (!line.trim()) continue;
23369
23369
  try {
@@ -24149,7 +24149,7 @@ async function createModelSelectionState(params) {
24149
24149
  }
24150
24150
  }
24151
24151
  if (sessionEntry && sessionStore && sessionKey && sessionEntry.authProfileOverride) {
24152
- const { ensureAuthProfileStore } = await import("./auth-profiles-CDN1QqUB.js").then((n) => n.t);
24152
+ const { ensureAuthProfileStore } = await import("./auth-profiles-k09E8RLJ.js").then((n) => n.t);
24153
24153
  const profile = ensureAuthProfileStore(void 0, { allowKeychainPrompt: false }).profiles[sessionEntry.authProfileOverride];
24154
24154
  const providerKey = normalizeProviderId(provider);
24155
24155
  if (!profile || normalizeProviderId(profile.provider) !== providerKey) await clearSessionAuthProfileOverride({
@@ -27745,7 +27745,7 @@ async function readJsonlFromPath(jsonlPath) {
27745
27745
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${resolved}`);
27746
27746
  throw new Error("jsonlPath outside allowed roots");
27747
27747
  }
27748
- const canonical = await fsPromises.realpath(resolved).catch(() => resolved);
27748
+ const canonical = await fs$1.realpath(resolved).catch(() => resolved);
27749
27749
  if (!isInboundPathAllowed({
27750
27750
  filePath: canonical,
27751
27751
  roots
@@ -27753,7 +27753,7 @@ async function readJsonlFromPath(jsonlPath) {
27753
27753
  if (shouldLogVerbose()) logVerbose(`Blocked canvas jsonlPath outside allowed roots: ${canonical}`);
27754
27754
  throw new Error("jsonlPath outside allowed roots");
27755
27755
  }
27756
- return await fsPromises.readFile(canonical, "utf8");
27756
+ return await fs$1.readFile(canonical, "utf8");
27757
27757
  }
27758
27758
  const CanvasToolSchema = Type.Object({
27759
27759
  action: stringEnum(CANVAS_ACTIONS),
@@ -28568,27 +28568,27 @@ function resolveRestartSentinelPath(env = process.env) {
28568
28568
  }
28569
28569
  async function writeRestartSentinel(payload, env = process.env) {
28570
28570
  const filePath = resolveRestartSentinelPath(env);
28571
- await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
28571
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
28572
28572
  const data = {
28573
28573
  version: 1,
28574
28574
  payload
28575
28575
  };
28576
- await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
28576
+ await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
28577
28577
  return filePath;
28578
28578
  }
28579
28579
  async function readRestartSentinel(env = process.env) {
28580
28580
  const filePath = resolveRestartSentinelPath(env);
28581
28581
  try {
28582
- const raw = await fsPromises.readFile(filePath, "utf-8");
28582
+ const raw = await fs$1.readFile(filePath, "utf-8");
28583
28583
  let parsed;
28584
28584
  try {
28585
28585
  parsed = JSON.parse(raw);
28586
28586
  } catch {
28587
- await fsPromises.unlink(filePath).catch(() => {});
28587
+ await fs$1.unlink(filePath).catch(() => {});
28588
28588
  return null;
28589
28589
  }
28590
28590
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
28591
- await fsPromises.unlink(filePath).catch(() => {});
28591
+ await fs$1.unlink(filePath).catch(() => {});
28592
28592
  return null;
28593
28593
  }
28594
28594
  return parsed;
@@ -28600,7 +28600,7 @@ async function consumeRestartSentinel(env = process.env) {
28600
28600
  const filePath = resolveRestartSentinelPath(env);
28601
28601
  const parsed = await readRestartSentinel(env);
28602
28602
  if (!parsed) return null;
28603
- await fsPromises.unlink(filePath).catch(() => {});
28603
+ await fs$1.unlink(filePath).catch(() => {});
28604
28604
  return parsed;
28605
28605
  }
28606
28606
  function formatRestartSentinelMessage(payload) {
@@ -38791,18 +38791,18 @@ function appendImagePathsToPrompt(prompt, paths) {
38791
38791
  return `${trimmed}${trimmed ? "\n\n" : ""}${paths.join("\n")}`;
38792
38792
  }
38793
38793
  async function writeCliImages(images) {
38794
- const tempDir = await fsPromises.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
38794
+ const tempDir = await fs$1.mkdtemp(path.join(os.tmpdir(), "openclaw-cli-images-"));
38795
38795
  const paths = [];
38796
38796
  for (let i = 0; i < images.length; i += 1) {
38797
38797
  const image = images[i];
38798
38798
  const ext = resolveImageExtension(image.mimeType);
38799
38799
  const filePath = path.join(tempDir, `image-${i + 1}.${ext}`);
38800
38800
  const buffer = Buffer.from(image.data, "base64");
38801
- await fsPromises.writeFile(filePath, buffer, { mode: 384 });
38801
+ await fs$1.writeFile(filePath, buffer, { mode: 384 });
38802
38802
  paths.push(filePath);
38803
38803
  }
38804
38804
  const cleanup = async () => {
38805
- await fsPromises.rm(tempDir, {
38805
+ await fs$1.rm(tempDir, {
38806
38806
  recursive: true,
38807
38807
  force: true
38808
38808
  });
@@ -42705,7 +42705,7 @@ async function deliverSessionMaintenanceWarning(params) {
42705
42705
  return;
42706
42706
  }
42707
42707
  try {
42708
- const { deliverOutboundPayloads } = await import("./deliver-CQmmhMaR.js").then((n) => n.n);
42708
+ const { deliverOutboundPayloads } = await import("./deliver-Bm4UojU1.js").then((n) => n.n);
42709
42709
  const outboundSession = buildOutboundSessionContext({
42710
42710
  cfg: params.cfg,
42711
42711
  sessionKey: params.sessionKey
@@ -43212,7 +43212,7 @@ async function stageSandboxMedia(params) {
43212
43212
  const remoteMediaCacheDir = ctx.MediaRemoteHost ? path.join(CONFIG_DIR, "media", "remote-cache", sessionKey) : null;
43213
43213
  const effectiveWorkspaceDir = sandbox?.workspaceDir ?? remoteMediaCacheDir;
43214
43214
  if (!effectiveWorkspaceDir) return;
43215
- await fsPromises.mkdir(effectiveWorkspaceDir, { recursive: true });
43215
+ await fs$1.mkdir(effectiveWorkspaceDir, { recursive: true });
43216
43216
  const remoteAttachmentRoots = resolveIMessageRemoteAttachmentRoots({
43217
43217
  cfg,
43218
43218
  accountId: ctx.AccountId
@@ -43271,8 +43271,8 @@ async function stageLocalFileIntoRoot(params) {
43271
43271
  }
43272
43272
  async function stageRemoteFileIntoRoot(params) {
43273
43273
  const tmpRoot = resolvePreferredOpenClawTmpDir();
43274
- await fsPromises.mkdir(tmpRoot, { recursive: true });
43275
- const tmpDir = await fsPromises.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
43274
+ await fs$1.mkdir(tmpRoot, { recursive: true });
43275
+ const tmpDir = await fs$1.mkdtemp(path.join(tmpRoot, "stage-sandbox-media-"));
43276
43276
  const tmpPath = path.join(tmpDir, "download");
43277
43277
  try {
43278
43278
  await scpFile(params.remoteHost, params.remotePath, tmpPath);
@@ -43283,7 +43283,7 @@ async function stageRemoteFileIntoRoot(params) {
43283
43283
  maxBytes: params.maxBytes
43284
43284
  });
43285
43285
  } finally {
43286
- await fsPromises.rm(tmpDir, {
43286
+ await fs$1.rm(tmpDir, {
43287
43287
  recursive: true,
43288
43288
  force: true
43289
43289
  }).catch(() => {});
@@ -47629,8 +47629,8 @@ async function describeStickerImage(params) {
47629
47629
  const { provider, model } = resolved;
47630
47630
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
47631
47631
  try {
47632
- const buffer = await fsPromises.readFile(imagePath);
47633
- const { describeImageWithModel } = await import("./image-BgCM5v5-.js").then((n) => n.n);
47632
+ const buffer = await fs$1.readFile(imagePath);
47633
+ const { describeImageWithModel } = await import("./image-BOSsTjNj.js").then((n) => n.n);
47634
47634
  return (await describeImageWithModel({
47635
47635
  buffer,
47636
47636
  fileName: "sticker.webp",
@@ -49219,7 +49219,7 @@ async function resolveDiscordPreflightAudioMentionContext(params) {
49219
49219
  const needsPreflightTranscription = !params.isDirectMessage && params.shouldRequireMention && hasAudioAttachment && !hasTypedText && params.mentionRegexes.length > 0;
49220
49220
  let transcript;
49221
49221
  if (needsPreflightTranscription) try {
49222
- const { transcribeFirstAudio } = await import("./audio-preflight-B6Jw9LUM.js");
49222
+ const { transcribeFirstAudio } = await import("./audio-preflight-Pdv9uiw6.js");
49223
49223
  const audioUrls = audioAttachments.map((att) => att.url).filter((url) => typeof url === "string" && url.length > 0);
49224
49224
  if (audioUrls.length > 0) transcript = await transcribeFirstAudio({
49225
49225
  ctx: {
@@ -53795,27 +53795,27 @@ function createOutboundSendDepsFromCliSource(deps) {
53795
53795
  function createDefaultDeps() {
53796
53796
  return {
53797
53797
  sendMessageWhatsApp: async (...args) => {
53798
- const { sendMessageWhatsApp } = await import("./web-CqfFsaTH.js");
53798
+ const { sendMessageWhatsApp } = await import("./web-Kse4dEsw.js");
53799
53799
  return await sendMessageWhatsApp(...args);
53800
53800
  },
53801
53801
  sendMessageTelegram: async (...args) => {
53802
- const { sendMessageTelegram } = await import("./send-BY8NE-y9.js").then((n) => n.l);
53802
+ const { sendMessageTelegram } = await import("./send-DX2I6KZU.js").then((n) => n.l);
53803
53803
  return await sendMessageTelegram(...args);
53804
53804
  },
53805
53805
  sendMessageDiscord: async (...args) => {
53806
- const { sendMessageDiscord } = await import("./send-CVDGeH7A.js").then((n) => n.t);
53806
+ const { sendMessageDiscord } = await import("./send-CUvJIfFz.js").then((n) => n.t);
53807
53807
  return await sendMessageDiscord(...args);
53808
53808
  },
53809
53809
  sendMessageSlack: async (...args) => {
53810
- const { sendMessageSlack } = await import("./send-CtAy9-2u.js").then((n) => n.n);
53810
+ const { sendMessageSlack } = await import("./send-BpYBrb6S.js").then((n) => n.n);
53811
53811
  return await sendMessageSlack(...args);
53812
53812
  },
53813
53813
  sendMessageSignal: async (...args) => {
53814
- const { sendMessageSignal } = await import("./send-6U8MorA7.js").then((n) => n.i);
53814
+ const { sendMessageSignal } = await import("./send-C8xKNHVm.js").then((n) => n.i);
53815
53815
  return await sendMessageSignal(...args);
53816
53816
  },
53817
53817
  sendMessageIMessage: async (...args) => {
53818
- const { sendMessageIMessage } = await import("./send-BdKdRPi6.js").then((n) => n.n);
53818
+ const { sendMessageIMessage } = await import("./send-DikEpk7w.js").then((n) => n.n);
53819
53819
  return await sendMessageIMessage(...args);
53820
53820
  }
53821
53821
  };
@@ -54956,10 +54956,10 @@ function estimateDurationSeconds(pcm) {
54956
54956
  return pcm.length / (bytesPerSample * SAMPLE_RATE);
54957
54957
  }
54958
54958
  async function writeWavFile(pcm) {
54959
- const tempDir = await fsPromises.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
54959
+ const tempDir = await fs$1.mkdtemp(path.join(resolvePreferredOpenClawTmpDir(), "discord-voice-"));
54960
54960
  const filePath = path.join(tempDir, `segment-${randomUUID()}.wav`);
54961
54961
  const wav = buildWavBuffer(pcm);
54962
- await fsPromises.writeFile(filePath, wav);
54962
+ await fs$1.writeFile(filePath, wav);
54963
54963
  scheduleTempCleanup(tempDir);
54964
54964
  return {
54965
54965
  path: filePath,
@@ -54968,7 +54968,7 @@ async function writeWavFile(pcm) {
54968
54968
  }
54969
54969
  function scheduleTempCleanup(tempDir, delayMs = 1800 * 1e3) {
54970
54970
  setTimeout(() => {
54971
- fsPromises.rm(tempDir, {
54971
+ fs$1.rm(tempDir, {
54972
54972
  recursive: true,
54973
54973
  force: true
54974
54974
  }).catch((err) => {
@@ -59265,7 +59265,7 @@ function normalizeAllowList$1(list) {
59265
59265
  async function detectRemoteHostFromCliPath(cliPath) {
59266
59266
  try {
59267
59267
  const expanded = cliPath.startsWith("~") ? cliPath.replace(/^~/, process.env.HOME ?? "") : cliPath;
59268
- const content = await fsPromises.readFile(expanded, "utf8");
59268
+ const content = await fs$1.readFile(expanded, "utf8");
59269
59269
  const userHostMatch = content.match(/\bssh\b[^\n]*?\s+([a-zA-Z0-9._-]+@[a-zA-Z0-9._-]+)/);
59270
59270
  if (userHostMatch) return userHostMatch[1];
59271
59271
  return content.match(/\bssh\b[^\n]*?\s+([a-zA-Z][a-zA-Z0-9._-]*)\s+\S*\bimsg\b/)?.[1];
@@ -65887,7 +65887,7 @@ function readSlackExternalArgMenuToken(raw) {
65887
65887
  }
65888
65888
  let commandsRegistry;
65889
65889
  async function getCommandsRegistry() {
65890
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-Ctux_Nq3.js").then((n) => n.n);
65890
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-B6LbRm3U.js").then((n) => n.n);
65891
65891
  return commandsRegistry;
65892
65892
  }
65893
65893
  function encodeSlackCommandArgValue(parts) {
@@ -66217,14 +66217,14 @@ async function registerSlackMonitorSlashCommands(params) {
66217
66217
  const channelName = channelInfo?.name;
66218
66218
  const roomLabel = channelName ? `#${channelName}` : `#${command.channel_id}`;
66219
66219
  const [{ resolveAgentRoute }, { finalizeInboundContext }, { dispatchReplyWithDispatcher }] = await Promise.all([
66220
- import("./resolve-route-Ukn_7wVk.js").then((n) => n.r),
66220
+ import("./resolve-route-Bxji0kZW.js").then((n) => n.r),
66221
66221
  import("./inbound-context-DrgeDGXO.js").then((n) => n.n),
66222
66222
  Promise.resolve().then(() => provider_dispatcher_exports)
66223
66223
  ]);
66224
66224
  const [{ resolveConversationLabel }, { createReplyPrefixOptions }, { recordInboundSessionMetaSafe }] = await Promise.all([
66225
66225
  import("./conversation-label-mOUC6IlY.js").then((n) => n.t),
66226
- import("./reply-prefix-XmrGZdy_.js").then((n) => n.n),
66227
- import("./session-meta-DGKTOhxQ.js").then((n) => n.n)
66226
+ import("./reply-prefix-CS57j6KU.js").then((n) => n.n),
66227
+ import("./session-meta-C7WybT5h.js").then((n) => n.n)
66228
66228
  ]);
66229
66229
  const route = resolveAgentRoute({
66230
66230
  cfg,
@@ -66289,9 +66289,9 @@ async function registerSlackMonitorSlashCommands(params) {
66289
66289
  });
66290
66290
  const deliverSlashPayloads = async (replies) => {
66291
66291
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
66292
- import("./replies-uQ56Hw52.js").then((n) => n.r),
66292
+ import("./replies-Dx5zA8IX.js").then((n) => n.r),
66293
66293
  import("./chunk-C0-ifupK.js").then((n) => n.s),
66294
- import("./markdown-tables-D47ZANhY.js").then((n) => n.t)
66294
+ import("./markdown-tables-Mk_tnsfY.js").then((n) => n.t)
66295
66295
  ]);
66296
66296
  await deliverSlackSlashReplies({
66297
66297
  replies,
@@ -66344,7 +66344,7 @@ async function registerSlackMonitorSlashCommands(params) {
66344
66344
  let nativeCommands = [];
66345
66345
  if (nativeEnabled) {
66346
66346
  reg = await getCommandsRegistry();
66347
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Duha9iIC.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
66347
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Cl6M7kpE.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
66348
66348
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
66349
66349
  skillCommands,
66350
66350
  provider: "slack"
@@ -69253,7 +69253,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, replyMedia =
69253
69253
  const disableAudioPreflight = firstDefined$1(topicConfig?.disableAudioPreflight, groupConfig?.disableAudioPreflight) === true;
69254
69254
  let preflightTranscript;
69255
69255
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0 && !disableAudioPreflight) try {
69256
- const { transcribeFirstAudio } = await import("./audio-preflight-B6Jw9LUM.js");
69256
+ const { transcribeFirstAudio } = await import("./audio-preflight-Pdv9uiw6.js");
69257
69257
  preflightTranscript = await transcribeFirstAudio({
69258
69258
  ctx: {
69259
69259
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -70615,7 +70615,7 @@ function resolveCommandHashPath(accountId, botIdentity) {
70615
70615
  }
70616
70616
  async function readCachedCommandHash(accountId, botIdentity) {
70617
70617
  try {
70618
- return (await fsPromises.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
70618
+ return (await fs$1.readFile(resolveCommandHashPath(accountId, botIdentity), "utf-8")).trim();
70619
70619
  } catch {
70620
70620
  return null;
70621
70621
  }
@@ -70623,8 +70623,8 @@ async function readCachedCommandHash(accountId, botIdentity) {
70623
70623
  async function writeCachedCommandHash(accountId, botIdentity, hash) {
70624
70624
  const filePath = resolveCommandHashPath(accountId, botIdentity);
70625
70625
  try {
70626
- await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
70627
- await fsPromises.writeFile(filePath, hash, "utf-8");
70626
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
70627
+ await fs$1.writeFile(filePath, hash, "utf-8");
70628
70628
  } catch {}
70629
70629
  }
70630
70630
  function syncTelegramMenuCommands(params) {
@@ -71462,7 +71462,7 @@ function safeParseState(raw) {
71462
71462
  async function readTelegramUpdateOffset(params) {
71463
71463
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
71464
71464
  try {
71465
- const parsed = safeParseState(await fsPromises.readFile(filePath, "utf-8"));
71465
+ const parsed = safeParseState(await fs$1.readFile(filePath, "utf-8"));
71466
71466
  const expectedBotId = extractBotIdFromToken(params.botToken);
71467
71467
  if (expectedBotId && parsed?.botId && parsed.botId !== expectedBotId) return null;
71468
71468
  if (expectedBotId && parsed?.botId === null) return null;
@@ -71486,7 +71486,7 @@ async function writeTelegramUpdateOffset(params) {
71486
71486
  async function deleteTelegramUpdateOffset(params) {
71487
71487
  const filePath = resolveTelegramUpdateOffsetPath(params.accountId, params.env);
71488
71488
  try {
71489
- await fsPromises.unlink(filePath);
71489
+ await fs$1.unlink(filePath);
71490
71490
  } catch (err) {
71491
71491
  if (err.code === "ENOENT") return;
71492
71492
  throw err;
@@ -71960,7 +71960,7 @@ function createWhatsAppLoginTool() {
71960
71960
  force: Type.Optional(Type.Boolean())
71961
71961
  }),
71962
71962
  execute: async (_toolCallId, args) => {
71963
- const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-D4L1NDeu.js");
71963
+ const { startWebLoginWithQr, waitForWebLogin } = await import("./login-qr-BNBXsYor.js");
71964
71964
  if ((args?.action ?? "start") === "wait") {
71965
71965
  const result = await waitForWebLogin({ timeoutMs: typeof args.timeoutMs === "number" ? args.timeoutMs : void 0 });
71966
71966
  return {
@@ -72035,23 +72035,23 @@ let webLoginQrPromise = null;
72035
72035
  let webChannelPromise = null;
72036
72036
  let whatsappActionsPromise = null;
72037
72037
  function loadWebOutbound() {
72038
- webOutboundPromise ??= import("./outbound-CF1Hd23W.js").then((n) => n.t);
72038
+ webOutboundPromise ??= import("./outbound-BGJh4s6Y.js").then((n) => n.t);
72039
72039
  return webOutboundPromise;
72040
72040
  }
72041
72041
  function loadWebLogin() {
72042
- webLoginPromise ??= import("./login-KG5TFHFb.js").then((n) => n.n);
72042
+ webLoginPromise ??= import("./login-_s-srXtA.js").then((n) => n.n);
72043
72043
  return webLoginPromise;
72044
72044
  }
72045
72045
  function loadWebLoginQr() {
72046
- webLoginQrPromise ??= import("./login-qr-D4L1NDeu.js");
72046
+ webLoginQrPromise ??= import("./login-qr-BNBXsYor.js");
72047
72047
  return webLoginQrPromise;
72048
72048
  }
72049
72049
  function loadWebChannel() {
72050
- webChannelPromise ??= import("./web-CqfFsaTH.js");
72050
+ webChannelPromise ??= import("./web-Kse4dEsw.js");
72051
72051
  return webChannelPromise;
72052
72052
  }
72053
72053
  function loadWhatsAppActions() {
72054
- whatsappActionsPromise ??= import("./whatsapp-actions-0CZKI1og.js");
72054
+ whatsappActionsPromise ??= import("./whatsapp-actions-BC00XF83.js");
72055
72055
  return whatsappActionsPromise;
72056
72056
  }
72057
72057
  function createRuntimeWhatsApp() {
@@ -73094,7 +73094,7 @@ function resolvePluginTools(params) {
73094
73094
  //#endregion
73095
73095
  //#region src/agents/apply-patch-update.ts
73096
73096
  async function defaultReadFile(filePath) {
73097
- return fsPromises.readFile(filePath, "utf8");
73097
+ return fs$1.readFile(filePath, "utf8");
73098
73098
  }
73099
73099
  async function applyUpdateHunk(filePath, chunks, options) {
73100
73100
  const originalLines = (await (options?.readFile ?? defaultReadFile)(filePath).catch((err) => {
@@ -73415,7 +73415,7 @@ function resolvePatchFileOps(options) {
73415
73415
  const workspaceOnly = options.workspaceOnly !== false;
73416
73416
  return {
73417
73417
  readFile: async (filePath) => {
73418
- if (!workspaceOnly) return await fsPromises.readFile(filePath, "utf8");
73418
+ if (!workspaceOnly) return await fs$1.readFile(filePath, "utf8");
73419
73419
  const opened = await openBoundaryFile({
73420
73420
  absolutePath: filePath,
73421
73421
  rootPath: options.cwd,
@@ -73430,7 +73430,7 @@ function resolvePatchFileOps(options) {
73430
73430
  },
73431
73431
  writeFile: async (filePath, content) => {
73432
73432
  if (!workspaceOnly) {
73433
- await fsPromises.writeFile(filePath, content, "utf8");
73433
+ await fs$1.writeFile(filePath, content, "utf8");
73434
73434
  return;
73435
73435
  }
73436
73436
  const relative = toRelativeSandboxPath(options.cwd, filePath);
@@ -73441,8 +73441,8 @@ function resolvePatchFileOps(options) {
73441
73441
  encoding: "utf8"
73442
73442
  });
73443
73443
  },
73444
- remove: (filePath) => fsPromises.rm(filePath),
73445
- mkdirp: (dir) => fsPromises.mkdir(dir, { recursive: true }).then(() => {})
73444
+ remove: (filePath) => fs$1.rm(filePath),
73445
+ mkdirp: (dir) => fs$1.mkdir(dir, { recursive: true }).then(() => {})
73446
73446
  };
73447
73447
  }
73448
73448
  async function ensureDir(filePath, ops) {
@@ -73742,7 +73742,7 @@ async function runBeforeToolCallHook(args) {
73742
73742
  const params = args.params;
73743
73743
  if (args.ctx?.sessionKey) {
73744
73744
  const { getDiagnosticSessionState } = await import("./diagnostic-session-state-CDEk5vOn.js");
73745
- const { logToolLoopAction } = await import("./diagnostic-C5Por-ID.js").then((n) => n.n);
73745
+ const { logToolLoopAction } = await import("./diagnostic-DOls91uN.js").then((n) => n.n);
73746
73746
  const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-BZwXYzJX.js");
73747
73747
  const sessionState = getDiagnosticSessionState({
73748
73748
  sessionKey: args.ctx.sessionKey,
@@ -74060,7 +74060,7 @@ async function maybeCreateMemoryReadCompatibilityResult(params) {
74060
74060
  const absolutePath = resolveReadPathWithinWorkspace(params.filePath, params.workspaceRoot);
74061
74061
  if (!absolutePath) return null;
74062
74062
  try {
74063
- if ((await fsPromises.stat(absolutePath)).isDirectory()) return createMemoryDirectoryReadResult(params.filePath);
74063
+ if ((await fs$1.stat(absolutePath)).isDirectory()) return createMemoryDirectoryReadResult(params.filePath);
74064
74064
  return null;
74065
74065
  } catch (error) {
74066
74066
  if (isNotFoundPathError(error)) return createMissingMemoryReadResult(params.filePath);
@@ -74390,7 +74390,7 @@ function wrapHostEditToolWithPostWriteRecovery(base, root) {
74390
74390
  if (!pathParam || !newText) throw err;
74391
74391
  try {
74392
74392
  const absolutePath = resolveHostEditPath(root, pathParam);
74393
- const content = await fsPromises.readFile(absolutePath, "utf-8");
74393
+ const content = await fs$1.readFile(absolutePath, "utf-8");
74394
74394
  const hasNew = content.includes(newText);
74395
74395
  const stillHasOld = oldText !== void 0 && oldText.length > 0 && content.includes(oldText);
74396
74396
  if (hasNew && !stillHasOld) return {
@@ -74509,14 +74509,14 @@ function createSandboxEditOperations(params) {
74509
74509
  }
74510
74510
  async function writeHostFile(absolutePath, content) {
74511
74511
  const resolved = path.resolve(absolutePath);
74512
- await fsPromises.mkdir(path.dirname(resolved), { recursive: true });
74513
- await fsPromises.writeFile(resolved, content, "utf-8");
74512
+ await fs$1.mkdir(path.dirname(resolved), { recursive: true });
74513
+ await fs$1.writeFile(resolved, content, "utf-8");
74514
74514
  }
74515
74515
  function createHostWriteOperations(root, options) {
74516
74516
  if (!(options?.workspaceOnly ?? false)) return {
74517
74517
  mkdir: async (dir) => {
74518
74518
  const resolved = path.resolve(dir);
74519
- await fsPromises.mkdir(resolved, { recursive: true });
74519
+ await fs$1.mkdir(resolved, { recursive: true });
74520
74520
  },
74521
74521
  writeFile: writeHostFile
74522
74522
  };
@@ -74529,7 +74529,7 @@ function createHostWriteOperations(root, options) {
74529
74529
  cwd: root,
74530
74530
  root
74531
74531
  });
74532
- await fsPromises.mkdir(resolved, { recursive: true });
74532
+ await fs$1.mkdir(resolved, { recursive: true });
74533
74533
  },
74534
74534
  writeFile: async (absolutePath, content) => {
74535
74535
  await writeFileWithinRoot({
@@ -74545,12 +74545,12 @@ function createHostEditOperations(root, options) {
74545
74545
  if (!(options?.workspaceOnly ?? false)) return {
74546
74546
  readFile: async (absolutePath) => {
74547
74547
  const resolved = path.resolve(absolutePath);
74548
- return await fsPromises.readFile(resolved);
74548
+ return await fs$1.readFile(resolved);
74549
74549
  },
74550
74550
  writeFile: writeHostFile,
74551
74551
  access: async (absolutePath) => {
74552
74552
  const resolved = path.resolve(absolutePath);
74553
- await fsPromises.access(resolved);
74553
+ await fs$1.access(resolved);
74554
74554
  }
74555
74555
  };
74556
74556
  return {
@@ -75389,7 +75389,7 @@ async function repairSessionFileIfNeeded(params) {
75389
75389
  };
75390
75390
  let content;
75391
75391
  try {
75392
- content = await fsPromises.readFile(sessionFile, "utf-8");
75392
+ content = await fs$1.readFile(sessionFile, "utf-8");
75393
75393
  } catch (err) {
75394
75394
  if (err?.code === "ENOENT") return {
75395
75395
  repaired: false,
@@ -75437,15 +75437,15 @@ async function repairSessionFileIfNeeded(params) {
75437
75437
  const backupPath = `${sessionFile}.bak-${process.pid}-${Date.now()}`;
75438
75438
  const tmpPath = `${sessionFile}.repair-${process.pid}-${Date.now()}.tmp`;
75439
75439
  try {
75440
- const stat = await fsPromises.stat(sessionFile).catch(() => null);
75441
- await fsPromises.writeFile(backupPath, content, "utf-8");
75442
- if (stat) await fsPromises.chmod(backupPath, stat.mode);
75443
- await fsPromises.writeFile(tmpPath, cleaned, "utf-8");
75444
- if (stat) await fsPromises.chmod(tmpPath, stat.mode);
75445
- await fsPromises.rename(tmpPath, sessionFile);
75440
+ const stat = await fs$1.stat(sessionFile).catch(() => null);
75441
+ await fs$1.writeFile(backupPath, content, "utf-8");
75442
+ if (stat) await fs$1.chmod(backupPath, stat.mode);
75443
+ await fs$1.writeFile(tmpPath, cleaned, "utf-8");
75444
+ if (stat) await fs$1.chmod(tmpPath, stat.mode);
75445
+ await fs$1.rename(tmpPath, sessionFile);
75446
75446
  } catch (err) {
75447
75447
  try {
75448
- await fsPromises.unlink(tmpPath);
75448
+ await fs$1.unlink(tmpPath);
75449
75449
  } catch (cleanupErr) {
75450
75450
  params.warn?.(`session file repair cleanup failed: ${cleanupErr instanceof Error ? cleanupErr.message : "unknown error"} (${path.basename(tmpPath)})`);
75451
75451
  }
@@ -77046,7 +77046,7 @@ async function prewarmSessionFile(sessionFile) {
77046
77046
  if (!isSessionManagerCacheEnabled()) return;
77047
77047
  if (isSessionManagerCached(sessionFile)) return;
77048
77048
  try {
77049
- const handle = await fsPromises.open(sessionFile, "r");
77049
+ const handle = await fs$1.open(sessionFile, "r");
77050
77050
  try {
77051
77051
  const buffer = Buffer$1.alloc(4096);
77052
77052
  await handle.read(buffer, 0, buffer.length, 0);
@@ -77402,7 +77402,7 @@ async function compactEmbeddedPiSessionDirect(params) {
77402
77402
  } catch (err) {
77403
77403
  return fail(describeUnknownError(err));
77404
77404
  }
77405
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
77405
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
77406
77406
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
77407
77407
  const sandbox = await resolveSandboxContext({
77408
77408
  config: params.config,
@@ -77410,7 +77410,7 @@ async function compactEmbeddedPiSessionDirect(params) {
77410
77410
  workspaceDir: resolvedWorkspace
77411
77411
  });
77412
77412
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
77413
- await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
77413
+ await fs$1.mkdir(effectiveWorkspace, { recursive: true });
77414
77414
  await ensureSessionHeader({
77415
77415
  sessionFile: params.sessionFile,
77416
77416
  sessionId: params.sessionId,
@@ -78320,12 +78320,12 @@ function getQueuedFileWriter(writers, filePath) {
78320
78320
  const existing = writers.get(filePath);
78321
78321
  if (existing) return existing;
78322
78322
  const dir = path.dirname(filePath);
78323
- const ready = fsPromises.mkdir(dir, { recursive: true }).catch(() => void 0);
78323
+ const ready = fs$1.mkdir(dir, { recursive: true }).catch(() => void 0);
78324
78324
  let queue = Promise.resolve();
78325
78325
  const writer = {
78326
78326
  filePath,
78327
78327
  write: (line) => {
78328
- queue = queue.then(() => ready).then(() => fsPromises.appendFile(filePath, line, "utf8")).catch(() => void 0);
78328
+ queue = queue.then(() => ready).then(() => fs$1.appendFile(filePath, line, "utf8")).catch(() => void 0);
78329
78329
  }
78330
78330
  };
78331
78331
  writers.set(filePath, writer);
@@ -81243,7 +81243,7 @@ async function prepareSessionManagerForRun(params) {
81243
81243
  return;
81244
81244
  }
81245
81245
  if (params.hadSessionFile && header && !hasAssistant) {
81246
- await fsPromises.writeFile(params.sessionFile, "", "utf-8");
81246
+ await fs$1.writeFile(params.sessionFile, "", "utf-8");
81247
81247
  sm.fileEntries = [header];
81248
81248
  sm.byId?.clear?.();
81249
81249
  sm.labelsById?.clear?.();
@@ -81977,7 +81977,7 @@ async function runEmbeddedAttempt(params) {
81977
81977
  const prevCwd = process.cwd();
81978
81978
  const runAbortController = new AbortController();
81979
81979
  log$3.debug(`embedded run start: runId=${params.runId} sessionId=${params.sessionId} provider=${params.provider} model=${params.modelId} thinking=${params.thinkLevel} messageChannel=${params.messageChannel ?? params.messageProvider ?? "unknown"}`);
81980
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
81980
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
81981
81981
  const sandboxSessionKey = params.sessionKey?.trim() || params.sessionId;
81982
81982
  const sandbox = await resolveSandboxContext({
81983
81983
  config: params.config,
@@ -81985,7 +81985,7 @@ async function runEmbeddedAttempt(params) {
81985
81985
  workspaceDir: resolvedWorkspace
81986
81986
  });
81987
81987
  const effectiveWorkspace = sandbox?.enabled ? sandbox.workspaceAccess === "rw" ? resolvedWorkspace : sandbox.workspaceDir : resolvedWorkspace;
81988
- await fsPromises.mkdir(effectiveWorkspace, { recursive: true });
81988
+ await fs$1.mkdir(effectiveWorkspace, { recursive: true });
81989
81989
  let restoreSkillEnv;
81990
81990
  process.chdir(effectiveWorkspace);
81991
81991
  try {
@@ -82229,7 +82229,7 @@ async function runEmbeddedAttempt(params) {
82229
82229
  sessionFile: params.sessionFile,
82230
82230
  warn: (message) => log$3.warn(message)
82231
82231
  });
82232
- const hadSessionFile = await fsPromises.stat(params.sessionFile).then(() => true).catch(() => false);
82232
+ const hadSessionFile = await fs$1.stat(params.sessionFile).then(() => true).catch(() => false);
82233
82233
  const transcriptPolicy = resolveTranscriptPolicy({
82234
82234
  modelApi: params.model?.api,
82235
82235
  provider: params.provider,
@@ -83372,7 +83372,7 @@ async function runEmbeddedPiAgent(params) {
83372
83372
  const copilotAuthRetry = authRetryPending;
83373
83373
  authRetryPending = false;
83374
83374
  attemptedThinking.add(thinkLevel);
83375
- await fsPromises.mkdir(resolvedWorkspace, { recursive: true });
83375
+ await fs$1.mkdir(resolvedWorkspace, { recursive: true });
83376
83376
  const prompt = provider === "anthropic" ? scrubAnthropicRefusalMagic(params.prompt) : params.prompt;
83377
83377
  const attempt = await runEmbeddedAttempt({
83378
83378
  sessionId: params.sessionId,