@symerian/symi 2.3.4 → 2.4.1

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 (170) hide show
  1. package/dist/{accounts-tNElYrCH.js → accounts-CI6zQTJj.js} +14 -14
  2. package/dist/{accounts-qtxJ-6em.js → accounts-CJR8j_Kq.js} +1 -1
  3. package/dist/{accounts-CWktKM8a.js → accounts-ChTFYj8Q.js} +1 -1
  4. package/dist/{active-listener-C9r8ZB9m.js → active-listener-D6sXIjAg.js} +1 -1
  5. package/dist/{agent-scope-BxoUQqgM.js → agent-scope-Bw1Ed8W9.js} +3 -3
  6. package/dist/{agents-E_Ere0qU.js → agents-BrpbYYTb.js} +4 -4
  7. package/dist/{agents.config-Cv_wsBXL.js → agents.config-Bf8u_0ts.js} +1 -1
  8. package/dist/{agents.config-DJTb7Jka.js → agents.config-j4SWyB6K.js} +1 -1
  9. package/dist/{audio-preflight-O3ASWbaG.js → audio-preflight-BkIfnmpi.js} +29 -29
  10. package/dist/{auth-choice-B3D_jLQw.js → auth-choice-BYB9fJiu.js} +1 -1
  11. package/dist/{auth-choice-D8ynWABO.js → auth-choice-DlrjQI-v.js} +1 -1
  12. package/dist/{banner-ChYzCy5p.js → banner-DRJJmkv1.js} +1 -1
  13. package/dist/{bindings-B7Ke6LJi.js → bindings-BU2hsBd9.js} +2 -2
  14. package/dist/build-info.json +3 -3
  15. package/dist/bundled/boot-md/handler.js +53 -53
  16. package/dist/bundled/bootstrap-extra-files/handler.js +5 -5
  17. package/dist/bundled/command-logger/handler.js +1 -1
  18. package/dist/bundled/session-memory/handler.js +53 -53
  19. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  20. package/dist/{channel-activity-CsM_hJ_s.js → channel-activity-C9-gaquj.js} +1 -1
  21. package/dist/{channel-options-BYUiEgev.js → channel-options-BQz0F4El.js} +1 -1
  22. package/dist/{channel-options-CMNzHg4p.js → channel-options-CxSIp3x-.js} +1 -1
  23. package/dist/{channel-web-C-HLPbLL.js → channel-web-BY4lhNxW.js} +1 -1
  24. package/dist/{channels-cli-CyhXPEWq.js → channels-cli--rkhLJvR.js} +4 -4
  25. package/dist/{channels-cli-CcCmH-Tp.js → channels-cli-B5Nj_nHr.js} +4 -4
  26. package/dist/{chrome-BFekevcE.js → chrome-CxSAp8x3.js} +20 -20
  27. package/dist/{chunk-BW5f05BR.js → chunk-ClbN9Pqy.js} +1 -1
  28. package/dist/{cli-Cp-NQ7yu.js → cli-CATf6JAq.js} +1 -1
  29. package/dist/{cli-Gcuf3NTF.js → cli-Ds6poYQ6.js} +1 -1
  30. package/dist/{command-format-BaxDnULz.js → command-format-UKHV-j0K.js} +1 -1
  31. package/dist/{command-registry-Cvr_dlLY.js → command-registry-DXt0PsFy.js} +9 -9
  32. package/dist/{commands-registry-D7CTCQPm.js → commands-registry-VSmULp-g.js} +4 -4
  33. package/dist/{completion-cli-DaOHSXM3.js → completion-cli-BsSDzZNA.js} +1 -1
  34. package/dist/{completion-cli-DDlYn0ya.js → completion-cli-CPMOXTf2.js} +2 -2
  35. package/dist/{config-cli-CmUPAVUz.js → config-cli-B_KCvdli.js} +1 -1
  36. package/dist/{config-cli-BcuAsDOu.js → config-cli-C_GarUko.js} +1 -1
  37. package/dist/{config-DRbjHIwD.js → config-eEaJddXj.js} +12 -12
  38. package/dist/{configure-Ctwt1377.js → configure-CM-z8YCS.js} +3 -3
  39. package/dist/{configure-OxYdT2hU.js → configure-vfmJApU8.js} +3 -3
  40. package/dist/{deliver-CvCK5Mm9.js → deliver-BA7ZN3iM.js} +20 -20
  41. package/dist/{diagnostic-CI0kRQkt.js → diagnostic-C3nsWaw3.js} +1 -1
  42. package/dist/{doctor-completion-D7ShsgUp.js → doctor-completion-8qbLmeX0.js} +1 -1
  43. package/dist/{doctor-completion-Dw78bQaQ.js → doctor-completion-Dnxn_-ov.js} +1 -1
  44. package/dist/entry.js +1 -1
  45. package/dist/extensionAPI.js +1 -1
  46. package/dist/{frontmatter-C_bv_0P8.js → frontmatter-DPlG6yha.js} +2 -2
  47. package/dist/{gateway-cli-D7nxPtEc.js → gateway-cli-DKDpOBp-.js} +9 -9
  48. package/dist/{gateway-cli-Bd7u0krH.js → gateway-cli-XIsXoJZ3.js} +9 -9
  49. package/dist/{gemini-auth-CdSPHuLl.js → gemini-auth-CF48hUR9.js} +1 -1
  50. package/dist/{github-copilot-token-C_qUP7p5.js → github-copilot-token-DJqsJ2-r.js} +7 -7
  51. package/dist/{glass-ui-ws-CzH0ikhI.js → glass-ui-ws-Be_AOhp7.js} +7 -7
  52. package/dist/{glass-ui-ws-DBivjzVA.js → glass-ui-ws-Z_wtGa_A.js} +7 -7
  53. package/dist/{health-rR61mwm3.js → health-BBGgp_dC.js} +1 -1
  54. package/dist/{health-BSOMI4B6.js → health-BmaWws9G.js} +1 -1
  55. package/dist/{hooks-cli-dS4fMEKE.js → hooks-cli-C5eV9sxP.js} +2 -2
  56. package/dist/{hooks-cli-BbiA-gGi.js → hooks-cli-W_aoP9nb.js} +2 -2
  57. package/dist/{image-B0wGflxA.js → image-BGmVDkkw.js} +4 -4
  58. package/dist/{image-ops-CvJzsyvE.js → image-ops-S8-8dAhx.js} +1 -1
  59. package/dist/index.js +6 -6
  60. package/dist/{ir-DccrnjsE.js → ir-CbFUkv_T.js} +4 -4
  61. package/dist/llm-slug-generator.js +53 -53
  62. package/dist/{local-roots-DMwIh5cS.js → local-roots-C7OCYACU.js} +5 -5
  63. package/dist/{login-CwCoxapk.js → login-B8uiUAnV.js} +7 -7
  64. package/dist/{login-qr-Batf3PT5.js → login-qr-CIZk8uKX.js} +12 -12
  65. package/dist/{manager-D_LwXbc6.js → manager-BoLr3xR_.js} +13 -13
  66. package/dist/{manifest-registry-D0IQ3WuX.js → manifest-registry-CneMHk0N.js} +19 -19
  67. package/dist/{markdown-tables-iMQQZu4Q.js → markdown-tables-DSHvnTLx.js} +1 -1
  68. package/dist/{message-channel-Dz5lr5b0.js → message-channel-DbsRltF2.js} +1 -1
  69. package/dist/{model-auth-DK43VicI.js → model-auth-CwOuTuXl.js} +9 -9
  70. package/dist/{models-DqE1s0YL.js → models-COaQWNz5.js} +2 -2
  71. package/dist/{models-cli-6v9jkDxp.js → models-cli-DH17yK8M.js} +3 -3
  72. package/dist/{models-cli-BWC7jYp4.js → models-cli-DeG1qheS.js} +2 -2
  73. package/dist/{onboard-Bxoibs4p.js → onboard-CXOUIg28.js} +2 -2
  74. package/dist/{onboard-BUEYf2m9.js → onboard-DBeHwdks.js} +2 -2
  75. package/dist/{onboard-channels-C3UYzZNC.js → onboard-channels-BCUkNB26.js} +1 -1
  76. package/dist/{onboard-channels-af6Cu6fT.js → onboard-channels-D93AAHMd.js} +1 -1
  77. package/dist/{onboarding-DW-7o6Ln.js → onboarding-C58wjONa.js} +3 -3
  78. package/dist/{onboarding-CDdMZbov.js → onboarding-Dfjn2-9q.js} +3 -3
  79. package/dist/{onboarding.finalize-29jsMLO2.js → onboarding.finalize-7r1HYXWd.js} +6 -6
  80. package/dist/{onboarding.finalize-BI70KOeI.js → onboarding.finalize-DGD56sXW.js} +5 -5
  81. package/dist/{outbound-attachment-DjNDa3zn.js → outbound-attachment-Co2diKdP.js} +2 -2
  82. package/dist/{outbound-D4fN_ZlE.js → outbound-opDNxv-l.js} +7 -7
  83. package/dist/{paths-DLyHUt31.js → paths-Cb87-LzP.js} +1 -1
  84. package/dist/{paths-Cce4PUkG.js → paths-CySxpNhH.js} +5 -5
  85. package/dist/{pi-auth-json-0SYBFZTt.js → pi-auth-json-DPWPoruO.js} +8 -8
  86. package/dist/{pi-embedded-PkSwAmVq.js → pi-embedded-B6uRrG1f.js} +355 -328
  87. package/dist/{pi-embedded-JXvD5-F-.js → pi-embedded-CAJ6egA1.js} +195 -168
  88. package/dist/{pi-embedded-helpers-DLFjnVBb.js → pi-embedded-helpers-DEEaCvEp.js} +52 -52
  89. package/dist/{plugin-registry-Reem6P3K.js → plugin-registry-C0iHnZ7j.js} +1 -1
  90. package/dist/{plugin-registry-B7AdPXfF.js → plugin-registry-D_BAH1V5.js} +1 -1
  91. package/dist/plugin-sdk/agents/model-aware-stream.d.ts +41 -0
  92. package/dist/plugin-sdk/agents/pi-embedded-runner/extra-params.d.ts +19 -0
  93. package/dist/plugin-sdk/agents/stream-monitor.d.ts +62 -0
  94. package/dist/plugin-sdk/{channel-web-CM7A3Y7G.js → channel-web-ilY3YUmF.js} +1 -1
  95. package/dist/plugin-sdk/index.js +2 -2
  96. package/dist/plugin-sdk/{reply-CDloTGFF.js → reply-CSgeVqcV.js} +195 -168
  97. package/dist/plugin-sdk/{web-CWNoMlnF.js → web-BVg5EjiY.js} +2 -2
  98. package/dist/{plugins-DQYI3Fr-.js → plugins-C4C9637U.js} +9 -9
  99. package/dist/{plugins-cli-V8mTTTnD.js → plugins-cli-BhOXY_Ay.js} +2 -2
  100. package/dist/{plugins-cli-B-6wVg3A.js → plugins-cli-LqQNHF1I.js} +2 -2
  101. package/dist/{program-DBtlRiFS.js → program-CutjuJj0.js} +7 -7
  102. package/dist/{program-context-BHPNVgg2.js → program-context-qVc_lsLV.js} +17 -17
  103. package/dist/{prompt-select-styled-Bh-zAqW1.js → prompt-select-styled-BCHe7Fks.js} +4 -4
  104. package/dist/{prompt-select-styled-Cup1c9RJ.js → prompt-select-styled-C0yn8YjW.js} +4 -4
  105. package/dist/{provider-auth-helpers-CiuLdUK3.js → provider-auth-helpers-BzczCfh8.js} +1 -1
  106. package/dist/{provider-auth-helpers-BNmU48Ez.js → provider-auth-helpers-Ds_HwlgY.js} +1 -1
  107. package/dist/{push-apns-9zUNNHgy.js → push-apns-CT8-VcK5.js} +1 -1
  108. package/dist/{push-apns-8VJkVSdh.js → push-apns-DvcqkHld.js} +1 -1
  109. package/dist/{pw-ai-BnAKvSuw.js → pw-ai-DhwRiS06.js} +11 -11
  110. package/dist/{qmd-manager-QHUP-_em.js → qmd-manager-DdZh9PHs.js} +7 -7
  111. package/dist/{register.agent-BtNmleKV.js → register.agent-DMvHFw16.js} +6 -6
  112. package/dist/{register.agent-DnglG42G.js → register.agent-yoXoJ_5O.js} +5 -5
  113. package/dist/{register.configure-CLW9tdE4.js → register.configure-B8UDTEcS.js} +6 -6
  114. package/dist/{register.configure-DfQOfV1W.js → register.configure-BqrNBkwZ.js} +6 -6
  115. package/dist/{register.maintenance-jFYcRLEN.js → register.maintenance-D1MuIUlv.js} +7 -7
  116. package/dist/{register.maintenance-BQfMsgo7.js → register.maintenance-DMLPFSKI.js} +8 -8
  117. package/dist/{register.message-DUsBvFSF.js → register.message-BnLBwUw9.js} +2 -2
  118. package/dist/{register.message-BhoZYcqM.js → register.message-CgtrjEFw.js} +2 -2
  119. package/dist/{register.onboard-BBwhoeoE.js → register.onboard-CXHhSH4B.js} +4 -4
  120. package/dist/{register.onboard-DQOkpYBY.js → register.onboard-D1X2dUGZ.js} +4 -4
  121. package/dist/{register.setup-Ca6khTSz.js → register.setup-DFDb5BDi.js} +4 -4
  122. package/dist/{register.setup-6jlL3L1h.js → register.setup-Q58lN0TV.js} +4 -4
  123. package/dist/{register.status-health-sessions-DQDXZYI3.js → register.status-health-sessions-CP7JWQHw.js} +3 -3
  124. package/dist/{register.status-health-sessions-DsYNMl06.js → register.status-health-sessions-DhTfQ530.js} +3 -3
  125. package/dist/{register.subclis-DJf3ihsW.js → register.subclis-CrTXa8cj.js} +9 -9
  126. package/dist/{registry-CK4e9hn8.js → registry-DP24za6g.js} +17 -17
  127. package/dist/{replies-BIX_isV7.js → replies-DpPvWiGF.js} +3 -3
  128. package/dist/{reply-DSjeqLEz.js → reply-DkwaBRX-.js} +195 -168
  129. package/dist/{reply-prefix-XlyuyChD.js → reply-prefix-CtL0omgM.js} +1 -1
  130. package/dist/{resolve-route-CZ-1eqw0.js → resolve-route-BVikmvWO.js} +4 -4
  131. package/dist/{retry-Cly39XZB.js → retry-dGG-MbxL.js} +1 -1
  132. package/dist/{run-main-B2coomPj.js → run-main-BLKPL_vM.js} +14 -14
  133. package/dist/{runner-odEv83vv.js → runner-B_KP4voe.js} +9 -9
  134. package/dist/{send-DeFniOjh.js → send-CHEOWVc8.js} +6 -6
  135. package/dist/{send-WyRqb4WD.js → send-DbcLJb0P.js} +7 -7
  136. package/dist/{send-B1u-LrcS.js → send-DeEosX8F.js} +18 -18
  137. package/dist/{send-CiTGOvEc.js → send-DwKJK3sM.js} +10 -10
  138. package/dist/{send-DW96zgDL.js → send-zSarozV2.js} +6 -6
  139. package/dist/{server-methods-QNBQbsvr.js → server-methods-CbeCo-6O.js} +7 -7
  140. package/dist/{server-methods-DHo5e8Gj.js → server-methods-EQ0JkHOg.js} +7 -7
  141. package/dist/{server-node-events-D_S0NRCQ.js → server-node-events-C1FDqJb9.js} +2 -2
  142. package/dist/{server-node-events-CJOo8WcL.js → server-node-events-CBHpc_25.js} +2 -2
  143. package/dist/{session-SM36BTsl.js → session-DV1MNlbV.js} +8 -8
  144. package/dist/{skill-commands-BJMb_psG.js → skill-commands-D610IKhm.js} +9 -9
  145. package/dist/{skills-BFekKL7i.js → skills-o5WVqM4V.js} +21 -21
  146. package/dist/{sqlite-DRbx2dhW.js → sqlite-6H6Zw1cs.js} +4 -4
  147. package/dist/{status-B8yaGk2o.js → status-B1r3Wp0-.js} +2 -2
  148. package/dist/{status-D_J6qcC1.js → status-Cksz7z4T.js} +1 -1
  149. package/dist/{status-4DaGE8j5.js → status-CnogoaI_.js} +2 -2
  150. package/dist/{status-kfEtYX22.js → status-jVJSC_Ga.js} +1 -1
  151. package/dist/{store-C0wvOkae.js → store-vVE6N2mH.js} +2 -2
  152. package/dist/{subagent-registry-CyW0EDWw.js → subagent-registry-Jwg44JMf.js} +195 -168
  153. package/dist/{subsystem-Bs9YvKLa.js → subsystem-DgpxyDQ_.js} +1 -1
  154. package/dist/{tables-DuZspiBu.js → tables-BIWsCKXJ.js} +1 -1
  155. package/dist/{target-errors-Be1SwYlW.js → target-errors-DyItGyW9.js} +2 -2
  156. package/dist/{thinking-CdlENGRW.js → thinking-Ni0HF-w6.js} +5 -5
  157. package/dist/{tokens-H1H1LiSQ.js → tokens-c_SLAkVb.js} +1 -1
  158. package/dist/{tool-images-DXB7tqWi.js → tool-images-DBCfXdli.js} +2 -2
  159. package/dist/{tool-loop-detection-Cs8_HCsx.js → tool-loop-detection-Bbc9OPFR.js} +3 -3
  160. package/dist/{update-cli-C-ZGqknl.js → update-cli-BkU6ori8.js} +8 -8
  161. package/dist/{update-cli-DJupxo-f.js → update-cli-D18nWvzY.js} +7 -7
  162. package/dist/{update-runner-AiIhp7fw.js → update-runner-BQg__DB5.js} +1 -1
  163. package/dist/{update-runner-BF5UULe-.js → update-runner-le1Hcqx4.js} +1 -1
  164. package/dist/{web-HeObJp6A.js → web-BSs2eYJa.js} +2 -2
  165. package/dist/{web-6vYYN17n.js → web-BsjZ2RTT.js} +57 -57
  166. package/dist/{web-6026eRzJ.js → web-DajtZMaX.js} +1 -1
  167. package/dist/{web-CryqKXT4.js → web-KYh3LgI0.js} +1 -1
  168. package/dist/{whatsapp-actions-D1RsnX7P.js → whatsapp-actions-oRQjcdQe.js} +23 -23
  169. package/dist/{workspace-wAaHI8-5.js → workspace-CbvamIU6.js} +6 -6
  170. package/package.json +1 -1
