@symerian/symi 2.3.1 → 2.3.3

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 (311) hide show
  1. package/dist/{accounts-ChTFYj8Q.js → accounts-CWktKM8a.js} +1 -1
  2. package/dist/{accounts-DDuIpcln.js → accounts-Cd816n6l.js} +7 -7
  3. package/dist/{accounts-bK-Yqdwx.js → accounts-CokRskCl.js} +1 -1
  4. package/dist/{accounts-DyJN4_vR.js → accounts-mN_EcgxC.js} +1 -1
  5. package/dist/{accounts-CJR8j_Kq.js → accounts-qtxJ-6em.js} +1 -1
  6. package/dist/{accounts-CI6zQTJj.js → accounts-tNElYrCH.js} +14 -14
  7. package/dist/{acp-cli-Cu4icbJT.js → acp-cli-BgyJMtqt.js} +6 -6
  8. package/dist/{active-listener-D6sXIjAg.js → active-listener-C9r8ZB9m.js} +1 -1
  9. package/dist/{agent-scope-CgUHAtCo.js → agent-scope-BRwEc2pG.js} +18 -18
  10. package/dist/{agent-scope-Bw1Ed8W9.js → agent-scope-BxoUQqgM.js} +3 -3
  11. package/dist/{agents-DzuttgJU.js → agents-DjLt6jc3.js} +4 -4
  12. package/dist/{agents.config-CSucty2T.js → agents.config-Dt7B_P5o.js} +1 -1
  13. package/dist/{agents.config-2HlZJsR3.js → agents.config-u_ibObha.js} +2 -2
  14. package/dist/{api-key-rotation-CzuPlV2t.js → api-key-rotation-CEr3lKih.js} +1 -1
  15. package/dist/{audio-preflight-C40mKAp7.js → audio-preflight-CPBOQV4I.js} +4 -4
  16. package/dist/{audio-preflight-CWnxkaac.js → audio-preflight-CjysqO8U.js} +28 -28
  17. package/dist/{audio-preflight-BsfqyC31.js → audio-preflight-D02HwB-I.js} +29 -29
  18. package/dist/{audit-CrITRV6w.js → audit-BSB9NPSO.js} +23 -23
  19. package/dist/{auth-choice-Cve09z1a.js → auth-choice-DUUu6Nhg.js} +1 -1
  20. package/dist/{auth-choice-ChrEc3cZ.js → auth-choice-DmSG7c8J.js} +8 -8
  21. package/dist/{auth-token-BnOynwk4.js → auth-token-DC5w1WoS.js} +1 -1
  22. package/dist/{banner-BoLflN_R.js → banner-BiAcdT2T.js} +1 -1
  23. package/dist/{bindings-BU2hsBd9.js → bindings-B7Ke6LJi.js} +2 -2
  24. package/dist/{bindings-DFaVVCsf.js → bindings-ChzePa8q.js} +1 -1
  25. package/dist/{browser-cli-BG4qPxpM.js → browser-cli-C4D9Ql3c.js} +9 -9
  26. package/dist/build-info.json +3 -3
  27. package/dist/bundled/boot-md/handler.js +53 -53
  28. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  29. package/dist/bundled/command-logger/handler.js +1 -1
  30. package/dist/bundled/session-memory/handler.js +53 -53
  31. package/dist/{call-CJaS1iRF.js → call-Dd7-bkfG.js} +9 -9
  32. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  33. package/dist/{channel-activity-C9-gaquj.js → channel-activity-CsM_hJ_s.js} +1 -1
  34. package/dist/{channel-options-DqgeO1f6.js → channel-options-ClfXE1B7.js} +1 -1
  35. package/dist/{channel-options-Dkd1WQZx.js → channel-options-vQREpu-n.js} +2 -2
  36. package/dist/{channel-selection-DuWs0Aak.js → channel-selection-DjfBv8kq.js} +1 -1
  37. package/dist/{channel-web-CJvDQ5Ea.js → channel-web-y6pd_GHr.js} +17 -17
  38. package/dist/{channels-cli-D0jjOLRb.js → channels-cli-CjYD1_OO.js} +75 -75
  39. package/dist/{channels-cli-DtqwJZWy.js → channels-cli-suXRcyfF.js} +4 -4
  40. package/dist/{channels-status-issues-B_kBkl_u.js → channels-status-issues-BoH1ZJPN.js} +1 -1
  41. package/dist/{chrome-CDJYxX5a.js → chrome-D2SKJnR7.js} +7 -7
  42. package/dist/{chrome-w3SLcQJF.js → chrome-EyvdASWt.js} +20 -20
  43. package/dist/{chrome-DtPkPq9T.js → chrome-r4RThPxq.js} +2 -2
  44. package/dist/{chunk-ClbN9Pqy.js → chunk-BW5f05BR.js} +1 -1
  45. package/dist/cli/daemon-cli.js +1 -1
  46. package/dist/{cli-CHOmeum9.js → cli-B-911QZL.js} +62 -62
  47. package/dist/{cli-CEtg8kql.js → cli-mbfUlFn3.js} +1 -1
  48. package/dist/{client-CQSyCS4M.js → client-BsrZnuSi.js} +1 -1
  49. package/dist/{command-format-UKHV-j0K.js → command-format-BaxDnULz.js} +1 -1
  50. package/dist/{command-registry-Ba2z3dYq.js → command-registry-y8CXSD5O.js} +9 -9
  51. package/dist/{commands-BNLCWX6e.js → commands-CtocZ4Lg.js} +1 -1
  52. package/dist/{commands-registry-BT0-zzs3.js → commands-registry-BZ0ZSQpM.js} +3 -3
  53. package/dist/{commands-registry-VSmULp-g.js → commands-registry-D7CTCQPm.js} +4 -4
  54. package/dist/{completion-cli-CD-306wt.js → completion-cli-2Mi5hts2.js} +2 -2
  55. package/dist/{completion-cli-BgX3MWVU.js → completion-cli-BLrwUAyo.js} +12 -12
  56. package/dist/{config-CHwyw6l5.js → config-CJMcIRQM.js} +2 -2
  57. package/dist/{config-eEaJddXj.js → config-DRbjHIwD.js} +12 -12
  58. package/dist/{config-cli-Cz87-TYh.js → config-cli-CF-wdLkO.js} +4 -4
  59. package/dist/{config-cli-DAbXVRUL.js → config-cli-tYZAnvgQ.js} +1 -1
  60. package/dist/{config-guard-BflmO0t7.js → config-guard-C1Rs8NZG.js} +12 -12
  61. package/dist/{config-validation-CmimHAES.js → config-validation-ChQQVndI.js} +1 -1
  62. package/dist/{configure-D45ne4lm.js → configure-BHKdqhLb.js} +15 -15
  63. package/dist/{configure-0nrthdSf.js → configure-si19m30s.js} +3 -3
  64. package/dist/{control-service-Bz7rxLWq.js → control-service-B8H3Bqpv.js} +4 -4
  65. package/dist/{control-ui-assets-Z947tKLt.js → control-ui-assets-DqGziq7x.js} +1 -1
  66. package/dist/{cron-cli-DBIlCvp3.js → cron-cli-YrMWJCkm.js} +10 -10
  67. package/dist/{daemon-cli-DscwlsKW.js → daemon-cli-Dx4SXRyp.js} +11 -11
  68. package/dist/{daemon-runtime-2mwX-jqj.js → daemon-runtime--RiRUx_2.js} +10 -10
  69. package/dist/{deliver-BH0l3UKW.js → deliver-C-37cZUe.js} +1 -1
  70. package/dist/{deliver-BmPK91JP.js → deliver-D1ZN6-fl.js} +20 -20
  71. package/dist/{deliver-CceEhg3d.js → deliver-Um8yyhRA.js} +7 -7
  72. package/dist/{devices-cli-Dds-25Ve.js → devices-cli-DAJ84AOe.js} +6 -6
  73. package/dist/{diagnostic-C3nsWaw3.js → diagnostic-CI0kRQkt.js} +1 -1
  74. package/dist/{diagnostics-BAMlsVVX.js → diagnostics-D2yUMZN1.js} +5 -5
  75. package/dist/{directory-cli-CpUByQew.js → directory-cli-C4h8KQLH.js} +7 -7
  76. package/dist/{dm-policy-shared-Bh3TbexU.js → dm-policy-shared-BCSw0GJS.js} +2 -2
  77. package/dist/{dns-cli-Beyzdh3S.js → dns-cli-s0ZWvTPm.js} +3 -3
  78. package/dist/{dock-BhS32F6E.js → dock-BYiRZSgZ.js} +4 -4
  79. package/dist/{docs-cli-BpnEOtJi.js → docs-cli-BfPfHTDs.js} +1 -1
  80. package/dist/{doctor-completion-CcDVOtZ5.js → doctor-completion-C19QYsQN.js} +2 -2
  81. package/dist/{doctor-completion-CmGtqUHQ.js → doctor-completion-Dn_Kn4gz.js} +1 -1
  82. package/dist/{doctor-config-flow-QnaBd8kL.js → doctor-config-flow-D05HlWdn.js} +10 -10
  83. package/dist/entry.js +1 -1
  84. package/dist/{exec-approvals-cli-BliRl8VB.js → exec-approvals-cli-Df1lyRyE.js} +13 -13
  85. package/dist/extensionAPI.js +6 -6
  86. package/dist/{frontmatter-DPlG6yha.js → frontmatter-C_bv_0P8.js} +2 -2
  87. package/dist/{fs-safe-CUjO1ca2.js → fs-safe-CTDvb1DF.js} +6 -6
  88. package/dist/{gateway-cli-DajX3Pye.js → gateway-cli-B7khyAHs.js} +139 -155
  89. package/dist/{gateway-cli-BVN31fwu.js → gateway-cli-DG_Mdw0H.js} +35 -51
  90. package/dist/{gateway-rpc-BxkKeCZ0.js → gateway-rpc-DFeD8pZh.js} +1 -1
  91. package/dist/{gemini-auth-CF48hUR9.js → gemini-auth-CdSPHuLl.js} +1 -1
  92. package/dist/{github-copilot-token-DJqsJ2-r.js → github-copilot-token-C_qUP7p5.js} +7 -7
  93. package/dist/{glass-ui-ws-CQG6acJl.js → glass-ui-ws-BAub_JoN.js} +7 -7
  94. package/dist/{glass-ui-ws-Z1IOT6Vc.js → glass-ui-ws-BmQAULMj.js} +82 -82
  95. package/dist/{health-D9eQW7fJ.js → health-CboWXJkq.js} +1 -1
  96. package/dist/{health-f056vLGT.js → health-DkKXiUEF.js} +13 -13
  97. package/dist/{hooks-cli-hJ4euq2R.js → hooks-cli-BrO_9pas.js} +76 -76
  98. package/dist/{hooks-cli-CW-IRS72.js → hooks-cli-DLM_5caf.js} +2 -2
  99. package/dist/{image-D9uvDTrc.js → image-BiY-PfMh.js} +3 -3
  100. package/dist/{image-rZ4x9VS9.js → image-Cp3JDEBB.js} +4 -4
  101. package/dist/{image-CHzdaNJ4.js → image-DcpMiprB.js} +1 -1
  102. package/dist/{image-ops-S8-8dAhx.js → image-ops-CvJzsyvE.js} +1 -1
  103. package/dist/{image-ops-1OJMSAUX.js → image-ops-DYbDWaIA.js} +10 -10
  104. package/dist/index.js +72 -72
  105. package/dist/{inspect-CllGjsWo.js → inspect-ZJkNX0WL.js} +4 -4
  106. package/dist/{install-safe-path-tCLiMpmO.js → install-safe-path-Qqr_t_tH.js} +11 -11
  107. package/dist/{installs-C1Cebk97.js → installs-O9KlRu9h.js} +10 -10
  108. package/dist/{ir-CbFUkv_T.js → ir-DccrnjsE.js} +4 -4
  109. package/dist/{ir-DZam9q5M.js → ir-Dt4hOzxG.js} +6 -6
  110. package/dist/{lifecycle-core-D6LYXpFj.js → lifecycle-core-BkPSoGM2.js} +5 -5
  111. package/dist/llm-slug-generator.js +53 -53
  112. package/dist/{local-roots-aAFLQGkY.js → local-roots-BBeKX7PX.js} +2 -2
  113. package/dist/{local-roots-C7OCYACU.js → local-roots-DMwIh5cS.js} +5 -5
  114. package/dist/{login-dIlDkG4X.js → login-1sleXoB4.js} +3 -3
  115. package/dist/{login-B8uiUAnV.js → login-CwCoxapk.js} +7 -7
  116. package/dist/{login-qr-CIZk8uKX.js → login-qr-Batf3PT5.js} +12 -12
  117. package/dist/{login-qr-pbXdFORv.js → login-qr-wCWBOMwB.js} +5 -5
  118. package/dist/{logs-cli-xOzIPrHm.js → logs-cli-DVeEdUCU.js} +7 -7
  119. package/dist/{manager-D4LJSRyZ.js → manager-C1CfGzZ2.js} +13 -13
  120. package/dist/{manager-BoLr3xR_.js → manager-D_LwXbc6.js} +13 -13
  121. package/dist/{manifest-registry-CneMHk0N.js → manifest-registry-D0IQ3WuX.js} +19 -19
  122. package/dist/{markdown-tables-CEbN0fEm.js → markdown-tables-ZwP14ydw.js} +1 -1
  123. package/dist/{markdown-tables-DSHvnTLx.js → markdown-tables-iMQQZu4Q.js} +1 -1
  124. package/dist/{memory-cli-Ca5r9AUb.js → memory-cli-lk6fRiwy.js} +14 -14
  125. package/dist/{message-channel-DbsRltF2.js → message-channel-Dz5lr5b0.js} +1 -1
  126. package/dist/{model-tWhwnFf8.js → model-CeeOcylL.js} +1 -1
  127. package/dist/{model-auth-CwOuTuXl.js → model-auth-DK43VicI.js} +9 -9
  128. package/dist/{model-catalog-DvBJ8pMD.js → model-catalog-C3NLvWC2.js} +4 -4
  129. package/dist/{model-picker-Ddo3jHe-.js → model-picker-LKZLY2DL.js} +3 -3
  130. package/dist/{model-selection-CyFvYcRt.js → model-selection-X1oLh3CE.js} +9 -9
  131. package/dist/{models-nO_t1uzp.js → models-BmiRYEVd.js} +2 -2
  132. package/dist/{models-cli-B2ticsCM.js → models-cli-4vQrbW6G.js} +72 -72
  133. package/dist/{models-cli-D9bG44Ao.js → models-cli-Tf61I97Q.js} +3 -3
  134. package/dist/{models-config-qyOXrOli.js → models-config-CqDdkHJq.js} +7 -7
  135. package/dist/{node-cli-C_G-Q3h-.js → node-cli-Jj2LTGzF.js} +28 -28
  136. package/dist/{node-service-Cxz4e-Qd.js → node-service-CJygtY5M.js} +1 -1
  137. package/dist/{nodes-cli-BcnuJajV.js → nodes-cli-C43ifECe.js} +10 -10
  138. package/dist/{nodes-screen-VBGXKdLk.js → nodes-screen-C99kfE1u.js} +4 -4
  139. package/dist/{npm-registry-spec-C2JDdSZS.js → npm-registry-spec-DR_at_Hp.js} +9 -9
  140. package/dist/{onboard-BDbpfrZj.js → onboard-D8uxVvMq.js} +13 -13
  141. package/dist/{onboard-BtZ9WqhJ.js → onboard-FpptSqHZ.js} +2 -2
  142. package/dist/{onboard-channels-HubyUVjT.js → onboard-channels-DOKid2w1.js} +5 -5
  143. package/dist/{onboard-channels-CHE8nfNA.js → onboard-channels-Q_xxgZ8O.js} +1 -1
  144. package/dist/{onboard-custom-C7O-zfQ1.js → onboard-custom-DPJiy9aT.js} +3 -3
  145. package/dist/{onboard-helpers-ZmZYzlq3.js → onboard-helpers-Dixh6cNh.js} +8 -8
  146. package/dist/{onboard-hooks-BAA8CoVv.js → onboard-hooks-lsws7g2s.js} +1 -1
  147. package/dist/{onboard-remote-zUjD7UtM.js → onboard-remote-B66ZWtkN.js} +1 -1
  148. package/dist/{onboard-skills-BB0YhUmF.js → onboard-skills-B0IA09ig.js} +4 -4
  149. package/dist/{onboarding-eVb5gvwo.js → onboarding-CdlGKa0U.js} +13 -13
  150. package/dist/{onboarding-DtP0sps0.js → onboarding-DhIEUmp5.js} +3 -3
  151. package/dist/{onboarding.finalize-D8035U2E.js → onboarding.finalize-CEYLIXkq.js} +6 -6
  152. package/dist/{onboarding.finalize-CetxPTxL.js → onboarding.finalize-DyBsPxXJ.js} +74 -74
  153. package/dist/{onboarding.gateway-config-CJUgDC6Y.js → onboarding.gateway-config-CCJqI0kw.js} +14 -14
  154. package/dist/{openai-model-default-DMjQRsb1.js → openai-model-default-BJ1IZ3TN.js} +2 -2
  155. package/dist/{outbound-opDNxv-l.js → outbound-D4fN_ZlE.js} +7 -7
  156. package/dist/{outbound-DB5Zus0-.js → outbound-NJCy0h4x.js} +4 -4
  157. package/dist/{outbound-attachment-D_QuKi8U.js → outbound-attachment-D62E0xDI.js} +2 -2
  158. package/dist/{outbound-attachment-Co2diKdP.js → outbound-attachment-DjNDa3zn.js} +2 -2
  159. package/dist/{pairing-cli-CBLfGvqW.js → pairing-cli-CcW0ndhB.js} +8 -8
  160. package/dist/{pairing-labels-2S6x2UoV.js → pairing-labels-27SOKDzJ.js} +1 -1
  161. package/dist/{pairing-store-CK726Dzq.js → pairing-store-B8ktu-6j.js} +2 -2
  162. package/dist/{pairing-token-CX3NN_qj.js → pairing-token-AV-MMfVE.js} +7 -7
  163. package/dist/{paths-BBm9fwuG.js → paths-CT6jsi4E.js} +1 -1
  164. package/dist/{paths-CySxpNhH.js → paths-Cce4PUkG.js} +5 -5
  165. package/dist/{paths-Cb87-LzP.js → paths-DLyHUt31.js} +1 -1
  166. package/dist/{pi-auth-json-DPWPoruO.js → pi-auth-json-0SYBFZTt.js} +8 -8
  167. package/dist/{pi-auth-json-DayrlDg_.js → pi-auth-json-CCneTXUh.js} +3 -3
  168. package/dist/{pi-embedded-BY-dBus2.js → pi-embedded-BThV36aG.js} +109 -21
  169. package/dist/{pi-embedded-helpers-lgx_U5KS.js → pi-embedded-helpers-B8kqLWns.js} +4 -4
  170. package/dist/{pi-embedded-helpers-CNPyv_ax.js → pi-embedded-helpers-DO6u9K2t.js} +6 -6
  171. package/dist/{pi-embedded-helpers-B2z46qeM.js → pi-embedded-helpers-ag2bosuj.js} +52 -52
  172. package/dist/{pi-embedded-Dc3muKtS.js → pi-embedded-wr4HXhzm.js} +255 -167
  173. package/dist/{pi-tools.policy-CIDBbw6x.js → pi-tools.policy-juZV2uUv.js} +4 -4
  174. package/dist/{plugin-auto-enable-BzX1uAKy.js → plugin-auto-enable-Bbm7MwFV.js} +2 -2
  175. package/dist/{plugin-registry-CuoX8mar.js → plugin-registry-DvWWctC9.js} +1 -1
  176. package/dist/{plugin-registry-fxcvycGr.js → plugin-registry-lWWSu9UD.js} +3 -3
  177. package/dist/plugin-sdk/agents/model-token-filter.d.ts +15 -0
  178. package/dist/plugin-sdk/{channel-web-CV1KLtZh.js → channel-web-BnrTC55Y.js} +1 -1
  179. package/dist/plugin-sdk/index.js +2 -2
  180. package/dist/plugin-sdk/{reply-C4mijdMZ.js → reply-kuMxu6Q4.js} +95 -7
  181. package/dist/plugin-sdk/{web-B17UUsjm.js → web-TMIhKQyF.js} +2 -2
  182. package/dist/{plugins-DKDeQZF0.js → plugins-BAyxWQSz.js} +2 -2
  183. package/dist/{plugins-C4C9637U.js → plugins-DQYI3Fr-.js} +9 -9
  184. package/dist/{plugins-cli-4OqSGHp-.js → plugins-cli-BHfzYAq6.js} +71 -71
  185. package/dist/{plugins-cli-BbE_Qnlk.js → plugins-cli-wlWRx4Oj.js} +2 -2
  186. package/dist/{ports-BOmtxoTv.js → ports-OZQlocB7.js} +2 -2
  187. package/dist/{ports-BX0kKI0g.js → ports-b36gHZbA.js} +1 -1
  188. package/dist/{program-DkXOdfM2.js → program-CKy7s-bm.js} +7 -7
  189. package/dist/{program-context-0bDxGpMx.js → program-context-D4gbh6dg.js} +39 -39
  190. package/dist/{prompt-select-styled-DJkRn30j.js → prompt-select-styled-DlGPNq9c.js} +38 -38
  191. package/dist/{prompt-select-styled-_6KbTFXs.js → prompt-select-styled-bh0GLMiQ.js} +4 -4
  192. package/dist/{provider-auth-helpers-BpVAdwK_.js → provider-auth-helpers-B-YsKbwc.js} +1 -1
  193. package/dist/{provider-auth-helpers-Bnkj4QXS.js → provider-auth-helpers-Bd5VVReu.js} +5 -5
  194. package/dist/{push-apns-EKnCwrqK.js → push-apns-0et2AR44.js} +4 -4
  195. package/dist/{push-apns-C0wMP1XU.js → push-apns-ByyOJyDl.js} +1 -1
  196. package/dist/{pw-ai-De-KR9_s.js → pw-ai-1htA-NnS.js} +1 -1
  197. package/dist/{pw-ai-PiQUncix.js → pw-ai-Ch7liUOW.js} +11 -11
  198. package/dist/{pw-ai-DqL87js3.js → pw-ai-MVzi113V.js} +7 -7
  199. package/dist/{qmd-manager-D85GJrir.js → qmd-manager-BP2r8b1D.js} +18 -18
  200. package/dist/{qmd-manager-DdZh9PHs.js → qmd-manager-QHUP-_em.js} +7 -7
  201. package/dist/{qr-cli-jd9LdZpq.js → qr-cli-17laLZm_.js} +3 -3
  202. package/dist/{register.agent-B0S1CJEx.js → register.agent-Dhijhxr5.js} +81 -81
  203. package/dist/{register.agent-B48Vf_DK.js → register.agent-oKma6YjU.js} +6 -6
  204. package/dist/{register.configure-Wyv7vb24.js → register.configure-BX8vQ2Np.js} +6 -6
  205. package/dist/register.configure-BcZ-7Yir.js +147 -0
  206. package/dist/{register.maintenance-Cmf17EW0.js → register.maintenance-B3TPb969.js} +84 -84
  207. package/dist/{register.maintenance-TgjAQ4E0.js → register.maintenance-OJCduNdt.js} +8 -8
  208. package/dist/{register.message-Dwv2puIB.js → register.message-CX8C_Fds.js} +2 -2
  209. package/dist/{register.message-BcsPnPvW.js → register.message-D0aswsGo.js} +63 -63
  210. package/dist/{register.onboard-BDGaSyq2.js → register.onboard-BHTyEs6d.js} +74 -74
  211. package/dist/{register.onboard-C8w7_w93.js → register.onboard-CSepiSPt.js} +4 -4
  212. package/dist/{register.setup-CMGSNKXS.js → register.setup-lZSHKiGQ.js} +4 -4
  213. package/dist/{register.setup-CiEuZOlI.js → register.setup-uhpgkBjU.js} +77 -77
  214. package/dist/{register.status-health-sessions-zKjmZyOs.js → register.status-health-sessions-Cbavf8do.js} +3 -3
  215. package/dist/{register.status-health-sessions-C8p0uINc.js → register.status-health-sessions-v1KN3eEp.js} +75 -75
  216. package/dist/{register.subclis-CofZE_pt.js → register.subclis-DBEv5xOP.js} +9 -9
  217. package/dist/{registry-DP24za6g.js → registry-CK4e9hn8.js} +17 -17
  218. package/dist/{replies-DpPvWiGF.js → replies-BIX_isV7.js} +3 -3
  219. package/dist/{replies-vgss3_QA.js → replies-BL7IBg12.js} +1 -1
  220. package/dist/{reply-SBi_U7P7.js → reply-DVxU0AMq.js} +225 -137
  221. package/dist/{reply-prefix-CtL0omgM.js → reply-prefix-BLOOs1aW.js} +1 -1
  222. package/dist/{reply-prefix-CE2YmmsD.js → reply-prefix-XlyuyChD.js} +1 -1
  223. package/dist/{resolve-route-BMoTaVAH.js → resolve-route-BcnaXYvh.js} +2 -2
  224. package/dist/{resolve-route-BVikmvWO.js → resolve-route-CZ-1eqw0.js} +4 -4
  225. package/dist/{retry-dGG-MbxL.js → retry-Cly39XZB.js} +1 -1
  226. package/dist/{routes-Ba9CUQ8M.js → routes-CE-ohckF.js} +8 -8
  227. package/dist/{rpc-BfhojW8g.js → rpc-wovSCB5v.js} +1 -1
  228. package/dist/{run-main-BJaDO3WW.js → run-main-DspjiCY1.js} +14 -14
  229. package/dist/{runner-DUBExAb5.js → runner-BcQ0sF9T.js} +1 -1
  230. package/dist/{runner-CUglpiFP.js → runner-Cen70krW.js} +20 -20
  231. package/dist/{runner-CCSMfQee.js → runner-D0QUGA_X.js} +9 -9
  232. package/dist/{sandbox-C-T6hOMv.js → sandbox-BzNrUHpt.js} +18 -18
  233. package/dist/{sandbox-cli-BllVdQzR.js → sandbox-cli-CZrMO34w.js} +20 -20
  234. package/dist/{security-cli-BFLtWWHy.js → security-cli-CeBoEmeN.js} +36 -36
  235. package/dist/{send-DeEosX8F.js → send-B1u-LrcS.js} +18 -18
  236. package/dist/{send-Cutb0ZDY.js → send-BEeuDXqy.js} +6 -6
  237. package/dist/{send-tanEMpHN.js → send-BjdAgYLu.js} +6 -6
  238. package/dist/{send-CZr1hVHY.js → send-BnuIB59F.js} +13 -13
  239. package/dist/{send-CXxQ_f7L.js → send-C95ZRvja.js} +6 -6
  240. package/dist/{send-DwKJK3sM.js → send-CiTGOvEc.js} +10 -10
  241. package/dist/{send-zSarozV2.js → send-DW96zgDL.js} +6 -6
  242. package/dist/{send-CHEOWVc8.js → send-DeFniOjh.js} +6 -6
  243. package/dist/{send-DbcLJb0P.js → send-WyRqb4WD.js} +7 -7
  244. package/dist/{send-CPF8hSFp.js → send-dH0xroTu.js} +4 -4
  245. package/dist/{server-context-CEpFjqSk.js → server-context-DUXqnh6l.js} +5 -5
  246. package/dist/{server-methods-CyFB3XQf.js → server-methods-B9alalq5.js} +7 -7
  247. package/dist/{server-methods-Cm6W01ne.js → server-methods-BgBq7KRL.js} +54 -54
  248. package/dist/{server-node-events-Bhgt3xLw.js → server-node-events-BrBsrcCd.js} +63 -63
  249. package/dist/{server-node-events-CX1plxJz.js → server-node-events-DWG81_Fo.js} +2 -2
  250. package/dist/{service-Cl74hx8J.js → service--qMN5DPm.js} +15 -15
  251. package/dist/{session-DIBTkyvE.js → session-CsIk0Sqq.js} +2 -2
  252. package/dist/{session-DV1MNlbV.js → session-SM36BTsl.js} +8 -8
  253. package/dist/session-dirs-D3qlvucD.js +18 -0
  254. package/dist/{sessions-DgYpBvse.js → sessions-D5a7H247.js} +13 -13
  255. package/dist/{shared-Knv1hy6h.js → shared-Gi3l7nlY.js} +3 -3
  256. package/dist/{shared-BJvwnR5z.js → shared-Jm_QdQJQ.js} +1 -1
  257. package/dist/{skill-commands-D610IKhm.js → skill-commands-BJMb_psG.js} +9 -9
  258. package/dist/{skill-commands-Cxw-jNxU.js → skill-commands-ZXbEITKi.js} +5 -5
  259. package/dist/{skill-scanner-CLs8u6vQ.js → skill-scanner-CXg9eeyc.js} +5 -5
  260. package/dist/{skills-o5WVqM4V.js → skills-BFekKL7i.js} +21 -21
  261. package/dist/{skills-6jdJQ5ZL.js → skills-DqQUtOph.js} +4 -4
  262. package/dist/{skills-cli-BZTBLQTt.js → skills-cli-D1JL_utC.js} +7 -7
  263. package/dist/{skills-install-D67isO1L.js → skills-install-DjcTy3CT.js} +3 -3
  264. package/dist/{skills-status-CURJKnyY.js → skills-status-DS-NZQiq.js} +1 -1
  265. package/dist/{sqlite-Dx3J_aSE.js → sqlite-BV5ILFtC.js} +12 -12
  266. package/dist/{sqlite-6H6Zw1cs.js → sqlite-DRbx2dhW.js} +4 -4
  267. package/dist/{status-CwXg8OO1.js → status-CgPPKk09.js} +25 -25
  268. package/dist/{status-U_1mE-yc.js → status-CkJV2sl6.js} +3 -3
  269. package/dist/{status-BdmYV3_x.js → status-DqMwkAnF.js} +1 -1
  270. package/dist/{status-BBpD_1pG.js → status-DxodHhzX.js} +2 -2
  271. package/dist/{status.update-DtwCUTf-.js → status.update-CmGpjKSr.js} +3 -3
  272. package/dist/{store-vVE6N2mH.js → store-C0wvOkae.js} +2 -2
  273. package/dist/{store-r1DJSDq-.js → store-DvtcmOKj.js} +5 -5
  274. package/dist/{subagent-registry-Du9P0G2U.js → subagent-registry-CBklD0OL.js} +96 -8
  275. package/dist/{subsystem-DgpxyDQ_.js → subsystem-Bs9YvKLa.js} +1 -1
  276. package/dist/{symi-root-CrGJbkzf.js → symi-root-MF6_6SCS.js} +2 -2
  277. package/dist/{system-cli-UMsMEurS.js → system-cli-Buhvt_H5.js} +11 -11
  278. package/dist/{systemd-riq8uNJQ.js → systemd-AhJEsmIk.js} +5 -5
  279. package/dist/{systemd-hints-BR6gChwm.js → systemd-hints-Db0oImvK.js} +6 -6
  280. package/dist/{systemd-linger-aQ75ZlXY.js → systemd-linger-BXwqn1jL.js} +1 -1
  281. package/dist/{tables-BEzT0Da4.js → tables-C38rzF6E.js} +1 -1
  282. package/dist/{tables-BIWsCKXJ.js → tables-DuZspiBu.js} +1 -1
  283. package/dist/{target-errors-DyItGyW9.js → target-errors-Be1SwYlW.js} +2 -2
  284. package/dist/{target-errors-7AvoVa10.js → target-errors-CCz79CmV.js} +4 -4
  285. package/dist/{thinking-Ni0HF-w6.js → thinking-CdlENGRW.js} +5 -5
  286. package/dist/{tokens-c_SLAkVb.js → tokens-H1H1LiSQ.js} +1 -1
  287. package/dist/{tool-images-DvUBlqjX.js → tool-images-B-pqX3nX.js} +1 -1
  288. package/dist/{tool-images-DBCfXdli.js → tool-images-DXB7tqWi.js} +2 -2
  289. package/dist/{tool-loop-detection-Bbc9OPFR.js → tool-loop-detection-Cs8_HCsx.js} +3 -3
  290. package/dist/{tui-CriznorL.js → tui-C0A9W969.js} +7 -7
  291. package/dist/{tui-cli-CSIdfCTR.js → tui-cli-tCnkNdSx.js} +28 -28
  292. package/dist/{update-rw7wJwHd.js → update-Df4sEKtI.js} +3 -3
  293. package/dist/{update-check-CtckACbb.js → update-check-C0oYCI89.js} +5 -5
  294. package/dist/{update-cli-_45TJ3hZ.js → update-cli-BqdgQuYp.js} +8 -8
  295. package/dist/{update-cli-DJzF_9UX.js → update-cli-DYrpyu4a.js} +94 -94
  296. package/dist/{update-runner-BSQFv9b6.js → update-runner-BgzyPjF5.js} +15 -15
  297. package/dist/{update-runner-8Ac4bJ1w.js → update-runner-CmZW3aeK.js} +1 -1
  298. package/dist/{web-C1Zn8_qW.js → web-CfZp0Jv6.js} +6 -6
  299. package/dist/{web-BqRsq6mP.js → web-DNQzo8ao.js} +57 -57
  300. package/dist/web-DsCqmzyk.js +109 -0
  301. package/dist/{web-w-vV1rCZ.js → web-GL_nqURg.js} +1 -1
  302. package/dist/{webhooks-cli-cD58DWAE.js → webhooks-cli-Bp-7Rs2Y.js} +4 -4
  303. package/dist/{whatsapp-actions-DbcsdOH3.js → whatsapp-actions-CFXNPLco.js} +15 -15
  304. package/dist/{whatsapp-actions-oRQjcdQe.js → whatsapp-actions-D1RsnX7P.js} +23 -23
  305. package/dist/{with-timeout-gmK6RciS.js → with-timeout-Cs6_LnHB.js} +1 -1
  306. package/dist/{workspace-dirs-GpkFi6Kw.js → workspace-dirs-DKu48umx.js} +1 -1
  307. package/dist/{workspace-CbvamIU6.js → workspace-wAaHI8-5.js} +6 -6
  308. package/dist/{wsl-C4424szg.js → wsl-BbXxnokd.js} +2 -2
  309. package/package.json +1 -1
  310. package/dist/register.configure-Drr3E9OG.js +0 -147
  311. package/dist/web-BZSI7b07.js +0 -109
