@symerian/symi 2.5.3 → 2.5.4

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 (179) hide show
  1. package/dist/{accounts-ChTFYj8Q.js → accounts-CWktKM8a.js} +1 -1
  2. package/dist/{accounts-CJR8j_Kq.js → accounts-qtxJ-6em.js} +1 -1
  3. package/dist/{accounts-CI6zQTJj.js → accounts-tNElYrCH.js} +14 -14
  4. package/dist/{active-listener-D6sXIjAg.js → active-listener-C9r8ZB9m.js} +1 -1
  5. package/dist/{agent-scope-Bw1Ed8W9.js → agent-scope-BxoUQqgM.js} +3 -3
  6. package/dist/{audio-preflight-CPBOQV4I.js → audio-preflight-C40mKAp7.js} +4 -4
  7. package/dist/{audio-preflight-BkIfnmpi.js → audio-preflight-D02HwB-I.js} +29 -29
  8. package/dist/{bindings-BU2hsBd9.js → bindings-B7Ke6LJi.js} +2 -2
  9. package/dist/build-info.json +3 -3
  10. package/dist/bundled/boot-md/handler.js +53 -53
  11. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  12. package/dist/bundled/command-logger/handler.js +1 -1
  13. package/dist/bundled/session-memory/handler.js +53 -53
  14. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  15. package/dist/{channel-activity-C9-gaquj.js → channel-activity-CsM_hJ_s.js} +1 -1
  16. package/dist/{chrome-D2SKJnR7.js → chrome-CDJYxX5a.js} +7 -7
  17. package/dist/{chrome-CxSAp8x3.js → chrome-EyvdASWt.js} +13 -13
  18. package/dist/{chunk-ClbN9Pqy.js → chunk-BW5f05BR.js} +1 -1
  19. package/dist/{command-format-UKHV-j0K.js → command-format-BaxDnULz.js} +1 -1
  20. package/dist/{command-registry-DhvgkMQN.js → command-registry-Be3hDEmx.js} +4 -4
  21. package/dist/{commands-registry-VSmULp-g.js → commands-registry-D7CTCQPm.js} +4 -4
  22. package/dist/{completion-cli-CqHcRASb.js → completion-cli-C3hbO0zE.js} +2 -2
  23. package/dist/{completion-cli-DJ2AgNQF.js → completion-cli-DxditxWW.js} +1 -1
  24. package/dist/{config-eEaJddXj.js → config-DRbjHIwD.js} +12 -12
  25. package/dist/control-ui/js/app.js +2 -1
  26. package/dist/{deliver-C-37cZUe.js → deliver-BH0l3UKW.js} +1 -1
  27. package/dist/{deliver-BA7ZN3iM.js → deliver-D1ZN6-fl.js} +20 -20
  28. package/dist/{diagnostic-C3nsWaw3.js → diagnostic-CI0kRQkt.js} +1 -1
  29. package/dist/{doctor-completion-DD-fb-G8.js → doctor-completion-CRgIetEl.js} +1 -1
  30. package/dist/{doctor-completion-BqOO4r2O.js → doctor-completion-DKL7Fzep.js} +1 -1
  31. package/dist/entry.js +1 -1
  32. package/dist/extensionAPI.js +6 -6
  33. package/dist/{frontmatter-DPlG6yha.js → frontmatter-C_bv_0P8.js} +2 -2
  34. package/dist/{gateway-cli-2R-SuiTy.js → gateway-cli-CEWIFRt0.js} +2 -2
  35. package/dist/{gateway-cli-BVnEz6em.js → gateway-cli-q04qp27D.js} +2 -2
  36. package/dist/{gemini-auth-CF48hUR9.js → gemini-auth-CdSPHuLl.js} +1 -1
  37. package/dist/{github-copilot-token-DJqsJ2-r.js → github-copilot-token-C_qUP7p5.js} +7 -7
  38. package/dist/{glass-ui-ws-C9w0ySFw.js → glass-ui-ws-0yPnNh0o.js} +30 -12
  39. package/dist/{glass-ui-ws-CmDHJq0W.js → glass-ui-ws-DtFvFNZp.js} +30 -12
  40. package/dist/{image-DcpMiprB.js → image-CHzdaNJ4.js} +1 -1
  41. package/dist/{image-BGmVDkkw.js → image-Cp3JDEBB.js} +4 -4
  42. package/dist/{image-ops-S8-8dAhx.js → image-ops-CvJzsyvE.js} +1 -1
  43. package/dist/index.js +1 -1
  44. package/dist/{ir-CbFUkv_T.js → ir-DccrnjsE.js} +4 -4
  45. package/dist/llm-slug-generator.js +53 -53
  46. package/dist/{local-roots-C7OCYACU.js → local-roots-DMwIh5cS.js} +5 -5
  47. package/dist/{login-B8uiUAnV.js → login-CwCoxapk.js} +7 -7
  48. package/dist/{login-qr-CIZk8uKX.js → login-qr-Batf3PT5.js} +12 -12
  49. package/dist/{manager-BoLr3xR_.js → manager-D_LwXbc6.js} +13 -13
  50. package/dist/{manifest-registry-CneMHk0N.js → manifest-registry-D0IQ3WuX.js} +19 -19
  51. package/dist/{markdown-tables-DSHvnTLx.js → markdown-tables-iMQQZu4Q.js} +1 -1
  52. package/dist/{message-channel-DbsRltF2.js → message-channel-Dz5lr5b0.js} +1 -1
  53. package/dist/{model-auth-CwOuTuXl.js → model-auth-DK43VicI.js} +9 -9
  54. package/dist/{onboard-BgoNPLnU.js → onboard-FadtPlJX.js} +1 -1
  55. package/dist/{onboard-CSPuFTdy.js → onboard-Ob6VUhMj.js} +1 -1
  56. package/dist/{onboarding-Dnmpcyzj.js → onboarding-BL5h6kMP.js} +1 -1
  57. package/dist/{onboarding-pxBeD60g.js → onboarding-CeLx4VEB.js} +1 -1
  58. package/dist/{onboarding.finalize-CBTphwf0.js → onboarding.finalize-EOjEh487.js} +4 -4
  59. package/dist/{onboarding.finalize-jsLRDHxC.js → onboarding.finalize-y1rlw-1v.js} +3 -3
  60. package/dist/{outbound-opDNxv-l.js → outbound-D4fN_ZlE.js} +7 -7
  61. package/dist/{outbound-attachment-Co2diKdP.js → outbound-attachment-DjNDa3zn.js} +2 -2
  62. package/dist/{paths-CySxpNhH.js → paths-Cce4PUkG.js} +5 -5
  63. package/dist/{paths-Cb87-LzP.js → paths-DLyHUt31.js} +1 -1
  64. package/dist/{pi-auth-json-DPWPoruO.js → pi-auth-json-0SYBFZTt.js} +8 -8
  65. package/dist/{pi-embedded-DkqIIBK5.js → pi-embedded-Cuoz1LlF.js} +158 -158
  66. package/dist/{pi-embedded-BRw7oe5n.js → pi-embedded-D7S6Iuxk.js} +16 -16
  67. package/dist/{pi-embedded-helpers-DEEaCvEp.js → pi-embedded-helpers-ag2bosuj.js} +52 -52
  68. package/dist/{pi-embedded-helpers-B8kqLWns.js → pi-embedded-helpers-lgx_U5KS.js} +4 -4
  69. package/dist/plugin-sdk/{accounts-BToL3HlP.js → accounts-BtaOa4z_.js} +1 -1
  70. package/dist/plugin-sdk/{accounts-D9zGZU5t.js → accounts-Ddm33hQm.js} +3 -3
  71. package/dist/plugin-sdk/{accounts-Dtszw3Zn.js → accounts-s-AdhXVR.js} +1 -1
  72. package/dist/plugin-sdk/{active-listener-bEk__wbB.js → active-listener-BXYeALs0.js} +1 -1
  73. package/dist/plugin-sdk/{agent-scope-C3gMMKCU.js → agent-scope-CYYpcO9W.js} +2 -2
  74. package/dist/plugin-sdk/{api-key-rotation-CVBMpnPc.js → api-key-rotation-D_sMvI5W.js} +1 -1
  75. package/dist/plugin-sdk/{audio-preflight-DoQQKlxa.js → audio-preflight-VpItkiy3.js} +24 -24
  76. package/dist/plugin-sdk/{bindings-BbwoUGPx.js → bindings-C7hRtgYW.js} +2 -2
  77. package/dist/plugin-sdk/{channel-activity-Ji7f0gqq.js → channel-activity-DoC1xtDu.js} +1 -1
  78. package/dist/plugin-sdk/{channel-web-CDaDQ_94.js → channel-web-CkBYE0D-.js} +22 -22
  79. package/dist/plugin-sdk/{chrome-C7c_0I5M.js → chrome-B7RdxmJ0.js} +3 -3
  80. package/dist/plugin-sdk/{chunk-jvk9axTQ.js → chunk-Dw2XBYXv.js} +1 -1
  81. package/dist/plugin-sdk/{command-format-DSdvQ_M5.js → command-format-GKSevep4.js} +1 -1
  82. package/dist/plugin-sdk/{commands-registry-CQFbmUMs.js → commands-registry-COIaslGl.js} +4 -4
  83. package/dist/plugin-sdk/{config-DDkdiUOR.js → config-KlTNfkFF.js} +9 -9
  84. package/dist/plugin-sdk/{deliver-BZ6iNLl7.js → deliver-BZ99UKQq.js} +10 -10
  85. package/dist/plugin-sdk/{diagnostic-mFf4i4G9.js → diagnostic-05pm5Rxi.js} +1 -1
  86. package/dist/plugin-sdk/{image-BOYy0Ump.js → image-CLOPx7yW.js} +4 -4
  87. package/dist/plugin-sdk/{image-ops-Bnp6LXEx.js → image-ops-BlQR__MN.js} +1 -1
  88. package/dist/plugin-sdk/index.js +53 -53
  89. package/dist/plugin-sdk/{ir-Fb3qpcis.js → ir-BJ6BHE5b.js} +4 -4
  90. package/dist/plugin-sdk/{local-roots-Ckk1QfzI.js → local-roots-BHLNSI8U.js} +3 -3
  91. package/dist/plugin-sdk/{login-Bh3DZPam.js → login-DQMXuxOk.js} +7 -7
  92. package/dist/plugin-sdk/{login-qr-DbR7odSr.js → login-qr-BjVZSoCi.js} +9 -9
  93. package/dist/plugin-sdk/{manager-DckktAQ3.js → manager-CBSBFuFz.js} +8 -8
  94. package/dist/plugin-sdk/{manifest-registry-B3ugY9-f.js → manifest-registry-CPnHl_K3.js} +1 -1
  95. package/dist/plugin-sdk/{markdown-tables-Dfaqilz6.js → markdown-tables-BoYFajMu.js} +1 -1
  96. package/dist/plugin-sdk/{message-channel-BdI5Ra9S.js → message-channel-COTAJzHd.js} +1 -1
  97. package/dist/plugin-sdk/{model-selection-OpU8HN50.js → model-selection-CsbEfrS0.js} +4 -4
  98. package/dist/plugin-sdk/{outbound-rF6G8Xpr.js → outbound-B0e8KdaR.js} +7 -7
  99. package/dist/plugin-sdk/{outbound-attachment-DnVQfTG2.js → outbound-attachment-CnslKL38.js} +2 -2
  100. package/dist/plugin-sdk/{pi-auth-json-CJk8t14T.js → pi-auth-json-qWi7ZIYV.js} +5 -5
  101. package/dist/plugin-sdk/{pi-embedded-helpers-BveUP4hk.js → pi-embedded-helpers-CW630epe.js} +17 -17
  102. package/dist/plugin-sdk/{plugins-BbAvhC25.js → plugins-BNByVCIH.js} +4 -4
  103. package/dist/plugin-sdk/{pw-ai-DjGUsee-.js → pw-ai-CnbPIPY9.js} +8 -8
  104. package/dist/plugin-sdk/{qmd-manager-mjKcdwVr.js → qmd-manager-CH0XbIHf.js} +4 -4
  105. package/dist/plugin-sdk/{registry--_pGht6S.js → registry-D0xTnUWt.js} +2 -2
  106. package/dist/plugin-sdk/{replies-fI39rPGa.js → replies-LLcQL3w6.js} +3 -3
  107. package/dist/plugin-sdk/{reply-BgTxNeXD.js → reply-DCiyoHqU.js} +78 -78
  108. package/dist/plugin-sdk/{reply-prefix-BHuV5t70.js → reply-prefix-uxfMZW4p.js} +1 -1
  109. package/dist/plugin-sdk/{resolve-outbound-target-BkCUbYGV.js → resolve-outbound-target-BiyAyTWz.js} +2 -2
  110. package/dist/plugin-sdk/{resolve-route-D3JH_D2N.js → resolve-route-B3CCBumQ.js} +3 -3
  111. package/dist/plugin-sdk/{retry-ilSJqnz9.js → retry-CwQ_iIj8.js} +1 -1
  112. package/dist/plugin-sdk/{runner-BVqnEfNe.js → runner-CGBT7tgF.js} +9 -9
  113. package/dist/plugin-sdk/{send-BtANzsAo.js → send-B2CEnVLL.js} +6 -6
  114. package/dist/plugin-sdk/{send-BHbXh8Ly.js → send-C5h_YxNb.js} +7 -7
  115. package/dist/plugin-sdk/{send-D6LMZJ_h.js → send-CRsR8-vO.js} +10 -10
  116. package/dist/plugin-sdk/{send-Bxdu6ZZy.js → send-CjOBB3Vo.js} +10 -10
  117. package/dist/plugin-sdk/{send-BMfJIhCk.js → send-pYqe432l.js} +6 -6
  118. package/dist/plugin-sdk/{session-kI0tzViQ.js → session-BsOrxiMj.js} +4 -4
  119. package/dist/plugin-sdk/{skill-commands-DCNXVERE.js → skill-commands-ff_01_r3.js} +5 -5
  120. package/dist/plugin-sdk/{skills-B1GeRYlu.js → skills-_yTP47Cd.js} +7 -7
  121. package/dist/plugin-sdk/{sqlite-Cq_7Cg4E.js → sqlite-CxAR5ttJ.js} +1 -1
  122. package/dist/plugin-sdk/{store-Do3t33-c.js → store-BdrNabcU.js} +2 -2
  123. package/dist/plugin-sdk/{subsystem-Coz2AgU8.js → subsystem-B2uDN3TV.js} +1 -1
  124. package/dist/plugin-sdk/{tables-DR0NmBeH.js → tables-DNwXwNFa.js} +1 -1
  125. package/dist/{target-errors-DyItGyW9.js → plugin-sdk/target-errors-Paro1BjP.js} +2 -2
  126. package/dist/plugin-sdk/{thinking-DCNUIAHY.js → thinking-CXqf7WTe.js} +5 -5
  127. package/dist/{tokens-c_SLAkVb.js → plugin-sdk/tokens-bC3UVmVH.js} +1 -1
  128. package/dist/plugin-sdk/{tool-images-D7Lno-TE.js → tool-images-HJ2sfZDV.js} +2 -2
  129. package/dist/plugin-sdk/{tool-loop-detection-edmW8ZiF.js → tool-loop-detection-BVA6fax-.js} +2 -2
  130. package/dist/plugin-sdk/web-DMTBKWMU.js +65 -0
  131. package/dist/plugin-sdk/{whatsapp-actions-CcBzDuL-.js → whatsapp-actions-DfseosPO.js} +21 -21
  132. package/dist/{plugins-C4C9637U.js → plugins-DQYI3Fr-.js} +9 -9
  133. package/dist/{program-BDQRtHXP.js → program-Dh_NkeL_.js} +2 -2
  134. package/dist/{program-context-DoK7rKBC.js → program-context-C6OueMej.js} +6 -6
  135. package/dist/{prompt-select-styled-MqSvQaDb.js → prompt-select-styled-B_XU_pph.js} +1 -1
  136. package/dist/{prompt-select-styled-B3dTk26Y.js → prompt-select-styled-CmbX-Peb.js} +1 -1
  137. package/dist/{pw-ai-DhwRiS06.js → pw-ai-Ch7liUOW.js} +11 -11
  138. package/dist/{pw-ai-1htA-NnS.js → pw-ai-De-KR9_s.js} +1 -1
  139. package/dist/{qmd-manager-DdZh9PHs.js → qmd-manager-QHUP-_em.js} +7 -7
  140. package/dist/{register.maintenance-B3SsgHO_.js → register.maintenance-CzdnuWVy.js} +5 -5
  141. package/dist/{register.maintenance-BQy8hEp0.js → register.maintenance-aLrIiGjI.js} +4 -4
  142. package/dist/{register.onboard-Cg1itYBF.js → register.onboard-B_0R2fhe.js} +2 -2
  143. package/dist/{register.onboard-kaKkBUpb.js → register.onboard-DY6yrdh6.js} +2 -2
  144. package/dist/{register.setup-BBQtCyWL.js → register.setup-BMEEidVS.js} +2 -2
  145. package/dist/{register.setup-BiBByjTo.js → register.setup-DUBzMFHd.js} +2 -2
  146. package/dist/{register.subclis-B27L2Tlh.js → register.subclis-CWosGlSy.js} +3 -3
  147. package/dist/{registry-DP24za6g.js → registry-CK4e9hn8.js} +17 -17
  148. package/dist/{replies-DpPvWiGF.js → replies-BIX_isV7.js} +3 -3
  149. package/dist/{reply-prefix-CtL0omgM.js → reply-prefix-XlyuyChD.js} +1 -1
  150. package/dist/{resolve-route-BVikmvWO.js → resolve-route-CZ-1eqw0.js} +4 -4
  151. package/dist/{retry-dGG-MbxL.js → retry-Cly39XZB.js} +1 -1
  152. package/dist/{run-main-DqlK3Wy-.js → run-main-ChZAqQNU.js} +3 -3
  153. package/dist/{runner-B_KP4voe.js → runner-D0QUGA_X.js} +9 -9
  154. package/dist/{runner-BcQ0sF9T.js → runner-DUBExAb5.js} +1 -1
  155. package/dist/{send-DeEosX8F.js → send-B1u-LrcS.js} +18 -18
  156. package/dist/{send-DwKJK3sM.js → send-CiTGOvEc.js} +10 -10
  157. package/dist/{send-zSarozV2.js → send-DW96zgDL.js} +6 -6
  158. package/dist/{send-CHEOWVc8.js → send-DeFniOjh.js} +6 -6
  159. package/dist/{send-DbcLJb0P.js → send-WyRqb4WD.js} +7 -7
  160. package/dist/{session-DV1MNlbV.js → session-SM36BTsl.js} +8 -8
  161. package/dist/{skill-commands-D610IKhm.js → skill-commands-BJMb_psG.js} +9 -9
  162. package/dist/{skills-o5WVqM4V.js → skills-BFekKL7i.js} +21 -21
  163. package/dist/{sqlite-6H6Zw1cs.js → sqlite-DRbx2dhW.js} +4 -4
  164. package/dist/{store-vVE6N2mH.js → store-C0wvOkae.js} +2 -2
  165. package/dist/{subsystem-DgpxyDQ_.js → subsystem-Bs9YvKLa.js} +1 -1
  166. package/dist/{tables-BIWsCKXJ.js → tables-DuZspiBu.js} +1 -1
  167. package/dist/{plugin-sdk/target-errors-B7YyMnIi.js → target-errors-Be1SwYlW.js} +2 -2
  168. package/dist/{thinking-Ni0HF-w6.js → thinking-CdlENGRW.js} +5 -5
  169. package/dist/{plugin-sdk/tokens-CWMflosr.js → tokens-H1H1LiSQ.js} +1 -1
  170. package/dist/{tool-images-DBCfXdli.js → tool-images-DXB7tqWi.js} +2 -2
  171. package/dist/{tool-loop-detection-Bbc9OPFR.js → tool-loop-detection-Cs8_HCsx.js} +3 -3
  172. package/dist/{update-cli-4mLsTTm5.js → update-cli-B8TIn1_v.js} +4 -4
  173. package/dist/{update-cli-yJuLaKdL.js → update-cli-_VRN7Kfv.js} +5 -5
  174. package/dist/{web-Nrl97JcY.js → web-DEbB7-Xr.js} +57 -57
  175. package/dist/{web-DrsjOzkW.js → web-ysMm0Pnv.js} +6 -6
  176. package/dist/{whatsapp-actions-oRQjcdQe.js → whatsapp-actions-D1RsnX7P.js} +23 -23
  177. package/dist/{workspace-CbvamIU6.js → workspace-wAaHI8-5.js} +6 -6
  178. package/package.json +1 -1
  179. package/dist/plugin-sdk/web-B6NRKGGa.js +0 -65
