@symerian/symi 3.5.21 → 3.5.23

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 (178) hide show
  1. package/dist/{agent-NT0EKnK_.js → agent-CBfp75J4.js} +18 -18
  2. package/dist/{agent-scope-Bnsyyeci.js → agent-scope-DOrZjOnW.js} +18 -18
  3. package/dist/{agents.config-DA0ISLi7.js → agents.config-B7sNDvhz.js} +1 -1
  4. package/dist/{audit-CXIXYDRx.js → audit-Ce-u6aaR.js} +20 -20
  5. package/dist/{auth-choice-BtXIQPTU.js → auth-choice-CUvx59kv.js} +11 -11
  6. package/dist/{auth-profiles-D5nYBj_Z.js → auth-profiles-Ce7R_25e.js} +2 -2
  7. package/dist/{auth-token-fgnCQEHT.js → auth-token-Cr28IDKY.js} +3 -3
  8. package/dist/{browser-cli-DOTM7UBC.js → browser-cli-Ibgld3mA.js} +9 -9
  9. package/dist/build-info.json +3 -3
  10. package/dist/bundled/boot-md/handler.js +4 -4
  11. package/dist/bundled/session-memory/handler.js +4 -4
  12. package/dist/{call-Bpjj5p7I.js → call-xdEE97oU.js} +9 -9
  13. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  14. package/dist/{channel-options-XRJiHUm5.js → channel-options-DCmWOAc0.js} +1 -1
  15. package/dist/{channels-cli-CQ4M05oy.js → channels-cli-Cs1Z0dn8.js} +57 -57
  16. package/dist/{chrome-OTJg3QKn.js → chrome-CmQwGAuL.js} +7 -7
  17. package/dist/{chrome-38OnGyuN.js → chrome-DJChpTwP.js} +2 -2
  18. package/dist/{cli-B-uoiYP2.js → cli-CadU09SC.js} +45 -45
  19. package/dist/{client-CTrfpKT3.js → client-Cs9Bh-G0.js} +1 -1
  20. package/dist/{commands-registry-CwXsDVuO.js → commands-registry-Ca5hh7nh.js} +1 -1
  21. package/dist/{completion-cli-Cn_81QBb.js → completion-cli-Dd56ibFZ.js} +12 -12
  22. package/dist/{config-BngIfn5l.js → config-B4jkreCN.js} +2 -2
  23. package/dist/{config-cli-B1cPkJ4p.js → config-cli-GwUJEapt.js} +4 -4
  24. package/dist/{config-guard-DStz4_V2.js → config-guard-BRm3RiOi.js} +6 -6
  25. package/dist/{config-validation-Dxj9LRzr.js → config-validation-Cdyg1BZB.js} +1 -1
  26. package/dist/{configure-C7zmSgvC.js → configure-5md67tCP.js} +14 -14
  27. package/dist/{consolidate-CO32_TEx.js → consolidate-DymnvvYm.js} +6 -6
  28. package/dist/{control-service-CUreKVeY.js → control-service-D8kKOts5.js} +4 -4
  29. package/dist/control-ui/css/style.css +38 -3
  30. package/dist/control-ui/index.html +2 -2
  31. package/dist/control-ui/js/symframe-awaiting.js +15 -10
  32. package/dist/control-ui/js/symframe-substrate.js +11 -7
  33. package/dist/control-ui/js/symframe.js +12 -28
  34. package/dist/{control-ui-assets-B8B9z_Ll.js → control-ui-assets-CJQ97d4u.js} +1 -1
  35. package/dist/{cost-cli-D-ssjcRF.js → cost-cli-DWiVCOCx.js} +3 -3
  36. package/dist/{cron-cli-otPeKxmi.js → cron-cli-CE9bV9Et.js} +7 -7
  37. package/dist/{daemon-cli-qDdMg615.js → daemon-cli-BYiG4GOU.js} +11 -11
  38. package/dist/{daemon-runtime-CKn0wmCk.js → daemon-runtime-DlQla_dA.js} +10 -10
  39. package/dist/{deliver-BiWlR84Y.js → deliver-B04yNX82.js} +4 -4
  40. package/dist/{deliver-CWMFmMCv.js → deliver-lTZLIQqf.js} +2 -2
  41. package/dist/{deps-CdibsPMx.js → deps-Bf9dt2UO.js} +1 -1
  42. package/dist/{devices-cli-DDPwF2Nx.js → devices-cli-Bhr6jGtH.js} +6 -6
  43. package/dist/{diagnostics-CYkqD5lP.js → diagnostics-DlZODdRf.js} +5 -5
  44. package/dist/{directory-cli-giqTe8Yg.js → directory-cli-Bm5QYEo-.js} +3 -3
  45. package/dist/{dm-policy-shared-B61_yf6G.js → dm-policy-shared-CeFt0nch.js} +1 -1
  46. package/dist/{dns-cli-Dssz4RqF.js → dns-cli-CubLq4j9.js} +3 -3
  47. package/dist/{docs-cli-Ct1STieY.js → docs-cli-PS8m1er7.js} +1 -1
  48. package/dist/{doctor-completion-CL7MyXlo.js → doctor-completion-BpUGRguQ.js} +2 -2
  49. package/dist/{doctor-config-flow-ljVnQJjo.js → doctor-config-flow-C52W1uUK.js} +9 -9
  50. package/dist/{exec-approvals-cli-DsBoQu5H.js → exec-approvals-cli-CzvIqBUd.js} +13 -13
  51. package/dist/{file-lock-2AecMjCa.js → file-lock-BVUYnlQv.js} +8 -8
  52. package/dist/{fs-safe-B0Is-oLk.js → fs-safe-BdejYjW8.js} +6 -6
  53. package/dist/{gateway-cli-DG_2YZ8B.js → gateway-cli-D1d5YAt0.js} +98 -98
  54. package/dist/{gateway-rpc-gaoD882s.js → gateway-rpc-BTGT1SuZ.js} +1 -1
  55. package/dist/{glass-ui-ws-Bof7krDJ.js → glass-ui-ws-BH9WH_VN.js} +67 -67
  56. package/dist/{health-CMbUI4aN.js → health-DpE9GWGn.js} +4 -4
  57. package/dist/{hooks-cli-Cgjor7F-.js → hooks-cli-D7xxbEwI.js} +59 -59
  58. package/dist/{image-ops-BzCBIakN.js → image-ops-L70xVnpG.js} +10 -10
  59. package/dist/index.js +52 -52
  60. package/dist/{inspect-DzYUb_Dl.js → inspect-CGKsaVZ4.js} +4 -4
  61. package/dist/{install-safe-path-BrpA09f2.js → install-safe-path-B2JrFspY.js} +11 -11
  62. package/dist/{installs-bnDlOSq2.js → installs-D890uIIW.js} +10 -10
  63. package/dist/{internal-csqU78gW.js → internal-DVCddhhN.js} +9 -9
  64. package/dist/{lifecycle-core-cSR_xiIO.js → lifecycle-core-wFwnK_mD.js} +5 -5
  65. package/dist/llm-slug-generator.js +4 -4
  66. package/dist/{local-roots-2Jb79HZ8.js → local-roots-CgDCgCuM.js} +1 -1
  67. package/dist/{logs-cli-Kr145PO_.js → logs-cli-DvIVuW0d.js} +7 -7
  68. package/dist/{manager-DG6PODgu.js → manager-CoCX7L5u.js} +15 -15
  69. package/dist/{manager-Cv4xI8sP.js → manager-DDynl084.js} +1 -1
  70. package/dist/{memory-BFnx3v3_.js → memory-B067LTL9.js} +5 -5
  71. package/dist/{memory-cli-CHNghdrm.js → memory-cli-D8Z_5-Nz.js} +12 -12
  72. package/dist/{model-Cwbcw-km.js → model-MUMSB_7d.js} +1 -1
  73. package/dist/{model-auth-_C07_3Yr.js → model-auth-1EAQvYRv.js} +2 -2
  74. package/dist/{model-catalog-BWurV7gl.js → model-catalog-IWi6-nY9.js} +3 -3
  75. package/dist/{model-picker-Dpkr5xBW.js → model-picker-Cf6UgQEh.js} +5 -5
  76. package/dist/{model-selection-CCTzD29o.js → model-selection-7wdmO-Iw.js} +1 -1
  77. package/dist/{models-cli-BbK8HMKa.js → models-cli-C979SN3Z.js} +55 -55
  78. package/dist/{models-config-DlXge3Sd.js → models-config-B5Xxy-c-.js} +8 -8
  79. package/dist/{node-cli-BPnBosC4.js → node-cli-DGybtex_.js} +27 -27
  80. package/dist/{node-service-Cc18m-uk.js → node-service-BH08wY5j.js} +1 -1
  81. package/dist/{nodes-cli-CN_m6PO5.js → nodes-cli-C-mEw2av.js} +10 -10
  82. package/dist/{nodes-screen-Cp5QP3ET.js → nodes-screen-De9ma6e1.js} +4 -4
  83. package/dist/{npm-registry-spec-C-muP97-.js → npm-registry-spec-DTqn-NXZ.js} +9 -9
  84. package/dist/{onboard-B2IcTMv-.js → onboard-CotuAZi6.js} +15 -15
  85. package/dist/{onboard-channels-wfGO5Zlh.js → onboard-channels-DSyynpou.js} +4 -4
  86. package/dist/{onboard-custom-DnDrvxSg.js → onboard-custom-BcRYreNG.js} +3 -3
  87. package/dist/{onboard-helpers-BKejzolA.js → onboard-helpers-CLXJ8zp0.js} +8 -8
  88. package/dist/{onboard-hooks-D9jHwImb.js → onboard-hooks-2SCajRKc.js} +1 -1
  89. package/dist/{onboard-remote-y3ZmP90U.js → onboard-remote-BYBai0w3.js} +1 -1
  90. package/dist/{onboard-skills-BFhHfrt9.js → onboard-skills-BxJlS1Bk.js} +3 -3
  91. package/dist/{onboarding-DqlPV372.js → onboarding-BnoGiOh3.js} +12 -12
  92. package/dist/{onboarding.finalize-Bwjv3jew.js → onboarding.finalize-g86Q4433.js} +31 -31
  93. package/dist/{onboarding.gateway-config-CiRo9EMt.js → onboarding.gateway-config-CEXjbEM0.js} +8 -8
  94. package/dist/{openai-model-default-De-UAjwg.js → openai-model-default-BkuuK-Di.js} +2 -2
  95. package/dist/{pairing-cli-CBMMCNnx.js → pairing-cli-Rsae0KnN.js} +5 -5
  96. package/dist/{pairing-store-Be-ZQK87.js → pairing-store-BNhJOnWn.js} +1 -1
  97. package/dist/{pairing-token-B703A1U3.js → pairing-token-Dcy37-4s.js} +7 -7
  98. package/dist/{paths-BWqg8NZT.js → paths-DObzwe08.js} +1 -1
  99. package/dist/{pi-auth-json-D-vdh-nY.js → pi-auth-json-Db8XJVGL.js} +6 -6
  100. package/dist/{pi-embedded-helpers-j1JrlsI0.js → pi-embedded-helpers-D-OFjhdI.js} +6 -6
  101. package/dist/{pi-tools.policy-CvAqjEH9.js → pi-tools.policy-H2t-Xkfc.js} +3 -3
  102. package/dist/{plugin-auto-enable-BXSJTxI7.js → plugin-auto-enable-DJBhDIMq.js} +1 -1
  103. package/dist/{plugin-registry-B43UosQh.js → plugin-registry-AsC9gydF.js} +3 -3
  104. package/dist/plugin-sdk/index.js +6 -6
  105. package/dist/{plugins-cli-BV2wbjfI.js → plugins-cli-CbByGz8z.js} +54 -54
  106. package/dist/{ports-CB_Iu83U.js → ports-gxLM5ahL.js} +2 -2
  107. package/dist/{ports-Bi3V_3n9.js → ports-r7LBic2V.js} +1 -1
  108. package/dist/{program-context-BmXxHUKe.js → program-context-CiyK6MfV.js} +40 -40
  109. package/dist/{prompt-select-styled-BlQZX6pK.js → prompt-select-styled-DaNQ_GgB.js} +38 -38
  110. package/dist/{provider-auth-helpers-WLwb6tL4.js → provider-auth-helpers-D2FDvwT5.js} +6 -6
  111. package/dist/{push-apns-CBGvXev_.js → push-apns-va-DRu4U.js} +4 -4
  112. package/dist/{pw-ai-CP5pn3eU.js → pw-ai-BiBvIJzd.js} +7 -7
  113. package/dist/{pw-ai-DY_6l11g.js → pw-ai-DLsdzdgc.js} +1 -1
  114. package/dist/{qmd-manager-Dxyue7B1.js → qmd-manager-C8-M4Pru.js} +19 -19
  115. package/dist/{qr-cli-DHw6muwK.js → qr-cli-1sCVaPcF.js} +3 -3
  116. package/dist/{register.agent-CXdTiqyP.js → register.agent-BqdQ0s30.js} +67 -67
  117. package/dist/{register.configure-DVcn-gCO.js → register.configure-Dhwi-4FG.js} +70 -70
  118. package/dist/{register.maintenance-cpspl8D6.js → register.maintenance-iMjNw9uy.js} +67 -67
  119. package/dist/{register.message-BjcYy5UG.js → register.message-Ao_b9s2g.js} +47 -47
  120. package/dist/{register.onboard-D4RN92s2.js → register.onboard-ymhSAezZ.js} +25 -25
  121. package/dist/{register.setup-BvoXF0xl.js → register.setup-CKs9mqtD.js} +28 -28
  122. package/dist/{register.status-health-sessions-DjDvCXBn.js → register.status-health-sessions-U-azRmpb.js} +41 -41
  123. package/dist/{replies-B_3j7R_Q.js → replies-CbXXjn9X.js} +1 -1
  124. package/dist/{reply-prefix-CtZtkTJK.js → reply-prefix-BFNeXT65.js} +1 -1
  125. package/dist/{resolve-route-Du0VftVs.js → resolve-route-C1IIA6kH.js} +1 -1
  126. package/dist/{routes-BwTUoI5h.js → routes-ivqbutvM.js} +10 -10
  127. package/dist/{rpc-CwxSZZOx.js → rpc-DjqFrbOc.js} +1 -1
  128. package/dist/{sandbox-CZGTCone.js → sandbox-BkznAPKO.js} +18 -18
  129. package/dist/{sandbox-cli-DEtGT_4y.js → sandbox-cli-Bb9cBtBH.js} +13 -13
  130. package/dist/{security-cli-DJd7Fcdy.js → security-cli-JKsf9SIu.js} +29 -29
  131. package/dist/{send-CxjvucMO.js → send-B0jHSNMF.js} +7 -7
  132. package/dist/{server-context-DXdk410X.js → server-context-ChcbJgNo.js} +5 -5
  133. package/dist/{server-methods-DfVfzYqq.js → server-methods-B2tykucj.js} +60 -60
  134. package/dist/{server-node-events-B0yC6hi1.js → server-node-events-BKqszk_a.js} +48 -48
  135. package/dist/{service-CRZoXO_n.js → service-e6MzlLCd.js} +15 -15
  136. package/dist/{session-dirs-a00Ad2SO.js → session-dirs-C9E2G0yZ.js} +2 -2
  137. package/dist/{session-utils-CJhcRx3E.js → session-utils-Cs1jlD-q.js} +14 -14
  138. package/dist/{sessions-BCc3THTm.js → sessions-Dxf5Kjig.js} +10 -10
  139. package/dist/{shared-C39SiDDJ.js → shared-1xPo9ygd.js} +1 -1
  140. package/dist/{shared-Dh-O8nRd.js → shared-COtpr3Ad.js} +3 -3
  141. package/dist/{skill-commands-DWvXs3lz.js → skill-commands-DDGGlq68.js} +4 -4
  142. package/dist/{skill-scanner-CIlHPszT.js → skill-scanner-BCgVcIwi.js} +5 -5
  143. package/dist/{skills-CYcBtLGH.js → skills-BwDmcZdt.js} +4 -4
  144. package/dist/{skills-cli-CD9s3cgm.js → skills-cli-B-7TY-vS.js} +7 -7
  145. package/dist/{skills-install-BTa9IuQ6.js → skills-install-Dwzsjoc8.js} +3 -3
  146. package/dist/{skills-remote-BcRQTDsZ.js → skills-remote-bz71Bstn.js} +3 -3
  147. package/dist/{skills-status-DLnCHUZ2.js → skills-status-BKX1PjCc.js} +1 -1
  148. package/dist/{sqlite-BpogPlQW.js → sqlite-Cod7C5ba.js} +5 -5
  149. package/dist/{status-BWxLtb3D.js → status-DHBVIMyL.js} +23 -23
  150. package/dist/{status-Doq8T1zj.js → status-DPGFZPpp.js} +3 -3
  151. package/dist/{status.update-CKfyV6zw.js → status.update-DGJi0OLl.js} +3 -3
  152. package/dist/{symframe-cli-D1CtN3pf.js → symframe-cli-CX3dINPw.js} +9 -9
  153. package/dist/{symi-root-DeCVdZB4.js → symi-root-BQ0IpoW2.js} +2 -2
  154. package/dist/{synthesis-yl24Ovw4.js → synthesis-D91XE0n4.js} +4 -4
  155. package/dist/{synthesis-VZNnlUTf.js → synthesis-DmqicCsT.js} +45 -45
  156. package/dist/{system-cli-r7WJj0Xh.js → system-cli-DUHzCGfK.js} +7 -7
  157. package/dist/{systemd-CsoVnIbM.js → systemd-CUIM0n5P.js} +5 -5
  158. package/dist/{systemd-hints-QISwLlFU.js → systemd-hints-CsrzMCTD.js} +6 -6
  159. package/dist/{systemd-linger-BnhuRdbt.js → systemd-linger-BzYk7A6M.js} +1 -1
  160. package/dist/{tui-J7Jxp-FF.js → tui-DCqVZ6sC.js} +7 -7
  161. package/dist/{tui-cli-DR48dU_C.js → tui-cli-CI-P3sei.js} +19 -19
  162. package/dist/{unified-runner-BV5TdNFv.js → unified-runner-CdJx7yN8.js} +10 -10
  163. package/dist/{unified-runner-DXjH-prv.js → unified-runner-CznU7Ad0.js} +101 -101
  164. package/dist/{update-check-u6Jgr1cz.js → update-check-BCL_K7kx.js} +5 -5
  165. package/dist/{update-cli-CKpjWtlv.js → update-cli-DBoIBDNe.js} +77 -77
  166. package/dist/{update-runner-G2YgEATs.js → update-runner-BLV8SI96.js} +15 -15
  167. package/dist/{update-Cb0Fmxic.js → update-yYduAjKd.js} +3 -3
  168. package/dist/{webhooks-cli-DjUITimx.js → webhooks-cli-D5k-Y2A8.js} +4 -4
  169. package/dist/{with-timeout-CLrF-Yr_.js → with-timeout-DPR4A2dx.js} +1 -1
  170. package/dist/{workspace-dirs-DCICLTHx.js → workspace-dirs-jKFQf7of.js} +1 -1
  171. package/dist/{wsl-DTi7eX-V.js → wsl-CglTdtlb.js} +2 -2
  172. package/extensions/memory-core/package.json +1 -1
  173. package/extensions/msteams/CHANGELOG.md +12 -0
  174. package/extensions/msteams/package.json +1 -1
  175. package/extensions/open-prose/package.json +1 -1
  176. package/extensions/outlook/package.json +1 -1
  177. package/extensions/slack/package.json +1 -1
  178. package/package.json +1 -1