@@ -15,7 +15,7 @@ import "./client-DMBZpU6X.js";
15
15
  import { n as callGateway } from "./call-BcE47FtD.js";
16
16
  import "./message-channel-C9dERklz.js";
17
17
  import "./pairing-token-Byh6drgn.js";
18
- import { an as formatUsageReportLines, in as loadProviderUsageSummary, x as deleteTelegramUpdateOffset } from "./subagent-registry-CyW0EDWw.js";
18
+ import { an as formatUsageReportLines, in as loadProviderUsageSummary, x as deleteTelegramUpdateOffset } from "./subagent-registry-Jwg44JMf.js";
19
19
  import "./sessions-CJXnZVjR.js";
20
20
  import "./tokens-Csntmwwn.js";
21
21
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin, u as resolveTelegramAccount } from "./plugins-CwSlLxM8.js";
@@ -110,13 +110,13 @@ import "./install-safe-path-BK8js28D.js";
110
110
  import "./npm-registry-spec-DkaZNHAW.js";
111
111
  import "./skill-scanner-BGWOBqLY.js";
112
112
  import "./installs-CgQpVncj.js";
113
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-C3UYzZNC.js";
113
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-BCUkNB26.js";
114
114
  import { t as requireValidConfigSnapshot } from "./config-validation-BITwrsxY.js";