@@ -14,7 +14,7 @@ import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExis
14
14
  import { t as normalizeChatType } from "./chat-type-DFDuk3FY.js";
15
15
  import { a as resolveSlackWebClientOptions, c as buildSlackBlocksFallbackText, i as createSlackWebClient, l as parseSlackTarget, o as parseSlackBlocksInput, s as validateSlackBlocksArray, t as sendMessageSlack, u as resolveSlackChannelId } from "./send-D-hWrHoH.js";
16
16
  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 allowListMatches$1, d as parseDiscordModalCustomId, dt as normalizeDiscordSlug, et as hasAnyGuildPermissionDiscord, f as parseDiscordModalCustomIdForCarbon, ft as resolveDiscordAllowListMatch, g as sendMessageDiscord, gt as resolveDiscordOwnerAllowFrom, h as resolveDiscordModalEntry, ht as resolveDiscordMemberAccessState, i as removeOwnReactionsDiscord, it as parseDiscordTarget, j as addRoleDiscord, k as searchMessagesDiscord, l as parseDiscordComponentCustomId, lt as isDiscordGroupAllowedByPolicy, m as resolveDiscordComponentEntry, mt as resolveDiscordGuildEntry, n as fetchReactionsDiscord, nt as createDiscordClient, o as sendDiscordComponentMessage, ot as listDiscordDirectoryGroupsLive, p as readDiscordComponentSpec, pt as resolveDiscordChannelConfigWithFallback, q as deleteChannelDiscord, r as reactMessageDiscord, rt as createDiscordRestClient, s as createDiscordFormModal, st as listDiscordDirectoryPeersLive, tt as chunkDiscordTextWithMode, u as parseDiscordComponentCustomIdForCarbon, ut as normalizeDiscordAllowList, 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-C1IYd3g7.js";