@@ -1,155 +1,155 @@
1
1
  import { _ as expandHomePrefix, g as resolveStateDir, i as isNixMode, l as resolveGatewayLockDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, E as truncateUtf16Safe, H as getLogger, P as setVerbose, R as colorize, S as shortenHomePath, U as getResolvedLoggerSettings, V as getChildLogger, c as ensureDir, t as CONFIG_DIR, y as resolveUserPath, z as isRich } from "./utils-B-0b9bGM.js";
3
3
  import { d as supportsXHighThinking, l as normalizeVerboseLevel, s as normalizeThinkLevel } from "./thinking-EAliFiVK.js";
4
- import { $ as normalizeOptionalSessionKey, An as initSubagentRegistry, Ar as extractImageContentFromSource, At as sleepWithAbort, B as setPreRestartDeferralCheck, Bn as registerAgentRunContext, C as loadSessionEntry, Dr as DEFAULT_INPUT_MAX_REDIRECTS, Dt as readJsonBodyWithLimit, Er as DEFAULT_INPUT_IMAGE_MIMES, Et as handleSlackHttpRequest, F as emitGatewayRestart, Fn as readLatestAssistantReply, G as summarizeRestartSentinel, Gt as getCliSessionId, Ht as createDefaultDeps, I as isGatewaySigusr1RestartExternallyAllowed, In as clearAgentRunContext, J as normalizeHttpWebhookUrl, Kt as setCliSessionId, L as markGatewaySigusr1RestartHandled, Ln as emitAgentEvent, Lt as resolveOutboundTarget, Mr as resolveInputFileLimits, N as consumeGatewaySigusr1RestartAuthorization, On as countActiveDescendantRuns, Or as DEFAULT_INPUT_TIMEOUT_MS, Ot as requestBodyErrorToText, P as deferGatewayRestartUntilIdle, Pn as runSubagentAnnounceFlow, Pr as resolveAgentTimeoutMs, Q as normalizeOptionalAgentId, Rn as getAgentRunContext, Rt as resolveSessionDeliveryTarget, Tr as DEFAULT_INPUT_IMAGE_MAX_BYTES, U as formatRestartSentinelMessage, V as consumeRestartSentinel, Wt as runWithModelFallback, Xt as resolveAgentAvatar, Z as inferLegacyName, _ as resolveAnnounceTargetFromKey, _t as loadSymiPlugins, ar as setCommandLaneConcurrency, at as hasLegacyDeliveryHints, cn as buildHistoryContextFromEntries, cr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, d as getActiveEmbeddedRunCount, en as buildSafeExternalPrompt, et as normalizeOptionalText, fr as stripHeartbeatToken, ft as requestHeartbeatNow, g as createSymiTools, h as buildDefaultToolPolicyPipelineSteps, hn as getTotalPendingReplies, ht as getPluginToolMeta, i as resolveCronStyleNow, ir as resetAllLanes, it as buildDeliveryFromLegacyPayload, j as resetDirectoryCache, jn as listDescendantRunsForRequester, jr as normalizeMimeList, jt as agentCommand, k as resolveOutboundSessionRoute, kn as countActiveRunsForSession, kr as extractFileContentFromSource, kt as computeBackoff, l as runEmbeddedPiAgent, m as applyToolPolicyPipeline, nn as getHookType, nt as normalizeRequiredName, or as waitForActiveTasks, ot as stripLegacyDeliveryFields, p as resolveModelProfile, pr as lookupContextTokens, qt as runCliAgent, rn as isExternalHookSession, rr as getTotalQueueSize, rt as migrateLegacyCronPayload, sr as CommandLane, tn as detectSuspiciousPatterns, tr as getActiveTaskCount, tt as normalizePayloadToSystemText, xr as enqueueSystemEvent, z as setGatewaySigusr1RestartPolicy, zn as onAgentEvent, zt as createOutboundSendDeps } from "./reply-SBi_U7P7.js";
4
+ import { $ as normalizeOptionalSessionKey, An as countActiveRunsForSession, Ar as extractFileContentFromSource, At as computeBackoff, B as setPreRestartDeferralCheck, Bn as onAgentEvent, Bt as createOutboundSendDeps, C as loadSessionEntry, Dr as DEFAULT_INPUT_IMAGE_MIMES, Dt as handleSlackHttpRequest, Er as DEFAULT_INPUT_IMAGE_MAX_BYTES, F as emitGatewayRestart, Fn as runSubagentAnnounceFlow, Fr as resolveAgentTimeoutMs, G as summarizeRestartSentinel, Gt as runWithModelFallback, I as isGatewaySigusr1RestartExternallyAllowed, In as readLatestAssistantReply, J as normalizeHttpWebhookUrl, Jt as runCliAgent, Kt as getCliSessionId, L as markGatewaySigusr1RestartHandled, Ln as clearAgentRunContext, Mn as listDescendantRunsForRequester, Mr as normalizeMimeList, Mt as agentCommand, N as consumeGatewaySigusr1RestartAuthorization, Nr as resolveInputFileLimits, Or as DEFAULT_INPUT_MAX_REDIRECTS, Ot as readJsonBodyWithLimit, P as deferGatewayRestartUntilIdle, Q as normalizeOptionalAgentId, Rn as emitAgentEvent, Rt as resolveOutboundTarget, Sr as enqueueSystemEvent, U as formatRestartSentinelMessage, Ut as createDefaultDeps, V as consumeRestartSentinel, Vn as registerAgentRunContext, Z as inferLegacyName, Zt as resolveAgentAvatar, _ as resolveAnnounceTargetFromKey, ar as resetAllLanes, at as hasLegacyDeliveryHints, cr as CommandLane, d as getActiveEmbeddedRunCount, et as normalizeOptionalText, ft as stripModelTokens, g as createSymiTools, gn as getTotalPendingReplies, gt as getPluginToolMeta, h as buildDefaultToolPolicyPipelineSteps, i as resolveCronStyleNow, in as isExternalHookSession, ir as getTotalQueueSize, it as buildDeliveryFromLegacyPayload, j as resetDirectoryCache, jn as initSubagentRegistry, jr as extractImageContentFromSource, jt as sleepWithAbort, k as resolveOutboundSessionRoute, kn as countActiveDescendantRuns, kr as DEFAULT_INPUT_TIMEOUT_MS, kt as requestBodyErrorToText, l as runEmbeddedPiAgent, ln as buildHistoryContextFromEntries, lr as DEFAULT_HEARTBEAT_ACK_MAX_CHARS, m as applyToolPolicyPipeline, mr as lookupContextTokens, nn as detectSuspiciousPatterns, nr as getActiveTaskCount, nt as normalizeRequiredName, or as setCommandLaneConcurrency, ot as stripLegacyDeliveryFields, p as resolveModelProfile, pr as stripHeartbeatToken, pt as requestHeartbeatNow, qt as setCliSessionId, rn as getHookType, rt as migrateLegacyCronPayload, sr as waitForActiveTasks, tn as buildSafeExternalPrompt, tt as normalizePayloadToSystemText, vt as loadSymiPlugins, z as setGatewaySigusr1RestartPolicy, zn as getAgentRunContext, zt as resolveSessionDeliveryTarget } from "./reply-DVxU0AMq.js";
5
5
  import { S as parseAgentSessionKey, c as normalizeMainKey, f as toAgentRequestSessionKey, l as resolveAgentIdFromSessionKey, m as DEFAULT_ACCOUNT_ID, p as toAgentStoreSessionKey, r as buildAgentMainSessionKey, s as normalizeAgentId, t as DEFAULT_AGENT_ID, x as isSubagentSessionKey, y as isCronRunSessionKey } from "./session-key-DCt45XZa.js";
