@symerian/symi 2.0.9 → 2.0.10

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 (247) hide show
  1. package/dist/{agents-DhimA7PX.js → agents-CNsMe4Dr.js} +4 -4
  2. package/dist/{agents.config-fv5KaNkC.js → agents.config-CdDf19dm.js} +1 -1
  3. package/dist/{agents.config-Dx90DAnM.js → agents.config-yx78oSLx.js} +1 -1
  4. package/dist/{audio-preflight-B6L8N6Ly.js → audio-preflight-B8ffbICW.js} +11 -12
  5. package/dist/{audio-preflight-DQDfh7hZ.js → audio-preflight-CO2seHjy.js} +11 -12
  6. package/dist/{audio-preflight-Bk54IW__.js → audio-preflight-DRQD_nt1.js} +16 -17
  7. package/dist/{audio-preflight-C2U7KMim.js → audio-preflight-DSeaWZZW.js} +5 -6
  8. package/dist/{audit-C1KuICJa.js → audit-CiugrQda.js} +2 -2
  9. package/dist/{audit--HKrSvGg.js → audit-DKUpFt8z.js} +2 -2
  10. package/dist/{auth-choice-BqU5qMZy.js → auth-choice-CXMFi9LR.js} +1 -1
  11. package/dist/{auth-choice-B4zjI12P.js → auth-choice-mw9ndZQO.js} +4 -4
  12. package/dist/{banner-XTz_k5N3.js → banner-B-joBGLz.js} +1 -1
  13. package/dist/build-info.json +3 -3
  14. package/dist/bundled/boot-md/handler.js +34 -34
  15. package/dist/bundled/session-memory/handler.js +34 -34
  16. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  17. package/dist/{channel-options-mU0wiiP2.js → channel-options-D74Jofp4.js} +1 -1
  18. package/dist/{channel-options-Bbd-uPQW.js → channel-options-XPRRVrmU.js} +1 -1
  19. package/dist/{channel-web-CT8JWl10.js → channel-web-vRvvtf0S.js} +8 -8
  20. package/dist/{channels-cli-16POci9_.js → channels-cli-D3lj5dXo.js} +32 -32
  21. package/dist/{channels-cli-DMCnP5KN.js → channels-cli-DgxPfJF7.js} +12 -12
  22. package/dist/{chrome-2-wXJfuH.js → chrome-LmEyZdbC.js} +1 -1
  23. package/dist/{chunk-BPSLqkZN.js → chunk-BW5f05BR.js} +1 -1
  24. package/dist/{chunk-rw3-yl6B.js → chunk-DTMTDXwE.js} +1 -1
  25. package/dist/{cli-Bzq5mSbu.js → cli-Bg_5WQFe.js} +9 -9
  26. package/dist/{cli-nuP_OZI0.js → cli-DQQAfUbo.js} +29 -29
  27. package/dist/{command-registry-DbtbOY_4.js → command-registry-Cde2LqTh.js} +9 -9
  28. package/dist/{commands-registry-CZ5P8CpC.js → commands-registry-C3C4Rv3O.js} +2 -2
  29. package/dist/{commands-registry-UwWpNkQg.js → commands-registry-Copoizgv.js} +1 -1
  30. package/dist/{completion-cli-mwQhHtOm.js → completion-cli-Cx9htCOm.js} +1 -1
  31. package/dist/{completion-cli-BwRqjgrI.js → completion-cli-KJUTWJP3.js} +2 -2
  32. package/dist/{config-D3XlX-h-.js → config-DM0K7qC1.js} +1 -1
  33. package/dist/{config-cli-Bu_y5erZ.js → config-cli-C5-P9Nzz.js} +1 -1
  34. package/dist/{config-cli-CoceKyQv.js → config-cli-ozfA6MGF.js} +1 -1
  35. package/dist/{config-guard-DujvCAc6.js → config-guard-BpQn1MKk.js} +1 -1
  36. package/dist/{config-guard-CFGZ0BjX.js → config-guard-Cnu2qssk.js} +2 -3
  37. package/dist/{configure-C27dLO_C.js → configure-DiuQ_aTS.js} +6 -6
  38. package/dist/{configure-DekriuOk.js → configure-ktsZw1bT.js} +3 -3
  39. package/dist/{deliver-B572qYqb.js → deliver-2Y_F_0yh.js} +5 -5
  40. package/dist/{deliver-DGaRNkFI.js → deliver-B3UoBZdC.js} +5 -5
  41. package/dist/{deliver-jK_qcWx-.js → deliver-CkjSfucB.js} +5 -5
  42. package/dist/{deliver-l9I03N1d.js → deliver-DONp5mgd.js} +2 -2
  43. package/dist/{diagnostic-BIVLRT_X.js → diagnostic-CI0kRQkt.js} +1 -1
  44. package/dist/{diagnostic-C-7DW8ZL.js → diagnostic-D0xmLpej.js} +1 -1
  45. package/dist/{doctor-completion-D2AFiL0G.js → doctor-completion-CrN6Ly8x.js} +1 -1
  46. package/dist/{doctor-completion-RScd9m4s.js → doctor-completion-Vwi_je1c.js} +1 -1
  47. package/dist/{doctor-config-flow-ZeM3rJqG.js → doctor-config-flow-B150h841.js} +1 -1
  48. package/dist/{doctor-config-flow-Cpwv-_yJ.js → doctor-config-flow-C_56SUPO.js} +1 -1
  49. package/dist/entry.js +1 -1
  50. package/dist/extensionAPI.js +28 -28
  51. package/dist/{fetch-BrtlUMgb.js → fetch-DTNGXEzX.js} +1 -1
  52. package/dist/{fetch-guard-DPA1vbaF.js → fetch-guard-DOPkVbh3.js} +1 -1
  53. package/dist/{gateway-cli-N4jJ2_RN.js → gateway-cli-CwO3878F.js} +20 -20
  54. package/dist/{gateway-cli-D98Kj3_n.js → gateway-cli-DyqK4XZ1.js} +43 -43
  55. package/dist/{gemini-auth-Ca6F0cNq.js → gemini-auth-7AWT6JXV.js} +1 -1
  56. package/dist/{glass-ui-ws-Dd-MN6YA.js → glass-ui-ws-BmqwQaCf.js} +16 -16
  57. package/dist/{glass-ui-ws-B2fxjJTt.js → glass-ui-ws-zVNodseh.js} +39 -39
  58. package/dist/{health-C1_ivVPh.js → health-Q1RP1M2f.js} +5 -5
  59. package/dist/{health-Da2Nvp6A.js → health-UjXEBnzA.js} +4 -4
  60. package/dist/{heartbeat-visibility-DS9JNq6T.js → heartbeat-visibility-B8TDjqpW.js} +2 -2
  61. package/dist/{heartbeat-visibility-D4Xy8Sv0.js → heartbeat-visibility-U4BL57eQ.js} +2 -2
  62. package/dist/{hooks-cli-Bv6VXisB.js → hooks-cli-D4qJl6do.js} +10 -10
  63. package/dist/{hooks-cli-GzTpm8sN.js → hooks-cli-DOT9uGZw.js} +30 -30
  64. package/dist/{image-BW-m96jq.js → image-B4LY9KFw.js} +1 -1
  65. package/dist/{image-qnqUW4nb.js → image-CSeAnozE.js} +2 -2
  66. package/dist/{image-B_WF7Uie.js → image-DrZEJQwQ.js} +2 -2
  67. package/dist/{image-BJiE96Ml.js → image-RFofsrof.js} +4 -4
  68. package/dist/index.js +36 -36
  69. package/dist/{ir-DEVHhjq7.js → ir-DZam9q5M.js} +1 -1
  70. package/dist/{ir-B4l25ISI.js → ir-DccrnjsE.js} +3 -3
  71. package/dist/{ir-DPLo2LIn.js → ir-F0moAwIl.js} +3 -3
  72. package/dist/llm-slug-generator.js +34 -34
  73. package/dist/{local-roots-BDORNz_Q.js → local-roots-CC8jiKDk.js} +1 -1
  74. package/dist/{local-roots-Dg0r0pJL.js → local-roots-DMwIh5cS.js} +1 -1
  75. package/dist/{local-roots-C31eq7PP.js → local-roots-aAFLQGkY.js} +1 -1
  76. package/dist/{login-DNi-TGJT.js → login-BG_7eJLu.js} +2 -2
  77. package/dist/{login-qr-DWlyS1Bc.js → login-qr-9OQSnm5L.js} +4 -4
  78. package/dist/{manager-BX65xO2I.js → manager-B5EXdBQV.js} +2 -2
  79. package/dist/{manager-DjVWQ1JF.js → manager-C_DoJrcP.js} +3 -3
  80. package/dist/{memory-cli-BsBiPX0L.js → memory-cli-D4J9SO7Z.js} +4 -4
  81. package/dist/{model-auth-Daguh6Kb.js → model-auth-CeL58m55.js} +1 -1
  82. package/dist/{model-picker-CiSWZdy1.js → model-picker-DXwUsLAy.js} +1 -1
  83. package/dist/{models-B7W1r9j8.js → models-DKsiIvSx.js} +2 -2
  84. package/dist/{models-cli-BBFKprvF.js → models-cli-BS6UJ98e.js} +11 -11
  85. package/dist/{models-cli-B3XOSnTQ.js → models-cli-ULbdeSgc.js} +30 -30
  86. package/dist/{onboard-D54rYSt2.js → onboard-B387frTY.js} +5 -5
  87. package/dist/{onboard-DEBJWlyh.js → onboard-Bt-BwfkR.js} +2 -2
  88. package/dist/{onboard-channels-CwXnFQgu.js → onboard-channels-COcxT5Q0.js} +1 -1
  89. package/dist/{onboard-channels-D4U3bHOF.js → onboard-channels-ybPEmcP8.js} +1 -1
  90. package/dist/{onboard-custom-B3RZopk5.js → onboard-custom-DoIhWPnb.js} +2 -2
  91. package/dist/{onboard-skills-DfKmsYuM.js → onboard-skills-BD8JNVwL.js} +1 -1
  92. package/dist/{onboarding-Do5IBVbx.js → onboarding-BibGEGIS.js} +4 -4
  93. package/dist/{onboarding-Ch56YN4Q.js → onboarding-CdN_NU2d.js} +7 -7
  94. package/dist/{onboarding.finalize-C8I4yJ1J.js → onboarding.finalize-CY1NjrGb.js} +15 -15
  95. package/dist/{onboarding.finalize-ijmEZx2f.js → onboarding.finalize-CvahVrDM.js} +34 -34
  96. package/dist/{onboarding.gateway-config-BxgvBGxU.js → onboarding.gateway-config-Cj_s_IG8.js} +1 -2
  97. package/dist/{onboarding.gateway-config-EtWmSCuC.js → onboarding.gateway-config-DipSuaKH.js} +1 -2
  98. package/dist/{openai-model-default-BkscYpXX.js → openai-model-default-DF334-MD.js} +1 -1
  99. package/dist/{outbound-ByC0HdWz.js → outbound-BNMysnJ1.js} +2 -2
  100. package/dist/{outbound-DpGc1neG.js → outbound-Cedd_yui.js} +3 -3
  101. package/dist/{outbound-56UQxS1I.js → outbound-DfOF58G2.js} +2 -2
  102. package/dist/{outbound-attachment-C-GD7uJh.js → outbound-attachment-D_QuKi8U.js} +1 -1
  103. package/dist/{outbound-attachment-CJZwroQb.js → outbound-attachment-DjNDa3zn.js} +2 -2
  104. package/dist/{outbound-attachment-Cir36qaG.js → outbound-attachment-entfcjDW.js} +2 -2
  105. package/dist/{pi-auth-json-CHgA276j.js → pi-auth-json-BNhcohVK.js} +2 -2
  106. package/dist/{pi-embedded-FBOXa0Py.js → pi-embedded-9wEA_0mu.js} +144 -49
  107. package/dist/{pi-embedded-C5XncARS.js → pi-embedded-BjzaB3CT.js} +157 -62
  108. package/dist/{pi-embedded-helpers-BqnI9Mzn.js → pi-embedded-helpers-BmYZe8o8.js} +7 -103
  109. package/dist/{pi-embedded-helpers-dLW7QMQa.js → pi-embedded-helpers-CgxKWHj9.js} +1 -1
  110. package/dist/{pi-embedded-helpers-B8JQjQlx.js → pi-embedded-helpers-kB5lBgXk.js} +13 -109
  111. package/dist/{pi-embedded-helpers-V5QifZSd.js → pi-embedded-helpers-ueCT6VlS.js} +2 -2
  112. package/dist/{pi-tools.policy-C747j2xs.js → pi-tools.policy-DPmdlOwE.js} +1 -1
  113. package/dist/{pi-tools.policy-B9nQ2esl.js → pi-tools.policy-T6Z5F-_n.js} +1 -1
  114. package/dist/{plugin-registry-BQ_14aNH.js → plugin-registry-BAbkdLQ7.js} +1 -1
  115. package/dist/{plugin-registry-Dso3ttvf.js → plugin-registry-CEoSVvL1.js} +1 -1
  116. package/dist/plugin-sdk/{audio-preflight-CAWn5TBW.js → audio-preflight-CpYjfwrA.js} +3 -4
  117. package/dist/plugin-sdk/{channel-web-CdAlKpn7.js → channel-web-xXTpy0N_.js} +3 -3
  118. package/dist/plugin-sdk/{deliver-PnVwVXLm.js → deliver-BwnrMlHO.js} +1 -1
  119. package/dist/plugin-sdk/gateway/chat-sanitize.d.ts +0 -11
  120. package/dist/plugin-sdk/{image-BGfQ0dkr.js → image-k_W1USVr.js} +1 -1
  121. package/dist/plugin-sdk/index.js +6 -6
  122. package/dist/plugin-sdk/{pi-embedded-helpers-BMudP5Tn.js → pi-embedded-helpers-Cs2-_EpL.js} +2 -98
  123. package/dist/plugin-sdk/{reply-QYyMp-Tw.js → reply-EEvLfWgt.js} +107 -12
  124. package/dist/plugin-sdk/{runner-qajBqJHY.js → runner-Br1179I4.js} +1 -1
  125. package/dist/plugin-sdk/{web-CVs35ve3.js → web-COWtpMAH.js} +6 -6
  126. package/dist/{plugins-cli-CgbeQGSF.js → plugins-cli-BpuQ7Y9l.js} +10 -10
  127. package/dist/{plugins-cli-BVyrgA8I.js → plugins-cli-C_S07pgO.js} +30 -30
  128. package/dist/{program-kfkuCFKS.js → program-cO9YX6wL.js} +16 -16
  129. package/dist/{program-context-hfUEmZz7.js → program-context-QBBvnWFX.js} +21 -21
  130. package/dist/{prompt-select-styled-J9mSr0OH.js → prompt-select-styled-CepuQSKg.js} +10 -10
  131. package/dist/{prompt-select-styled-116ZbBko.js → prompt-select-styled-D3dYbx2P.js} +7 -7
  132. package/dist/{provider-auth-helpers-C6JINKCe.js → provider-auth-helpers-BMACaaEd.js} +1 -1
  133. package/dist/{provider-auth-helpers-B6VXmCAd.js → provider-auth-helpers-DXqvuBCi.js} +1 -1
  134. package/dist/{push-apns-jxwr84iE.js → push-apns-8YIzbTM7.js} +1 -1
  135. package/dist/{push-apns-DPN9gxCf.js → push-apns-DhZgao_r.js} +1 -1
  136. package/dist/{pw-ai-D8UzqLyI.js → pw-ai-CAkn033M.js} +4 -4
  137. package/dist/{qmd-manager-DeZm1nJL.js → qmd-manager-D85GJrir.js} +1 -1
  138. package/dist/{register.agent-zXM0Ehps.js → register.agent-CSUoUVKd.js} +14 -14
  139. package/dist/{register.agent-DuJFFLJT.js → register.agent-CiTS9lyx.js} +35 -35
  140. package/dist/{register.configure-CNCoYc7M.js → register.configure-BbE9MAer.js} +39 -39
  141. package/dist/{register.configure-DS0YVUwx.js → register.configure-CuCVLOW0.js} +14 -14
  142. package/dist/{register.maintenance-BXnLhacM.js → register.maintenance-CJG75LTu.js} +17 -17
  143. package/dist/{register.maintenance-D3oTcEuA.js → register.maintenance-D8bthvou.js} +37 -37
  144. package/dist/{register.message-BjdjpA_Z.js → register.message-CyqE4E2O.js} +10 -10
  145. package/dist/{register.message-DyIz3Dyp.js → register.message-nUpHGrEE.js} +30 -30
  146. package/dist/{register.onboard-CStFDwlr.js → register.onboard-BDlne5KX.js} +12 -12
  147. package/dist/{register.onboard-DN3MQsVM.js → register.onboard-Dlw-TCPH.js} +35 -35
  148. package/dist/{register.setup-BMsroiDO.js → register.setup-B8kiMuah.js} +35 -35
  149. package/dist/{register.setup-6f2WvCYV.js → register.setup-ByMyofSq.js} +12 -12
  150. package/dist/{register.status-health-sessions-CQB3d6mV.js → register.status-health-sessions-0odRpA-p.js} +13 -13
  151. package/dist/{register.status-health-sessions-Bioq718n.js → register.status-health-sessions-Diirshgb.js} +34 -34
  152. package/dist/{register.subclis-DjRoIlDB.js → register.subclis-CqEj9vfW.js} +12 -12
  153. package/dist/{replies-B4-OBhpP.js → replies-D9V19U2-.js} +2 -2
  154. package/dist/{replies-ConxSQu4.js → replies-DqdOBkTB.js} +2 -2
  155. package/dist/{replies-DPvPoRgq.js → replies-QloQerhz.js} +2 -2
  156. package/dist/{reply-b43dsTx2.js → reply-B9o45s3E.js} +166 -45
  157. package/dist/{run-main-DYbAd0T1.js → run-main-C__lZ7VF.js} +25 -25
  158. package/dist/{runner-CQnf083C.js → runner-BXN4KYDK.js} +1 -1
  159. package/dist/{runner-DhtP_e8E.js → runner-C0tJTZmp.js} +6 -6
  160. package/dist/{runner-t-wbbvf-.js → runner-CJJY2r19.js} +4 -4
  161. package/dist/{runner-Ct0-sE8b.js → runner-DOvsNiYz.js} +8 -8
  162. package/dist/{sandbox-DofcD9ax.js → sandbox-CbuJolk2.js} +1 -1
  163. package/dist/{sandbox-cli-Dx6F5FaT.js → sandbox-cli-C90jqh9l.js} +2 -3
  164. package/dist/{sandbox-cli-l_OcbOYC.js → sandbox-cli-Duc05KL9.js} +2 -3
  165. package/dist/{sandbox-yaTFb84E.js → sandbox-rMmahr2s.js} +1 -1
  166. package/dist/{security-cli-CSpwKdww.js → security-cli-Bt0VkUtO.js} +4 -5
  167. package/dist/{security-cli-BJ3IXZfm.js → security-cli-YGXUUBvD.js} +4 -5
  168. package/dist/{send-DXoJ5lC_.js → send-3YM-aarb.js} +1 -1
  169. package/dist/{send-OEyo5LFE.js → send-B18gkuvz.js} +2 -2
  170. package/dist/{send-LZO3UNRb.js → send-BVZGeP2r.js} +3 -3
  171. package/dist/{send-D3qb_2Q-.js → send-BeASPkFg.js} +4 -4
  172. package/dist/{send-Dz76LuDQ.js → send-BsocounR.js} +2 -2
  173. package/dist/{send-DzmRVAHq.js → send-CHOArYFe.js} +3 -3
  174. package/dist/{send-B9JhmJSo.js → send-CzE5UKr-.js} +5 -5
  175. package/dist/{send-TQWniAsM.js → send-D0dzPf6g.js} +2 -2
  176. package/dist/{send-bTMPppyJ.js → send-D16XtYvC.js} +4 -4
  177. package/dist/{send-yBb6c4og.js → send-D3M6pMr5.js} +5 -5
  178. package/dist/{send-CiVBt5gu.js → send-DEWzWqfZ.js} +4 -4
  179. package/dist/{send-COvqFO3S.js → send-D_yJMeJa.js} +4 -4
  180. package/dist/{send-DDt3Bdxx.js → send-De_WCeGZ.js} +4 -4
  181. package/dist/{send-DmlK72uJ.js → send-Do-0Kcmv.js} +3 -3
  182. package/dist/{send-DBTO2dLX.js → send-mi3NHnwI.js} +2 -2
  183. package/dist/{server-methods-DIMQMEoV.js → server-methods-B_NSJmhc.js} +14 -14
  184. package/dist/{server-methods-B_y_To6u.js → server-methods-Df9KsV_-.js} +13 -13
  185. package/dist/{server-node-events-xk6gk1TZ.js → server-node-events-C2mugatX.js} +10 -10
  186. package/dist/{server-node-events-Cl8uQahY.js → server-node-events-ZG0SBDkU.js} +30 -30
  187. package/dist/{session-_ViRAnAz.js → session-T0JXlYWe.js} +1 -1
  188. package/dist/{session-utils-kkbiQhvc.js → session-utils-Cdv2Qaq2.js} +1 -1
  189. package/dist/{sessions-8_kZyON5.js → sessions-BEyCtqBB.js} +3 -271
  190. package/dist/{sessions-C-C7dQBK.js → sessions-CX93jXmG.js} +2 -2
  191. package/dist/{sessions-BYcI2Zrm.js → sessions-DJAxaVI7.js} +2 -270
  192. package/dist/{skill-commands-D_bBwwvA.js → skill-commands-B64uavY9.js} +1 -1
  193. package/dist/{skill-commands-Bc-ztbDr.js → skill-commands-DWcJOIzP.js} +1 -1
  194. package/dist/{skills-install-CKFZBTH2.js → skills-install-D67isO1L.js} +1 -1
  195. package/dist/{status-B2lMU2Pm.js → status-BTF6_aBO.js} +1 -1
  196. package/dist/{status-Bz1iwxQ8.js → status-BytVj4kU.js} +1 -1
  197. package/dist/{status-D0xPNlv4.js → status-PADx9rG7.js} +5 -5
  198. package/dist/{status-Dy0ocYJ8.js → status-hgm5EhwS.js} +7 -7
  199. package/dist/{status.update-D40obmG1.js → status.update-DlaskfTr.js} +1 -1
  200. package/dist/{store-Bb4oiLME.js → store-C0wvOkae.js} +1 -1
  201. package/dist/{store-C4ZvS7QX.js → store-bnzGvI16.js} +1 -1
  202. package/dist/{subagent-registry-7kBxT_d_.js → subagent-registry-BR2Qhqjf.js} +138 -17
  203. package/dist/{tables-CjPLB3aX.js → tables-BEzT0Da4.js} +1 -1
  204. package/dist/{tables-dfFTl4Oa.js → tables-COnZ169v.js} +1 -1
  205. package/dist/{tables-XnT3BCYh.js → tables-DuZspiBu.js} +1 -1
  206. package/dist/{target-errors-B_xs1J06.js → target-errors-7AvoVa10.js} +1 -1
  207. package/dist/{target-errors-CL9BfceM.js → target-errors-BbOqxMY0.js} +2 -2
  208. package/dist/{target-errors-LR7w6--g.js → target-errors-Be1SwYlW.js} +2 -2
  209. package/dist/{thinking-EjJEKdLq.js → thinking-CdlENGRW.js} +1 -1
  210. package/dist/{thinking-XA7vussX.js → thinking-W85Rb32m.js} +1 -1
  211. package/dist/{tool-images-BHM4TeU5.js → tool-images-ChC2CXaN.js} +1 -1
  212. package/dist/{tool-images-BwAkbbBM.js → tool-images-DXB7tqWi.js} +1 -1
  213. package/dist/{tui-Bmq33rYO.js → tui-0rURH3b3.js} +2 -2
  214. package/dist/{tui-DSGlMzTS.js → tui-CcirlGg5.js} +3 -3
  215. package/dist/{tui-cli-yL_gg_7w.js → tui-cli-D3VMk5c8.js} +6 -7
  216. package/dist/{tui-cli-8Ln6C319.js → tui-cli-hcbzeOtp.js} +4 -5
  217. package/dist/{update-check-DK1kMuwI.js → update-check-CtckACbb.js} +1 -1
  218. package/dist/{update-cli-D0Jlnkzy.js → update-cli-CHr8rjf-.js} +17 -17
  219. package/dist/{update-cli-B4FtAyNd.js → update-cli-qacplfF4.js} +38 -38
  220. package/dist/{update-runner-Ci3cNYff.js → update-runner-DM8zQvQB.js} +2 -2
  221. package/dist/{update-runner-CDnlfyP5.js → update-runner-DNA7FJa2.js} +1 -1
  222. package/dist/{web-ENDSDPaD.js → web-BKQnrqo-.js} +37 -37
  223. package/dist/{web-cJUlI_Wb.js → web-CAnxcgBD.js} +29 -29
  224. package/dist/{web-10GxXUo7.js → web-DkQc82PT.js} +9 -9
  225. package/dist/{web-gNZ16539.js → web-UroM-w6c.js} +31 -31
  226. package/dist/{whatsapp-actions-CUczC854.js → whatsapp-actions-BIjGyW3T.js} +9 -9
  227. package/dist/{whatsapp-actions-ia2odzch.js → whatsapp-actions-BL7tCNC_.js} +12 -12
  228. package/dist/{whatsapp-actions-BcsFR5tf.js → whatsapp-actions-Jfx4zcwv.js} +7 -7
  229. package/package.json +1 -1
  230. /package/dist/{accounts-9VRq1rY7.js → accounts-8zZqL37v.js} +0 -0
  231. /package/dist/{accounts-BCS-nbgN.js → accounts-CWktKM8a.js} +0 -0
  232. /package/dist/{api-key-rotation-erqZ9Tuc.js → api-key-rotation-BukD0zzl.js} +0 -0
  233. /package/dist/{diagnostic-session-state-Bu3E4Enn.js → diagnostic-session-state-Bxo4UHOL.js} +0 -0
  234. /package/dist/{diagnostic-session-state-DmrztgHU.js → diagnostic-session-state-C1vRJs5w.js} +0 -0
  235. /package/dist/{fetch-timeout-DoySHqfO.js → fetch-timeout-Db3da8yR.js} +0 -0
  236. /package/dist/{github-copilot-token-BqpAEW8G.js → github-copilot-token-C_qUP7p5.js} +0 -0
  237. /package/dist/{image-ops-UtlmP67m.js → image-ops-ByaQt43P.js} +0 -0
  238. /package/dist/{image-ops-DD37OhdR.js → image-ops-CvJzsyvE.js} +0 -0
  239. /package/dist/{message-channel-B3YUM8IG.js → message-channel-BQINJQIT.js} +0 -0
  240. /package/dist/{message-channel-Bj7aZphL.js → message-channel-Dz5lr5b0.js} +0 -0
  241. /package/dist/{model-catalog-DhaH7him.js → model-catalog-DjJ9GtKX.js} +0 -0
  242. /package/dist/{pi-model-discovery-C-yOXpma.js → pi-model-discovery-j5tVLINv.js} +0 -0
  243. /package/dist/{sqlite-DhNyBVPk.js → sqlite-Dx3J_aSE.js} +0 -0
  244. /package/dist/{tokens-DBCvs-Ns.js → tokens-BuceUQDl.js} +0 -0
  245. /package/dist/{tool-display-pHB3J5PK.js → tool-display-D8N3rsYt.js} +0 -0
  246. /package/dist/{tool-images-CLRUTPlM.js → tool-images-DvUBlqjX.js} +0 -0
  247. /package/dist/{transcript-events-CJRvASY_.js → transcript-events-DdnTeoR1.js} +0 -0