115
115
  import { t as buildChannelAccountSnapshot } from "./status-BUedPCLb.js";
116
116
  import { t as parseLogLine } from "./parse-log-line-C6yJx969.js";
117
117
  import { t as collectChannelStatusIssues } from "./channels-status-issues-c7qZbYG5.js";
118
- import "./plugin-registry-B7AdPXfF.js";
119
- import { t as formatCliChannelOptions } from "./channel-options-CMNzHg4p.js";
118
+ import "./plugin-registry-D_BAH1V5.js";
119
+ import { t as formatCliChannelOptions } from "./channel-options-CxSIp3x-.js";
120
120
  import fs from "node:fs/promises";
121
121
 
122
122
  //#region src/commands/channels/add-mutators.ts
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import { B as theme, O as danger, P as setVerbose, U as getResolvedLoggerSettings, d as isRecord } from "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { Ct as formatUsageReportLines, St as loadProviderUsageSummary, yt as deleteTelegramUpdateOffset } from "./reply-DSjeqLEz.js";
4
+ import { Ct as formatUsageReportLines, St as loadProviderUsageSummary, yt as deleteTelegramUpdateOffset } from "./reply-DkwaBRX-.js";
5
5
  import { h as normalizeAccountId, m as DEFAULT_ACCOUNT_ID } from "./session-key-DCt45XZa.js";
6
6
  import { r as DEFAULT_CHAT_CHANNEL } from "./registry-Cja8eT7G.js";