@@ -1,7 +1,7 @@
1
1
  import { h as resolveUserPath } from "./utils-CTPsqyE_.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { c as resolveAgentWorkspaceDir } from "./agent-scope-Bnsyyeci.js";
4
- import { f as parseDurationMs } from "./config-BngIfn5l.js";
3
+ import { c as resolveAgentWorkspaceDir } from "./agent-scope-DOrZjOnW.js";
4
+ import { f as parseDurationMs } from "./config-B4jkreCN.js";
5
5
  import { t as splitShellArgs } from "./shell-argv-O_3VvURK.js";
6
6
  import path from "node:path";
7
7
 
@@ -200,7 +200,7 @@ async function getMemorySearchManager(params) {
200
200
  if (cached) return { manager: cached };
201
201
  }
202
202
  try {
203
- const { QmdMemoryManager } = await import("./qmd-manager-Dxyue7B1.js");
203
+ const { QmdMemoryManager } = await import("./qmd-manager-C8-M4Pru.js");
204
204
  const primary = await QmdMemoryManager.create({
205
205
  cfg: params.cfg,
206
206
  agentId: params.agentId,
@@ -212,7 +212,7 @@ async function getMemorySearchManager(params) {
212
212
  const wrapper = new FallbackMemoryManager({
213
213
  primary,
214
214
  fallbackFactory: async () => {
215
- const { MemoryIndexManager } = await import("./manager-DG6PODgu.js").then((n) => n.t);
215
+ const { MemoryIndexManager } = await import("./manager-CoCX7L5u.js").then((n) => n.t);
216
216
  return await MemoryIndexManager.get(params);
217
217
  }
218
218
  }, () => QMD_MANAGER_CACHE.delete(cacheKey));
@@ -225,7 +225,7 @@ async function getMemorySearchManager(params) {
225
225
  }
226
226
  }
227
227
  try {
228
- const { MemoryIndexManager } = await import("./manager-DG6PODgu.js").then((n) => n.t);
228
+ const { MemoryIndexManager } = await import("./manager-CoCX7L5u.js").then((n) => n.t);
229
229
  return { manager: await MemoryIndexManager.get(params) };
230
230
  } catch (err) {
231
231
  return {
@@ -3,14 +3,14 @@ import { A as isRich, E as setVerbose, j as theme, k as colorize } from "./regis
3
3
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
4
4
  import { _ as shortenHomeInString, v as shortenHomePath } from "./utils-CTPsqyE_.js";
5
5
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
6
- import { l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
7
- import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
6
+ import { l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
7
+ import { i as loadConfig, l as writeConfigFile, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
8
8
  import { n as formatErrorMessage } from "./errors-bI7Tdx75.js";
9
9
  import { s as resolveSessionTranscriptsDirForAgent } from "./paths-BtvQ7JvU.js";
10
- import { i as resolveApiKeyForProvider } from "./model-auth-_C07_3Yr.js";
11
- import { t as getMemorySearchManager } from "./memory-BFnx3v3_.js";
12
- import { i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels } from "./manager-DG6PODgu.js";
13
- import { c as normalizeExtraMemoryPaths, s as listMemoryFiles } from "./internal-csqU78gW.js";
10
+ import { i as resolveApiKeyForProvider } from "./model-auth-1EAQvYRv.js";
11
+ import { t as getMemorySearchManager } from "./memory-B067LTL9.js";
12
+ import { i as resolveOllamaBaseUrl, r as probeOllamaEmbeddingModels } from "./manager-CoCX7L5u.js";
13
+ import { c as normalizeExtraMemoryPaths, s as listMemoryFiles } from "./internal-DVCddhhN.js";
14
14
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
15
15
  import { r as withManager } from "./cli-utils-CuyGL3rq.js";
16
16
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
@@ -18,7 +18,7 @@ import { n as withProgress, r as withProgressTotals } from "./progress-swt2y17x.
18
18
  import path from "node:path";
19
19
  import fs from "node:fs";
20
20
  import os from "node:os";
21
- import fsPromises from "node:fs/promises";
21
+ import fs$1 from "node:fs/promises";
22
22
 
23
23
  //#region src/cli/memory-cli.ts
24
24
  var memory_cli_exports = /* @__PURE__ */ __exportAll({
@@ -66,7 +66,7 @@ async function withMemoryManagerForAgent(params) {
66
66
  }
67
67
  async function checkReadableFile(pathname) {
68
68
  try {
69
- await fsPromises.access(pathname, fs.constants.R_OK);
69
+ await fs$1.access(pathname, fs.constants.R_OK);
70
70
  return { exists: true };
71
71
  } catch (err) {
72
72
  const code = err.code;
@@ -83,7 +83,7 @@ async function scanSessionFiles(agentId) {
83
83
  try {
84
84
  return {
85
85
  source: "sessions",
86
- totalFiles: (await fsPromises.readdir(sessionsDir, { withFileTypes: true })).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).length,
86
+ totalFiles: (await fs$1.readdir(sessionsDir, { withFileTypes: true })).filter((entry) => entry.isFile() && entry.name.endsWith(".jsonl")).length,
87
87
  issues
88
88
  };
89
89
  } catch (err) {
@@ -115,7 +115,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
115
115
  if (alt.issue) issues.push(alt.issue);
116
116
  const resolvedExtraPaths = normalizeExtraMemoryPaths(workspaceDir, extraPaths);
117
117
  for (const extraPath of resolvedExtraPaths) try {
118
- if ((await fsPromises.lstat(extraPath)).isSymbolicLink()) continue;
118
+ if ((await fs$1.lstat(extraPath)).isSymbolicLink()) continue;
119
119
  const extraCheck = await checkReadableFile(extraPath);
120
120
  if (extraCheck.issue) issues.push(extraCheck.issue);
121
121
  } catch (err) {
@@ -125,7 +125,7 @@ async function scanMemoryFiles(workspaceDir, extraPaths = []) {
125
125
  }
126
126
  let dirReadable = null;
127
127
  try {
128
- await fsPromises.access(memoryDir, fs.constants.R_OK);
128
+ await fs$1.access(memoryDir, fs.constants.R_OK);
129
129
  dirReadable = true;
130
130
  } catch (err) {
131
131
  const code = err.code;
@@ -173,7 +173,7 @@ async function summarizeQmdIndexArtifact(manager) {
173
173
  if (!dbPath) return null;
174
174
  let stat;
175
175
  try {
176
- stat = await fsPromises.stat(dbPath);
176
+ stat = await fs$1.stat(dbPath);
177
177
  } catch (err) {
178
178
  const code = err.code;
179
179
  if (code === "ENOENT") throw new Error(`QMD index file not found: ${shortenHomePath(dbPath)}`, { cause: err });
@@ -1,5 +1,5 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { S as DEFAULT_CONTEXT_TOKENS, u as normalizeProviderId } from "./model-selection-CCTzD29o.js";
2
+ import { S as DEFAULT_CONTEXT_TOKENS, u as normalizeProviderId } from "./model-selection-7wdmO-Iw.js";
3
3
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
4
4
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-ClQLvlCW.js";
5
5
 
@@ -1,6 +1,6 @@
1
- import { b as ensureAuthProfileStore, c as resolveApiKeyForProfile, h as listProfilesForProvider, n as resolveAuthProfileOrder, w as resolveAuthStorePathForDisplay } from "./auth-profiles-D5nYBj_Z.js";
1
+ import { b as ensureAuthProfileStore, c as resolveApiKeyForProfile, h as listProfilesForProvider, n as resolveAuthProfileOrder, w as resolveAuthStorePathForDisplay } from "./auth-profiles-Ce7R_25e.js";
2
2
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
3
- import { u as normalizeProviderId, x as getProviderAdapter } from "./model-selection-CCTzD29o.js";
3
+ import { u as normalizeProviderId, x as getProviderAdapter } from "./model-selection-7wdmO-Iw.js";
4
4
  import { n as normalizeSecretInput, t as normalizeOptionalSecretInput } from "./normalize-secret-input-DjGU5EXe.js";
5
5
  import { t as getShellEnvAppliedKeys } from "./shell-env-Dc3iU7HK.js";
6
6
  import path from "node:path";
@@ -1,6 +1,6 @@
1
1
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
2
- import { i as loadConfig } from "./config-BngIfn5l.js";
3
- import { t as ensureSymiModelsJson } from "./models-config-DlXge3Sd.js";
2
+ import { i as loadConfig } from "./config-B4jkreCN.js";
3
+ import { t as ensureSymiModelsJson } from "./models-config-B5Xxy-c-.js";
4
4
 
5
5
  //#region src/agents/model-catalog.ts
6
6
  let modelCatalogPromise = null;
@@ -38,7 +38,7 @@ async function loadModelCatalog(params) {
38
38
  try {
39
39
  const cfg = params?.config ?? loadConfig();
40
40
  await ensureSymiModelsJson(cfg);
41
- await (await import("./pi-auth-json-D-vdh-nY.js").then((n) => n.n)).ensurePiAuthJsonFromAuthProfiles(resolveSymiAgentDir(), { config: cfg });
41
+ await (await import("./pi-auth-json-Db8XJVGL.js").then((n) => n.n)).ensurePiAuthJsonFromAuthProfiles(resolveSymiAgentDir(), { config: cfg });
42
42
  const piSdk = await importPiSdk();
43
43
  const agentDir = resolveSymiAgentDir();
44
44
  const { join } = await import("node:path");
@@ -1,9 +1,9 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { b as ensureAuthProfileStore, h as listProfilesForProvider, y as upsertAuthProfileWithLock } from "./auth-profiles-D5nYBj_Z.js";
3
- import { C as DEFAULT_MODEL, c as modelKey, m as resolveConfiguredModelRef, r as buildModelAliasIndex, t as buildAllowedModelSet, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
4
- import { n as getCustomProviderApiKey, o as resolveEnvApiKey } from "./model-auth-_C07_3Yr.js";
5
- import { n as loadModelCatalog } from "./model-catalog-BWurV7gl.js";
6
- import { i as formatTokenK } from "./shared-Dh-O8nRd.js";
2
+ import { b as ensureAuthProfileStore, h as listProfilesForProvider, y as upsertAuthProfileWithLock } from "./auth-profiles-Ce7R_25e.js";
3
+ import { C as DEFAULT_MODEL, c as modelKey, m as resolveConfiguredModelRef, r as buildModelAliasIndex, t as buildAllowedModelSet, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
4
+ import { n as getCustomProviderApiKey, o as resolveEnvApiKey } from "./model-auth-1EAQvYRv.js";
5
+ import { n as loadModelCatalog } from "./model-catalog-IWi6-nY9.js";
6
+ import { i as formatTokenK } from "./shared-COtpr3Ad.js";
7
7
 
8
8
  //#region src/commands/openai-codex-model-default.ts
9
9
  const OPENAI_CODEX_DEFAULT_MODEL = "openai-codex/gpt-5.3-codex";
@@ -1,4 +1,4 @@
1
- import { o as resolveAgentModelPrimary, r as resolveAgentConfig } from "./agent-scope-Bnsyyeci.js";
1
+ import { o as resolveAgentModelPrimary, r as resolveAgentConfig } from "./agent-scope-DOrZjOnW.js";
2
2
 
3
3
  //#region src/agents/defaults.ts
4
4
  const DEFAULT_PROVIDER = "anthropic";
@@ -1,107 +1,107 @@
1
- import { _t as DEFAULT_OAUTH_WARN_MS, gt as maskApiKey, kn as describeFailoverError, t as runAgentTurn, vt as buildAuthHealthSummary, yt as formatRemainingShort } from "./unified-runner-DXjH-prv.js";
1
+ import { _t as DEFAULT_OAUTH_WARN_MS, gt as maskApiKey, kn as describeFailoverError, t as runAgentTurn, vt as buildAuthHealthSummary, yt as formatRemainingShort } from "./unified-runner-CznU7Ad0.js";
2
2
  import { A as isRich$1, j as theme, k as colorize } from "./registry-Sbac4a4z.js";
3
3
  import { t as CONFIG_PATH } from "./paths-By0XjHBk.js";
4
4
  import { v as shortenHomePath } from "./utils-CTPsqyE_.js";
5
5
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
6
- import { T as resolveAuthProfileDisplayLabel, _ as setAuthProfileOrder, b as ensureAuthProfileStore, h as listProfilesForProvider, n as resolveAuthProfileOrder, s as resolveProfileUnusableUntilForDisplay, v as upsertAuthProfile, w as resolveAuthStorePathForDisplay } from "./auth-profiles-D5nYBj_Z.js";
6
+ import { T as resolveAuthProfileDisplayLabel, _ as setAuthProfileOrder, b as ensureAuthProfileStore, h as listProfilesForProvider, n as resolveAuthProfileOrder, s as resolveProfileUnusableUntilForDisplay, v as upsertAuthProfile, w as resolveAuthStorePathForDisplay } from "./auth-profiles-Ce7R_25e.js";
7
7
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
8
8
  import "./exec-DuYbft0z.js";
9
- import { D as resolveDefaultAgentWorkspaceDir, a as resolveAgentModelFallbacksOverride, c as resolveAgentWorkspaceDir, i as resolveAgentDir, l as resolveDefaultAgentId, o as resolveAgentModelPrimary } from "./agent-scope-Bnsyyeci.js";
10
- import { C as DEFAULT_MODEL, _ as resolveModelRefFromString, a as findNormalizedProviderValue, c as modelKey, d as parseModelRef, h as resolveDefaultModelForAgent, m as resolveConfiguredModelRef, r as buildModelAliasIndex, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
11
- import "./file-lock-2AecMjCa.js";
9
+ import { D as resolveDefaultAgentWorkspaceDir, a as resolveAgentModelFallbacksOverride, c as resolveAgentWorkspaceDir, i as resolveAgentDir, l as resolveDefaultAgentId, o as resolveAgentModelPrimary } from "./agent-scope-DOrZjOnW.js";
10
+ import { C as DEFAULT_MODEL, _ as resolveModelRefFromString, a as findNormalizedProviderValue, c as modelKey, d as parseModelRef, h as resolveDefaultModelForAgent, m as resolveConfiguredModelRef, r as buildModelAliasIndex, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
11
+ import "./file-lock-BVUYnlQv.js";
12
12
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
13
- import "./pi-embedded-helpers-j1JrlsI0.js";
14
- import { f as parseDurationMs, i as loadConfig } from "./config-BngIfn5l.js";
13
+ import "./pi-embedded-helpers-D-OFjhdI.js";
14
+ import { f as parseDurationMs, i as loadConfig } from "./config-B4jkreCN.js";
15
15
  import "./boolean-CbZoNRMn.js";
16
16
  import "./env-BRnPI9sO.js";
17
17
  import { o as shouldEnableShellEnvFallback, t as getShellEnvAppliedKeys } from "./shell-env-Dc3iU7HK.js";
18
18
  import "./manifest-registry-D1MLZEjS.js";
19
- import "./sandbox-CZGTCone.js";
20
- import "./chrome-38OnGyuN.js";
19
+ import "./sandbox-BkznAPKO.js";
20
+ import "./chrome-DJChpTwP.js";
21
21
  import "./tailscale-DpKBMIvx.js";
22
22
  import "./auth-Bkx-QuRN.js";
23
- import "./server-context-DXdk410X.js";
23
+ import "./server-context-ChcbJgNo.js";
24
24
  import "./frontmatter-B_jqcova.js";
25
- import "./skills-CYcBtLGH.js";
26
- import "./routes-BwTUoI5h.js";
25
+ import "./skills-BwDmcZdt.js";
26
+ import "./routes-ivqbutvM.js";
27
27
  import "./redact-B3O-RBO1.js";
28
28
  import "./errors-bI7Tdx75.js";
29
- import "./fs-safe-B0Is-oLk.js";
30
- import "./paths-BWqg8NZT.js";
29
+ import "./fs-safe-BdejYjW8.js";
30
+ import "./paths-DObzwe08.js";
31
31
  import "./ssrf-DOZRI5XH.js";
32
- import "./image-ops-BzCBIakN.js";
33
- import "./ports-CB_Iu83U.js";
32
+ import "./image-ops-L70xVnpG.js";
33
+ import "./ports-gxLM5ahL.js";
34
34
  import "./trash-_YhavPQI.js";
35
- import "./sessions-BCc3THTm.js";
35
+ import "./sessions-Dxf5Kjig.js";
36
36
  import "./dock-hF45sewN.js";
37
37
  import "./message-channel-DgjXWzf-.js";
38
38
  import "./plugins-CF5skkHh.js";
39
- import "./send-CxjvucMO.js";
39
+ import "./send-B0jHSNMF.js";
40
40
  import { s as resolveSessionTranscriptsDirForAgent } from "./paths-BtvQ7JvU.js";
41
41
  import "./thinking-COroyVA5.js";
42
42
  import "./tokens-0yh2UnJq.js";
43
- import "./deliver-CWMFmMCv.js";
43
+ import "./deliver-lTZLIQqf.js";
44
44
  import "./diagnostic-DbT9t0Sh.js";
45
45
  import "./diagnostic-session-state-DnkpMfCl.js";
46
- import { a as resolveAwsSdkEnvVarName, i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey } from "./model-auth-_C07_3Yr.js";
46
+ import { a as resolveAwsSdkEnvVarName, i as resolveApiKeyForProvider, n as getCustomProviderApiKey, o as resolveEnvApiKey } from "./model-auth-1EAQvYRv.js";
47
47
  import "./github-copilot-token-D-FdDfee.js";
48
- import { t as ensureSymiModelsJson } from "./models-config-DlXge3Sd.js";
49
- import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-D-vdh-nY.js";
48
+ import { t as ensureSymiModelsJson } from "./models-config-B5Xxy-c-.js";
49
+ import { t as ensurePiAuthJsonFromAuthProfiles } from "./pi-auth-json-Db8XJVGL.js";
50
50
  import "./session-cost-usage-D3mgssM_.js";
51
- import { _ as loadProviderUsageSummary, b as resolveUsageProviderId, y as formatUsageWindowSummary } from "./session-utils-CJhcRx3E.js";
52
- import "./with-timeout-CLrF-Yr_.js";
53
- import "./reply-prefix-CtZtkTJK.js";
54
- import "./memory-BFnx3v3_.js";
55
- import "./manager-DG6PODgu.js";
56
- import "./sqlite-BpogPlQW.js";
51
+ import { _ as loadProviderUsageSummary, b as resolveUsageProviderId, y as formatUsageWindowSummary } from "./session-utils-Cs1jlD-q.js";
52
+ import "./with-timeout-DPR4A2dx.js";
53
+ import "./reply-prefix-BFNeXT65.js";
54
+ import "./memory-B067LTL9.js";
55
+ import "./manager-CoCX7L5u.js";
56
+ import "./sqlite-Cod7C5ba.js";
57
57
  import "./chunk-BxfKjCUx.js";
58
58
  import "./markdown-tables-CS1Tvb3z.js";
59
59
  import "./fetch-guard-JHxT9355.js";
60
- import "./local-roots-2Jb79HZ8.js";
60
+ import "./local-roots-CgDCgCuM.js";
61
61
  import "./commands-DUzLGgEZ.js";
62
- import "./commands-registry-CwXsDVuO.js";
63
- import "./client-CTrfpKT3.js";
64
- import "./call-Bpjj5p7I.js";
65
- import "./pairing-token-B703A1U3.js";
62
+ import "./commands-registry-Ca5hh7nh.js";
63
+ import "./client-Cs9Bh-G0.js";
64
+ import "./call-xdEE97oU.js";
65
+ import "./pairing-token-Dcy37-4s.js";
66
66
  import "./tool-display-DFOL6UQ9.js";
67
- import "./skills-remote-BcRQTDsZ.js";
68
- import "./workspace-dirs-DCICLTHx.js";
67
+ import "./skills-remote-bz71Bstn.js";
68
+ import "./workspace-dirs-jKFQf7of.js";
69
69
  import { n as discoverModels, t as discoverAuthStorage } from "./pi-model-discovery-ClQLvlCW.js";
70
- import { n as loadModelCatalog } from "./model-catalog-BWurV7gl.js";
71
- import "./skill-commands-DWvXs3lz.js";
72
- import "./pairing-store-Be-ZQK87.js";
70
+ import { n as loadModelCatalog } from "./model-catalog-IWi6-nY9.js";
71
+ import "./skill-commands-DDGGlq68.js";
72
+ import "./pairing-store-BNhJOnWn.js";
73
73
  import "./exec-approvals-DioSaIeH.js";
74
- import "./nodes-screen-Cp5QP3ET.js";
74
+ import "./nodes-screen-De9ma6e1.js";
75
75
  import "./breakdown-B_Dhhm3K.js";
76
- import "./control-service-CUreKVeY.js";
76
+ import "./control-service-D8kKOts5.js";
77
77
  import "./stagger-DQs772BN.js";
78
78
  import "./channel-selection-H1qOf0q-.js";
79
79
  import "./delivery-queue-OAc7hsIs.js";
80
80
  import "./bindings-DIhsYGa_.js";
81
- import "./resolve-route-Du0VftVs.js";
81
+ import "./resolve-route-C1IIA6kH.js";
82
82
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
83
83
  import { n as runCommandWithRuntime, t as resolveOptionFromCommand } from "./cli-utils-CuyGL3rq.js";
84
84
  import "./help-format-7hFcsqss.js";
85
85
  import { r as withProgressTotals } from "./progress-swt2y17x.js";
86
- import "./memory-cli-CHNghdrm.js";
86
+ import "./memory-cli-D8Z_5-Nz.js";
87
87
  import "./logging-BWknayJl.js";
88
- import "./replies-B_3j7R_Q.js";
89
- import "./pi-tools.policy-CvAqjEH9.js";
90
- import { i as resolveForwardCompatModel, r as ANTIGRAVITY_OPUS_46_FORWARD_COMPAT_CANDIDATES } from "./model-Cwbcw-km.js";
88
+ import "./replies-CbXXjn9X.js";
89
+ import "./pi-tools.policy-H2t-Xkfc.js";
90
+ import { i as resolveForwardCompatModel, r as ANTIGRAVITY_OPUS_46_FORWARD_COMPAT_CANDIDATES } from "./model-MUMSB_7d.js";
91
91
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-olk5zI5k.js";
92
92
  import "./note-D9FXI2qW.js";
93
93
  import { t as createClackPrompter } from "./clack-prompter-BpcKjPIh.js";
94
- import { f as openUrl } from "./onboard-helpers-BKejzolA.js";
94
+ import { f as openUrl } from "./onboard-helpers-CLXJ8zp0.js";
95
95
  import { t as renderTable } from "./table-0A3xKJVC.js";
96
96
  import { t as inferParamBFromIdOrName } from "./model-param-b-BQFczpbd.js";
97
97
  import { n as redactSecrets } from "./format-CZeGyu83.js";
98
- import { a as isLocalBaseUrl, c as normalizeAlias, d as resolveModelTarget, f as updateConfig, i as formatTokenK, l as resolveKnownAgentId, n as ensureFlagCompatibility, o as loadValidConfigOrThrow, r as formatMs, s as mergePrimaryFallbackConfig, t as applyDefaultModelPrimaryUpdate, u as resolveModelKeysFromEntries } from "./shared-Dh-O8nRd.js";
99
- import { d as applyAuthProfileConfig, n as validateAnthropicSetupToken } from "./auth-token-fgnCQEHT.js";
98
+ import { a as isLocalBaseUrl, c as normalizeAlias, d as resolveModelTarget, f as updateConfig, i as formatTokenK, l as resolveKnownAgentId, n as ensureFlagCompatibility, o as loadValidConfigOrThrow, r as formatMs, s as mergePrimaryFallbackConfig, t as applyDefaultModelPrimaryUpdate, u as resolveModelKeysFromEntries } from "./shared-COtpr3Ad.js";
99
+ import { d as applyAuthProfileConfig, n as validateAnthropicSetupToken } from "./auth-token-Cr28IDKY.js";
100
100
  import { n as logConfigUpdated } from "./logging-DDnP1BTp.js";
101
- import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-WLwb6tL4.js";
101
+ import { a as createVpsAwareOAuthHandlers, c as githubCopilotLoginCommand, i as resolveProviderMatch, n as mergeConfigPatch, o as isRemoteEnvironment, r as pickAuthMethod, s as resolvePluginProviders, t as applyDefaultModel } from "./provider-auth-helpers-D2FDvwT5.js";
102
102
  import crypto from "node:crypto";
103
103
  import path from "node:path";
104
- import fsPromises from "node:fs/promises";
104
+ import fs from "node:fs/promises";
105
105
  import { complete, getEnvApiKey, getModel } from "@mariozechner/pi-ai";
106
106
  import { Type } from "@sinclair/typebox";
107
107
  import { cancel, confirm, isCancel, multiselect, select, text } from "@clack/prompts";
@@ -934,8 +934,8 @@ function printModelTable(rows, runtime, opts = {}) {
934
934
  //#region src/commands/models/list.list-command.ts
935
935
  async function modelsListCommand(opts, runtime) {
936
936
  ensureFlagCompatibility(opts);
937
- const { loadConfig } = await import("./config-BngIfn5l.js").then((n) => n.t);
938
- const { ensureAuthProfileStore } = await import("./auth-profiles-D5nYBj_Z.js").then((n) => n.t);
937
+ const { loadConfig } = await import("./config-B4jkreCN.js").then((n) => n.t);
938
+ const { ensureAuthProfileStore } = await import("./auth-profiles-Ce7R_25e.js").then((n) => n.t);
939
939
  const cfg = loadConfig();
940
940
  const authStore = ensureAuthProfileStore();
941
941
  const providerFilter = (() => {
@@ -995,7 +995,7 @@ async function modelsListCommand(opts, runtime) {
995
995
  }
996
996
  }
997
997
  if (!model) {
998
- const { resolveModel } = await import("./model-Cwbcw-km.js").then((n) => n.t);
998
+ const { resolveModel } = await import("./model-MUMSB_7d.js").then((n) => n.t);
999
999
  model = resolveModel(entry.ref.provider, entry.ref.model, void 0, cfg).model;
1000
1000
  }
1001
1001
  if (opts.local && model && !isLocalBaseUrl(model.baseUrl)) continue;
@@ -1252,7 +1252,7 @@ async function probeTarget(params) {
1252
1252
  error: "No model available for probe"
1253
1253
  };
1254
1254
  const sessionId = `probe-${target.provider}-${crypto.randomUUID()}`;
1255
- await fsPromises.mkdir(sessionDir, { recursive: true });
1255
+ await fs.mkdir(sessionDir, { recursive: true });
1256
1256
  const start = Date.now();
1257
1257
  try {
1258
1258
  await runAgentTurn({
@@ -1307,7 +1307,7 @@ async function runTargetsWithConcurrency(params) {
1307
1307
  const agentDir = resolveSymiAgentDir();
1308
1308
  const workspaceDir = resolveAgentWorkspaceDir(cfg, agentId) ?? resolveDefaultAgentWorkspaceDir();
1309
1309
  const sessionDir = resolveSessionTranscriptsDirForAgent(agentId);
1310
- await fsPromises.mkdir(workspaceDir, { recursive: true });
1310
+ await fs.mkdir(workspaceDir, { recursive: true });
1311
1311
  let completed = 0;
1312
1312
  const results = Array.from({ length: targets.length });
1313
1313
  let cursor = 0;
@@ -1,12 +1,12 @@
1
1
  import { u as isRecord } from "./utils-CTPsqyE_.js";
2
- import { b as ensureAuthProfileStore, h as listProfilesForProvider } from "./auth-profiles-D5nYBj_Z.js";
2
+ import { b as ensureAuthProfileStore, h as listProfilesForProvider } from "./auth-profiles-Ce7R_25e.js";
3
3
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
4
- import { i as loadConfig } from "./config-BngIfn5l.js";
5
- import { a as resolveAwsSdkEnvVarName, o as resolveEnvApiKey } from "./model-auth-_C07_3Yr.js";
4
+ import { i as loadConfig } from "./config-B4jkreCN.js";
5
+ import { a as resolveAwsSdkEnvVarName, o as resolveEnvApiKey } from "./model-auth-1EAQvYRv.js";
6
6
  import { r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-D-FdDfee.js";
7
7
  import { randomUUID } from "node:crypto";
8
8
  import path from "node:path";
9
- import fsPromises from "node:fs/promises";
9
+ import fs from "node:fs/promises";
10
10
  import { createAssistantMessageEventStream } from "@mariozechner/pi-ai";
11
11
  import { BedrockClient, ListFoundationModelsCommand } from "@aws-sdk/client-bedrock";
12
12
 
@@ -2416,7 +2416,7 @@ function mergeProviders(params) {
2416
2416
  }
2417
2417
  async function readJson(pathname) {
2418
2418
  try {
2419
- const raw = await fsPromises.readFile(pathname, "utf8");
2419
+ const raw = await fs.readFile(pathname, "utf8");
2420
2420
  return JSON.parse(raw);
2421
2421
  } catch {
2422
2422
  return null;
@@ -2464,7 +2464,7 @@ async function ensureSymiModelsJson(config, agentDirOverride) {
2464
2464
  });
2465
2465
  const next = `${JSON.stringify({ providers: normalizedProviders }, null, 2)}\n`;
2466
2466
  try {
2467
- existingRaw = await fsPromises.readFile(targetPath, "utf8");
2467
+ existingRaw = await fs.readFile(targetPath, "utf8");
2468
2468
  } catch {
2469
2469
  existingRaw = "";
2470
2470
  }
@@ -2472,11 +2472,11 @@ async function ensureSymiModelsJson(config, agentDirOverride) {
2472
2472
  agentDir,
2473
2473
  wrote: false
2474
2474
  };
2475
- await fsPromises.mkdir(agentDir, {
2475
+ await fs.mkdir(agentDir, {
2476
2476
  recursive: true,
2477
2477
  mode: 448
2478
2478
  });
2479
- await fsPromises.writeFile(targetPath, next, { mode: 384 });
2479
+ await fs.writeFile(targetPath, next, { mode: 384 });
2480
2480
  return {
2481
2481
  agentDir,
2482
2482
  wrote: true
@@ -4,50 +4,50 @@ import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
6
6
  import "./exec-DuYbft0z.js";
7
- import { r as resolveAgentConfig } from "./agent-scope-Bnsyyeci.js";
8
- import "./model-selection-CCTzD29o.js";
9
- import { N as VERSION, i as loadConfig } from "./config-BngIfn5l.js";
7
+ import { r as resolveAgentConfig } from "./agent-scope-DOrZjOnW.js";
8
+ import "./model-selection-7wdmO-Iw.js";
9
+ import { N as VERSION, i as loadConfig } from "./config-B4jkreCN.js";
10
10
  import "./boolean-CbZoNRMn.js";
11
11
  import "./env-BRnPI9sO.js";
12
12
  import "./shell-env-Dc3iU7HK.js";
13
13
  import { _ as sanitizeHostExecEnv } from "./manifest-registry-D1MLZEjS.js";
14
- import "./chrome-38OnGyuN.js";
14
+ import "./chrome-DJChpTwP.js";
15
15
  import "./tailscale-DpKBMIvx.js";
16
16
  import "./auth-Bkx-QuRN.js";
17
- import { i as resolveBrowserConfig } from "./server-context-DXdk410X.js";
18
- import "./routes-BwTUoI5h.js";
17
+ import { i as resolveBrowserConfig } from "./server-context-ChcbJgNo.js";
18
+ import "./routes-ivqbutvM.js";
19
19
  import "./redact-B3O-RBO1.js";
20
20
  import "./errors-bI7Tdx75.js";
21
- import "./fs-safe-B0Is-oLk.js";
22
- import "./paths-BWqg8NZT.js";
21
+ import "./fs-safe-BdejYjW8.js";
22
+ import "./paths-DObzwe08.js";
23
23
  import "./ssrf-DOZRI5XH.js";
24
- import { c as detectMime } from "./image-ops-BzCBIakN.js";
25
- import "./ports-CB_Iu83U.js";
24
+ import { c as detectMime } from "./image-ops-L70xVnpG.js";
25
+ import "./ports-gxLM5ahL.js";
26
26
  import "./trash-_YhavPQI.js";
27
27
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DgjXWzf-.js";
28
- import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout } from "./with-timeout-CLrF-Yr_.js";
29
- import { on as loadOrCreateDeviceIdentity, t as GatewayClient } from "./client-CTrfpKT3.js";
30
- import "./pairing-token-B703A1U3.js";
28
+ import { n as createBrowserRouteDispatcher, r as getMachineDisplayName, t as withTimeout } from "./with-timeout-DPR4A2dx.js";
29
+ import { on as loadOrCreateDeviceIdentity, t as GatewayClient } from "./client-Cs9Bh-G0.js";
30
+ import "./pairing-token-Dcy37-4s.js";
31
31
  import { _ as getTrustedSafeBinDirs, a as mergeExecApprovalsSocketDefaults, c as readExecApprovalsSnapshot, d as resolveExecApprovals, g as resolveSafeBins, h as evaluateShellAllowlist, l as recordAllowlistUse, m as evaluateExecAllowlist, n as addAllowlistEntry, p as saveExecApprovals, r as ensureExecApprovals, s as normalizeExecApprovals, u as requiresExecApproval, v as analyzeArgvCommand, x as requestJsonlSocket } from "./exec-approvals-DioSaIeH.js";
32
32
  import { g as resolveNodeWindowsTaskName, h as resolveNodeSystemdServiceName, m as resolveNodeLaunchAgentLabel, s as formatNodeServiceDescription } from "./constants-BLIhifCJ.js";
33
- import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-CUreKVeY.js";
33
+ import { n as createBrowserControlContext, r as startBrowserControlServiceFromConfig } from "./control-service-D8kKOts5.js";
34
34
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
35
35
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
36
36
  import "./logging-BWknayJl.js";
37
37
  import { t as ensureSymiCliOnPath } from "./path-env-BY88zbPR.js";
38
38
  import "./runtime-guard-CWA00ZXa.js";
39
- import { c as buildNodeServiceEnvironment, g as resolveNodeProgramArguments, o as resolveGatewayDevMode, p as resolvePreferredNodePath, r as isGatewayDaemonRuntime, s as emitNodeRuntimeWarning, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-CKn0wmCk.js";
40
- import "./systemd-CsoVnIbM.js";
41
- import { s as resolveGatewayLogPaths } from "./service-CRZoXO_n.js";
42
- import { a as createCliStatusTextStyles, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, m as buildDaemonServiceSnapshot, r as runServiceStop, t as runServiceRestart } from "./lifecycle-core-cSR_xiIO.js";
43
- import { s as formatRuntimeStatus } from "./systemd-hints-QISwLlFU.js";
39
+ import { c as buildNodeServiceEnvironment, g as resolveNodeProgramArguments, o as resolveGatewayDevMode, p as resolvePreferredNodePath, r as isGatewayDaemonRuntime, s as emitNodeRuntimeWarning, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DlQla_dA.js";
40
+ import "./systemd-CUIM0n5P.js";
41
+ import { s as resolveGatewayLogPaths } from "./service-e6MzlLCd.js";
42
+ import { a as createCliStatusTextStyles, f as resolveRuntimeStatusColor, g as installDaemonServiceAndEmit, h as createDaemonActionContext, i as runServiceUninstall, m as buildDaemonServiceSnapshot, r as runServiceStop, t as runServiceRestart } from "./lifecycle-core-wFwnK_mD.js";
43
+ import { s as formatRuntimeStatus } from "./systemd-hints-CsrzMCTD.js";
44
44
  import { t as parsePort } from "./parse-port-CMRD6fhd.js";
45
- import { t as resolveNodeService } from "./node-service-Cc18m-uk.js";
45
+ import { t as resolveNodeService } from "./node-service-BH08wY5j.js";
46
46
  import { t as resolveSystemRunCommand } from "./system-run-command-olPQqEUJ.js";
47
47
  import crypto from "node:crypto";
48
48
  import path from "node:path";
49
49
  import fs from "node:fs";
50
- import fsPromises from "node:fs/promises";
50
+ import fs$1 from "node:fs/promises";
51
51
  import { spawn } from "node:child_process";
52
52
 
53
53
  //#region src/node-host/config.ts
@@ -70,7 +70,7 @@ function normalizeConfig(config) {
70
70
  async function loadNodeHostConfig() {
71
71
  const filePath = resolveNodeHostConfigPath();
72
72
  try {
73
- const raw = await fsPromises.readFile(filePath, "utf8");
73
+ const raw = await fs$1.readFile(filePath, "utf8");
74
74
  return normalizeConfig(JSON.parse(raw));
75
75
  } catch {
76
76
  return null;
@@ -78,11 +78,11 @@ async function loadNodeHostConfig() {
78
78
  }
79
79
  async function saveNodeHostConfig(config) {
80
80
  const filePath = resolveNodeHostConfigPath();
81
- await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
81
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
82
82
  const payload = JSON.stringify(config, null, 2);
83
- await fsPromises.writeFile(filePath, `${payload}\n`, { mode: 384 });
83
+ await fs$1.writeFile(filePath, `${payload}\n`, { mode: 384 });
84
84
  try {
85
- await fsPromises.chmod(filePath, 384);
85
+ await fs$1.chmod(filePath, 384);
86
86
  } catch {}
87
87
  }
88
88
  async function ensureNodeHostConfig() {
@@ -172,10 +172,10 @@ function collectBrowserProxyPaths(payload) {
172
172
  return [...paths];
173
173
  }
174
174
  async function readBrowserProxyFile(filePath) {
175
- const stat = await fsPromises.stat(filePath).catch(() => null);
175
+ const stat = await fs$1.stat(filePath).catch(() => null);
176
176
  if (!stat || !stat.isFile()) return null;
177
177
  if (stat.size > BROWSER_PROXY_MAX_FILE_BYTES) throw new Error(`browser proxy file exceeds ${Math.round(BROWSER_PROXY_MAX_FILE_BYTES / (1024 * 1024))}MB`);
178
- const buffer = await fsPromises.readFile(filePath);
178
+ const buffer = await fs$1.readFile(filePath);
179
179
  const mimeType = await detectMime({
180
180
  buffer,
181
181
  filePath
@@ -1,5 +1,5 @@
1
1
  import { a as NODE_SERVICE_MARKER, g as resolveNodeWindowsTaskName, h as resolveNodeSystemdServiceName, i as NODE_SERVICE_KIND, m as resolveNodeLaunchAgentLabel, o as NODE_WINDOWS_TASK_SCRIPT_NAME } from "./constants-BLIhifCJ.js";
2
- import { t as resolveGatewayService } from "./service-CRZoXO_n.js";
2
+ import { t as resolveGatewayService } from "./service-e6MzlLCd.js";
3
3
 
4
4
  //#region src/daemon/node-service.ts
5
5
  function withNodeServiceEnv(env) {
@@ -3,9 +3,9 @@ import "./paths-By0XjHBk.js";
3
3
  import { _ as shortenHomeInString, v as shortenHomePath } from "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import { l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-Bnsyyeci.js";
7
- import "./model-selection-CCTzD29o.js";
8
- import { f as parseDurationMs, i as loadConfig } from "./config-BngIfn5l.js";
6
+ import { l as resolveDefaultAgentId, r as resolveAgentConfig } from "./agent-scope-DOrZjOnW.js";
7
+ import "./model-selection-7wdmO-Iw.js";
8
+ import { f as parseDurationMs, i as loadConfig } from "./config-B4jkreCN.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
@@ -13,12 +13,12 @@ import "./manifest-registry-D1MLZEjS.js";
13
13
  import "./redact-B3O-RBO1.js";
14
14
  import "./errors-bI7Tdx75.js";
15
15
  import "./message-channel-DgjXWzf-.js";
16
- import "./client-CTrfpKT3.js";
17
- import { a as randomIdempotencyKey } from "./call-Bpjj5p7I.js";
18
- import "./pairing-token-B703A1U3.js";
16
+ import "./client-Cs9Bh-G0.js";
17
+ import { a as randomIdempotencyKey } from "./call-xdEE97oU.js";
18
+ import "./pairing-token-Dcy37-4s.js";
19
19
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
20
20
  import { f as resolveExecApprovalsFromFile, i as maxAsk, o as minSecurity, t as DEFAULT_EXEC_APPROVAL_TIMEOUT_MS } from "./exec-approvals-DioSaIeH.js";
21
- import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeUrlToFile, i as parseEnvPairs, l as parseCameraSnapPayload, m as applyPathPrepend, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as buildNodeShellCommand, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-Cp5QP3ET.js";
21
+ import { a as canvasSnapshotTempPath, c as parseCameraClipPayload, d as writeCameraClipPayloadToFile, f as writeUrlToFile, i as parseEnvPairs, l as parseCameraSnapPayload, m as applyPathPrepend, n as screenRecordTempPath, o as parseCanvasSnapshotPayload, p as buildNodeShellCommand, r as writeScreenRecordToFile, s as cameraTempPath, t as parseScreenRecordPayload, u as writeBase64ToFile } from "./nodes-screen-De9ma6e1.js";
22
22
  import { n as parseNodeList, r as parsePairingList } from "./node-match-N7nsmfM6.js";
23
23
  import { t as parseTimeoutMs } from "./parse-timeout-DmEcHIsV.js";
24
24
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
@@ -26,8 +26,8 @@ import { n as runCommandWithRuntime } from "./cli-utils-CuyGL3rq.js";
26
26
  import { t as formatHelpExamples } from "./help-format-7hFcsqss.js";
27
27
  import "./progress-swt2y17x.js";
28
28
  import { t as renderTable } from "./table-0A3xKJVC.js";
29
- import { a as unauthorizedHintForMessage, i as resolveNodeId, n as callGatewayCli, o as formatPermissions, r as nodesCallOpts, t as buildNodeInvokeParams } from "./rpc-CwxSZZOx.js";
30
- import fsPromises from "node:fs/promises";
29
+ import { a as unauthorizedHintForMessage, i as resolveNodeId, n as callGatewayCli, o as formatPermissions, r as nodesCallOpts, t as buildNodeInvokeParams } from "./rpc-DjqFrbOc.js";
30
+ import fs from "node:fs/promises";
31
31
 
32
32
  //#region src/cli/nodes-cli/cli-utils.ts
33
33
  function getNodesTheme() {
@@ -369,7 +369,7 @@ function registerNodesCanvasCommands(nodes) {
369
369
  const hasJsonl = Boolean(opts.jsonl);
370
370
  const hasText = typeof opts.text === "string";
371
371
  if (hasJsonl === hasText) throw new Error("provide exactly one of --jsonl or --text");
372
- const jsonl = hasText ? buildA2UITextJsonl(String(opts.text ?? "")) : await fsPromises.readFile(String(opts.jsonl), "utf8");
372
+ const jsonl = hasText ? buildA2UITextJsonl(String(opts.text ?? "")) : await fs.readFile(String(opts.jsonl), "utf8");
373
373
  const { version, messageCount } = validateA2UIJsonl(jsonl);
374
374
  if (version === "v0.9") throw new Error("Detected A2UI v0.9 JSONL (createSurface). Symi currently supports v0.8 only.");
375
375
  await invokeCanvas(opts, "canvas.a2ui.pushJSONL", { jsonl });
@@ -4,7 +4,7 @@ import { randomUUID } from "node:crypto";
4
4
  import * as path$1 from "node:path";
5
5
  import path from "node:path";
6
6
  import fs from "node:fs";
7
- import * as fs$1 from "node:fs/promises";
7
+ import * as fs$2 from "node:fs/promises";
8
8
 
9
9
  //#region src/infra/path-prepend.ts
10
10
  function normalizePathPrepend(entries) {
@@ -138,7 +138,7 @@ async function writeUrlToFile(filePath, url) {
138
138
  if (typeof contentLength === "number" && Number.isFinite(contentLength) && contentLength > MAX_CAMERA_URL_DOWNLOAD_BYTES) throw new Error(`writeUrlToFile: content-length ${contentLength} exceeds max ${MAX_CAMERA_URL_DOWNLOAD_BYTES}`);
139
139
  const body = res.body;
140
140
  if (!body) throw new Error(`failed to download ${url}: empty response body`);
141
- const fileHandle = await fs$1.open(filePath, "w");
141
+ const fileHandle = await fs$2.open(filePath, "w");
142
142
  let bytes = 0;
143
143
  let thrown;
144
144
  try {
@@ -157,7 +157,7 @@ async function writeUrlToFile(filePath, url) {
157
157
  await fileHandle.close();
158
158
  }
159
159
  if (thrown) {
160
- await fs$1.unlink(filePath).catch(() => {});
160
+ await fs$2.unlink(filePath).catch(() => {});
161
161
  throw thrown;
162
162
  }
163
163
  return {
@@ -167,7 +167,7 @@ async function writeUrlToFile(filePath, url) {
167
167
  }
168
168
  async function writeBase64ToFile(filePath, base64) {
169
169
  const buf = Buffer.from(base64, "base64");
170
- await fs$1.writeFile(filePath, buf);
170
+ await fs$2.writeFile(filePath, buf);
171
171
  return {
172
172
  path: filePath,
173
173
  bytes: buf.length