@@ -5,8 +5,8 @@ import "./subsystem-Bs9YvKLa.js";
5
5
  import "./workspace-wAaHI8-5.js";
6
6
  import "./boolean-B8-BqKGQ.js";
7
7
  import "./command-format-BaxDnULz.js";
8
- import { A as normalizeProviderId, _ as ensureAuthProfileStore } from "./model-auth-Daguh6Kb.js";
9
- import "./github-copilot-token-BqpAEW8G.js";
8
+ import { A as normalizeProviderId, _ as ensureAuthProfileStore } from "./model-auth-CeL58m55.js";
9
+ import "./github-copilot-token-C_qUP7p5.js";
10
10
  import fs from "node:fs/promises";
11
11
  import path from "node:path";
12
12
 
@@ -8,58 +8,58 @@ import { $ as DEFAULT_PROVIDER, A as resolveShellEnvFallbackTimeoutMs, B as dedu
8
8
  import { a as resolveAgentIdentity, i as resolveAckReaction, o as resolveEffectiveMessagesConfig, r as resolveResponsePrefixTemplate, s as resolveHumanDelayConfig, t as createReplyPrefixOptions } from "./reply-prefix-K_J_nfgx.js";
9
9
  import { a as saveJsonFile, i as loadJsonFile } from "./github-copilot-token-BbsJ0Qbo.js";
10
10
  import { i as resolveCliName, n as parseBooleanValue$1, r as formatCliCommand, t as isTruthyEnvValue } from "./env-CQ_DQOwT.js";
11
- import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-Cn6drXx2.js";
12
- import { $ as mergeDeliveryContext, $t as stripHeartbeatToken, 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, Qt as resolveHeartbeatPrompt, 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-BqnI9Mzn.js";
11
+ import { a as isSilentReplyText, i as isSilentReplyPrefixText, n as SILENT_REPLY_TOKEN, r as SYMIPULSE_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-Cn6drXx2.js";
13
12
  import { _ as resolveDiscordAccount, a as normalizeWhatsAppTarget, c as listTelegramAccountIds, d as resolveSlackAccount, g as listEnabledDiscordAccounts, h as createDiscordActionGate, i as isWhatsAppGroupJid, l as resolveTelegramAccount, m as resolveSlackBotToken, n as listChannelPlugins, o as createTelegramActionGate, p as resolveSlackAppToken, r as normalizeChannelId$1, s as listEnabledTelegramAccounts, t as getChannelPlugin, u as resolveTelegramToken, v as normalizeDiscordToken } from "./plugins-71oIavrF.js";
14
13
  import { a as logoutWeb, i as logWebSelfId, l as readWebSelfId, p as webAuthExists, r as getWebAuthAgeMs, t as resolveWhatsAppAccount } from "./accounts-DDEyGwby.js";
15
14
  import { t as normalizeChatType } from "./chat-type-DFDuk3FY.js";
16
- 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-TQWniAsM.js";
17
- 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-DDt3Bdxx.js";
18
- 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-jK_qcWx-.js";
19
- 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-C-7DW8ZL.js";
20
- import { r as getDiagnosticSessionState } from "./diagnostic-session-state-Bu3E4Enn.js";
21
- import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-9VRq1rY7.js";
22
- import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-DBTO2dLX.js";
23
- 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-UtlmP67m.js";
24
- import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-DaNAekda.js";
25
- 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-B3YUM8IG.js";
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-D0dzPf6g.js";
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-De_WCeGZ.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-CkjSfucB.js";
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
+ import { r as getDiagnosticSessionState } from "./diagnostic-session-state-C1vRJs5w.js";
20
+ import { n as resolveSignalAccount, t as listEnabledSignalAccounts } from "./accounts-8zZqL37v.js";
21
+ import { $ as isVoiceCompatibleAudio, A as extractTelegramLocation, B as normalizeAllowFromWithStore$1, C as buildTelegramGroupFrom, D as buildTypingThreadParams, E as buildTelegramThreadParams, F as resolveTelegramMediaPlaceholder, G as formatLocationText, H as firstDefined$1, I as resolveTelegramReplyId, J as readChannelAllowFromStore, K as toLocationContext, L as resolveTelegramStreamMode, M as normalizeForwardedContext, N as resolveTelegramForumThreadId, O as describeReplyTarget, P as resolveTelegramGroupAllowFromContext, Q as listPairingChannels, R as resolveTelegramThreadSpec, S as buildSenderName, T as buildTelegramParentPeer, U as isSenderIdAllowed, V as resolveSenderAllowMatch, W as mergeAllowFromSources, X as upsertChannelPairingRequest, Y as removeChannelAllowFromStoreEntry, Z as getPairingAdapter, _ as resolveTelegramFetch, a as reactMessageTelegram, b as buildGroupLabel, c as sendStickerTelegram, d as wasSentByBot, et as parseTelegramTarget, f as isRecoverableTelegramNetworkError, g as wrapFileReferencesInHtml, h as renderTelegramHtmlText, i as editMessageTelegram, j as hasBotMention, k as expandTextLinks, m as markdownToTelegramHtml, n as createForumTopicTelegram, o as sendMessageTelegram, p as markdownToTelegramChunks, q as addChannelAllowFromStoreEntry, r as deleteMessageTelegram, s as sendPollTelegram, t as buildInlineKeyboard, tt as resolveTelegramTargetChatType, u as resolveTelegramVoiceSend, v as splitTelegramCaption, w as buildTelegramGroupPeerId, x as buildSenderLabel, y as withTelegramApiErrorLogging, z as isSenderAllowed$1 } from "./send-mi3NHnwI.js";
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
+ import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-j5tVLINv.js";
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-BmYZe8o8.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-BjGo9GnL.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
28
  import { C as rawDataToString, O as DEFAULT_AI_SNAPSHOT_MAX_CHARS, T as isSecureWebSocketUrl, x as ensureChromeExtensionRelayServer } from "./chrome-B_zrSLce.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";
32
- import { n as getMediaDir, r as saveMediaBuffer } from "./store-C4ZvS7QX.js";
33
- import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-XA7vussX.js";
32
+ import { n as getMediaDir, r as saveMediaBuffer } from "./store-bnzGvI16.js";
33
+ import { _ as normalizeAtHashSlug, a as normalizeReasoningLevel, b as normalizeStringEntriesLower, c as normalizeVerboseLevel, d as getChannelDock, f as listChannelDocks, g as resolveChannelGroupToolsPolicy, h as resolveChannelGroupRequireMention, i as normalizeElevatedLevel, l as resolveResponseUsageMode, m as resolveChannelGroupPolicy, n as formatXHighModelHint, o as normalizeThinkLevel, p as normalizeSignalMessagingTarget, s as normalizeUsageDisplay, t as formatThinkingLevels, u as supportsXHighThinking, v as normalizeHyphenSlug, y as normalizeStringEntries } from "./thinking-W85Rb32m.js";
34
34
  import { n as resolveConversationLabel } from "./conversation-label-BShfMyKA.js";
35
35
  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
- import { i as resolveImageSanitizationLimits, n as sanitizeImageBlocks, r as sanitizeToolResultImages } from "./tool-images-BHM4TeU5.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-qnqUW4nb.js";
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-CSeAnozE.js";
40
40
  import { n as resolveMemorySearchConfig } from "./manager-oiX42wby.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";
43
- import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-LR7w6--g.js";
44
- 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-rw3-yl6B.js";
43
+ import { a as createActionGate, c as jsonResult, d as readReactionParams, f as readStringArrayParam, l as parseAvailableTags, m as readStringParam, n as missingTargetError, o as imageResult, p as readStringOrNumberParam, r as unknownTargetError, s as imageResultFromFile, t as ambiguousTargetError, u as readNumberParam } from "./target-errors-BbOqxMY0.js";
44
+ 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-DTMTDXwE.js";
45
45
  import { n as resolveMarkdownTableMode } from "./markdown-tables-DawaaZEe.js";
46
46
  import { n as fetchWithTimeout, t as bindAbortRelay } from "./fetch-timeout-BheTNyes.js";
47
- import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-BDORNz_Q.js";
48
- import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-DPLo2LIn.js";
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-UwWpNkQg.js";
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-Bc-ztbDr.js";
47
+ import { a as readResponseWithLimit, i as fetchRemoteMedia, n as getDefaultMediaLocalRoots, o as fetchWithSsrFGuard, t as getAgentScopedMediaLocalRoots } from "./local-roots-CC8jiKDk.js";
48
+ import { a as loadWebMedia, i as getDefaultLocalRoots } from "./ir-F0moAwIl.js";
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-Copoizgv.js";
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-DWcJOIzP.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-t-wbbvf-.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-CJJY2r19.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";
56
56
  import { n as normalizePollInput } from "./polls-DQcEziPg.js";
57
- import { t as convertMarkdownTables } from "./tables-dfFTl4Oa.js";
58
- import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-bTMPppyJ.js";
59
- 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-DmlK72uJ.js";
57
+ import { t as convertMarkdownTables } from "./tables-COnZ169v.js";
58
+ import { a as resolveSignalRpcContext, c as streamSignalEvents, n as sendReadReceiptSignal, o as signalCheck, r as sendTypingSignal, s as signalRpcRequest, t as sendMessageSignal } from "./send-D16XtYvC.js";
59
+ 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-Do-0Kcmv.js";
60
60
  import { n as resolveAgentRoute, t as buildAgentSessionKey } from "./resolve-route-We7ViAbg.js";
61
61
  import { t as makeProxyFetch } from "./proxy-BaSHbVlA.js";
62
- import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-ConxSQu4.js";
62
+ import { a as createReplyReferencePlanner, i as resolveSlackThreadTs, n as deliverReplies$3, t as createSlackReplyDeliveryPlan } from "./replies-DqdOBkTB.js";
63
63
  import { t as getActiveWebListener } from "./active-listener-1krIj9TM.js";
64
64
  import { createRequire } from "node:module";
65
65
  import * as path$1 from "node:path";
@@ -100,6 +100,101 @@ import { run, sequentialize } from "@grammyjs/runner";
100
100
  import { apiThrottler } from "@grammyjs/transformer-throttler";
101
101
  import { EventEmitter } from "node:events";
102
102
 
103
+ //#region src/auto-reply/heartbeat.ts
104
+ const HEARTBEAT_PROMPT = "Read SYMIPULSE.md if it exists (workspace context). Follow it strictly. Do not infer or repeat old tasks from prior chats. If nothing needs attention, reply SYMIPULSE_OK.";
105
+ const DEFAULT_HEARTBEAT_ACK_MAX_CHARS = 300;
106
+ function resolveHeartbeatPrompt(raw) {
107
+ return (typeof raw === "string" ? raw.trim() : "") || HEARTBEAT_PROMPT;
108
+ }
109
+ function stripTokenAtEdges(raw) {
110
+ let text = raw.trim();
111
+ if (!text) return {
112
+ text: "",
113
+ didStrip: false
114
+ };
115
+ const token = SYMIPULSE_TOKEN;
116
+ const tokenAtEndWithOptionalTrailingPunctuation = new RegExp(`${escapeRegExp(token)}[^\\w]{0,4}$`);
117
+ if (!text.includes(token)) return {
118
+ text,
119
+ didStrip: false
120
+ };
121
+ let didStrip = false;
122
+ let changed = true;
123
+ while (changed) {
124
+ changed = false;
125
+ const next = text.trim();
126
+ if (next.startsWith(token)) {
127
+ text = next.slice(token.length).trimStart();
128
+ didStrip = true;
129
+ changed = true;
130
+ continue;
131
+ }
132
+ if (tokenAtEndWithOptionalTrailingPunctuation.test(next)) {
133
+ const idx = next.lastIndexOf(token);
134
+ const before = next.slice(0, idx).trimEnd();
135
+ if (!before) text = "";
136
+ else text = `${before}${next.slice(idx + token.length).trimStart()}`.trimEnd();
137
+ didStrip = true;
138
+ changed = true;
139
+ }
140
+ }
141
+ return {
142
+ text: text.replace(/\s+/g, " ").trim(),
143
+ didStrip
144
+ };
145
+ }
146
+ function stripHeartbeatToken(raw, opts = {}) {
147
+ if (!raw) return {
148
+ shouldSkip: true,
149
+ text: "",
150
+ didStrip: false
151
+ };
152
+ const trimmed = raw.trim();
153
+ if (!trimmed) return {
154
+ shouldSkip: true,
155
+ text: "",
156
+ didStrip: false
157
+ };
158
+ const mode = opts.mode ?? "message";
159
+ const maxAckCharsRaw = opts.maxAckChars;
160
+ const parsedAckChars = typeof maxAckCharsRaw === "string" ? Number(maxAckCharsRaw) : maxAckCharsRaw;
161
+ const maxAckChars = Math.max(0, typeof parsedAckChars === "number" && Number.isFinite(parsedAckChars) ? parsedAckChars : DEFAULT_HEARTBEAT_ACK_MAX_CHARS);
162
+ const stripMarkup = (text) => text.replace(/<[^>]*>/g, " ").replace(/&nbsp;/gi, " ").replace(/^[*`~_]+/, "").replace(/[*`~_]+$/, "");
163
+ const trimmedNormalized = stripMarkup(trimmed);
164
+ if (!(trimmed.includes(SYMIPULSE_TOKEN) || trimmedNormalized.includes(SYMIPULSE_TOKEN))) return {
165
+ shouldSkip: false,
166
+ text: trimmed,
167
+ didStrip: false
168
+ };
169
+ const strippedOriginal = stripTokenAtEdges(trimmed);
170
+ const strippedNormalized = stripTokenAtEdges(trimmedNormalized);
171
+ const picked = strippedOriginal.didStrip && strippedOriginal.text ? strippedOriginal : strippedNormalized;
172
+ if (!picked.didStrip) return {
173
+ shouldSkip: false,
174
+ text: trimmed,
175
+ didStrip: false
176
+ };
177
+ if (!picked.text) return {
178
+ shouldSkip: true,
179
+ text: "",
180
+ didStrip: true
181
+ };
182
+ const rest = picked.text.trim();
183
+ if (mode === "heartbeat") {
184
+ if (rest.length <= maxAckChars) return {
185
+ shouldSkip: true,
186
+ text: "",
187
+ didStrip: true
188
+ };
189
+ }
190
+ return {
191
+ shouldSkip: false,
192
+ text: rest,
193
+ didStrip: true
194
+ };
195
+ }
196
+
197
+ //#endregion
103
198
  //#region src/channels/allowlist-match.ts
104
199
  function formatAllowlistMatchMeta(match) {
105
200
  return `matchKey=${match?.matchKey ?? "none"} matchSource=${match?.matchSource ?? "none"}`;
@@ -7103,7 +7198,7 @@ async function routeReply(params) {
7103
7198
  const resolvedReplyToId = replyToId ?? (channelId === "slack" && threadId != null && threadId !== "" ? String(threadId) : void 0);
7104
7199
  const resolvedThreadId = channelId === "slack" ? null : threadId ?? null;
7105
7200
  try {
7106
- const { deliverOutboundPayloads } = await import("./deliver-jK_qcWx-.js").then((n) => n.n);
7201
+ const { deliverOutboundPayloads } = await import("./deliver-CkjSfucB.js").then((n) => n.n);
7107
7202
  return {
7108
7203
  ok: true,
7109
7204
  messageId: (await deliverOutboundPayloads({
@@ -12338,7 +12433,7 @@ const MODEL_CACHE = /* @__PURE__ */ new Map();
12338
12433
  await ensureSymiModelsJson(cfg);
12339
12434
  } catch {}
12340
12435
  try {
12341
- const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-DaNAekda.js").then((n) => n.r);
12436
+ const { discoverAuthStorage, discoverModels } = await import("./pi-model-discovery-j5tVLINv.js").then((n) => n.r);
12342
12437
  const agentDir = resolveSymiAgentDir();
12343
12438
  const modelRegistry = discoverModels(discoverAuthStorage(agentDir), agentDir);
12344
12439
  applyDiscoveredContextWindows({
@@ -41476,7 +41571,7 @@ async function deliverSessionMaintenanceWarning(params) {
41476
41571
  return;
41477
41572
  }
41478
41573
  try {
41479
- const { deliverOutboundPayloads } = await import("./deliver-jK_qcWx-.js").then((n) => n.n);
41574
+ const { deliverOutboundPayloads } = await import("./deliver-CkjSfucB.js").then((n) => n.n);
41480
41575
  await deliverOutboundPayloads({
41481
41576
  cfg: params.cfg,
41482
41577
  channel,
@@ -44919,7 +45014,7 @@ async function describeStickerImage(params) {
44919
45014
  logVerbose(`telegram: describing sticker with ${provider}/${model}`);
44920
45015
  try {
44921
45016
  const buffer = await fs$1.readFile(imagePath);
44922
- const { describeImageWithModel } = await import("./image-qnqUW4nb.js").then((n) => n.n);
45017
+ const { describeImageWithModel } = await import("./image-CSeAnozE.js").then((n) => n.n);
44923
45018
  return (await describeImageWithModel({
44924
45019
  buffer,
44925
45020
  fileName: "sticker.webp",
@@ -47380,7 +47475,7 @@ async function preflightDiscordMessage(params) {
47380
47475
  let preflightTranscript;
47381
47476
  const hasAudioAttachment = message.attachments?.some((att) => att.contentType?.startsWith("audio/"));
47382
47477
  if (!isDirectMessage && shouldRequireMention && hasAudioAttachment && !baseText && mentionRegexes.length > 0) try {
47383
- const { transcribeFirstAudio } = await import("./audio-preflight-B6L8N6Ly.js");
47478
+ const { transcribeFirstAudio } = await import("./audio-preflight-B8ffbICW.js");
47384
47479
  const audioPaths = message.attachments?.filter((att) => att.contentType?.startsWith("audio/")).map((att) => att.url) ?? [];
47385
47480
  if (audioPaths.length > 0) preflightTranscript = await transcribeFirstAudio({
47386
47481
  ctx: {
@@ -51386,27 +51481,27 @@ function isVoiceChannelType(type) {
51386
51481
  function createDefaultDeps() {
51387
51482
  return {
51388
51483
  sendMessageWhatsApp: async (...args) => {
51389
- const { sendMessageWhatsApp } = await import("./web-cJUlI_Wb.js");
51484
+ const { sendMessageWhatsApp } = await import("./web-CAnxcgBD.js");
51390
51485
  return await sendMessageWhatsApp(...args);
51391
51486
  },
51392
51487
  sendMessageTelegram: async (...args) => {
51393
- const { sendMessageTelegram } = await import("./send-DBTO2dLX.js").then((n) => n.l);
51488
+ const { sendMessageTelegram } = await import("./send-mi3NHnwI.js").then((n) => n.l);
51394
51489
  return await sendMessageTelegram(...args);
51395
51490
  },
51396
51491
  sendMessageDiscord: async (...args) => {
51397
- const { sendMessageDiscord } = await import("./send-DDt3Bdxx.js").then((n) => n.t);
51492
+ const { sendMessageDiscord } = await import("./send-De_WCeGZ.js").then((n) => n.t);
51398
51493
  return await sendMessageDiscord(...args);
51399
51494
  },
51400
51495
  sendMessageSlack: async (...args) => {
51401
- const { sendMessageSlack } = await import("./send-TQWniAsM.js").then((n) => n.n);
51496
+ const { sendMessageSlack } = await import("./send-D0dzPf6g.js").then((n) => n.n);
51402
51497
  return await sendMessageSlack(...args);
51403
51498
  },
51404
51499
  sendMessageSignal: async (...args) => {
51405
- const { sendMessageSignal } = await import("./send-bTMPppyJ.js").then((n) => n.i);
51500
+ const { sendMessageSignal } = await import("./send-D16XtYvC.js").then((n) => n.i);
51406
51501
  return await sendMessageSignal(...args);
51407
51502
  },
51408
51503
  sendMessageIMessage: async (...args) => {
51409
- const { sendMessageIMessage } = await import("./send-DmlK72uJ.js").then((n) => n.n);
51504
+ const { sendMessageIMessage } = await import("./send-Do-0Kcmv.js").then((n) => n.n);
51410
51505
  return await sendMessageIMessage(...args);
51411
51506
  }
51412
51507
  };
@@ -61832,7 +61927,7 @@ function readSlackExternalArgMenuToken(raw) {
61832
61927
  }
61833
61928
  let commandsRegistry;
61834
61929
  async function getCommandsRegistry() {
61835
- if (!commandsRegistry) commandsRegistry = await import("./commands-registry-UwWpNkQg.js").then((n) => n.n);
61930
+ if (!commandsRegistry) commandsRegistry = await import("./commands-registry-Copoizgv.js").then((n) => n.n);
61836
61931
  return commandsRegistry;
61837
61932
  }
61838
61933
  function encodeSlackCommandArgValue(parts) {
@@ -62235,8 +62330,8 @@ async function registerSlackMonitorSlashCommands(params) {
62235
62330
  });
62236
62331
  const deliverSlashPayloads = async (replies) => {
62237
62332
  const [{ deliverSlackSlashReplies }, { resolveChunkMode }, { resolveMarkdownTableMode }] = await Promise.all([
62238
- import("./replies-ConxSQu4.js").then((n) => n.r),
62239
- import("./chunk-rw3-yl6B.js").then((n) => n.s),
62333
+ import("./replies-DqdOBkTB.js").then((n) => n.r),
62334
+ import("./chunk-DTMTDXwE.js").then((n) => n.s),
62240
62335
  import("./markdown-tables-DawaaZEe.js").then((n) => n.t)
62241
62336
  ]);
62242
62337
  await deliverSlackSlashReplies({
@@ -62290,7 +62385,7 @@ async function registerSlackMonitorSlashCommands(params) {
62290
62385
  let nativeCommands = [];
62291
62386
  if (nativeEnabled) {
62292
62387
  reg = await getCommandsRegistry();
62293
- const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-Bc-ztbDr.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
62388
+ const skillCommands = nativeSkillsEnabled ? (await import("./skill-commands-DWcJOIzP.js").then((n) => n.a)).listSkillCommandsForAgents({ cfg }) : [];
62294
62389
  nativeCommands = reg.listNativeCommandSpecsForConfig(cfg, {
62295
62390
  skillCommands,
62296
62391
  provider: "slack"
@@ -64508,7 +64603,7 @@ const buildTelegramMessageContext = async ({ primaryCtx, allMedia, storeAllowFro
64508
64603
  const hasAudio = allMedia.some((media) => media.contentType?.startsWith("audio/"));
64509
64604
  let preflightTranscript;
64510
64605
  if (isGroup && requireMention && hasAudio && !hasUserText && mentionRegexes.length > 0) try {
64511
- const { transcribeFirstAudio } = await import("./audio-preflight-B6L8N6Ly.js");
64606
+ const { transcribeFirstAudio } = await import("./audio-preflight-B8ffbICW.js");
64512
64607
  preflightTranscript = await transcribeFirstAudio({
64513
64608
  ctx: {
64514
64609
  MediaPaths: allMedia.length > 0 ? allMedia.map((m) => m.path) : void 0,
@@ -66653,7 +66748,7 @@ let webLoginQrPromise = null;
66653
66748
  let webChannelPromise = null;
66654
66749
  let whatsappActionsPromise = null;
66655
66750
  function loadWebOutbound() {
66656
- webOutboundPromise ??= import("./outbound-ByC0HdWz.js").then((n) => n.t);
66751
+ webOutboundPromise ??= import("./outbound-BNMysnJ1.js").then((n) => n.t);
66657
66752
  return webOutboundPromise;
66658
66753
  }
66659
66754
  function loadWebLogin() {
@@ -66665,11 +66760,11 @@ function loadWebLoginQr() {
66665
66760
  return webLoginQrPromise;
66666
66761
  }
66667
66762
  function loadWebChannel() {
66668
- webChannelPromise ??= import("./web-cJUlI_Wb.js");
66763
+ webChannelPromise ??= import("./web-CAnxcgBD.js");
66669
66764
  return webChannelPromise;
66670
66765
  }
66671
66766
  function loadWhatsAppActions() {
66672
- whatsappActionsPromise ??= import("./whatsapp-actions-CUczC854.js");
66767
+ whatsappActionsPromise ??= import("./whatsapp-actions-BIjGyW3T.js");
66673
66768
  return whatsappActionsPromise;
66674
66769
  }
66675
66770
  function createPluginRuntime() {
@@ -67947,7 +68042,7 @@ function shouldEmitLoopWarning(state, warningKey, count) {
67947
68042
  async function recordLoopOutcome(args) {
67948
68043
  if (!args.ctx?.sessionKey) return;
67949
68044
  try {
67950
- const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Bu3E4Enn.js").then((n) => n.n);
68045
+ const { getDiagnosticSessionState } = await import("./diagnostic-session-state-C1vRJs5w.js").then((n) => n.n);
67951
68046
  const { recordToolCallOutcome } = await import("./tool-loop-detection-BgbtzUGc.js");
67952
68047
  recordToolCallOutcome(getDiagnosticSessionState({
67953
68048
  sessionKey: args.ctx.sessionKey,
@@ -67968,8 +68063,8 @@ async function runBeforeToolCallHook(args) {
67968
68063
  const toolName = normalizeToolName(args.toolName || "tool");
67969
68064
  const params = args.params;
67970
68065
  if (args.ctx?.sessionKey) {
67971
- const { getDiagnosticSessionState } = await import("./diagnostic-session-state-Bu3E4Enn.js").then((n) => n.n);
67972
- const { logToolLoopAction } = await import("./diagnostic-C-7DW8ZL.js").then((n) => n.n);
68066
+ const { getDiagnosticSessionState } = await import("./diagnostic-session-state-C1vRJs5w.js").then((n) => n.n);
68067
+ const { logToolLoopAction } = await import("./diagnostic-D0xmLpej.js").then((n) => n.n);
67973
68068
  const { detectToolCallLoop, recordToolCall } = await import("./tool-loop-detection-BgbtzUGc.js");
67974
68069
  const sessionState = getDiagnosticSessionState({
67975
68070
  sessionKey: args.ctx.sessionKey,