7
7
  import { f as defaultRuntime } from "./subsystem-D9vIQve0.js";
@@ -105,8 +105,8 @@ import "./control-service-Bz7rxLWq.js";
105
105
  import "./stagger-BUClb97_.js";
106
106
  import { n as resolveMessageChannelSelection } from "./channel-selection-DuWs0Aak.js";
107
107
  import { r as listChannelPluginCatalogEntries } from "./catalog-RiADx7MA.js";
108
- import "./plugin-registry-Reem6P3K.js";
109
- import { t as formatCliChannelOptions } from "./channel-options-BYUiEgev.js";
108
+ import "./plugin-registry-C0iHnZ7j.js";
109
+ import { t as formatCliChannelOptions } from "./channel-options-BQz0F4El.js";
110
110
  import { t as hasExplicitOptions } from "./command-options-BtDai3oC.js";
111
111
  import "./note-DeHoW7xO.js";
112
112
  import { t as createClackPrompter } from "./clack-prompter-B7pN13HV.js";
@@ -116,7 +116,7 @@ import "./install-safe-path-tCLiMpmO.js";
116
116
  import "./npm-registry-spec-C2JDdSZS.js";
117
117
  import "./skill-scanner-CLs8u6vQ.js";
118
118
  import "./installs-C1Cebk97.js";
119
- import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-af6Cu6fT.js";
119
+ import { a as reloadOnboardingPluginRegistry, i as ensureOnboardingPluginInstalled, r as setupChannels } from "./onboard-channels-D93AAHMd.js";
120
120
  import { t as requireValidConfigSnapshot } from "./config-validation-CmimHAES.js";
121
121
  import { t as buildChannelAccountSnapshot } from "./status-BrV-afZE.js";
122
122
  import { t as parseLogLine } from "./parse-log-line-BHCUQaF3.js";
@@ -1,16 +1,16 @@
1
- import { S as CONFIG_DIR } from "./registry-CK4e9hn8.js";
2
- import { t as createSubsystemLogger } from "./subsystem-Bs9YvKLa.js";
3
- import { n as loadConfig } from "./config-DRbjHIwD.js";
1
+ import { S as CONFIG_DIR } from "./registry-DP24za6g.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-DgpxyDQ_.js";
3
+ import { n as loadConfig } from "./config-eEaJddXj.js";
4
4
  import { i as isErrno } from "./errors-BoQgnc8X.js";
5
5
  import { a as resolvePinnedHostnameWithPolicy } from "./ssrf-BTMDZjHT.js";
6
6
  import fs from "node:fs/promises";
7
7
  import os from "node:os";
8
8
  import path from "node:path";
9
- import fs$1 from "node:fs";
9
+ import fsSync from "node:fs";
10
10
  import { execFileSync, spawn } from "node:child_process";
11
11
  import net from "node:net";
12
12
  import { createServer } from "node:http";
13
- import WebSocket$1, { WebSocketServer } from "ws";
13
+ import WebSocket, { WebSocketServer } from "ws";
14
14
  import { Buffer as Buffer$1 } from "node:buffer";
15
15
 
16
16
  //#region src/browser/constants.ts
