@symerian/symi 3.5.22 → 3.5.24

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 (172) 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/{call-Bpjj5p7I.js → call-xdEE97oU.js} +9 -9
  11. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  12. package/dist/{channel-options-XRJiHUm5.js → channel-options-DCmWOAc0.js} +1 -1
  13. package/dist/{channels-cli-CQ4M05oy.js → channels-cli-Cs1Z0dn8.js} +57 -57
  14. package/dist/{chrome-DNssqQJs.js → chrome-3jl2ulOE.js} +7 -7
  15. package/dist/{chrome-38OnGyuN.js → chrome-DJChpTwP.js} +2 -2
  16. package/dist/{cli-B-uoiYP2.js → cli-CadU09SC.js} +45 -45
  17. package/dist/{client-CTrfpKT3.js → client-Cs9Bh-G0.js} +1 -1
  18. package/dist/{commands-registry-CwXsDVuO.js → commands-registry-Ca5hh7nh.js} +1 -1
  19. package/dist/{completion-cli-Cn_81QBb.js → completion-cli-Dd56ibFZ.js} +12 -12
  20. package/dist/{config-BngIfn5l.js → config-B4jkreCN.js} +2 -2
  21. package/dist/{config-cli-B1cPkJ4p.js → config-cli-GwUJEapt.js} +4 -4
  22. package/dist/{config-guard-DStz4_V2.js → config-guard-BRm3RiOi.js} +6 -6
  23. package/dist/{config-validation-Dxj9LRzr.js → config-validation-Cdyg1BZB.js} +1 -1
  24. package/dist/{configure-C7zmSgvC.js → configure-5md67tCP.js} +14 -14
  25. package/dist/{consolidate-CO32_TEx.js → consolidate-DymnvvYm.js} +6 -6
  26. package/dist/{control-service-CUreKVeY.js → control-service-D8kKOts5.js} +4 -4
  27. package/dist/control-ui/css/style.css +36 -4
  28. package/dist/{control-ui-assets-B8B9z_Ll.js → control-ui-assets-CJQ97d4u.js} +1 -1
  29. package/dist/{cost-cli-D-ssjcRF.js → cost-cli-DWiVCOCx.js} +3 -3
  30. package/dist/{cron-cli-otPeKxmi.js → cron-cli-CE9bV9Et.js} +7 -7
  31. package/dist/{daemon-cli-qDdMg615.js → daemon-cli-BYiG4GOU.js} +11 -11
  32. package/dist/{daemon-runtime-CKn0wmCk.js → daemon-runtime-DlQla_dA.js} +10 -10
  33. package/dist/{deliver-q23ar_Pm.js → deliver-f3cIWxXT.js} +4 -4
  34. package/dist/{deliver-CWMFmMCv.js → deliver-lTZLIQqf.js} +2 -2
  35. package/dist/{deps-CdibsPMx.js → deps-Bf9dt2UO.js} +1 -1
  36. package/dist/{devices-cli-DDPwF2Nx.js → devices-cli-Bhr6jGtH.js} +6 -6
  37. package/dist/{diagnostics-CYkqD5lP.js → diagnostics-DlZODdRf.js} +5 -5
  38. package/dist/{directory-cli-giqTe8Yg.js → directory-cli-Bm5QYEo-.js} +3 -3
  39. package/dist/{dm-policy-shared-B61_yf6G.js → dm-policy-shared-CeFt0nch.js} +1 -1
  40. package/dist/{dns-cli-Dssz4RqF.js → dns-cli-CubLq4j9.js} +3 -3
  41. package/dist/{docs-cli-Ct1STieY.js → docs-cli-PS8m1er7.js} +1 -1
  42. package/dist/{doctor-completion-CL7MyXlo.js → doctor-completion-BpUGRguQ.js} +2 -2
  43. package/dist/{doctor-config-flow-ljVnQJjo.js → doctor-config-flow-C52W1uUK.js} +9 -9
  44. package/dist/{exec-approvals-cli-DsBoQu5H.js → exec-approvals-cli-CzvIqBUd.js} +13 -13
  45. package/dist/extensionAPI.js +4 -4
  46. package/dist/{file-lock-2AecMjCa.js → file-lock-BVUYnlQv.js} +8 -8
  47. package/dist/{fs-safe-B0Is-oLk.js → fs-safe-BdejYjW8.js} +6 -6
  48. package/dist/{gateway-cli-DG_2YZ8B.js → gateway-cli-D1d5YAt0.js} +98 -98
  49. package/dist/{gateway-rpc-gaoD882s.js → gateway-rpc-BTGT1SuZ.js} +1 -1
  50. package/dist/{glass-ui-ws-Bof7krDJ.js → glass-ui-ws-BH9WH_VN.js} +67 -67
  51. package/dist/{health-CMbUI4aN.js → health-DpE9GWGn.js} +4 -4
  52. package/dist/{hooks-cli-Cgjor7F-.js → hooks-cli-D7xxbEwI.js} +59 -59
  53. package/dist/{image-ops-BzCBIakN.js → image-ops-L70xVnpG.js} +10 -10
  54. package/dist/index.js +52 -52
  55. package/dist/{inspect-DzYUb_Dl.js → inspect-CGKsaVZ4.js} +4 -4
  56. package/dist/{install-safe-path-BrpA09f2.js → install-safe-path-B2JrFspY.js} +11 -11
  57. package/dist/{installs-bnDlOSq2.js → installs-D890uIIW.js} +10 -10
  58. package/dist/{internal-csqU78gW.js → internal-DVCddhhN.js} +9 -9
  59. package/dist/{lifecycle-core-cSR_xiIO.js → lifecycle-core-wFwnK_mD.js} +5 -5
  60. package/dist/{local-roots-2Jb79HZ8.js → local-roots-CgDCgCuM.js} +1 -1
  61. package/dist/{logs-cli-Kr145PO_.js → logs-cli-DvIVuW0d.js} +7 -7
  62. package/dist/{manager-DG6PODgu.js → manager-CoCX7L5u.js} +15 -15
  63. package/dist/{manager-qrAOWmHt.js → manager-V4UCf0Av.js} +1 -1
  64. package/dist/{memory-BFnx3v3_.js → memory-B067LTL9.js} +5 -5
  65. package/dist/{memory-cli-CHNghdrm.js → memory-cli-D8Z_5-Nz.js} +12 -12
  66. package/dist/{model-Cwbcw-km.js → model-MUMSB_7d.js} +1 -1
  67. package/dist/{model-auth-_C07_3Yr.js → model-auth-1EAQvYRv.js} +2 -2
  68. package/dist/{model-catalog-BWurV7gl.js → model-catalog-IWi6-nY9.js} +3 -3
  69. package/dist/{model-picker-Dpkr5xBW.js → model-picker-Cf6UgQEh.js} +5 -5
  70. package/dist/{model-selection-CCTzD29o.js → model-selection-7wdmO-Iw.js} +1 -1
  71. package/dist/{models-cli-BbK8HMKa.js → models-cli-C979SN3Z.js} +55 -55
  72. package/dist/{models-config-DlXge3Sd.js → models-config-B5Xxy-c-.js} +8 -8
  73. package/dist/{node-cli-BPnBosC4.js → node-cli-DGybtex_.js} +27 -27
  74. package/dist/{node-service-Cc18m-uk.js → node-service-BH08wY5j.js} +1 -1
  75. package/dist/{nodes-cli-CN_m6PO5.js → nodes-cli-C-mEw2av.js} +10 -10
  76. package/dist/{nodes-screen-Cp5QP3ET.js → nodes-screen-De9ma6e1.js} +4 -4
  77. package/dist/{npm-registry-spec-C-muP97-.js → npm-registry-spec-DTqn-NXZ.js} +9 -9
  78. package/dist/{onboard-B2IcTMv-.js → onboard-CotuAZi6.js} +15 -15
  79. package/dist/{onboard-channels-wfGO5Zlh.js → onboard-channels-DSyynpou.js} +4 -4
  80. package/dist/{onboard-custom-DnDrvxSg.js → onboard-custom-BcRYreNG.js} +3 -3
  81. package/dist/{onboard-helpers-BKejzolA.js → onboard-helpers-CLXJ8zp0.js} +8 -8
  82. package/dist/{onboard-hooks-D9jHwImb.js → onboard-hooks-2SCajRKc.js} +1 -1
  83. package/dist/{onboard-remote-y3ZmP90U.js → onboard-remote-BYBai0w3.js} +1 -1
  84. package/dist/{onboard-skills-BFhHfrt9.js → onboard-skills-BxJlS1Bk.js} +3 -3
  85. package/dist/{onboarding-DqlPV372.js → onboarding-BnoGiOh3.js} +12 -12
  86. package/dist/{onboarding.finalize-Bwjv3jew.js → onboarding.finalize-g86Q4433.js} +31 -31
  87. package/dist/{onboarding.gateway-config-CiRo9EMt.js → onboarding.gateway-config-CEXjbEM0.js} +8 -8
  88. package/dist/{openai-model-default-De-UAjwg.js → openai-model-default-BkuuK-Di.js} +2 -2
  89. package/dist/{pairing-cli-CBMMCNnx.js → pairing-cli-Rsae0KnN.js} +5 -5
  90. package/dist/{pairing-store-Be-ZQK87.js → pairing-store-BNhJOnWn.js} +1 -1
  91. package/dist/{pairing-token-B703A1U3.js → pairing-token-Dcy37-4s.js} +7 -7
  92. package/dist/{paths-BWqg8NZT.js → paths-DObzwe08.js} +1 -1
  93. package/dist/{pi-auth-json-D-vdh-nY.js → pi-auth-json-Db8XJVGL.js} +6 -6
  94. package/dist/{pi-embedded-CviuByGd.js → pi-embedded-B9rtlNMc.js} +10 -10
  95. package/dist/{pi-embedded-helpers-j1JrlsI0.js → pi-embedded-helpers-D-OFjhdI.js} +6 -6
  96. package/dist/{pi-tools.policy-CvAqjEH9.js → pi-tools.policy-H2t-Xkfc.js} +3 -3
  97. package/dist/{plugin-auto-enable-BXSJTxI7.js → plugin-auto-enable-DJBhDIMq.js} +1 -1
  98. package/dist/{plugin-registry-B43UosQh.js → plugin-registry-AsC9gydF.js} +3 -3
  99. package/dist/plugin-sdk/index.js +6 -6
  100. package/dist/{plugins-cli-BV2wbjfI.js → plugins-cli-CbByGz8z.js} +54 -54
  101. package/dist/{ports-CB_Iu83U.js → ports-gxLM5ahL.js} +2 -2
  102. package/dist/{ports-Bi3V_3n9.js → ports-r7LBic2V.js} +1 -1
  103. package/dist/{program-context-BmXxHUKe.js → program-context-CiyK6MfV.js} +40 -40
  104. package/dist/{prompt-select-styled-BlQZX6pK.js → prompt-select-styled-DaNQ_GgB.js} +38 -38
  105. package/dist/{provider-auth-helpers-WLwb6tL4.js → provider-auth-helpers-D2FDvwT5.js} +6 -6
  106. package/dist/{push-apns-CBGvXev_.js → push-apns-va-DRu4U.js} +4 -4
  107. package/dist/{pw-ai-CP5pn3eU.js → pw-ai-BiBvIJzd.js} +7 -7
  108. package/dist/{pw-ai-v__CyAlM.js → pw-ai-DOAsQ5NX.js} +1 -1
  109. package/dist/{qmd-manager-Dxyue7B1.js → qmd-manager-C8-M4Pru.js} +19 -19
  110. package/dist/{qr-cli-DHw6muwK.js → qr-cli-1sCVaPcF.js} +3 -3
  111. package/dist/{register.agent-CXdTiqyP.js → register.agent-BqdQ0s30.js} +67 -67
  112. package/dist/{register.configure-DVcn-gCO.js → register.configure-Dhwi-4FG.js} +70 -70
  113. package/dist/{register.maintenance-cpspl8D6.js → register.maintenance-iMjNw9uy.js} +67 -67
  114. package/dist/{register.message-BjcYy5UG.js → register.message-Ao_b9s2g.js} +47 -47
  115. package/dist/{register.onboard-D4RN92s2.js → register.onboard-ymhSAezZ.js} +25 -25
  116. package/dist/{register.setup-BvoXF0xl.js → register.setup-CKs9mqtD.js} +28 -28
  117. package/dist/{register.status-health-sessions-DjDvCXBn.js → register.status-health-sessions-U-azRmpb.js} +41 -41
  118. package/dist/{replies-B_3j7R_Q.js → replies-CbXXjn9X.js} +1 -1
  119. package/dist/{reply-prefix-CtZtkTJK.js → reply-prefix-BFNeXT65.js} +1 -1
  120. package/dist/{resolve-route-Du0VftVs.js → resolve-route-C1IIA6kH.js} +1 -1
  121. package/dist/{routes-BwTUoI5h.js → routes-ivqbutvM.js} +10 -10
  122. package/dist/{rpc-CwxSZZOx.js → rpc-DjqFrbOc.js} +1 -1
  123. package/dist/{sandbox-CZGTCone.js → sandbox-BkznAPKO.js} +18 -18
  124. package/dist/{sandbox-cli-DEtGT_4y.js → sandbox-cli-Bb9cBtBH.js} +13 -13
  125. package/dist/{security-cli-DJd7Fcdy.js → security-cli-JKsf9SIu.js} +29 -29
  126. package/dist/{send-CxjvucMO.js → send-B0jHSNMF.js} +7 -7
  127. package/dist/{server-context-DXdk410X.js → server-context-ChcbJgNo.js} +5 -5
  128. package/dist/{server-methods-DfVfzYqq.js → server-methods-B2tykucj.js} +60 -60
  129. package/dist/{server-node-events-B0yC6hi1.js → server-node-events-BKqszk_a.js} +48 -48
  130. package/dist/{service-CRZoXO_n.js → service-e6MzlLCd.js} +15 -15
  131. package/dist/{session-dirs-a00Ad2SO.js → session-dirs-C9E2G0yZ.js} +2 -2
  132. package/dist/{session-utils-CJhcRx3E.js → session-utils-Cs1jlD-q.js} +14 -14
  133. package/dist/{sessions-BCc3THTm.js → sessions-Dxf5Kjig.js} +10 -10
  134. package/dist/{shared-C39SiDDJ.js → shared-1xPo9ygd.js} +1 -1
  135. package/dist/{shared-Dh-O8nRd.js → shared-COtpr3Ad.js} +3 -3
  136. package/dist/{skill-commands-DWvXs3lz.js → skill-commands-DDGGlq68.js} +4 -4
  137. package/dist/{skill-scanner-CIlHPszT.js → skill-scanner-BCgVcIwi.js} +5 -5
  138. package/dist/{skills-CYcBtLGH.js → skills-BwDmcZdt.js} +4 -4
  139. package/dist/{skills-cli-CD9s3cgm.js → skills-cli-B-7TY-vS.js} +7 -7
  140. package/dist/{skills-install-BTa9IuQ6.js → skills-install-Dwzsjoc8.js} +3 -3
  141. package/dist/{skills-remote-BcRQTDsZ.js → skills-remote-bz71Bstn.js} +3 -3
  142. package/dist/{skills-status-DLnCHUZ2.js → skills-status-BKX1PjCc.js} +1 -1
  143. package/dist/{sqlite-BpogPlQW.js → sqlite-Cod7C5ba.js} +5 -5
  144. package/dist/{status-BWxLtb3D.js → status-DHBVIMyL.js} +23 -23
  145. package/dist/{status-Doq8T1zj.js → status-DPGFZPpp.js} +3 -3
  146. package/dist/{status.update-CKfyV6zw.js → status.update-DGJi0OLl.js} +3 -3
  147. package/dist/{symframe-cli-D1CtN3pf.js → symframe-cli-CX3dINPw.js} +9 -9
  148. package/dist/{symi-root-DeCVdZB4.js → symi-root-BQ0IpoW2.js} +2 -2
  149. package/dist/{synthesis-DuP2d469.js → synthesis-Bc2QkGvt.js} +4 -4
  150. package/dist/{synthesis-VZNnlUTf.js → synthesis-DmqicCsT.js} +45 -45
  151. package/dist/{system-cli-r7WJj0Xh.js → system-cli-DUHzCGfK.js} +7 -7
  152. package/dist/{systemd-CsoVnIbM.js → systemd-CUIM0n5P.js} +5 -5
  153. package/dist/{systemd-hints-QISwLlFU.js → systemd-hints-CsrzMCTD.js} +6 -6
  154. package/dist/{systemd-linger-BnhuRdbt.js → systemd-linger-BzYk7A6M.js} +1 -1
  155. package/dist/{tui-J7Jxp-FF.js → tui-DCqVZ6sC.js} +7 -7
  156. package/dist/{tui-cli-DR48dU_C.js → tui-cli-CI-P3sei.js} +19 -19
  157. package/dist/{unified-runner-DXjH-prv.js → unified-runner-CznU7Ad0.js} +101 -101
  158. package/dist/{update-check-u6Jgr1cz.js → update-check-BCL_K7kx.js} +5 -5
  159. package/dist/{update-cli-CKpjWtlv.js → update-cli-DBoIBDNe.js} +77 -77
  160. package/dist/{update-runner-G2YgEATs.js → update-runner-BLV8SI96.js} +15 -15
  161. package/dist/{update-Cb0Fmxic.js → update-yYduAjKd.js} +3 -3
  162. package/dist/{webhooks-cli-DjUITimx.js → webhooks-cli-D5k-Y2A8.js} +4 -4
  163. package/dist/{with-timeout-CLrF-Yr_.js → with-timeout-DPR4A2dx.js} +1 -1
  164. package/dist/{workspace-dirs-DCICLTHx.js → workspace-dirs-jKFQf7of.js} +1 -1
  165. package/dist/{wsl-DTi7eX-V.js → wsl-CglTdtlb.js} +2 -2
  166. package/extensions/memory-core/package.json +1 -1
  167. package/extensions/msteams/CHANGELOG.md +12 -0
  168. package/extensions/msteams/package.json +1 -1
  169. package/extensions/open-prose/package.json +1 -1
  170. package/extensions/outlook/package.json +1 -1
  171. package/extensions/slack/package.json +1 -1
  172. package/package.json +1 -1
@@ -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