17
- import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-C-37cZUe.js";
17
+ import { C as getGlobalHookRunner, S as parseInlineDirectives$1, _ as normalizeTargetForProvider, a as normalizeOutboundPayloadsForJson, b as MEDIA_TOKEN_RE, c as applyReplyThreading, d as isRenderablePayload, f as shouldSuppressMessagingToolReplies, g as normalizeChannelTargetInput, h as buildTargetResolverSignature, i as normalizeOutboundPayloads, l as filterMessagingToolDuplicates, m as resolveReplyToMode, o as normalizeReplyPayloadsForDelivery, p as createReplyToModeFilterForChannel, r as formatOutboundPayloadLog, s as applyReplyTagsToPayload, t as deliverOutboundPayloads, u as filterMessagingToolMediaDuplicates, v as throwIfAborted, w as initializeGlobalHookRunner, x as splitMediaFromOutput, y as parseReplyDirectives } from "./deliver-BH0l3UKW.js";
18
18
  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-D0xmLpej.js";
19
19
  import { r as getDiagnosticSessionState } from "./diagnostic-session-state-C1vRJs5w.js";
20
20
  import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-8zZqL37v.js";
@@ -22,10 +22,10 @@ import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normali
22
22
  import { d as detectMime, f as extensionForMime, g as isGifMedia, h as isAudioFileName, i as getImageMetadata, m as imageMimeFromFormat, s as resizeToJpeg, x as mediaKindFromMime, y as MAX_IMAGE_BYTES } from "./image-ops-ByaQt43P.js";
23
23
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-j5tVLINv.js";
24
24
  import { a as isMarkdownCapableMessageChannel, c as resolveGatewayMessageChannel, d as GATEWAY_CLIENT_MODES, f as GATEWAY_CLIENT_NAMES, i as isInternalMessageChannel, l as resolveMessageChannel, n as isDeliverableMessageChannel, o as listDeliverableMessageChannels, r as isGatewayMessageChannel, s as normalizeMessageChannel, t as INTERNAL_MESSAGE_CHANNEL, u as GATEWAY_CLIENT_IDS } from "./message-channel-BQINJQIT.js";