@@ -178,7 +178,7 @@ async function ensureChromeExtensionRelayServer(opts) {
178
178
  let nextExtensionId = 1;
179
179
  const sendToExtension = async (payload) => {
180
180
  const ws = extensionWs;
181
- if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
181
+ if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
182
182
  ws.send(JSON.stringify(payload));
183
183
  return await new Promise((resolve, reject) => {
184
184
  const timer = setTimeout(() => {
@@ -195,12 +195,12 @@ async function ensureChromeExtensionRelayServer(opts) {
195
195
  const broadcastToCdpClients = (evt) => {
196
196
  const msg = JSON.stringify(evt);
197
197
  for (const ws of cdpClients) {
198
- if (ws.readyState !== WebSocket$1.OPEN) continue;
198
+ if (ws.readyState !== WebSocket.OPEN) continue;
199
199
  ws.send(msg);
200
200
  }
201
201
  };
202
202
  const sendResponseToCdp = (ws, res) => {
203
- if (ws.readyState !== WebSocket$1.OPEN) return;
203
+ if (ws.readyState !== WebSocket.OPEN) return;
204
204
  ws.send(JSON.stringify(res));
205
205
  };
206
206
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -425,7 +425,7 @@ async function ensureChromeExtensionRelayServer(opts) {
425
425
  wssExtension.on("connection", (ws) => {
426
426
  extensionWs = ws;
427
427
  const ping = setInterval(() => {
428
- if (ws.readyState !== WebSocket$1.OPEN) return;
428
+ if (ws.readyState !== WebSocket.OPEN) return;
429
429
  ws.send(JSON.stringify({ method: "ping" }));
430
430
  }, 5e3);
431
431
  ws.on("message", (data) => {
@@ -743,7 +743,7 @@ async function fetchOk(url, timeoutMs = 1500, init) {
743
743
  }
744
744
  async function withCdpSocket(wsUrl, fn, opts) {
745
745
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
746
- const ws = new WebSocket$1(wsUrl, {
746
+ const ws = new WebSocket(wsUrl, {
747
747
  handshakeTimeout: typeof opts?.handshakeTimeoutMs === "number" && Number.isFinite(opts.handshakeTimeoutMs) ? Math.max(1, Math.floor(opts.handshakeTimeoutMs)) : 5e3,
748
748
  ...Object.keys(headers).length ? { headers } : {}
749
749
  });
@@ -1007,7 +1007,7 @@ const CHROMIUM_EXE_NAMES = new Set([
1007
1007
  ]);
1008
1008
  function exists$1(filePath) {
1009
1009
  try {
1010
- return fs$1.existsSync(filePath);
1010
+ return fsSync.existsSync(filePath);
1011
1011
  } catch {
1012
1012
  return false;
1013
1013
  }
@@ -1150,7 +1150,7 @@ function findDesktopFilePath(desktopId) {
1150
1150
  }
1151
1151
  function readDesktopExecLine(desktopPath) {
1152
1152
  try {
1153
- const lines = fs$1.readFileSync(desktopPath, "utf8").split(/\r?\n/);
1153
+ const lines = fsSync.readFileSync(desktopPath, "utf8").split(/\r?\n/);
1154
1154
  for (const line of lines) if (line.startsWith("Exec=")) return line.slice(5).trim();
1155
1155
  } catch {}
1156
1156
  return null;
@@ -1437,8 +1437,8 @@ function decoratedMarkerPath(userDataDir) {
1437
1437
  }
1438
1438
  function safeReadJson(filePath) {
1439
1439
  try {
1440
- if (!fs$1.existsSync(filePath)) return null;
1441
- const raw = fs$1.readFileSync(filePath, "utf-8");
1440
+ if (!fsSync.existsSync(filePath)) return null;
1441
+ const raw = fsSync.readFileSync(filePath, "utf-8");
1442
1442
  const parsed = JSON.parse(raw);
1443
1443
  if (typeof parsed !== "object" || parsed === null || Array.isArray(parsed)) return null;
1444
1444
  return parsed;
@@ -1447,8 +1447,8 @@ function safeReadJson(filePath) {
1447
1447
  }
1448
1448
  }
1449
1449
  function safeWriteJson(filePath, data) {
1450
- fs$1.mkdirSync(path.dirname(filePath), { recursive: true });
1451
- fs$1.writeFileSync(filePath, JSON.stringify(data, null, 2));
1450
+ fsSync.mkdirSync(path.dirname(filePath), { recursive: true });
1451
+ fsSync.writeFileSync(filePath, JSON.stringify(data, null, 2));
1452
1452
  }
1453
1453
  function setDeep(obj, keys, value) {
1454
1454
  let node = obj;
@@ -1575,7 +1575,7 @@ function decorateSymiProfile(userDataDir, opts) {
1575
1575
  }
1576
1576
  safeWriteJson(preferencesPath, prefs);
1577
1577
  try {
1578
- fs$1.writeFileSync(decoratedMarkerPath(userDataDir), `${Date.now()}\n`, "utf-8");
1578
+ fsSync.writeFileSync(decoratedMarkerPath(userDataDir), `${Date.now()}\n`, "utf-8");
1579
1579
  } catch {}
1580
1580
  }
1581
1581
  function ensureProfileCleanExit(userDataDir) {
@@ -1591,7 +1591,7 @@ function ensureProfileCleanExit(userDataDir) {
1591
1591
  const log = createSubsystemLogger("browser").child("chrome");
1592
1592
  function exists(filePath) {
1593
1593
  try {
1594
- return fs$1.existsSync(filePath);
1594
+ return fsSync.existsSync(filePath);
1595
1595
  } catch {
1596
1596
  return false;
1597
1597
  }
@@ -1637,7 +1637,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1637
1637
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1638
1638
  return await new Promise((resolve) => {
1639
1639
  const headers = getHeadersWithAuth(wsUrl);
1640
- const ws = new WebSocket$1(wsUrl, {
1640
+ const ws = new WebSocket(wsUrl, {
1641
1641
  handshakeTimeout: timeoutMs,
1642
1642
  ...Object.keys(headers).length ? { headers } : {}
1643
1643
  });
@@ -1671,7 +1671,7 @@ async function launchSymiChrome(resolved, profile) {
1671
1671
  const exe = resolveBrowserExecutable(resolved);
1672
1672
  if (!exe) throw new Error("No supported browser found (Chrome/Brave/Edge/Chromium on macOS, Linux, or Windows).");
1673
1673
  const userDataDir = resolveSymiUserDataDir(profile.name);
1674
- fs$1.mkdirSync(userDataDir, { recursive: true });
1674
+ fsSync.mkdirSync(userDataDir, { recursive: true });
1675
1675
  const needsDecorate = !isProfileDecorated(userDataDir, profile.name, (profile.color ?? DEFAULT_SYMI_BROWSER_COLOR).toUpperCase());
1676
1676
  const spawnOnce = () => {
1677
1677
  const args = [
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { p as normalizeAccountId } from "./session-key-BCzIW1Y2.js";
3
- import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-Dz5lr5b0.js";
3
+ import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DbsRltF2.js";
4
4
 
5
5
  //#region src/markdown/fences.ts
6
6
  function parseFenceSpans(buffer) {
@@ -1,7 +1,7 @@
1
1
  import "./paths-Cqn-zk3M.js";
2
2
  import "./utils-B-0b9bGM.js";
3
3
  import "./thinking-EAliFiVK.js";
4
- import { vt as loadSymiPlugins } from "./reply-DSjeqLEz.js";
4
+ import { vt as loadSymiPlugins } from "./reply-DkwaBRX-.js";
5
5
  import "./registry-Cja8eT7G.js";
6
6
  import { t as createSubsystemLogger } from "./subsystem-D9vIQve0.js";
7
7
  import "./exec-CWkblSrI.js";
@@ -13,7 +13,7 @@ import "./client-DMBZpU6X.js";
13
13
  import "./call-BcE47FtD.js";
14
14
  import "./message-channel-C9dERklz.js";
15
15
  import "./pairing-token-Byh6drgn.js";
16
- import { b as loadSymiPlugins } from "./subagent-registry-CyW0EDWw.js";
16
+ import { b as loadSymiPlugins } from "./subagent-registry-Jwg44JMf.js";
17
17
  import "./sessions-CJXnZVjR.js";
18
18
  import "./tokens-Csntmwwn.js";
19
19
  import "./plugins-CwSlLxM8.js";
@@ -1,4 +1,4 @@
1
- import { t as createSubsystemLogger } from "./subsystem-Bs9YvKLa.js";
1
+ import { t as createSubsystemLogger } from "./subsystem-DgpxyDQ_.js";
2
2
  import { t as parseBooleanValue } from "./boolean-B8-BqKGQ.js";
3
3
  import path from "node:path";
4
4
 
@@ -1,6 +1,6 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { an as getPrimaryCommand, cn as hasHelpOrVersion } from "./entry.js";
3
- import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-DJf3ihsW.js";
3
+ import { i as registerSubCliCommands, o as reparseProgramFromActionArgs } from "./register.subclis-CrTXa8cj.js";
4
4
 
5
5
  //#region src/cli/program/command-registry.ts
6
6
  var command_registry_exports = /* @__PURE__ */ __exportAll({
@@ -22,7 +22,7 @@ const coreEntries = [
22
22
  hasSubcommands: false
23
23
  }],
24
24
  register: async ({ program }) => {
25
- (await import("./register.setup-6jlL3L1h.js")).registerSetupCommand(program);
25
+ (await import("./register.setup-Q58lN0TV.js")).registerSetupCommand(program);
26
26
  }
27
27
  },
28
28
  {
@@ -32,7 +32,7 @@ const coreEntries = [
32
32
  hasSubcommands: false
33
33
  }],
34
34
  register: async ({ program }) => {
35
- (await import("./register.onboard-BBwhoeoE.js")).registerOnboardCommand(program);
35
+ (await import("./register.onboard-CXHhSH4B.js")).registerOnboardCommand(program);
36
36
  }
37
37
  },
38
38
  {
@@ -42,7 +42,7 @@ const coreEntries = [
42
42
  hasSubcommands: false
43
43
  }],
44
44
  register: async ({ program }) => {
45
- (await import("./register.configure-CLW9tdE4.js")).registerConfigureCommand(program);
45
+ (await import("./register.configure-B8UDTEcS.js")).registerConfigureCommand(program);
46
46
  }
47
47
  },
48
48
  {
@@ -52,7 +52,7 @@ const coreEntries = [
52
52
  hasSubcommands: true
53
53
  }],
54
54
  register: async ({ program }) => {
55
- (await import("./config-cli-BcuAsDOu.js")).registerConfigCli(program);
55
+ (await import("./config-cli-C_GarUko.js")).registerConfigCli(program);
56
56
  }
57
57
  },
58
58
  {
@@ -79,7 +79,7 @@ const coreEntries = [
79
79
  }
80
80
  ],
81
81
  register: async ({ program }) => {
82
- (await import("./register.maintenance-BQfMsgo7.js")).registerMaintenanceCommands(program);
82
+ (await import("./register.maintenance-DMLPFSKI.js")).registerMaintenanceCommands(program);
83
83
  }
84
84
  },
85
85
  {
@@ -89,7 +89,7 @@ const coreEntries = [
89
89
  hasSubcommands: true
90
90
  }],
91
91
  register: async ({ program, ctx }) => {
92
- (await import("./register.message-DUsBvFSF.js")).registerMessageCommands(program, ctx);
92
+ (await import("./register.message-BnLBwUw9.js")).registerMessageCommands(program, ctx);
93
93
  }
94
94
  },
95
95
  {
@@ -113,7 +113,7 @@ const coreEntries = [
113
113
  hasSubcommands: true
114
114
  }],
115
115
  register: async ({ program, ctx }) => {
116
- (await import("./register.agent-BtNmleKV.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
116
+ (await import("./register.agent-DMvHFw16.js")).registerAgentCommands(program, { agentChannelOptions: ctx.agentChannelOptions });
117
117
  }
118
118
  },
119
119
  {
@@ -135,7 +135,7 @@ const coreEntries = [
135
135
  }
136
136
  ],
137
137
  register: async ({ program }) => {
138
- (await import("./register.status-health-sessions-DQDXZYI3.js")).registerStatusHealthSessionsCommands(program);
138
+ (await import("./register.status-health-sessions-CP7JWQHw.js")).registerStatusHealthSessionsCommands(program);
139
139
  }
140
140
  },
141
141
  {
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { D as escapeRegExp, W as isPlainObject, c as getActivePluginRegistry } from "./registry-CK4e9hn8.js";
3
- import { r as normalizeChannelId } from "./plugins-DQYI3Fr-.js";
4
- import { G as DEFAULT_MODEL, K as DEFAULT_PROVIDER, M as resolveConfiguredModelRef } from "./model-auth-DK43VicI.js";
5
- import { f as listChannelDocks, r as listThinkingLevels } from "./thinking-CdlENGRW.js";
2
+ import { D as escapeRegExp, W as isPlainObject, c as getActivePluginRegistry } from "./registry-DP24za6g.js";
3
+ import { r as normalizeChannelId } from "./plugins-C4C9637U.js";
4
+ import { G as DEFAULT_MODEL, K as DEFAULT_PROVIDER, M as resolveConfiguredModelRef } from "./model-auth-CwOuTuXl.js";
5
+ import { f as listChannelDocks, r as listThinkingLevels } from "./thinking-Ni0HF-w6.js";
6
6
 
7
7
  //#region src/config/commands.ts
8
8
  function resolveAutoDefault(providerId) {
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { g as resolveStateDir } from "./paths-Cqn-zk3M.js";
3
3
  import { h as pathExists } from "./utils-B-0b9bGM.js";
4
4
  import { i as routeLogsToStderr } from "./subsystem-D9vIQve0.js";
5
- import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-BHPNVgg2.js";
5
+ import { a as registerCoreCliByName, c as getSubCliEntries, l as registerSubCliByName, r as getCoreCliCommandNames, t as getProgramContext } from "./program-context-qVc_lsLV.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs/promises";
@@ -1,7 +1,7 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { Yt as resolveStateDir, l as routeLogsToStderr, nt as pathExists } from "./entry.js";
3
- import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-DJf3ihsW.js";
4
- import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-Cvr_dlLY.js";
3
+ import { n as getSubCliEntries, r as registerSubCliByName } from "./register.subclis-CrTXa8cj.js";
4
+ import { i as registerCoreCliByName, n as getCoreCliCommandNames } from "./command-registry-DXt0PsFy.js";
5
5
  import { t as getProgramContext } from "./program-context-CqzR_m-7.js";
6
6
  import os from "node:os";
7
7
  import path from "node:path";
@@ -206,7 +206,7 @@ async function runConfigUnset(opts) {
206
206
  }
207
207
  function registerConfigCli(program) {
208
208
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
209
- const { configureCommandFromSectionsArg } = await import("./configure-OxYdT2hU.js").then((n) => n.t);
209
+ const { configureCommandFromSectionsArg } = await import("./configure-vfmJApU8.js").then((n) => n.t);
210
210
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
211
211
  });
212
212
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -201,7 +201,7 @@ async function runConfigUnset(opts) {
201
201
  }
202
202
  function registerConfigCli(program) {
203
203
  const cmd = program.command("config").description("Non-interactive config helpers (get/set/unset). Run without subcommand for the setup wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.symi.ai/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
204
- const { configureCommandFromSectionsArg } = await import("./configure-Ctwt1377.js").then((n) => n.t);
204
+ const { configureCommandFromSectionsArg } = await import("./configure-CM-z8YCS.js").then((n) => n.t);
205
205
  await configureCommandFromSectionsArg(opts.section, defaultRuntime);
206
206
  });
207
207
  cmd.command("get").description("Get a config value by dot path").argument("<path>", "Config path (dot or bracket notation)").option("--json", "Output JSON", false).action(async (path, opts) => {
@@ -1,13 +1,13 @@
1
- import { n as resolveConfigPath, r as resolveDefaultConfigCandidates, s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-Cce4PUkG.js";
1
+ import { n as resolveConfigPath, r as resolveDefaultConfigCandidates, s as resolveStateDir, u as resolveRequiredHomeDir } from "./paths-CySxpNhH.js";
2
2
  import { s as normalizeAgentId, t as DEFAULT_AGENT_ID } from "./session-key-BCzIW1Y2.js";
3
- import { I as resolveUserPath, P as resolveConfigDir, W as isPlainObject$1, k as isRecord, s as normalizeChatChannelId, t as CHANNEL_IDS } from "./registry-CK4e9hn8.js";
4
- import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-BxoUQqgM.js";
5
- import { $ as shouldEnableShellEnvFallback, Q as shouldDeferShellEnvFallback, W as DEFAULT_CONTEXT_TOKENS, X as loadShellEnvFallback, Z as resolveShellEnvFallbackTimeoutMs, j as parseModelRef } from "./model-auth-DK43VicI.js";
6
- import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, f as normalizeEnvVarKey, l as isPathInside, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-D0IQ3WuX.js";
3
+ import { I as resolveUserPath, P as resolveConfigDir, W as isPlainObject$1, k as isRecord, s as normalizeChatChannelId, t as CHANNEL_IDS } from "./registry-DP24za6g.js";
4
+ import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-Bw1Ed8W9.js";
5
+ import { $ as shouldEnableShellEnvFallback, Q as shouldDeferShellEnvFallback, W as DEFAULT_CONTEXT_TOKENS, X as loadShellEnvFallback, Z as resolveShellEnvFallbackTimeoutMs, j as parseModelRef } from "./model-auth-CwOuTuXl.js";
6
+ import { c as resolveMemorySlotDecision, d as isDangerousHostEnvVarName, f as normalizeEnvVarKey, l as isPathInside, o as normalizePluginsConfig, s as resolveEnableState, t as loadPluginManifestRegistry } from "./manifest-registry-CneMHk0N.js";
7
7
  import { createRequire } from "node:module";
8
8
  import os from "node:os";
9
9
  import path from "node:path";
10
- import fs from "node:fs";
10
+ import fsSync from "node:fs";
11
11
  import JSON5 from "json5";
12
12
  import { isDeepStrictEqual } from "node:util";
13
13
  import crypto from "node:crypto";
@@ -20,7 +20,7 @@ function loadDotEnv(opts) {
20
20
  const quiet = opts?.quiet ?? true;
21
21
  dotenv.config({ quiet });
22
22
  const globalEnvPath = path.join(resolveConfigDir(process.env), ".env");
23
- if (!fs.existsSync(globalEnvPath)) return;
23
+ if (!fsSync.existsSync(globalEnvPath)) return;
24
24
  dotenv.config({
25
25
  quiet,
26
26
  path: globalEnvPath,
@@ -156,7 +156,7 @@ function resolveAgentMaxConcurrent(cfg) {
156
156
  //#endregion
157
157
  //#region src/config/talk.ts
158
158
  function readTalkApiKeyFromProfile(deps = {}) {
159
- const fsImpl = deps.fs ?? fs;
159
+ const fsImpl = deps.fs ?? fsSync;
160
160
  const osImpl = deps.os ?? os;
161
161
  const pathImpl = deps.path ?? path;
162
162
  const home = osImpl.homedir();
@@ -849,7 +849,7 @@ var IncludeProcessor = class IncludeProcessor {
849
849
  const normalized = path.normalize(resolved);
850
850
  if (!isPathInside(this.rootDir, normalized)) throw new ConfigIncludeError(`Include path escapes config directory: ${includePath} (root: ${this.rootDir})`, includePath);
851
851
  try {
852
- const real = fs.realpathSync(normalized);
852
+ const real = fsSync.realpathSync(normalized);
853
853
  if (!isPathInside(this.rootRealDir, real)) throw new ConfigIncludeError(`Include path resolves outside config directory (symlink): ${includePath} (root: ${this.rootDir})`, includePath);
854
854
  } catch (err) {
855
855
  if (err instanceof ConfigIncludeError) throw err;
@@ -885,13 +885,13 @@ var IncludeProcessor = class IncludeProcessor {
885
885
  };
886
886
  function safeRealpath(target) {
887
887
  try {
888
- return fs.realpathSync(target);
888
+ return fsSync.realpathSync(target);
889
889
  } catch {
890
890
  return target;
891
891
  }
892
892
  }
893
893
  const defaultResolver = {
894
- readFile: (p) => fs.readFileSync(p, "utf-8"),
894
+ readFile: (p) => fsSync.readFileSync(p, "utf-8"),
895
895
  parseJson: (raw) => JSON5.parse(raw)
896
896
  };
897
897
  /**
@@ -5583,7 +5583,7 @@ function resolveConfigPathForDeps(deps) {
5583
5583
  }
5584
5584
  function normalizeDeps(overrides = {}) {
5585
5585
  return {
5586
- fs: overrides.fs ?? fs,
5586
+ fs: overrides.fs ?? fsSync,
5587
5587
  json5: overrides.json5 ?? JSON5,
5588
5588
  env: overrides.env ?? process.env,
5589
5589
  homedir: overrides.homedir ?? (() => resolveRequiredHomeDir(overrides.env ?? process.env, os.homedir)),
@@ -11,14 +11,14 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
11
11
  import { t as note$1 } from "./note-DDecZomM.js";
12
12
  import { t as WizardCancelledError } from "./prompts-m1IJwIAx.js";
13
13
  import { t as createClackPrompter } from "./clack-prompter-B1aVoXd5.js";
14
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-C3UYzZNC.js";
14
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-BCUkNB26.js";
15
15
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CfRwa6qh.js";
16
16
  import { t as resolveGatewayService } from "./service-Cm9j9WzQ.js";
17
- import { r as healthCommand } from "./health-BSOMI4B6.js";
17
+ import { r as healthCommand } from "./health-BmaWws9G.js";
18
18
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-BseSWee1.js";
19
19
  import { n as logConfigUpdated } from "./logging-BGewRZy0.js";
20
20
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-DVcYPG2v.js";
21
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-B3D_jLQw.js";
21
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-BYB9fJiu.js";
22
22
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-D5nCutGW.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-DA_LW52P.js";
24
24
  import { a as promptCustomApiConfig } from "./onboard-custom-DdWPfzJO.js";
@@ -13,14 +13,14 @@ import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint }
13
13
  import { t as note$1 } from "./note-DeHoW7xO.js";
14
14
  import { t as WizardCancelledError } from "./prompts-Xu2Sveka.js";
15
15
  import { t as createClackPrompter } from "./clack-prompter-B7pN13HV.js";
16
- import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-af6Cu6fT.js";
16
+ import { r as setupChannels, t as noteChannelStatus } from "./onboard-channels-D93AAHMd.js";
17
17
  import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-2mwX-jqj.js";
18
18
  import { t as resolveGatewayService } from "./service-Cl74hx8J.js";
19
- import { r as healthCommand } from "./health-rR61mwm3.js";
19
+ import { r as healthCommand } from "./health-BBGgp_dC.js";
20
20
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Z947tKLt.js";
21
21
  import { n as logConfigUpdated } from "./logging-BzzwiKjv.js";
22
22
  import { n as promptAuthChoiceGrouped } from "./auth-choice-prompt-BLzEBA1v.js";
23
- import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-D8ynWABO.js";
23
+ import { i as applyAuthChoice, n as resolvePreferredProviderForAuthChoice } from "./auth-choice-DlrjQI-v.js";
24
24
  import { a as promptDefaultModel, n as applyModelFallbacksFromSelection, o as promptModelAllowlist, r as applyPrimaryModel, t as applyModelAllowlist } from "./model-picker-Ddo3jHe-.js";
25
25
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-aQ75ZlXY.js";
26
26
  import { a as promptCustomApiConfig } from "./onboard-custom-C7O-zfQ1.js";
@@ -1,18 +1,18 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { s as resolveStateDir } from "./paths-Cce4PUkG.js";
2
+ import { s as resolveStateDir } from "./paths-CySxpNhH.js";
3
3
  import { m as normalizeOptionalAccountId, p as normalizeAccountId } from "./session-key-BCzIW1Y2.js";
4
- import { c as getActivePluginRegistry, v as createInternalHookEvent, x as triggerInternalHook } from "./registry-CK4e9hn8.js";
5
- import { t as createSubsystemLogger } from "./subsystem-Bs9YvKLa.js";
6
- import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-H1H1LiSQ.js";
7
- import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DQYI3Fr-.js";
8
- import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-DLFjnVBb.js";
9
- import { d as getChannelDock } from "./thinking-CdlENGRW.js";
10
- import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-BW5f05BR.js";
11
- import { n as resolveMarkdownTableMode } from "./markdown-tables-iMQQZu4Q.js";
12
- import { t as getAgentScopedMediaLocalRoots } from "./local-roots-DMwIh5cS.js";
13
- import { l as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-DW96zgDL.js";
4
+ import { c as getActivePluginRegistry, v as createInternalHookEvent, x as triggerInternalHook } from "./registry-DP24za6g.js";
5
+ import { t as createSubsystemLogger } from "./subsystem-DgpxyDQ_.js";
6
+ import { a as isSilentReplyText, n as SILENT_REPLY_TOKEN } from "./tokens-c_SLAkVb.js";
7
+ import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-C4C9637U.js";
8
+ import { B as resolveMirroredTranscriptText, i as isMessagingToolDuplicate, z as appendAssistantMessageToSessionTranscript } from "./pi-embedded-helpers-DEEaCvEp.js";
9
+ import { d as getChannelDock } from "./thinking-Ni0HF-w6.js";
10
+ import { c as resolveChunkMode, f as parseFenceSpans, i as chunkMarkdownTextWithMode, l as resolveTextChunkLimit, n as chunkByParagraph } from "./chunk-ClbN9Pqy.js";
11
+ import { n as resolveMarkdownTableMode } from "./markdown-tables-DSHvnTLx.js";
12
+ import { t as getAgentScopedMediaLocalRoots } from "./local-roots-C7OCYACU.js";
13
+ import { l as markdownToSignalTextChunks, t as sendMessageSignal } from "./send-zSarozV2.js";
14
14
  import path from "node:path";
15
- import fs from "node:fs";
15
+ import fsSync from "node:fs";
16
16
  import crypto from "node:crypto";
17
17
 
18
18
  //#region src/plugins/hooks.ts
@@ -721,11 +721,11 @@ function resolveFailedDir(stateDir) {
721
721
  /** Ensure the queue directory (and failed/ subdirectory) exist. */
722
722
  async function ensureQueueDir(stateDir) {
723
723
  const queueDir = resolveQueueDir(stateDir);
724
- await fs.promises.mkdir(queueDir, {
724
+ await fsSync.promises.mkdir(queueDir, {
725
725
  recursive: true,
726
726
  mode: 448
727
727
  });
728
- await fs.promises.mkdir(resolveFailedDir(stateDir), {
728
+ await fsSync.promises.mkdir(resolveFailedDir(stateDir), {
729
729
  recursive: true,
730
730
  mode: 448
731
731
  });
@@ -752,18 +752,18 @@ async function enqueueDelivery(params, stateDir) {
752
752
  const filePath = path.join(queueDir, `${id}.json`);
753
753
  const tmp = `${filePath}.${process.pid}.tmp`;
754
754
  const json = JSON.stringify(entry, null, 2);
755
- await fs.promises.writeFile(tmp, json, {
755
+ await fsSync.promises.writeFile(tmp, json, {
756
756
  encoding: "utf-8",
757
757
  mode: 384
758
758
  });
759
- await fs.promises.rename(tmp, filePath);
759
+ await fsSync.promises.rename(tmp, filePath);
760
760
  return id;
761
761
  }
762
762
  /** Remove a successfully delivered entry from the queue. */
763
763
  async function ackDelivery(id, stateDir) {
764
764
  const filePath = path.join(resolveQueueDir(stateDir), `${id}.json`);
765
765
  try {
766
- await fs.promises.unlink(filePath);
766
+ await fsSync.promises.unlink(filePath);
767
767
  } catch (err) {
768
768
  if ((err && typeof err === "object" && "code" in err ? String(err.code) : null) !== "ENOENT") throw err;
769
769
  }
@@ -771,16 +771,16 @@ async function ackDelivery(id, stateDir) {
771
771
  /** Update a queue entry after a failed delivery attempt. */
772
772
  async function failDelivery(id, error, stateDir) {
773
773
  const filePath = path.join(resolveQueueDir(stateDir), `${id}.json`);
774
- const raw = await fs.promises.readFile(filePath, "utf-8");
774
+ const raw = await fsSync.promises.readFile(filePath, "utf-8");
775
775
  const entry = JSON.parse(raw);
776
776
  entry.retryCount += 1;
777
777
  entry.lastError = error;
778
778
  const tmp = `${filePath}.${process.pid}.tmp`;
779
- await fs.promises.writeFile(tmp, JSON.stringify(entry, null, 2), {
779
+ await fsSync.promises.writeFile(tmp, JSON.stringify(entry, null, 2), {
780
780
  encoding: "utf-8",
781
781
  mode: 384
782
782
  });
783
- await fs.promises.rename(tmp, filePath);
783
+ await fsSync.promises.rename(tmp, filePath);
784
784
  }
785
785
 
786
786
  //#endregion
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { t as createSubsystemLogger } from "./subsystem-Bs9YvKLa.js";
2
+ import { t as createSubsystemLogger } from "./subsystem-DgpxyDQ_.js";
3
3
  import { i as pruneDiagnosticSessionStates, r as getDiagnosticSessionState, t as diagnosticSessionStates } from "./diagnostic-session-state-Bxo4UHOL.js";
4
4
 
5
5
  //#region src/infra/diagnostic-events.ts
@@ -1,7 +1,7 @@
1
1
  import { t as resolveSymiPackageRoot } from "./symi-root-CrGJbkzf.js";
2
2
  import { r as resolveCliName } from "./command-format-COaS-S7B.js";
3
3
  import { t as note } from "./note-DeHoW7xO.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-DaOHSXM3.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-BsSDzZNA.js";
5
5
  import path from "node:path";
6
6
  import { spawnSync } from "node:child_process";
7
7
 
@@ -1,7 +1,7 @@
1
1
  import { r as resolveCliName } from "./command-format-BtYOfWxC.js";
2
2
  import { t as resolveSymiPackageRoot } from "./symi-root-BNuQ4lAT.js";
3
3
  import { t as note } from "./note-DDecZomM.js";
4
- import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-DDlYn0ya.js";
4
+ import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-CPMOXTf2.js";
5
5
  import { spawnSync } from "node:child_process";
6
6
  import path from "node:path";
7
7
 
package/dist/entry.js CHANGED
@@ -2500,7 +2500,7 @@ if (!ensureExperimentalWarningSuppressed()) {
2500
2500
  applyCliProfileEnv({ profile: parsed.profile });
2501
2501
  process$1.argv = parsed.argv;
2502
2502
  }
2503
- import("./run-main-B2coomPj.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2503
+ import("./run-main-BLKPL_vM.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
2504
2504
  console.error("[symi] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
2505
2505
  process$1.exitCode = 1;
2506
2506
  });
@@ -7,7 +7,7 @@ import { a as resolveAgentIdentity } from "./reply-prefix-K_J_nfgx.js";
7
7
  import "./github-copilot-token-BbsJ0Qbo.js";
8
8
  import "./env-CQ_DQOwT.js";
9
9
  import "./tokens-Cn6drXx2.js";
10
- import { D as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-JXvD5-F-.js";
10
+ import { D as resolveAgentTimeoutMs, t as runEmbeddedPiAgent } from "./pi-embedded-CAJ6egA1.js";
11
11
  import "./plugins-71oIavrF.js";
12
12
  import "./accounts-DDEyGwby.js";
13
13
  import "./bindings-DYVakimr.js";
@@ -1,7 +1,7 @@
1
1
  import { t as parseBooleanValue } from "./boolean-B8-BqKGQ.js";
2
2
  import { n as MANIFEST_KEY, t as LEGACY_MANIFEST_KEYS } from "./legacy-names-BHV4AoFT.js";
3
3
  import path from "node:path";
4
- import fs from "node:fs";
4
+ import fsSync from "node:fs";
5
5
  import JSON5 from "json5";
6
6
  import YAML from "yaml";
7
7
 
@@ -79,7 +79,7 @@ function hasBinary(bin) {
79
79
  for (const part of parts) for (const ext of extensions) {
80
80
  const candidate = path.join(part, bin + ext);
81
81
  try {
82
- fs.accessSync(candidate, fs.constants.X_OK);
82
+ fsSync.accessSync(candidate, fsSync.constants.X_OK);
83
83
  hasBinaryCache.set(bin, true);
84
84
  return true;
85
85
  } catch {}