6
- import { r as matchesSkillFilter, t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
6
+ import { r as matchesSkillFilter, t as resolveSymiPackageRoot } from "./symi-root-MF6_6SCS.js";
7
7
  import { C as createInternalHookEvent, S as clearInternalHooks, T as triggerInternalHook, m as createEmptyPluginRegistry, r as DEFAULT_CHAT_CHANNEL, w as registerInternalHook } from "./registry-Cja8eT7G.js";
8
8
  import { a as setConsoleSubsystemFilter, f as defaultRuntime, n as runtimeForLogger, o as setConsoleTimestampPrefix, t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
9
9
  import { i as logDebug, n as runExec, s as logWarn, t as runCommandWithTimeout } from "./exec-CWkblSrI.js";
10
- import { C as ensureAgentWorkspace, D as resolveDefaultAgentWorkspaceDir, O as resolveWorkspaceTemplateDir, a as resolveAgentModelFallbacksOverride, c as resolveAgentWorkspaceDir, d as resolveSessionAgentId, i as resolveAgentDir, l as resolveDefaultAgentId, n as listAgentIds, r as resolveAgentConfig, s as resolveAgentSkillsFilter } from "./agent-scope-CgUHAtCo.js";
11
- import { Gt as DEFAULT_MODEL, Kt as DEFAULT_PROVIDER, Rt as isPidAlive, Wt as DEFAULT_CONTEXT_TOKENS, a as getModelRefStatus, d as resolveAllowedModelRef, h as resolveHooksGmailModel, o as isCliProvider, p as resolveConfiguredModelRef, y as resolveThinkingDefault } from "./model-selection-CyFvYcRt.js";
10
+ import { C as ensureAgentWorkspace, D as resolveDefaultAgentWorkspaceDir, O as resolveWorkspaceTemplateDir, a as resolveAgentModelFallbacksOverride, c as resolveAgentWorkspaceDir, d as resolveSessionAgentId, i as resolveAgentDir, l as resolveDefaultAgentId, n as listAgentIds, r as resolveAgentConfig, s as resolveAgentSkillsFilter } from "./agent-scope-BRwEc2pG.js";
11
+ import { Gt as DEFAULT_MODEL, Kt as DEFAULT_PROVIDER, Rt as isPidAlive, Wt as DEFAULT_CONTEXT_TOKENS, a as getModelRefStatus, d as resolveAllowedModelRef, h as resolveHooksGmailModel, o as isCliProvider, p as resolveConfiguredModelRef, y as resolveThinkingDefault } from "./model-selection-X1oLh3CE.js";
12
12
  import "./github-copilot-token-DAu1a6BX.js";
13
13
  import { t as formatCliCommand } from "./command-format-COaS-S7B.js";
14
14
  import "./boolean-BsqeuxE6.js";
15
15
  import { n as logAcceptedEnvOption, t as isTruthyEnvValue } from "./env-DPCHYPeH.js";
16
16
  import { _ as normalizeGatewayClientMode, h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES, n as isDeliverableMessageChannel, p as GATEWAY_CLIENT_IDS, r as isGatewayCliClient, s as isWebchatClient } from "./message-channel-aT-I_DTX.js";
17
- import "./send-CZr1hVHY.js";
18
- import { B as resolveAgentMaxConcurrent, C as parseDurationMs, H as VERSION, U as resolveRuntimeServiceVersion, V as resolveSubagentMaxConcurrent, i as loadConfig, l as writeConfigFile, n as migrateLegacyConfig, o as readConfigFileSnapshot, r as createConfigIO } from "./config-CHwyw6l5.js";
17
+ import "./send-BnuIB59F.js";
18
+ import { B as resolveAgentMaxConcurrent, C as parseDurationMs, H as VERSION, U as resolveRuntimeServiceVersion, V as resolveSubagentMaxConcurrent, i as loadConfig, l as writeConfigFile, n as migrateLegacyConfig, o as readConfigFileSnapshot, r as createConfigIO } from "./config-CJMcIRQM.js";
19
19
  import { l as isTestDefaultMemorySlotDisabled } from "./manifest-registry-C4BxOMWX.js";
20
20
  import { a as isPathInsideWithRealpath } from "./legacy-names-Be3msDZo.js";
21
- import { d as registerUnhandledRejectionHandler } from "./runner-CUglpiFP.js";
22
- import "./image-D9uvDTrc.js";
23
- import "./models-config-qyOXrOli.js";
21
+ import { d as registerUnhandledRejectionHandler } from "./runner-Cen70krW.js";
22
+ import "./image-BiY-PfMh.js";
23
+ import "./models-config-CqDdkHJq.js";
24
24
  import "./pi-model-discovery-4uUnLc3n.js";
25
- import "./pi-embedded-helpers-CNPyv_ax.js";
26
- import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-C-T6hOMv.js";
27
- import "./chrome-DtPkPq9T.js";
25
+ import "./pi-embedded-helpers-DO6u9K2t.js";
26
+ import { S as resolveToolProfilePolicy, _ as collectExplicitAllowlist, b as mergeAlsoAllowPolicy } from "./sandbox-BzNrUHpt.js";
27
+ import "./chrome-r4RThPxq.js";
28
28
  import { i as enableTailscaleServe, n as disableTailscaleServe, o as getTailnetHostname, r as enableTailscaleFunnel, t as disableTailscaleFunnel } from "./tailscale-D5dKabOc.js";
29
29
  import { t as safeEqualSecret } from "./secret-equal-D7A3Bol7.js";
30
30
  import { n as pickPrimaryTailnetIPv4, r as pickPrimaryTailnetIPv6 } from "./tailnet-B2SPYrh4.js";
31
31
  import { a as isTrustedProxyAddress, d as resolveGatewayListenHosts, f as resolveHostName, l as resolveClientIp, n as isLoopbackAddress, o as isValidIPv4, r as isLoopbackHost, s as normalizeHostHeader, t as rawDataToString, u as resolveGatewayBindHost } from "./ws-C7EXRv8z.js";
32
32
  import { a as resolveGatewayAuth, c as createAuthRateLimiter, i as isLocalDirectRequest, n as authorizeHttpGatewayConnect, o as AUTH_RATE_LIMIT_SCOPE_DEVICE_TOKEN, r as authorizeWsControlUiGatewayConnect, s as AUTH_RATE_LIMIT_SCOPE_SHARED_SECRET, t as assertGatewayAuthConfigured } from "./auth-B741uFtk.js";
33
- import { g as mergeGatewayTailscaleConfig, h as ensureGatewayStartupAuth } from "./server-context-CEpFjqSk.js";
33
+ import { g as mergeGatewayTailscaleConfig, h as ensureGatewayStartupAuth } from "./server-context-DUXqnh6l.js";
34
34
  import { d as hasBinary } from "./frontmatter-DWQhtOo7.js";
35
- import { r as buildWorkspaceSkillSnapshot } from "./skills-6jdJQ5ZL.js";
36
- import "./routes-Ba9CUQ8M.js";
35
+ import { r as buildWorkspaceSkillSnapshot } from "./skills-DqQUtOph.js";
36
+ import "./routes-CE-ohckF.js";
37
37
  import "./redact-f-Q-hFt_.js";
38
38
  import { a as isErrno, n as formatErrorMessage } from "./errors-BF3TeRH2.js";
39
- import { n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-CUjO1ca2.js";
40
- import "./paths-BBm9fwuG.js";
39
+ import { n as openFileWithinRoot, t as SafeOpenError } from "./fs-safe-CTDvb1DF.js";
40
+ import "./paths-CT6jsi4E.js";
41
41
  import { t as SsrFBlockedError } from "./ssrf-BCYMnxkM.js";
42
- import { c as detectMime } from "./image-ops-1OJMSAUX.js";
43
- import "./store-r1DJSDq-.js";
44
- import { a as inspectPortUsage, r as ensurePortAvailable, s as formatPortDiagnostics } from "./ports-BOmtxoTv.js";
42
+ import { c as detectMime } from "./image-ops-DYbDWaIA.js";
43
+ import "./store-DvtcmOKj.js";
44
+ import { a as inspectPortUsage, r as ensurePortAvailable, s as formatPortDiagnostics } from "./ports-OZQlocB7.js";
45
45
  import "./trash-DcMh1i4B.js";
46
- import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, M as evaluateSessionFreshness, P as resolveSessionResetPolicy, U as resolveMainSessionKeyFromConfig, Y as cleanStaleLockFiles, _ as mergeDeliveryContext, d as updateSessionStore, h as deliveryContextFromSession, n as parseSessionThreadInfo, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-DgYpBvse.js";
47
- import "./dock-BhS32F6E.js";
48
- import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DKDeQZF0.js";
49
- import { n as resolveWhatsAppAccount } from "./accounts-DDuIpcln.js";
50
- import "./accounts-bK-Yqdwx.js";
51
- import "./accounts-DyJN4_vR.js";
52
- import { t as buildChannelAccountBindings } from "./bindings-DFaVVCsf.js";
46
+ import { B as resolveAgentMainSessionKey, H as resolveMainSessionKey, M as evaluateSessionFreshness, P as resolveSessionResetPolicy, U as resolveMainSessionKeyFromConfig, Y as cleanStaleLockFiles, _ as mergeDeliveryContext, d as updateSessionStore, h as deliveryContextFromSession, n as parseSessionThreadInfo, o as loadSessionStore, z as canonicalizeMainSessionAlias } from "./sessions-D5a7H247.js";
47
+ import "./dock-BYiRZSgZ.js";
48
+ import { n as listChannelPlugins, o as normalizeWhatsAppTarget, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-BAyxWQSz.js";
49
+ import { n as resolveWhatsAppAccount } from "./accounts-Cd816n6l.js";
50
+ import "./accounts-CokRskCl.js";
51
+ import "./accounts-mN_EcgxC.js";
52
+ import { t as buildChannelAccountBindings } from "./bindings-ChzePa8q.js";
53
53
  import "./logging-w5jq5901.js";
54
- import "./send-CPF8hSFp.js";
54
+ import "./send-dH0xroTu.js";
55
55
  import { c as resolveStorePath, i as resolveSessionTranscriptPath } from "./paths-CyhzMxFA.js";
56
- import "./tool-images-DvUBlqjX.js";
56
+ import "./tool-images-B-pqX3nX.js";
57
57
  import "./tool-display-D8N3rsYt.js";
58
58
  import { t as fetchWithSsrFGuard } from "./fetch-guard-DOPkVbh3.js";
59
- import "./api-key-rotation-CzuPlV2t.js";
60
- import "./local-roots-aAFLQGkY.js";
61
- import "./sqlite-Dx3J_aSE.js";
62
- import { n as loadModelCatalog } from "./model-catalog-DvBJ8pMD.js";
59
+ import "./api-key-rotation-CEr3lKih.js";
60
+ import "./local-roots-BBeKX7PX.js";
61
+ import "./sqlite-BV5ILFtC.js";
62
+ import { n as loadModelCatalog } from "./model-catalog-C3NLvWC2.js";
63
63
  import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-BuceUQDl.js";
64
- import { r as getMachineDisplayName } from "./with-timeout-gmK6RciS.js";
65
- import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-CceEhg3d.js";
64
+ import { r as getMachineDisplayName } from "./with-timeout-Cs6_LnHB.js";
65
+ import { C as getGlobalHookRunner, T as runGlobalGatewayStopSafely, t as deliverOutboundPayloads } from "./deliver-Um8yyhRA.js";
66
66
  import { d as startDiagnosticHeartbeat, f as stopDiagnosticHeartbeat, m as isDiagnosticsEnabled } from "./diagnostic-DjBRPfu9.js";
67
67
  import "./diagnostic-session-state-CUslJyKP.js";
68
- import "./send-Cutb0ZDY.js";
69
- import "./model-tWhwnFf8.js";
70
- import { a as resolveAgentIdentity } from "./reply-prefix-CE2YmmsD.js";
71
- import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-Ca5r9AUb.js";
72
- import { i as resolveMemorySearchConfig } from "./manager-D4LJSRyZ.js";
68
+ import "./send-BEeuDXqy.js";
69
+ import "./model-CeeOcylL.js";
70
+ import { a as resolveAgentIdentity } from "./reply-prefix-BLOOs1aW.js";
71
+ import { i as resolveMemoryBackendConfig, r as getMemorySearchManager } from "./memory-cli-lk6fRiwy.js";
72
+ import { i as resolveMemorySearchConfig } from "./manager-C1CfGzZ2.js";
73
73
  import "./retry-BoS4e4X_.js";
74
- import { a as ToolInputError } from "./target-errors-7AvoVa10.js";
74
+ import { a as ToolInputError } from "./target-errors-CCz79CmV.js";
75
75
  import "./chunk-1dhPX1NK.js";
76
- import "./markdown-tables-CEbN0fEm.js";
77
- import "./ir-DZam9q5M.js";
76
+ import "./markdown-tables-ZwP14ydw.js";
77
+ import "./ir-Dt4hOzxG.js";
78
78
  import "./render-CXDO_kgw.js";
79
- import { r as isRestartEnabled } from "./commands-BNLCWX6e.js";
80
- import "./commands-registry-BT0-zzs3.js";
81
- import { At as ErrorCodes, Ft as approveDevicePairing, Gt as updatePairedDeviceMetadata, It as ensureDeviceToken, Kt as verifyDeviceToken, Lt as getPairedDevice, Pt as buildDeviceAuthPayload, Qt as verifyDeviceSignature, R as validateExecApprovalRequestParams, Vt as requestDevicePairing, Yt as deriveDeviceIdFromPublicKey, Zt as normalizeDevicePublicKeyBase64Url, at as validateRequestFrame, jt as errorShape, kt as PROTOCOL_VERSION, n as formatValidationErrors, qt as roleScopesAllow, w as validateConnectParams, z as validateExecApprovalResolveParams } from "./client-CQSyCS4M.js";
82
- import { f as loadGatewayTlsRuntime$1, n as callGateway } from "./call-CJaS1iRF.js";
83
- import "./pairing-token-CX3NN_qj.js";
79
+ import { r as isRestartEnabled } from "./commands-CtocZ4Lg.js";
80
+ import "./commands-registry-BZ0ZSQpM.js";
81
+ import { At as ErrorCodes, Ft as approveDevicePairing, Gt as updatePairedDeviceMetadata, It as ensureDeviceToken, Kt as verifyDeviceToken, Lt as getPairedDevice, Pt as buildDeviceAuthPayload, Qt as verifyDeviceSignature, R as validateExecApprovalRequestParams, Vt as requestDevicePairing, Yt as deriveDeviceIdFromPublicKey, Zt as normalizeDevicePublicKeyBase64Url, at as validateRequestFrame, jt as errorShape, kt as PROTOCOL_VERSION, n as formatValidationErrors, qt as roleScopesAllow, w as validateConnectParams, z as validateExecApprovalResolveParams } from "./client-BsrZnuSi.js";
82
+ import { f as loadGatewayTlsRuntime$1, n as callGateway } from "./call-Dd7-bkfG.js";
83
+ import "./pairing-token-AV-MMfVE.js";
84
84
  import "./channel-activity-BOiuJS3t.js";
85
85
  import "./fetch-DTNGXEzX.js";
86
- import "./tables-BEzT0Da4.js";
87
- import "./send-tanEMpHN.js";
88
- import { a as readChannelAllowFromStoreSync } from "./pairing-store-CK726Dzq.js";
86
+ import "./tables-C38rzF6E.js";
87
+ import "./send-BjdAgYLu.js";
88
+ import { a as readChannelAllowFromStoreSync } from "./pairing-store-B8ktu-6j.js";
89
89
  import "./proxy-DU7W9XSc.js";
90
90
  import { t as formatDocsLink } from "./links-3i1eUga4.js";
91
91
  import { n as runCommandWithRuntime } from "./cli-utils-DN_hM6ov.js";
92
92
  import { t as formatHelpExamples } from "./help-format-B_-M23wP.js";
93
93
  import { n as withProgress } from "./progress-jIePzvGA.js";
94
- import "./resolve-route-BMoTaVAH.js";
95
- import "./replies-vgss3_QA.js";
96
- import { S as registerSkillsChangeListener, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, l as refreshRemoteBinsForConnectedNodes, o as getRemoteSkillEligibility, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion } from "./skill-commands-Cxw-jNxU.js";
97
- import "./workspace-dirs-GpkFi6Kw.js";
98
- import "./outbound-attachment-D_QuKi8U.js";
94
+ import "./resolve-route-BcnaXYvh.js";
95
+ import "./replies-BL7IBg12.js";
96
+ import { S as registerSkillsChangeListener, c as recordRemoteNodeInfo, d as removeRemoteNodeInfo, f as setSkillsRemoteRegistry, l as refreshRemoteBinsForConnectedNodes, o as getRemoteSkillEligibility, s as primeRemoteSkillsCache, u as refreshRemoteNodeBins, v as updatePairedNodeMetadata, x as getSkillsSnapshotVersion } from "./skill-commands-ZXbEITKi.js";
97
+ import "./workspace-dirs-DKu48umx.js";
98
+ import "./outbound-attachment-D62E0xDI.js";
99
99
  import "./delivery-queue-Df1uodAG.js";
100
100
  import { c as hasNonzeroUsage, s as deriveSessionTotalTokens } from "./session-cost-usage-BG4AXrGN.js";
101
- import "./send-CXxQ_f7L.js";
102
- import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-ZmZYzlq3.js";
101
+ import "./send-C95ZRvja.js";
102
+ import { C as normalizeControlUiBasePath, S as buildControlUiAvatarUrl, c as handleReset, w as resolveAssistantAvatarUrl, x as CONTROL_UI_AVATAR_PREFIX } from "./onboard-helpers-Dixh6cNh.js";
103
103
  import "./prompt-style-8JqOYj0q.js";
104
- import "./pairing-labels-2S6x2UoV.js";
104
+ import "./pairing-labels-27SOKDzJ.js";
105
105
  import { n as formatTokenCount, r as formatUsd } from "./usage-format-BzKEDn0q.js";
106
106
  import { t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-Kn31mBcW.js";
107
- import "./nodes-screen-VBGXKdLk.js";
108
- import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-CIDBbw6x.js";
109
- import "./control-service-Bz7rxLWq.js";
107
+ import "./nodes-screen-C99kfE1u.js";
108
+ import { a as resolveSubagentToolPolicy, i as resolveGroupToolPolicy, r as resolveEffectiveToolPolicy } from "./pi-tools.policy-juZV2uUv.js";
109
+ import "./control-service-B8H3Bqpv.js";
110
110
  import { i as parseAbsoluteTimeMs, n as resolveCronStaggerMs, r as resolveDefaultCronStaggerMs, t as normalizeCronStaggerMs } from "./stagger-BUClb97_.js";
111
- import { n as resolveMessageChannelSelection } from "./channel-selection-DuWs0Aak.js";
111
+ import { n as resolveMessageChannelSelection } from "./channel-selection-DjfBv8kq.js";
112
112
  import { i as onHeartbeatEvent, t as resolveHeartbeatVisibility } from "./heartbeat-visibility-U4BL57eQ.js";
113
113
  import { t as ensureSymiCliOnPath } from "./path-env-MnzRq6nD.js";
114
114
  import "./runtime-guard-B37eizu-.js";
115
- import { t as forceFreePortAndWait } from "./ports-BX0kKI0g.js";
115
+ import { t as forceFreePortAndWait } from "./ports-b36gHZbA.js";
116
116
  import "./catalog-RiADx7MA.js";
117
- import "./skills-status-CURJKnyY.js";
117
+ import "./skills-status-DS-NZQiq.js";
118
118
  import { n as DEFAULT_GATEWAY_HTTP_TOOL_DENY } from "./dangerous-tools-BL-M3lPt.js";
119
119
  import { n as inheritOptionFromParent } from "./command-options-BtDai3oC.js";
120
120
  import { t as resolveChannelDefaultAccountId } from "./helpers-BcGbMZD1.js";
121
- import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BzX1uAKy.js";
122
- import "./install-safe-path-tCLiMpmO.js";
123
- import "./skill-scanner-CLs8u6vQ.js";
124
- import "./channels-status-issues-B_kBkl_u.js";
125
- import "./daemon-runtime-2mwX-jqj.js";
126
- import "./systemd-riq8uNJQ.js";
127
- import "./service-Cl74hx8J.js";
128
- import "./lifecycle-core-D6LYXpFj.js";
129
- import "./systemd-hints-BR6gChwm.js";
121
+ import { t as applyPluginAutoEnable } from "./plugin-auto-enable-Bbm7MwFV.js";
122
+ import "./install-safe-path-Qqr_t_tH.js";
123
+ import "./skill-scanner-CXg9eeyc.js";
124
+ import "./channels-status-issues-BoH1ZJPN.js";
125
+ import "./daemon-runtime--RiRUx_2.js";
126
+ import "./systemd-AhJEsmIk.js";
127
+ import "./service--qMN5DPm.js";
128
+ import "./lifecycle-core-BkPSoGM2.js";
129
+ import "./systemd-hints-Db0oImvK.js";
130
130
  import { t as parsePort$1 } from "./parse-port-Vm8F7Kus.js";
131
- import { n as addGatewayServiceCommands } from "./daemon-cli-DscwlsKW.js";
132
- import "./diagnostics-BAMlsVVX.js";
131
+ import { n as addGatewayServiceCommands } from "./daemon-cli-Dx4SXRyp.js";
132
+ import "./diagnostics-D2yUMZN1.js";
133
133
  import "./table-BTgkRafz.js";
134
134
  import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DzLerlJb.js";
135
- import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-BJvwnR5z.js";
136
- import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-CrITRV6w.js";
135
+ import { i as toOptionString, n as extractGatewayMiskeys, r as maybeExplainGatewayServiceStop, t as describeUnknownError } from "./shared-Jm_QdQJQ.js";
136
+ import { c as probeGateway, s as resolveNodeCommandAllowlist } from "./audit-BSB9NPSO.js";
137
137
  import { t as discoverGatewayBeacons } from "./bonjour-discovery-BHTF5p0X.js";
138
- import { r as pickGatewaySelfPresence } from "./status-CwXg8OO1.js";
139
- import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-f056vLGT.js";
140
- import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Z947tKLt.js";
141
- import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-CtckACbb.js";
142
- import { t as runOnboardingWizard } from "./onboarding-eVb5gvwo.js";
143
- import { _ as getHandshakeTimeoutMs, a as DEFAULT_ASSISTANT_IDENTITY, b as resolveCronRunLogPath, c as upsertPresence, d as DEDUPE_MAX, f as DEDUPE_TTL_MS, g as TICK_INTERVAL_MS, h as MAX_PAYLOAD_BYTES, i as safeParseJson, l as formatError, m as MAX_BUFFERED_BYTES, n as handleGatewayRequest, o as resolveAssistantIdentity, p as HEALTH_REFRESH_INTERVAL_MS, r as broadcastPresenceSnapshot, s as listSystemPresence, t as coreGatewayHandlers, u as loadVoiceWakeConfig, v as abortChatRunById, x as startGatewayConfigReloader, y as appendCronRunLog } from "./server-methods-Cm6W01ne.js";
144
- import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-EKnCwrqK.js";
138
+ import { r as pickGatewaySelfPresence } from "./status-CgPPKk09.js";
139
+ import { c as startHeartbeatRunner, i as styleHealthChannelLine, n as getHealthSnapshot, o as runHeartbeatOnce, t as formatHealthChannelLines } from "./health-DkKXiUEF.js";
140
+ import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-DqGziq7x.js";
141
+ import { a as resolveNpmChannelTag, c as DEFAULT_PACKAGE_CHANNEL, m as normalizeUpdateChannel, n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-C0oYCI89.js";
142
+ import { t as runOnboardingWizard } from "./onboarding-CdlGKa0U.js";
143
+ import { _ as getHandshakeTimeoutMs, a as DEFAULT_ASSISTANT_IDENTITY, b as resolveCronRunLogPath, c as upsertPresence, d as DEDUPE_MAX, f as DEDUPE_TTL_MS, g as TICK_INTERVAL_MS, h as MAX_PAYLOAD_BYTES, i as safeParseJson, l as formatError, m as MAX_BUFFERED_BYTES, n as handleGatewayRequest, o as resolveAssistantIdentity, p as HEALTH_REFRESH_INTERVAL_MS, r as broadcastPresenceSnapshot, s as listSystemPresence, t as coreGatewayHandlers, u as loadVoiceWakeConfig, v as abortChatRunById, x as startGatewayConfigReloader, y as appendCronRunLog } from "./server-methods-BgBq7KRL.js";
144
+ import { d as shouldLogWs, f as summarizeAgentEventForWsLog, l as formatForLog, p as setGatewayWsLogStyle, u as logWs } from "./push-apns-0et2AR44.js";
145
145
  import { T as resolveGmailHookRuntimeConfig, _ as buildGogWatchServeArgs, i as ensureTailscaleEndpoint, v as buildGogWatchStartArgs } from "./gmail-setup-utils-Bv0M7ka7.js";
146
- import "./agents.config-2HlZJsR3.js";
147
- import "./dm-policy-shared-Bh3TbexU.js";
148
- import "./node-service-Cxz4e-Qd.js";
149
- import "./status.update-DtwCUTf-.js";
150
- import "./skills-install-D67isO1L.js";
151
- import "./update-runner-BSQFv9b6.js";
152
- import { t as resolveAgentSessionDirs } from "./session-dirs-DWgIYmAt.js";
146
+ import "./agents.config-u_ibObha.js";
147
+ import "./dm-policy-shared-BCSw0GJS.js";
148
+ import "./node-service-CJygtY5M.js";
149
+ import "./status.update-CmGpjKSr.js";
150
+ import "./skills-install-DjcTy3CT.js";
151
+ import "./update-runner-BgzyPjF5.js";
152
+ import { t as resolveAgentSessionDirs } from "./session-dirs-D3qlvucD.js";
153
153
  import { i as shouldIncludeHook, r as resolveHookConfig, t as loadWorkspaceHookEntries } from "./workspace-CYxdoAlY.js";
154
154
  import { fileURLToPath, pathToFileURL } from "node:url";
155
155
  import * as fsSync from "node:fs";
@@ -158,7 +158,7 @@ import os from "node:os";
158
158
  import path from "node:path";
159
159
  import JSON5 from "json5";
160
160
  import chalk from "chalk";
161
- import fs$1 from "node:fs/promises";
161
+ import fsPromises from "node:fs/promises";
162
162
  import { spawn } from "node:child_process";
163
163
  import crypto, { createHash, randomBytes, randomUUID } from "node:crypto";
164
164
  import { z } from "zod";
@@ -1151,7 +1151,7 @@ function shouldSkipCheck(allowInTests) {
1151
1151
  }
1152
1152
  async function readState(statePath) {
1153
1153
  try {
1154
- const raw = await fs$1.readFile(statePath, "utf-8");
1154
+ const raw = await fsPromises.readFile(statePath, "utf-8");
1155
1155
  const parsed = JSON.parse(raw);
1156
1156
  return parsed && typeof parsed === "object" ? parsed : {};
1157
1157
  } catch {
@@ -1159,8 +1159,8 @@ async function readState(statePath) {
1159
1159
  }
1160
1160
  }
1161
1161
  async function writeState(statePath, state) {
1162
- await fs$1.mkdir(path.dirname(statePath), { recursive: true });
1163
- await fs$1.writeFile(statePath, JSON.stringify(state, null, 2), "utf-8");
1162
+ await fsPromises.mkdir(path.dirname(statePath), { recursive: true });
1163
+ await fsPromises.writeFile(statePath, JSON.stringify(state, null, 2), "utf-8");
1164
1164
  }
1165
1165
  function sameUpdateAvailable(a, b) {
1166
1166
  if (a === b) return true;
@@ -1863,43 +1863,23 @@ function createChannelManager(opts) {
1863
1863
  }
1864
1864
 
1865
1865
  //#endregion
1866
- //#region src/agents/model-token-filter.ts
1867
- /**
1868
- * Strips model-specific control tokens from streamed text.
1869
- *
1870
- * Used both server-side (in the streaming pipeline) and by the Glass UI
1871
- * (as a defense-in-depth fallback). The patterns here cover tokens known
1872
- * to leak from Gemma 4 / vLLM; Claude output is left untouched.
1873
- */
1874
- const GEMMA_TOKEN_PATTERNS = [
1875
- /<\|channel>\w*/g,
1876
- /<channel\|>/g,
1877
- /<start_of_turn>(?:model|user)?/g,
1878
- /<end_of_turn>/g,
1879
- /<\|(?:fim_prefix|fim_suffix|fim_middle)\|>/g,
1880
- /^\s*<bos>\s*/gm
1881
- ];
1882
- const GEMMA_MODEL_HINTS = ["gemma", "redsand/"];
1883
- function isGemmaModel(modelId) {
1884
- const lower = modelId.toLowerCase();
1885
- return GEMMA_MODEL_HINTS.some((hint) => lower.includes(hint));
1886
- }
1866
+ //#region src/gateway/server-chat.ts
1887
1867
  /**
1888
- * Strip known control tokens from text. Only applies to Gemma-family models;
1889
- * other models pass through unchanged.
1868
+ * Strip Gemma's self-verification monologue blocks from the final text.
1869
+ * These follow a consistent pattern appended after the real answer:
1870
+ * "I have addressed the request fully.\n**Verification:**\n..."
1890
1871
  */
1891
- function stripModelTokens(text, modelId) {
1892
- if (!text || !isGemmaModel(modelId)) return text;
1893
- let result = text;
1894
- for (const re of GEMMA_TOKEN_PATTERNS) {
1895
- re.lastIndex = 0;
1896
- result = result.replace(re, "");
1872
+ const MONOLOGUE_PATTERN = /\n*I have addressed the request fully\.?\s*(?:\n\*\*Verification:\*\*[\s\S]*)?$/;
1873
+ const MONOLOGUE_FALLBACK_PATTERNS = [/\n*\*\*Verification:\*\*\s*\n[\s\S]*?Everything is correct\.?\s*✅?\s*$/, /\n*Address requirements:[\s\S]*?Everything is correct\.?\s*✅?\s*$/];
1874
+ function suppressMonologueBlock(text) {
1875
+ let result = text.replace(MONOLOGUE_PATTERN, "");
1876
+ if (result !== text) return result.trim();
1877
+ for (const pattern of MONOLOGUE_FALLBACK_PATTERNS) {
1878
+ result = text.replace(pattern, "");
1879
+ if (result !== text) return result.trim();
1897
1880
  }
1898
- return result;
1881
+ return text;
1899
1882
  }
1900
-
1901
- //#endregion
1902
- //#region src/gateway/server-chat.ts
1903
1883
  function resolveHeartbeatAckMaxChars$1() {
1904
1884
  try {
1905
1885
  const cfg = loadConfig();
@@ -2054,21 +2034,16 @@ function createToolEventRecipientRegistry() {
2054
2034
  function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSession, agentRunSeq, chatRunState, resolveSessionKeyForRun, clearAgentRunContext, toolEventRecipients }) {
2055
2035
  const emitChatDelta = (sessionKey, clientRunId, sourceRunId, seq, text) => {
2056
2036
  if (isSilentReplyText(text, SILENT_REPLY_TOKEN)) return;
2057
- let resolvedModelId;
2058
- try {
2059
- resolvedModelId = loadConfig().agents?.defaults?.model?.primary ?? void 0;
2060
- } catch {}
2061
- const cleanedText = resolvedModelId ? stripModelTokens(text, resolvedModelId) : text;
2062
- chatRunState.buffers.set(clientRunId, cleanedText);
2037
+ chatRunState.buffers.set(clientRunId, text);
2063
2038
  if (shouldHideHeartbeatChatOutput(clientRunId, sourceRunId)) return;
2064
2039
  const now = Date.now();
2065
2040
  if (now - (chatRunState.deltaSentAt.get(clientRunId) ?? 0) < 150) {
2066
- chatRunState.pendingDeltaText.set(clientRunId, (chatRunState.pendingDeltaText.get(clientRunId) ?? "") + cleanedText);
2041
+ chatRunState.pendingDeltaText.set(clientRunId, (chatRunState.pendingDeltaText.get(clientRunId) ?? "") + text);
2067
2042
  return;
2068
2043
  }
2069
2044
  const buffered = chatRunState.pendingDeltaText.get(clientRunId) ?? "";
2070
2045
  chatRunState.pendingDeltaText.delete(clientRunId);
2071
- const fullText = buffered + cleanedText;
2046
+ const fullText = buffered + text;
2072
2047
  chatRunState.deltaSentAt.set(clientRunId, now);
2073
2048
  const payload = {
2074
2049
  runId: clientRunId,
@@ -2110,10 +2085,19 @@ function createAgentEventHandler({ broadcast, broadcastToConnIds, nodeSendToSess
2110
2085
  nodeSendToSession(sessionKey, "chat", flushPayload);
2111
2086
  }
2112
2087
  chatRunState.pendingDeltaText.delete(clientRunId);
2088
+ let bufferedText = chatRunState.buffers.get(clientRunId)?.trim() ?? "";
2089
+ let resolvedModelId;
2090
+ try {
2091
+ resolvedModelId = loadConfig().agents?.defaults?.model?.primary ?? void 0;
2092
+ } catch {}
2093
+ if (resolvedModelId) {
2094
+ bufferedText = stripModelTokens(bufferedText, resolvedModelId);
2095
+ bufferedText = suppressMonologueBlock(bufferedText);
2096
+ }
2113
2097
  const normalizedHeartbeatText = normalizeHeartbeatChatFinalText({
2114
2098
  runId: clientRunId,
2115
2099
  sourceRunId,
2116
- text: chatRunState.buffers.get(clientRunId)?.trim() ?? ""
2100
+ text: bufferedText
2117
2101
  });
2118
2102
  const text = normalizedHeartbeatText.text.trim();
2119
2103
  const shouldSuppressSilent = normalizedHeartbeatText.suppress || isSilentReplyText(text, SILENT_REPLY_TOKEN);
@@ -6489,7 +6473,7 @@ function normalizeAgentPayload(payload) {
6489
6473
  async function startBrowserControlServerIfEnabled() {
6490
6474
  if (isTruthyEnvValue(process.env.SYMI_SKIP_BROWSER_CONTROL_SERVER)) return null;
6491
6475
  const override = process.env.SYMI_BROWSER_CONTROL_MODULE?.trim();
6492
- const mod = override ? await import(override) : await import("./control-service-Bz7rxLWq.js").then((n) => n.t);
6476
+ const mod = override ? await import(override) : await import("./control-service-B8H3Bqpv.js").then((n) => n.t);
6493
6477
  const start = typeof mod.startBrowserControlServiceFromConfig === "function" ? mod.startBrowserControlServiceFromConfig : mod.startBrowserControlServerFromConfig;
6494
6478
  const stop = typeof mod.stopBrowserControlService === "function" ? mod.stopBrowserControlService : mod.stopBrowserControlServer;
6495
6479
  if (!start) return null;
@@ -6717,7 +6701,7 @@ async function resolveFileWithinRoot(rootReal, urlPath) {
6717
6701
  if (normalized.endsWith("/")) return await tryOpen(path.posix.join(rel, "index.html"));
6718
6702
  const candidate = path.join(rootReal, rel);
6719
6703
  try {
6720
- const st = await fs$1.lstat(candidate);
6704
+ const st = await fsPromises.lstat(candidate);
6721
6705
  if (st.isSymbolicLink()) return null;
6722
6706
  if (st.isDirectory()) return await tryOpen(path.posix.join(rel, "index.html"));
6723
6707
  } catch {}
@@ -6754,8 +6738,8 @@ async function resolveA2uiRoot() {
6754
6738
  for (const dir of candidates) try {
6755
6739
  const indexPath = path.join(dir, "index.html");
6756
6740
  const bundlePath = path.join(dir, "a2ui.bundle.js");
6757
- await fs$1.stat(indexPath);
6758
- await fs$1.stat(bundlePath);
6741
+ await fsPromises.stat(indexPath);
6742
+ await fsPromises.stat(bundlePath);
6759
6743
  return dir;
6760
6744
  } catch {}
6761
6745
  return null;
@@ -6764,7 +6748,7 @@ async function resolveA2uiRootReal() {
6764
6748
  if (cachedA2uiRootReal !== void 0 && (cachedA2uiRootReal !== null || Date.now() - cachedA2uiResolvedAtMs < A2UI_ROOT_RETRY_NULL_AFTER_MS)) return cachedA2uiRootReal;
6765
6749
  if (!resolvingA2uiRoot) resolvingA2uiRoot = (async () => {
6766
6750
  const root = await resolveA2uiRoot();
6767
- cachedA2uiRootReal = root ? await fs$1.realpath(root) : null;
6751
+ cachedA2uiRootReal = root ? await fsPromises.realpath(root) : null;
6768
6752
  cachedA2uiResolvedAtMs = Date.now();
6769
6753
  resolvingA2uiRoot = null;
6770
6754
  return cachedA2uiRootReal;
@@ -6985,13 +6969,13 @@ function normalizeBasePath(rawPath) {
6985
6969
  }
6986
6970
  async function prepareCanvasRoot(rootDir) {
6987
6971
  await ensureDir(rootDir);
6988
- const rootReal = await fs$1.realpath(rootDir);
6972
+ const rootReal = await fsPromises.realpath(rootDir);
6989
6973
  try {
6990
6974
  const indexPath = path.join(rootReal, "index.html");
6991
- await fs$1.stat(indexPath);
6975
+ await fsPromises.stat(indexPath);
6992
6976
  } catch {
6993
6977
  try {
6994
- await fs$1.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
6978
+ await fsPromises.writeFile(path.join(rootReal, "index.html"), defaultIndexHTML(), "utf8");
6995
6979
  } catch {}
6996
6980
  }
6997
6981
  return rootReal;
@@ -9685,7 +9669,7 @@ function resolveGatewayOwnerStatus(pid, payload, platform) {
9685
9669
  }
9686
9670
  async function readLockPayload(lockPath) {
9687
9671
  try {
9688
- const raw = await fs$1.readFile(lockPath, "utf8");
9672
+ const raw = await fsPromises.readFile(lockPath, "utf8");
9689
9673
  const parsed = JSON.parse(raw);
9690
9674
  if (typeof parsed.pid !== "number") return null;
9691
9675
  if (typeof parsed.createdAt !== "string") return null;
@@ -9719,11 +9703,11 @@ async function acquireGatewayLock(opts = {}) {
9719
9703
  const staleMs = opts.staleMs ?? DEFAULT_STALE_MS;
9720
9704
  const platform = opts.platform ?? process.platform;
9721
9705
  const { lockPath, configPath } = resolveGatewayLockPath(env);
9722
- await fs$1.mkdir(path.dirname(lockPath), { recursive: true });
9706
+ await fsPromises.mkdir(path.dirname(lockPath), { recursive: true });
9723
9707
  const startedAt = Date.now();
9724
9708
  let lastPayload = null;
9725
9709
  while (Date.now() - startedAt < timeoutMs) try {
9726
- const handle = await fs$1.open(lockPath, "wx");
9710
+ const handle = await fsPromises.open(lockPath, "wx");
9727
9711
  const startTime = platform === "linux" ? readLinuxStartTime(process.pid) : null;
9728
9712
  const payload = {
9729
9713
  pid: process.pid,
@@ -9737,7 +9721,7 @@ async function acquireGatewayLock(opts = {}) {
9737
9721
  configPath,
9738
9722
  release: async () => {
9739
9723
  await handle.close().catch(() => void 0);
9740
- await fs$1.rm(lockPath, { force: true });
9724
+ await fsPromises.rm(lockPath, { force: true });
9741
9725
  }
9742
9726
  };
9743
9727
  } catch (err) {
@@ -9746,7 +9730,7 @@ async function acquireGatewayLock(opts = {}) {
9746
9730
  const ownerPid = lastPayload?.pid;
9747
9731
  const ownerStatus = ownerPid ? resolveGatewayOwnerStatus(ownerPid, lastPayload, platform) : "unknown";
9748
9732
  if (ownerStatus === "dead" && ownerPid) {
9749
- await fs$1.rm(lockPath, { force: true });
9733
+ await fsPromises.rm(lockPath, { force: true });
9750
9734
  continue;
9751
9735
  }
9752
9736
  if (ownerStatus !== "alive") {
@@ -9756,13 +9740,13 @@ async function acquireGatewayLock(opts = {}) {
9756
9740
  stale = Number.isFinite(createdAt) ? Date.now() - createdAt > staleMs : false;
9757
9741
  }
9758
9742
  if (!stale) try {
9759
- const st = await fs$1.stat(lockPath);
9743
+ const st = await fsPromises.stat(lockPath);
9760
9744
  stale = Date.now() - st.mtimeMs > staleMs;
9761
9745
  } catch {
9762
9746
  stale = true;
9763
9747
  }
9764
9748
  if (stale) {
9765
- await fs$1.rm(lockPath, { force: true });
9749
+ await fsPromises.rm(lockPath, { force: true });
9766
9750
  continue;
9767
9751
  }
9768
9752
  }
@@ -11667,7 +11651,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11667
11651
  if (!minimalTestGateway) cron.start().catch((err) => logCron.error(`failed to start: ${String(err)}`));
11668
11652
  if (!minimalTestGateway) (async () => {
11669
11653
  const { recoverPendingDeliveries } = await import("./delivery-queue-Df1uodAG.js").then((n) => n.n);
11670
- const { deliverOutboundPayloads } = await import("./deliver-CceEhg3d.js").then((n) => n.n);
11654
+ const { deliverOutboundPayloads } = await import("./deliver-Um8yyhRA.js").then((n) => n.n);
11671
11655
  await recoverPendingDeliveries({
11672
11656
  deliver: deliverOutboundPayloads,
11673
11657
  log: log.child("delivery-recovery"),
@@ -11740,7 +11724,7 @@ async function startGatewayServer(port = 18789, opts = {}) {
11740
11724
  });
11741
11725
  let glassUiBridgeCleanup = null;
11742
11726
  if (!minimalTestGateway) {
11743
- const { createGlassUiBridge } = await import("./glass-ui-ws-Z1IOT6Vc.js");
11727
+ const { createGlassUiBridge } = await import("./glass-ui-ws-BmQAULMj.js");
11744
11728
  glassUiBridgeCleanup = createGlassUiBridge({
11745
11729
  wss: glassUiWss,
11746
11730
  context: gatewayRequestContext,