25
- import { $ as mergeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as updateSessionStoreEntry, Jt as ensureSessionHeader, K as updateLastRoute, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as deliveryContextKey, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as resolveCacheTtlMs$1, Xt as resolveBootstrapTotalMaxChars, Y as isCacheEnabled, Yt as resolveBootstrapMaxChars, Z as deliveryContextFromSession, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as DEFAULT_RESET_TRIGGERS, a as isMessagingToolDuplicateNormalized, at as countToolResults, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as applyInputProvenanceToUserMessage, d as isAntigravityClaude, dt as resolveSessionKey, et as normalizeDeliveryContext, f as isGoogleModelApi, ft as evaluateSessionFreshness, g as formatBillingErrorMessage, gt as resolveThreadFlag, h as formatAssistantErrorText, ht as resolveSessionResetType, it as capArrayByJsonBytes, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as hasInterSessionUserProvenance, m as classifyFailoverReason, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nt as normalizeAccountId$3, o as normalizeTextForComparison, ot as extractToolCallNames, p as BILLING_ERROR_USER_MESSAGE, pt as resolveChannelResetConfig, q as updateSessionStore, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as archiveSessionTranscripts, s as sanitizeSessionMessagesImages, st as INPUT_PROVENANCE_KIND_VALUES, t as validateAnthropicTurns, tt as normalizeSessionDeliveryFields, u as downgradeOpenAIReasoningBlocks, ut as normalizeInputProvenance, v as getApiErrorPayloadFingerprint, vt as resolveFreshSessionTotalTokens, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, yt as canonicalizeMainSessionAlias, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-B8kqLWns.js";
25
+ import { $ as mergeDeliveryContext, A as isTransientHttpError, At as DEFAULT_UPLOAD_DIR, Bt as expandToolGroups, C as isContextOverflowError, Ct as resolveGroupSessionKey, D as isRateLimitAssistantError, Dt as registerBrowserRoutes, E as isLikelyContextOverflowError, Et as createBrowserRouteContext, F as resolveSandboxContext, Ft as resolveSandboxConfigForAgent, Gt as compileGlobPatterns, H as loadSessionStore, Ht as normalizeToolName, I as resolveSandboxRuntimeStatus, It as applyOwnerOnlyToolPolicy, J as updateSessionStoreEntry, Jt as ensureSessionHeader, K as updateLastRoute, Kt as matchesAnyGlobPattern, L as extractDeliveryInfo, Lt as buildPluginToolGroups, M as parseImageSizeError, Mt as getBridgeAuthForPort, N as sanitizeUserFacingText, Nt as ensureBrowserControlAuth, O as isRawApiErrorPayload, Ot as resolveBrowserConfig, P as ensureSandboxWorkspaceForSession, Pt as resolveBrowserControlAuth, Q as deliveryContextKey, R as parseSessionThreadInfo, Rt as collectExplicitAllowlist, S as isCompactionFailureError, St as deriveSessionMetaPatch, T as isFailoverErrorMessage, Tt as resolveSessionLockMaxHoldFromTimeout, U as readSessionUpdatedAt, Ut as resolveToolProfilePolicy, V as resolveAndPersistSessionFile, Vt as mergeAlsoAllowPolicy, W as recordSessionMetaFromInbound, Wt as stripPluginOnlyAllowlist, X as resolveCacheTtlMs$1, Xt as resolveBootstrapTotalMaxChars, Y as isCacheEnabled, Yt as resolveBootstrapMaxChars, Z as deliveryContextFromSession, Zt as sanitizeGoogleTurnOrdering, _ as formatRawAssistantErrorForUi, _t as DEFAULT_RESET_TRIGGERS, a as isMessagingToolDuplicateNormalized, at as countToolResults, b as isBillingAssistantError, bt as resolveExplicitAgentSessionKey, c as extractToolCallsFromAssistant, ct as applyInputProvenanceToUserMessage, d as isAntigravityClaude, dt as resolveSessionKey, et as normalizeDeliveryContext, f as isGoogleModelApi, ft as evaluateSessionFreshness, g as formatBillingErrorMessage, gt as resolveThreadFlag, h as formatAssistantErrorText, ht as resolveSessionResetType, it as capArrayByJsonBytes, j as parseImageDimensionError, jt as resolveExistingPathsWithinRoot, k as isTimeoutErrorMessage, kt as resolveProfile, l as extractToolResultId, lt as hasInterSessionUserProvenance, m as classifyFailoverReason, mt as resolveSessionResetPolicy, n as validateGeminiTurns, nt as normalizeAccountId$3, o as normalizeTextForComparison, ot as extractToolCallNames, p as BILLING_ERROR_USER_MESSAGE, pt as resolveChannelResetConfig, q as updateSessionStore, qt as buildBootstrapContextFiles, r as pickFallbackThinkingLevel, rt as archiveSessionTranscripts, s as sanitizeSessionMessagesImages, st as INPUT_PROVENANCE_KIND_VALUES, t as validateAnthropicTurns, tt as normalizeSessionDeliveryFields, u as downgradeOpenAIReasoningBlocks, ut as normalizeInputProvenance, v as getApiErrorPayloadFingerprint, vt as resolveFreshSessionTotalTokens, w as isFailoverAssistantError, wt as acquireSessionWriteLock, x as isCloudCodeAssistFormatError, xt as resolveMainSessionKey, y as isAuthAssistantError, yt as canonicalizeMainSessionAlias, z as appendAssistantMessageToSessionTranscript, zt as expandPolicyWithPluginGroups } from "./pi-embedded-helpers-lgx_U5KS.js";
26
26
  import { A as VERSION, C as getConfigValueAtPath, D as isSafeExecutableValue, E as unsetConfigValueAtPath, O as DEFAULT_SUBAGENT_MAX_SPAWN_DEPTH, S as unsetConfigOverride, T as setConfigValueAtPath, _ as parseDurationMs, a as writeConfigFile, b as resetConfigOverrides, c as TELEGRAM_COMMAND_NAME_PATTERN, f as isInboundPathAllowed, g as normalizeScpRemoteHost, h as resolveIMessageRemoteAttachmentRoots, i as resolveConfigSnapshotHash, k as resolveAgentMaxConcurrent, l as normalizeTelegramCommandName, m as resolveIMessageAttachmentRoots, n as loadConfig, o as validateConfigObjectWithPlugins, r as readConfigFileSnapshot, u as resolveTelegramCustomCommands, v as validateJsonSchemaValue, w as parseConfigPath, x as setConfigOverride, y as getConfigOverrides } from "./config-BmV60pPT.js";
27
27
  import { c as normalizePluginsConfig, f as isPathInsideWithRealpath, i as safeStatSync, l as resolveEnableState, n as discoverSymiPlugins, p as isDangerousHostEnvVarName, r as isPathInside, s as applyTestPluginDefaults, t as loadPluginManifestRegistry, u as resolveMemorySlotDecision } from "./manifest-registry-D-mTF1cj.js";
28
- import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-D2SKJnR7.js";
28
+ import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-CDJYxX5a.js";
29
29
  import { c as assertSandboxPath, d as resolveSandboxedMediaSource, f as applySkillEnvOverrides, i as resolveSkillsPromptForRun, l as resolveSandboxInputPath, n as buildWorkspaceSkillSnapshot, p as applySkillEnvOverridesFromSnapshot, r as loadWorkspaceSkillEntries, s as assertMediaNotDataUrl } from "./skills-BNpGMnp-.js";
30
30
  import { n as formatErrorMessage, r as formatUncaughtError } from "./errors-CPfngF0S.js";
31
31
  import { i as isBlockedHostnameOrIp, o as normalizeHostname, t as SsrFBlockedError } from "./ssrf-CxfFyMRZ.js";
@@ -36,7 +36,7 @@ import { t as resolveIMessageAccount } from "./accounts-DImOt9jX.js";
36
36
  import { i as resolveSessionTranscriptPath, n as resolveSessionFilePath, o as resolveSessionTranscriptsDirForAgent, r as resolveSessionFilePathOptions, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-DkMamAQ-.js";
37
37
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-C8Tqw4td.js";
38
38
  import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-ChC2CXaN.js";
39
- import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-DcpMiprB.js";
39
+ import { S as ensureSymiModelsJson, _ as stripMinimaxToolCallXml, a as decodeDataUrl, b as stripReasoningTagsFromText, c as extractAssistantText$1, d as extractThinkingFromTaggedText, f as formatReasoningMessage, g as stripDowngradedToolCallText, h as promoteThinkingTagsToBlocks, i as coerceImageModelConfig, l as extractAssistantThinking, m as isAssistantMessage, o as resolveProviderVisionModelFromConfig, p as inferToolMetaFromArgs, r as coerceImageAssistantText, s as minimaxUnderstandImage, u as extractThinkingFromTaggedStream, v as stripThinkingTagsFromText, x as extractTextFromChatContent, y as resolveToolDisplay } from "./image-CHzdaNJ4.js";
40
40
  import { i as resolveMemorySearchConfig, n as probeOllamaEmbeddingModels, r as resolveOllamaBaseUrl } from "./manager-jpn5vRTY.js";
41
41
  import { d as listMemoryFiles, f as normalizeExtraMemoryPaths, g as runTasksWithConcurrency } from "./sqlite-BNh23mUR.js";
42
42
  import { n as retryAsync } from "./retry-QGp0jvVi.js";
@@ -49,7 +49,7 @@ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-F0moAwIl.js";
49
49
  import { _ as resolveNativeCommandsEnabled, a as listChatCommandsForConfig, c as normalizeCommandBody, d as resolveCommandArgMenu, f as serializeCommandArgs, g as isRestartEnabled, h as isNativeCommandsExplicitlyDisabled, i as listChatCommands, l as parseCommandArgs, m as isCommandFlagEnabled, o as listNativeCommandSpecs, p as shouldHandleTextCommands, r as findCommandByNativeName, s as listNativeCommandSpecsForConfig, t as buildCommandTextFromArgs, u as resolveCommandArgChoices, v as resolveNativeSkillsEnabled } from "./commands-registry-C_aYUwpl.js";
50
50
  import { c as getSkillsSnapshotVersion, d as createAsyncLock, f as readJsonFile, i as resolveSkillCommandInvocation, l as pruneExpiredPending, n as listSkillCommandsForAgents, o as getRemoteSkillEligibility, p as writeJsonAtomic, r as listSkillCommandsForWorkspace, s as ensureSkillsWatcher, t as listReservedChatSlashCommandNames, u as resolvePairingPaths } from "./skill-commands-DklY7Cj7.js";
51
51
  import { r as normalizeInboundTextNewlines, t as finalizeInboundContext } from "./inbound-context-QOi5vzUt.js";
52
- import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-BcQ0sF9T.js";
52
+ import { _ as resolveMediaUnderstandingScope, a as resolveMediaAttachmentLocalRoots, c as loadModelCatalog, d as resolveAttachmentKind, f as buildRandomTempFilePath, g as normalizeMediaUnderstandingChatType, h as resolveTimeoutMs$1, i as resolveAutoImageModel, l as modelSupportsVision, m as resolveConcurrency, n as createMediaAttachmentCache, o as runCapability, p as registerUnhandledRejectionHandler, r as normalizeMediaAttachments, s as findModelInCatalog, t as buildProviderRegistry, v as CLI_OUTPUT_MAX_BUFFER, y as applyTemplate } from "./runner-DUBExAb5.js";
53
53
  import { n as wrapFetchWithAbortSignal, t as resolveFetch } from "./fetch-DtLn7YU3.js";
54
54
  import { n as recordCommandPoll, r as resetCommandPollCount } from "./command-poll-backoff-DtXYsHEc.js";
55
55
  import { n as recordChannelActivity, r as createDiscordRetryRunner, t as getChannelActivity } from "./channel-activity-D9q-fIPB.js";
@@ -79,7 +79,7 @@ import { EdgeTTS } from "node-edge-tts";
79
79
  import AjvPkg from "ajv";
80
80
  import { createServer } from "node:http";
81
81
  import { ProxyAgent, fetch as fetch$1 } from "undici";
82
- import WebSocket, { WebSocket as WebSocket$1 } from "ws";
82
+ import WebSocket$1, { WebSocket } from "ws";
83
83
  import { Buffer as Buffer$1 } from "node:buffer";
84
84
  import { createJiti } from "jiti";
85
85
  import { Type } from "@sinclair/typebox";
@@ -5714,7 +5714,7 @@ var GatewayClient = class {
5714
5714
  if (fingerprint !== expected) return /* @__PURE__ */ new Error("gateway tls fingerprint mismatch");
5715
5715
  });
5716
5716
  }
5717
- this.ws = new WebSocket$1(url, wsOptions);
5717
+ this.ws = new WebSocket(url, wsOptions);
5718
5718
  this.ws.on("open", () => {
5719
5719
  if (url.startsWith("wss://") && this.opts.tlsFingerprint) {
5720
5720
  const tlsError = this.validateTlsFingerprint();
@@ -5933,7 +5933,7 @@ var GatewayClient = class {
5933
5933
  return null;
5934
5934
  }
5935
5935
  async request(method, params, opts) {
5936
- if (!this.ws || this.ws.readyState !== WebSocket$1.OPEN) throw new Error("gateway not connected");
5936
+ if (!this.ws || this.ws.readyState !== WebSocket.OPEN) throw new Error("gateway not connected");
5937
5937
  const id = randomUUID();
5938
5938
  const frame = {
5939
5939
  type: "req",
@@ -7199,7 +7199,7 @@ async function routeReply(params) {
7199
7199
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
7200
7200
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
7201
7201
  try {
7202
- const { deliverOutboundPayloads } = await import("./deliver-C-37cZUe.js").then((n) => n.n);
7202
+ const { deliverOutboundPayloads } = await import("./deliver-BH0l3UKW.js").then((n) => n.n);
7203
7203
  return {
7204
7204
  ok: true,
7205
7205
  messageId: (await deliverOutboundPayloads({
@@ -41673,7 +41673,7 @@ async function deliverSessionMaintenanceWarning(params) {
41673
41673
  return;
41674
41674
  }
41675
41675
  try {
41676
- const { deliverOutboundPayloads } = await import("./deliver-C-37cZUe.js").then((n) => n.n);
41676
+ const { deliverOutboundPayloads } = await import("./deliver-BH0l3UKW.js").then((n) => n.n);
41677
41677
  await deliverOutboundPayloads({
41678
41678
  cfg: params.cfg,
41679
41679
  channel,
@@ -45119,7 +45119,7 @@ async function describeStickerImage(params) {
45119
45119
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
45120
45120
  try {
45121
45121
  const buffer = await fs$1.readFile(imagePath);
45122
- const { describeImageWithModel } = await import("./image-DcpMiprB.js").then((n) => n.n);
45122
+ const { describeImageWithModel } = await import("./image-CHzdaNJ4.js").then((n) => n.n);
45123
45123
  return (await describeImageWithModel({
45124
45124
  buffer,
45125
45125
  fileName: "sticker.webp",
@@ -47781,7 +47781,7 @@ async function preflightDiscordMessage(params) {
47781
47781
  let preflightTranscript;
47782
47782
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
47783
47783
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
47784
- const { transcribeFirstAudio } = await import("./audio-preflight-CPBOQV4I.js");
47784
+ const { transcribeFirstAudio } = await import("./audio-preflight-C40mKAp7.js");
47785
47785
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
47786
47786
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
47787
47787
  ctx: {
@@ -60316,7 +60316,7 @@ async function runAgentTurn(params) {
60316
60316
  function createDefaultDeps() {
60317
60317
  return {
60318
60318
  sendMessageWhatsApp: async (...args) => {
60319
- const { sendMessageWhatsApp } = await import("./web-DrsjOzkW.js");
60319
+ const { sendMessageWhatsApp } = await import("./web-ysMm0Pnv.js");
60320
60320
  return await sendMessageWhatsApp(...args);
60321
60321
  },
60322
60322
  sendMessageTelegram: async (...args) => {
@@ -63221,7 +63221,7 @@ function createDiscordGatewayPlugin(params) {
63221
63221
  super(options);
63222
63222
  }
63223
63223
  createWebSocket(url) {
63224
- return new WebSocket(url, { agent });
63224
+ return new WebSocket$1(url, { agent });
63225
63225
  }
63226
63226
  }
63227
63227
  return new ProxyGatewayPlugin();
@@ -73439,7 +73439,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
73439
73439
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
73440
73440
  let preflightTranscript;
73441
73441
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
73442
- const { transcribeFirstAudio } = await import("./audio-preflight-CPBOQV4I.js");
73442
+ const { transcribeFirstAudio } = await import("./audio-preflight-C40mKAp7.js");
73443
73443
  preflightTranscript = await transcribeFirstAudio({
73444
73444
  ctx: {
73445
73445
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -75596,7 +75596,7 @@ function loadWebLoginQr() {
75596
75596
  return webLoginQrPromise;
75597
75597
  }
75598
75598
  function loadWebChannel() {
75599
- webChannelPromise ??= import("./web-DrsjOzkW.js");
75599
+ webChannelPromise ??= import("./web-ysMm0Pnv.js");
75600
75600
  return webChannelPromise;
75601
75601
  }
75602
75602
  function loadWhatsAppActions() {
@@ -1,31 +1,31 @@
1
- import { i as resolveGatewayPort, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-CySxpNhH.js";
1
+ import { i as resolveGatewayPort, t as STATE_DIR, u as resolveRequiredHomeDir } from "./paths-Cce4PUkG.js";
2
2
  import { c as normalizeMainKey, l as resolveAgentIdFromSessionKey, m as normalizeOptionalAccountId, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-BCzIW1Y2.js";
3
- import { I as resolveUserPath, M as normalizeE164, U as truncateUtf16Safe, dt as resolvePreferredSymiTmpDir, t as CHANNEL_IDS } from "./registry-DP24za6g.js";
4
- import { n as resolveAgentConfig, u as resolveSessionAgentId } from "./agent-scope-Bw1Ed8W9.js";
5
- import { r as defaultRuntime, t as createSubsystemLogger } from "./subsystem-DgpxyDQ_.js";
6
- import { _ as runExec, a as DEFAULT_SYMICORE_FILENAME, c as DEFAULT_USER_FILENAME, i as DEFAULT_IDENTITY_FILENAME, l as ensureAgentWorkspace, n as DEFAULT_AGENT_WORKSPACE_DIR, o as DEFAULT_SYMIPULSE_FILENAME, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_TOOLS_FILENAME, t as DEFAULT_AGENTS_FILENAME } from "./workspace-CbvamIU6.js";
7
- import { r as normalizeChannelId } from "./plugins-C4C9637U.js";
3
+ import { I as resolveUserPath, M as normalizeE164, U as truncateUtf16Safe, dt as resolvePreferredSymiTmpDir, t as CHANNEL_IDS } from "./registry-CK4e9hn8.js";
4
+ import { n as resolveAgentConfig, u as resolveSessionAgentId } from "./agent-scope-BxoUQqgM.js";
5
+ import { r as defaultRuntime, t as createSubsystemLogger } from "./subsystem-Bs9YvKLa.js";
6
+ import { _ as runExec, a as DEFAULT_SYMICORE_FILENAME, c as DEFAULT_USER_FILENAME, i as DEFAULT_IDENTITY_FILENAME, l as ensureAgentWorkspace, n as DEFAULT_AGENT_WORKSPACE_DIR, o as DEFAULT_SYMIPULSE_FILENAME, r as DEFAULT_BOOTSTRAP_FILENAME, s as DEFAULT_TOOLS_FILENAME, t as DEFAULT_AGENTS_FILENAME } from "./workspace-wAaHI8-5.js";
7
+ import { r as normalizeChannelId } from "./plugins-DQYI3Fr-.js";
8
8
  import { t as normalizeChatType } from "./chat-type-C_KiWNAH.js";
9
9
  import { t as parseBooleanValue } from "./boolean-B8-BqKGQ.js";
10
- import { t as formatCliCommand } from "./command-format-UKHV-j0K.js";
11
- import { c as SafeOpenError, i as getImageMetadata, l as openFileWithinRoot, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-S8-8dAhx.js";
12
- import { S as isPidAlive, x as resolveProcessScopedMap } from "./model-auth-CwOuTuXl.js";
13
- import { o as listDeliverableMessageChannels, s as normalizeMessageChannel } from "./message-channel-DbsRltF2.js";
14
- import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-eEaJddXj.js";
15
- import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-CxSAp8x3.js";
16
- import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-o5WVqM4V.js";
10
+ import { t as formatCliCommand } from "./command-format-BaxDnULz.js";
11
+ import { c as SafeOpenError, i as getImageMetadata, l as openFileWithinRoot, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-CvJzsyvE.js";
12
+ import { S as isPidAlive, x as resolveProcessScopedMap } from "./model-auth-DK43VicI.js";
13
+ import { o as listDeliverableMessageChannels, s as normalizeMessageChannel } from "./message-channel-Dz5lr5b0.js";
14
+ import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-DRbjHIwD.js";
15
+ import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-EyvdASWt.js";
16
+ import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-BFekKL7i.js";
17
17
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-BoQgnc8X.js";
18
18
  import { t as SsrFBlockedError } from "./ssrf-BTMDZjHT.js";
19
- import { r as saveMediaBuffer, t as ensureMediaDir } from "./store-vVE6N2mH.js";
20
- import { d as getChannelDock, o as normalizeThinkLevel, v as normalizeHyphenSlug } from "./thinking-Ni0HF-w6.js";
19
+ import { r as saveMediaBuffer, t as ensureMediaDir } from "./store-C0wvOkae.js";
20
+ import { d as getChannelDock, o as normalizeThinkLevel, v as normalizeHyphenSlug } from "./thinking-CdlENGRW.js";
21
21
  import { n as resolveConversationLabel } from "./conversation-label-DXUkoKcB.js";
22
- import { a as resolveSessionTranscriptPathInDir, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-Cb87-LzP.js";
22
+ import { a as resolveSessionTranscriptPathInDir, i as resolveSessionTranscriptPath, n as resolveSessionFilePath, s as resolveStorePath, t as resolveDefaultSessionStorePath } from "./paths-DLyHUt31.js";
23
23
  import { t as emitSessionTranscriptUpdate } from "./transcript-events-DDYvbmRV.js";
24
- import { t as sanitizeContentBlocksImages } from "./tool-images-DBCfXdli.js";
24
+ import { t as sanitizeContentBlocksImages } from "./tool-images-DXB7tqWi.js";
25
25
  import fs from "node:fs/promises";
26
26
  import os from "node:os";
27
27
  import path, { posix } from "node:path";
28
- import fsSync, { existsSync, realpathSync } from "node:fs";
28
+ import fs$1, { existsSync, realpathSync } from "node:fs";
29
29
  import { spawn } from "node:child_process";
30
30
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
31
31
  import crypto, { createHash, timingSafeEqual } from "node:crypto";
@@ -933,7 +933,7 @@ function isModuleNotFoundError(err) {
933
933
  }
934
934
  async function loadPwAiModule(mode) {
935
935
  try {
936
- return await import("./pw-ai-DhwRiS06.js");
936
+ return await import("./pw-ai-Ch7liUOW.js");
937
937
  } catch (err) {
938
938
  if (mode === "soft") return null;
939
939
  if (isModuleNotFoundError(err)) return null;
@@ -2689,11 +2689,11 @@ async function movePathToTrash(targetPath) {
2689
2689
  return targetPath;
2690
2690
  } catch {
2691
2691
  const trashDir = path.join(os.homedir(), ".Trash");
2692
- fsSync.mkdirSync(trashDir, { recursive: true });
2692
+ fs$1.mkdirSync(trashDir, { recursive: true });
2693
2693
  const base = path.basename(targetPath);
2694
2694
  let dest = path.join(trashDir, `${base}-${Date.now()}`);
2695
- if (fsSync.existsSync(dest)) dest = path.join(trashDir, `${base}-${Date.now()}-${Math.random()}`);
2696
- fsSync.renameSync(targetPath, dest);
2695
+ if (fs$1.existsSync(dest)) dest = path.join(trashDir, `${base}-${Date.now()}-${Math.random()}`);
2696
+ fs$1.renameSync(targetPath, dest);
2697
2697
  return dest;
2698
2698
  }
2699
2699
  }
@@ -2771,7 +2771,7 @@ function createBrowserProfilesService(ctx) {
2771
2771
  } catch {}
2772
2772
  const userDataDir = resolveSymiUserDataDir(name);
2773
2773
  const profileDir = path.dirname(userDataDir);
2774
- if (fsSync.existsSync(profileDir)) {
2774
+ if (fs$1.existsSync(profileDir)) {
2775
2775
  await movePathToTrash(profileDir);
2776
2776
  deleted = true;
2777
2777
  }
@@ -3473,13 +3473,13 @@ function createProfileContext(opts, profile) {
3473
3473
  const userDataDir = resolveSymiUserDataDir(profile.name);
3474
3474
  const profileState = getProfileState();
3475
3475
  if (await isHttpReachable(300) && !profileState.running) try {
3476
- await (await import("./pw-ai-DhwRiS06.js")).closePlaywrightBrowserConnection();
3476
+ await (await import("./pw-ai-Ch7liUOW.js")).closePlaywrightBrowserConnection();
3477
3477
  } catch {}
3478
3478
  if (profileState.running) await stopRunningBrowser();
3479
3479
  try {
3480
- await (await import("./pw-ai-DhwRiS06.js")).closePlaywrightBrowserConnection();
3480
+ await (await import("./pw-ai-Ch7liUOW.js")).closePlaywrightBrowserConnection();
3481
3481
  } catch {}
3482
- if (!fsSync.existsSync(userDataDir)) return {
3482
+ if (!fs$1.existsSync(userDataDir)) return {
3483
3483
  moved: false,
3484
3484
  from: userDataDir
3485
3485
  };
@@ -3898,7 +3898,7 @@ function releaseAllLocksSync() {
3898
3898
  if (typeof held.handle.close === "function") held.handle.close().catch(() => {});
3899
3899
  } catch {}
3900
3900
  try {
3901
- fsSync.rmSync(held.lockPath, { force: true });
3901
+ fs$1.rmSync(held.lockPath, { force: true });
3902
3902
  } catch {}
3903
3903
  HELD_LOCKS.delete(sessionFile);
3904
3904
  }
@@ -5699,7 +5699,7 @@ function resolveSessionTranscriptCandidates(sessionId, storePath, sessionFile, a
5699
5699
  }
5700
5700
  function archiveFileOnDisk(filePath, reason) {
5701
5701
  const archived = `${filePath}.${reason}.${(/* @__PURE__ */ new Date()).toISOString().replaceAll(":", "-")}`;
5702
- fsSync.renameSync(filePath, archived);
5702
+ fs$1.renameSync(filePath, archived);
5703
5703
  return archived;
5704
5704
  }
5705
5705
  /**
@@ -5709,7 +5709,7 @@ function archiveFileOnDisk(filePath, reason) {
5709
5709
  function archiveSessionTranscripts(opts) {
5710
5710
  const archived = [];
5711
5711
  for (const candidate of resolveSessionTranscriptCandidates(opts.sessionId, opts.storePath, opts.sessionFile, opts.agentId)) {
5712
- if (!fsSync.existsSync(candidate)) continue;
5712
+ if (!fs$1.existsSync(candidate)) continue;
5713
5713
  try {
5714
5714
  archived.push(archiveFileOnDisk(candidate, opts.reason));
5715
5715
  } catch {}
@@ -5741,15 +5741,15 @@ async function cleanupArchivedSessionTranscripts(opts) {
5741
5741
  let removed = 0;
5742
5742
  let scanned = 0;
5743
5743
  for (const dir of directories) {
5744
- const entries = await fsSync.promises.readdir(dir).catch(() => []);
5744
+ const entries = await fs$1.promises.readdir(dir).catch(() => []);
5745
5745
  for (const entry of entries) {
5746
5746
  const timestamp = parseArchivedTimestamp(entry, reason);
5747
5747
  if (timestamp == null) continue;
5748
5748
  scanned += 1;
5749
5749
  if (now - timestamp <= opts.olderThanMs) continue;
5750
5750
  const fullPath = path.join(dir, entry);
5751
- if (!(await fsSync.promises.stat(fullPath).catch(() => null))?.isFile()) continue;
5752
- await fsSync.promises.rm(fullPath).catch(() => void 0);
5751
+ if (!(await fs$1.promises.stat(fullPath).catch(() => null))?.isFile()) continue;
5752
+ await fs$1.promises.rm(fullPath).catch(() => void 0);
5753
5753
  removed += 1;
5754
5754
  }
5755
5755
  }
@@ -5885,7 +5885,7 @@ function isCacheEnabled(ttlMs) {
5885
5885
  }
5886
5886
  function getFileMtimeMs(filePath) {
5887
5887
  try {
5888
- return fsSync.statSync(filePath).mtimeMs;
5888
+ return fs$1.statSync(filePath).mtimeMs;
5889
5889
  } catch {
5890
5890
  return;
5891
5891
  }
@@ -5964,7 +5964,7 @@ function loadSessionStore(storePath, opts = {}) {
5964
5964
  const maxReadAttempts = process.platform === "win32" ? 3 : 1;
5965
5965
  const retryBuf = maxReadAttempts > 1 ? new Int32Array(new SharedArrayBuffer(4)) : void 0;
5966
5966
  for (let attempt = 0; attempt < maxReadAttempts; attempt++) try {
5967
- const raw = fsSync.readFileSync(storePath, "utf-8");
5967
+ const raw = fs$1.readFileSync(storePath, "utf-8");
5968
5968
  if (raw.length === 0 && attempt < maxReadAttempts - 1) {
5969
5969
  Atomics.wait(retryBuf, 0, 0, 50);
5970
5970
  continue;
@@ -6116,7 +6116,7 @@ function capEntryCount(store, overrideMax, opts = {}) {
6116
6116
  }
6117
6117
  async function getSessionFileSize(storePath) {
6118
6118
  try {
6119
- return (await fsSync.promises.stat(storePath)).size;
6119
+ return (await fs$1.promises.stat(storePath)).size;
6120
6120
  } catch {
6121
6121
  return null;
6122
6122
  }
@@ -6133,7 +6133,7 @@ async function rotateSessionFile(storePath, overrideBytes) {
6133
6133
  if (fileSize <= maxBytes) return false;
6134
6134
  const backupPath = `${storePath}.bak.${Date.now()}`;
6135
6135
  try {
6136
- await fsSync.promises.rename(storePath, backupPath);
6136
+ await fs$1.promises.rename(storePath, backupPath);
6137
6137
  log.info("rotated session store file", {
6138
6138
  backupPath: path.basename(backupPath),
6139
6139
  sizeBytes: fileSize
@@ -6144,11 +6144,11 @@ async function rotateSessionFile(storePath, overrideBytes) {
6144
6144
  try {
6145
6145
  const dir = path.dirname(storePath);
6146
6146
  const baseName = path.basename(storePath);
6147
- const backups = (await fsSync.promises.readdir(dir)).filter((f) => f.startsWith(`${baseName}.bak.`)).toSorted().toReversed();
6147
+ const backups = (await fs$1.promises.readdir(dir)).filter((f) => f.startsWith(`${baseName}.bak.`)).toSorted().toReversed();
6148
6148
  const maxBackups = 3;
6149
6149
  if (backups.length > maxBackups) {
6150
6150
  const toDelete = backups.slice(maxBackups);
6151
- for (const old of toDelete) await fsSync.promises.unlink(path.join(dir, old)).catch(() => void 0);
6151
+ for (const old of toDelete) await fs$1.promises.unlink(path.join(dir, old)).catch(() => void 0);
6152
6152
  log.info("cleaned up old session store backups", { deleted: toDelete.length });
6153
6153
  }
6154
6154
  } catch {}
@@ -6203,14 +6203,14 @@ async function saveSessionStoreUnlocked(storePath, store, opts) {
6203
6203
  await rotateSessionFile(storePath, maintenance.rotateBytes);
6204
6204
  }
6205
6205
  }
6206
- await fsSync.promises.mkdir(path.dirname(storePath), { recursive: true });
6206
+ await fs$1.promises.mkdir(path.dirname(storePath), { recursive: true });
6207
6207
  const json = JSON.stringify(store, null, 2);
6208
6208
  if (process.platform === "win32") {
6209
6209
  const tmp = `${storePath}.${process.pid}.${crypto.randomUUID()}.tmp`;
6210
6210
  try {
6211
- await fsSync.promises.writeFile(tmp, json, "utf-8");
6211
+ await fs$1.promises.writeFile(tmp, json, "utf-8");
6212
6212
  for (let i = 0; i < 5; i++) try {
6213
- await fsSync.promises.rename(tmp, storePath);
6213
+ await fs$1.promises.rename(tmp, storePath);
6214
6214
  break;
6215
6215
  } catch {
6216
6216
  if (i < 4) await new Promise((r) => setTimeout(r, 50 * (i + 1)));
@@ -6220,27 +6220,27 @@ async function saveSessionStoreUnlocked(storePath, store, opts) {
6220
6220
  if ((err && typeof err === "object" && "code" in err ? String(err.code) : null) === "ENOENT") return;
6221
6221
  throw err;
6222
6222
  } finally {
6223
- await fsSync.promises.rm(tmp, { force: true }).catch(() => void 0);
6223
+ await fs$1.promises.rm(tmp, { force: true }).catch(() => void 0);
6224
6224
  }
6225
6225
  return;
6226
6226
  }
6227
6227
  const tmp = `${storePath}.${process.pid}.${crypto.randomUUID()}.tmp`;
6228
6228
  try {
6229
- await fsSync.promises.writeFile(tmp, json, {
6229
+ await fs$1.promises.writeFile(tmp, json, {
6230
6230
  mode: 384,
6231
6231
  encoding: "utf-8"
6232
6232
  });
6233
- await fsSync.promises.rename(tmp, storePath);
6234
- await fsSync.promises.chmod(storePath, 384);
6233
+ await fs$1.promises.rename(tmp, storePath);
6234
+ await fs$1.promises.chmod(storePath, 384);
6235
6235
  } catch (err) {
6236
6236
  if ((err && typeof err === "object" && "code" in err ? String(err.code) : null) === "ENOENT") {
6237
6237
  try {
6238
- await fsSync.promises.mkdir(path.dirname(storePath), { recursive: true });
6239
- await fsSync.promises.writeFile(storePath, json, {
6238
+ await fs$1.promises.mkdir(path.dirname(storePath), { recursive: true });
6239
+ await fs$1.promises.writeFile(storePath, json, {
6240
6240
  mode: 384,
6241
6241
  encoding: "utf-8"
6242
6242
  });
6243
- await fsSync.promises.chmod(storePath, 384);
6243
+ await fs$1.promises.chmod(storePath, 384);
6244
6244
  } catch (err2) {
6245
6245
  if ((err2 && typeof err2 === "object" && "code" in err2 ? String(err2.code) : null) === "ENOENT") return;
6246
6246
  throw err2;
@@ -6249,7 +6249,7 @@ async function saveSessionStoreUnlocked(storePath, store, opts) {
6249
6249
  }
6250
6250
  throw err;
6251
6251
  } finally {
6252
- await fsSync.promises.rm(tmp, { force: true });
6252
+ await fs$1.promises.rm(tmp, { force: true });
6253
6253
  }
6254
6254
  }
6255
6255
  async function updateSessionStore(storePath, mutator, opts) {
@@ -6494,8 +6494,8 @@ function resolveMirroredTranscriptText(params) {
6494
6494
  return trimmed ? trimmed : null;
6495
6495
  }
6496
6496
  async function ensureSessionHeader(params) {
6497
- if (fsSync.existsSync(params.sessionFile)) return;
6498
- await fsSync.promises.mkdir(path.dirname(params.sessionFile), { recursive: true });
6497
+ if (fs$1.existsSync(params.sessionFile)) return;
6498
+ await fs$1.promises.mkdir(path.dirname(params.sessionFile), { recursive: true });
6499
6499
  const header = {
6500
6500
  type: "session",
6501
6501
  version: CURRENT_SESSION_VERSION,
@@ -6503,7 +6503,7 @@ async function ensureSessionHeader(params) {
6503
6503
  timestamp: (/* @__PURE__ */ new Date()).toISOString(),
6504
6504
  cwd: process.cwd()
6505
6505
  };
6506
- await fsSync.promises.writeFile(params.sessionFile, `${JSON.stringify(header)}\n`, {
6506
+ await fs$1.promises.writeFile(params.sessionFile, `${JSON.stringify(header)}\n`, {
6507
6507
  encoding: "utf-8",
6508
6508
  mode: 384
6509
6509
  });
@@ -10,7 +10,7 @@ import { t as normalizeChatType } from "./chat-type-DFDuk3FY.js";
10
10
  import { c as SafeOpenError, i as getImageMetadata, l as openFileWithinRoot, n as buildImageResizeSideGrid, s as resizeToJpeg, t as IMAGE_REDUCE_QUALITY_STEPS } from "./image-ops-ByaQt43P.js";
11
11
  import { o as listDeliverableMessageChannels, s as normalizeMessageChannel } from "./message-channel-BQINJQIT.js";
12
12
  import { _ as parseDurationMs, a as writeConfigFile, n as loadConfig, s as parseByteSize, t as createConfigIO } from "./config-BmV60pPT.js";
13
- import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-D2SKJnR7.js";
13
+ import { A as DEFAULT_BROWSER_EVALUATE_ENABLED, D as DEFAULT_AI_SNAPSHOT_EFFICIENT_MAX_CHARS, E as DEFAULT_AI_SNAPSHOT_EFFICIENT_DEPTH, M as DEFAULT_SYMI_BROWSER_ENABLED, N as DEFAULT_SYMI_BROWSER_PROFILE_NAME, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, S as stopChromeExtensionRelayServer, _ as fetchJson, a as resolveSymiUserDataDir, c as captureScreenshot, d as normalizeCdpWsUrl, f as snapshotAria, g as appendCdpPath, h as withBrowserNavigationPolicy, i as launchSymiChrome, j as DEFAULT_SYMI_BROWSER_COLOR, k as DEFAULT_BROWSER_DEFAULT_PROFILE_NAME, l as createTargetViaCdp, m as assertBrowserNavigationAllowed, n as isChromeCdpReady, o as stopSymiChrome, p as InvalidBrowserNavigationUrlError, r as isChromeReachable, s as resolveBrowserExecutableForPlatform, v as fetchOk, w as isLoopbackHost, x as ensureChromeExtensionRelayServer } from "./chrome-CDJYxX5a.js";
14
14
  import { a as syncSkillsToWorkspace, l as resolveSandboxInputPath, m as sanitizeEnvVars, u as resolveSandboxPath } from "./skills-BNpGMnp-.js";
15
15
  import { n as formatErrorMessage, t as extractErrorCode } from "./errors-CPfngF0S.js";
16
16
  import { t as SsrFBlockedError } from "./ssrf-CxfFyMRZ.js";
@@ -931,7 +931,7 @@ function isModuleNotFoundError(err) {
931
931
  }
932
932
  async function loadPwAiModule(mode) {
933
933
  try {
934
- return await import("./pw-ai-1htA-NnS.js");
934
+ return await import("./pw-ai-De-KR9_s.js");
935
935
  } catch (err) {
936
936
  if (mode === "soft") return null;
937
937
  if (isModuleNotFoundError(err)) return null;
@@ -3471,11 +3471,11 @@ function createProfileContext(opts, profile) {
3471
3471
  const userDataDir = resolveSymiUserDataDir(profile.name);
3472
3472
  const profileState = getProfileState();
3473
3473
  if (await isHttpReachable(300) && !profileState.running) try {
3474
- await (await import("./pw-ai-1htA-NnS.js")).closePlaywrightBrowserConnection();
3474
+ await (await import("./pw-ai-De-KR9_s.js")).closePlaywrightBrowserConnection();
3475
3475
  } catch {}
3476
3476
  if (profileState.running) await stopRunningBrowser();
3477
3477
  try {
3478
- await (await import("./pw-ai-1htA-NnS.js")).closePlaywrightBrowserConnection();
3478
+ await (await import("./pw-ai-De-KR9_s.js")).closePlaywrightBrowserConnection();
3479
3479
  } catch {}
3480
3480
  if (!fs.existsSync(userDataDir)) return {
3481
3481
  moved: false,
@@ -1,5 +1,5 @@
1
1
  import { p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
- import { _ as createAccountListHelpers } from "./accounts-D9zGZU5t.js";
2
+ import { _ as createAccountListHelpers } from "./accounts-Ddm33hQm.js";
3
3
 
4
4
  //#region src/signal/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("signal");
@@ -1,8 +1,8 @@
1
1
  import { f as DEFAULT_ACCOUNT_ID, p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
2
  import { a as resolveOAuthDir } from "./paths-DR2yt_mP.js";
3
- import { P as resolveUserPath, W as info, X as success, k as jidToE164, tt as getChildLogger } from "./registry--_pGht6S.js";
4
- import { i as defaultRuntime } from "./subsystem-Coz2AgU8.js";
5
- import { t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
3
+ import { P as resolveUserPath, W as info, X as success, k as jidToE164, tt as getChildLogger } from "./registry-D0xTnUWt.js";
4
+ import { i as defaultRuntime } from "./subsystem-B2uDN3TV.js";
5
+ import { t as formatCliCommand } from "./command-format-GKSevep4.js";
6
6
  import fs from "node:fs";
7
7
  import path from "node:path";
8
8
  import fs$1 from "node:fs/promises";
@@ -1,5 +1,5 @@
1
1
  import { p as normalizeAccountId } from "./session-key-C_0eELjb.js";
2
- import { _ as createAccountListHelpers } from "./accounts-D9zGZU5t.js";
2
+ import { _ as createAccountListHelpers } from "./accounts-Ddm33hQm.js";
3
3
 
4
4
  //#region src/imessage/accounts.ts
5
5
  const { listAccountIds, resolveDefaultAccountId } = createAccountListHelpers("imessage");
@@ -1,5 +1,5 @@
1
1
  import { f as DEFAULT_ACCOUNT_ID } from "./session-key-C_0eELjb.js";
2
- import { t as formatCliCommand } from "./command-format-DSdvQ_M5.js";
2
+ import { t as formatCliCommand } from "./command-format-GKSevep4.js";
3
3
 
4
4
  //#region src/web/active-listener.ts
5
5
  const listeners = /* @__PURE__ */ new Map();
@@ -1,7 +1,7 @@
1
1
  import { _ as isCronSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, v as isSubagentSessionKey, y as parseAgentSessionKey } from "./session-key-C_0eELjb.js";
2
2
  import { s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-DR2yt_mP.js";
3
- import { P as resolveUserPath, U as danger, W as info, Y as shouldLogVerbose, Z as warn, j as pathExists, nt as getLogger, q as logVerboseConsole } from "./registry--_pGht6S.js";
4
- import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-Coz2AgU8.js";
3
+ import { P as resolveUserPath, U as danger, W as info, Y as shouldLogVerbose, Z as warn, j as pathExists, nt as getLogger, q as logVerboseConsole } from "./registry-D0xTnUWt.js";
4
+ import { i as defaultRuntime, t as createSubsystemLogger } from "./subsystem-B2uDN3TV.js";
5
5
  import fs from "node:fs";
6
6
  import path from "node:path";
7
7
  import os from "node:os";
@@ -1,4 +1,4 @@
1
- import { c as normalizeProviderId } from "./model-selection-OpU8HN50.js";
1
+ import { c as normalizeProviderId } from "./model-selection-CsbEfrS0.js";
2
2
  import { n as formatErrorMessage } from "./errors-Bv8oZiTO.js";
3
3
 
4
4
  //#region src/infra/gemini-auth.ts
@@ -1,34 +1,34 @@
1
- import "./accounts-D9zGZU5t.js";
1
+ import "./accounts-Ddm33hQm.js";
2
2
  import "./paths-DR2yt_mP.js";
3
3
  import "./github-copilot-token-D9X2phUj.js";
4
- import "./plugins-BbAvhC25.js";
5
- import { K as logVerbose, Y as shouldLogVerbose } from "./registry--_pGht6S.js";
6
- import "./config-DDkdiUOR.js";
7
- import "./subsystem-Coz2AgU8.js";
8
- import "./command-format-DSdvQ_M5.js";
9
- import "./model-selection-OpU8HN50.js";
10
- import "./agent-scope-C3gMMKCU.js";
11
- import "./manifest-registry-B3ugY9-f.js";
4
+ import "./plugins-BNByVCIH.js";
5
+ import { K as logVerbose, Y as shouldLogVerbose } from "./registry-D0xTnUWt.js";
6
+ import "./config-KlTNfkFF.js";
7
+ import "./subsystem-B2uDN3TV.js";
8
+ import "./command-format-GKSevep4.js";
9
+ import "./model-selection-CsbEfrS0.js";
10
+ import "./agent-scope-CYYpcO9W.js";
11
+ import "./manifest-registry-CPnHl_K3.js";
12
12
  import "./redact-DPnDWsnT.js";
13
13
  import "./errors-Bv8oZiTO.js";
14
- import "./image-ops-Bnp6LXEx.js";
14
+ import "./image-ops-BlQR__MN.js";
15
15
  import "./ssrf-DKZ8eBrk.js";
16
- import "./local-roots-Ckk1QfzI.js";
17
- import "./message-channel-BdI5Ra9S.js";
18
- import "./bindings-BbwoUGPx.js";
19
- import "./tool-images-D7Lno-TE.js";
20
- import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-BVqnEfNe.js";
21
- import "./skills-B1GeRYlu.js";
22
- import "./chrome-C7c_0I5M.js";
23
- import "./thinking-DCNUIAHY.js";
24
- import "./accounts-Dtszw3Zn.js";
25
- import "./accounts-BToL3HlP.js";
26
- import "./pi-embedded-helpers-BveUP4hk.js";
16
+ import "./local-roots-BHLNSI8U.js";
17
+ import "./message-channel-COTAJzHd.js";
18
+ import "./bindings-C7hRtgYW.js";
19
+ import "./tool-images-HJ2sfZDV.js";
20
+ import { a as resolveMediaAttachmentLocalRoots, n as createMediaAttachmentCache, o as runCapability, r as normalizeMediaAttachments, t as buildProviderRegistry, u as isAudioAttachment } from "./runner-CGBT7tgF.js";
21
+ import "./skills-_yTP47Cd.js";
22
+ import "./chrome-B7RdxmJ0.js";
23
+ import "./thinking-CXqf7WTe.js";
24
+ import "./accounts-s-AdhXVR.js";
25
+ import "./accounts-BtaOa4z_.js";
26
+ import "./pi-embedded-helpers-CW630epe.js";
27
27
  import "./paths-A0xdf3yk.js";
28
- import "./store-Do3t33-c.js";
29
- import "./image-BOYy0Ump.js";
28
+ import "./store-BdrNabcU.js";
29
+ import "./image-CLOPx7yW.js";
30
30
  import "./pi-model-discovery-LbcEa65a.js";
31
- import "./api-key-rotation-CVBMpnPc.js";
31
+ import "./api-key-rotation-D_sMvI5W.js";
32
32
 
33
33
  //#region src/media-understanding/audio-preflight.ts
34
34
  /**
@@ -1,6 +1,6 @@
1
1
  import { p as normalizeAccountId, s as normalizeAgentId } from "./session-key-C_0eELjb.js";
2
- import { s as normalizeChatChannelId } from "./registry--_pGht6S.js";
3
- import { c as resolveDefaultAgentId } from "./agent-scope-C3gMMKCU.js";
2
+ import { s as normalizeChatChannelId } from "./registry-D0xTnUWt.js";
3
+ import { c as resolveDefaultAgentId } from "./agent-scope-CYYpcO9W.js";
4
4
 
5
5
  //#region src/routing/bindings.ts
6
6
  function normalizeBindingChannelId(raw) {
@@ -1,4 +1,4 @@
1
- import { n as retryAsync, t as resolveRetryConfig } from "./retry-ilSJqnz9.js";
1
+ import { n as retryAsync, t as resolveRetryConfig } from "./retry-CwQ_iIj8.js";
2
2
  import { n as formatErrorMessage } from "./errors-Bv8oZiTO.js";
3
3
  import { RateLimitError } from "@buape/carbon";
4
4