@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
@@ -2,27 +2,27 @@ import { j as theme } from "./registry-Sbac4a4z.js";
2
2
  import { _ as resolveStateDir } from "./paths-By0XjHBk.js";
3
3
  import { u as isRecord } from "./utils-CTPsqyE_.js";
4
4
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
5
- import { b as ensureAuthProfileStore, c as resolveApiKeyForProfile, h as listProfilesForProvider, m as dedupeProfileIds, n as resolveAuthProfileOrder } from "./auth-profiles-D5nYBj_Z.js";
5
+ import { b as ensureAuthProfileStore, c as resolveApiKeyForProfile, h as listProfilesForProvider, m as dedupeProfileIds, n as resolveAuthProfileOrder } from "./auth-profiles-Ce7R_25e.js";
6
6
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
7
7
  import { o as normalizeAgentId, p as DEFAULT_ACCOUNT_ID, s as normalizeMainKey, v as isCronRunSessionKey, x as parseAgentSessionKey } from "./session-key-DUSb7CCb.js";
8
8
  import { i as logDebug } from "./exec-DuYbft0z.js";
9
- import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
10
- import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, d as parseModelRef, h as resolveDefaultModelForAgent, m as resolveConfiguredModelRef, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
9
+ import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
10
+ import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, d as parseModelRef, h as resolveDefaultModelForAgent, m as resolveConfiguredModelRef, u as normalizeProviderId, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
11
11
  import { n as normalizeSecretInput } from "./normalize-secret-input-DjGU5EXe.js";
12
12
  import { t as resolveSymiAgentDir } from "./agent-paths-BbZSGrUA.js";
13
- import { i as loadConfig } from "./config-BngIfn5l.js";
14
- import { B as resolveAgentMainSessionKey, D as resolveSessionTranscriptCandidates, E as readSessionTitleFieldsFromTranscript, H as resolveMainSessionKey, K as buildGroupDisplayName, R as resolveFreshSessionTotalTokens, o as loadSessionStore, y as normalizeSessionDeliveryFields, z as canonicalizeMainSessionAlias } from "./sessions-BCc3THTm.js";
13
+ import { i as loadConfig } from "./config-B4jkreCN.js";
14
+ import { B as resolveAgentMainSessionKey, D as resolveSessionTranscriptCandidates, E as readSessionTitleFieldsFromTranscript, H as resolveMainSessionKey, K as buildGroupDisplayName, R as resolveFreshSessionTotalTokens, o as loadSessionStore, y as normalizeSessionDeliveryFields, z as canonicalizeMainSessionAlias } from "./sessions-Dxf5Kjig.js";
15
15
  import { n as listChannelPlugins } from "./plugins-CF5skkHh.js";
16
16
  import { c as resolveStorePath } from "./paths-BtvQ7JvU.js";
17
- import { n as getCustomProviderApiKey } from "./model-auth-_C07_3Yr.js";
18
- import { t as ensureSymiModelsJson } from "./models-config-DlXge3Sd.js";
17
+ import { n as getCustomProviderApiKey } from "./model-auth-1EAQvYRv.js";
18
+ import { t as ensureSymiModelsJson } from "./models-config-B5Xxy-c-.js";
19
19
  import { t as bindAbortRelay } from "./fetch-timeout-BhdrdVp5.js";
20
20
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
21
21
  import crypto from "node:crypto";
22
22
  import path from "node:path";
23
23
  import fs from "node:fs";
24
24
  import os from "node:os";
25
- import fsPromises from "node:fs/promises";
25
+ import fs$1 from "node:fs/promises";
26
26
 
27
27
  //#region src/logging/redact-identifier.ts
28
28
  function sha256HexPrefix(value, len = 12) {
@@ -1432,27 +1432,27 @@ function resolveRestartSentinelPath(env = process.env) {
1432
1432
  }
1433
1433
  async function writeRestartSentinel(payload, env = process.env) {
1434
1434
  const filePath = resolveRestartSentinelPath(env);
1435
- await fsPromises.mkdir(path.dirname(filePath), { recursive: true });
1435
+ await fs$1.mkdir(path.dirname(filePath), { recursive: true });
1436
1436
  const data = {
1437
1437
  version: 1,
1438
1438
  payload
1439
1439
  };
1440
- await fsPromises.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
1440
+ await fs$1.writeFile(filePath, `${JSON.stringify(data, null, 2)}\n`, "utf-8");
1441
1441
  return filePath;
1442
1442
  }
1443
1443
  async function readRestartSentinel(env = process.env) {
1444
1444
  const filePath = resolveRestartSentinelPath(env);
1445
1445
  try {
1446
- const raw = await fsPromises.readFile(filePath, "utf-8");
1446
+ const raw = await fs$1.readFile(filePath, "utf-8");
1447
1447
  let parsed;
1448
1448
  try {
1449
1449
  parsed = JSON.parse(raw);
1450
1450
  } catch {
1451
- await fsPromises.unlink(filePath).catch(() => {});
1451
+ await fs$1.unlink(filePath).catch(() => {});
1452
1452
  return null;
1453
1453
  }
1454
1454
  if (!parsed || parsed.version !== 1 || !parsed.payload) {
1455
- await fsPromises.unlink(filePath).catch(() => {});
1455
+ await fs$1.unlink(filePath).catch(() => {});
1456
1456
  return null;
1457
1457
  }
1458
1458
  return parsed;
@@ -1464,7 +1464,7 @@ async function consumeRestartSentinel(env = process.env) {
1464
1464
  const filePath = resolveRestartSentinelPath(env);
1465
1465
  const parsed = await readRestartSentinel(env);
1466
1466
  if (!parsed) return null;
1467
- await fsPromises.unlink(filePath).catch(() => {});
1467
+ await fs$1.unlink(filePath).catch(() => {});
1468
1468
  return parsed;
1469
1469
  }
1470
1470
  function formatRestartSentinelMessage(payload) {
@@ -3,7 +3,7 @@ import { d as normalizeE164 } from "./utils-CTPsqyE_.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
4
4
  import { h as normalizeOptionalAccountId, o as normalizeAgentId, r as buildAgentMainSessionKey, s as normalizeMainKey, t as DEFAULT_AGENT_ID } from "./session-key-DUSb7CCb.js";
5
5
  import { n as isPidAlive, t as resolveProcessScopedMap } from "./process-scoped-map-lWFQjQ3p.js";
6
- import { f as parseDurationMs, i as loadConfig, p as parseByteSize } from "./config-BngIfn5l.js";
6
+ import { f as parseDurationMs, i as loadConfig, p as parseByteSize } from "./config-B4jkreCN.js";
7
7
  import { s as normalizeHyphenSlug, t as getChannelDock } from "./dock-hF45sewN.js";
8
8
  import { c as listDeliverableMessageChannels, l as normalizeMessageChannel } from "./message-channel-DgjXWzf-.js";
9
9
  import { t as normalizeChatType } from "./chat-type-CUJqUqwu.js";
@@ -17,7 +17,7 @@ import crypto from "node:crypto";
17
17
  import path from "node:path";
18
18
  import fs from "node:fs";
19
19
  import os from "node:os";
20
- import fsPromises from "node:fs/promises";
20
+ import fs$1 from "node:fs/promises";
21
21
  import { CURRENT_SESSION_VERSION, SessionManager } from "@mariozechner/pi-coding-agent";
22
22
 
23
23
  //#region src/agents/session-write-lock.ts
@@ -82,7 +82,7 @@ async function releaseHeldLock(normalizedSessionFile, held, opts = {}) {
82
82
  await held.handle.close();
83
83
  } catch {}
84
84
  try {
85
- await fsPromises.rm(held.lockPath, { force: true });
85
+ await fs$1.rm(held.lockPath, { force: true });
86
86
  } catch {}
87
87
  })();
88
88
  try {
@@ -161,7 +161,7 @@ function registerCleanupHandlers() {
161
161
  }
162
162
  async function readLockPayload(lockPath) {
163
163
  try {
164
- const raw = await fsPromises.readFile(lockPath, "utf8");
164
+ const raw = await fs$1.readFile(lockPath, "utf8");
165
165
  const parsed = JSON.parse(raw);
166
166
  const payload = {};
167
167
  if (typeof parsed.pid === "number") payload.pid = parsed.pid;
@@ -198,7 +198,7 @@ async function cleanStaleLockFiles(params) {
198
198
  const nowMs = params.nowMs ?? Date.now();
199
199
  let entries = [];
200
200
  try {
201
- entries = await fsPromises.readdir(sessionsDir, { withFileTypes: true });
201
+ entries = await fs$1.readdir(sessionsDir, { withFileTypes: true });
202
202
  } catch (err) {
203
203
  if (err.code === "ENOENT") return {
204
204
  locks: [],
@@ -217,7 +217,7 @@ async function cleanStaleLockFiles(params) {
217
217
  removed: false
218
218
  };
219
219
  if (lockInfo.stale && removeStale) {
220
- await fsPromises.rm(lockPath, { force: true });
220
+ await fs$1.rm(lockPath, { force: true });
221
221
  lockInfo.removed = true;
222
222
  cleaned.push(lockInfo);
223
223
  params.log?.warn?.(`removed stale session lock: ${lockPath} (${lockInfo.staleReasons.join(", ") || "unknown"})`);
@@ -236,10 +236,10 @@ async function acquireSessionWriteLock(params) {
236
236
  const maxHoldMs = resolvePositiveMs(params.maxHoldMs, DEFAULT_MAX_HOLD_MS);
237
237
  const sessionFile = path.resolve(params.sessionFile);
238
238
  const sessionDir = path.dirname(sessionFile);
239
- await fsPromises.mkdir(sessionDir, { recursive: true });
239
+ await fs$1.mkdir(sessionDir, { recursive: true });
240
240
  let normalizedDir = sessionDir;
241
241
  try {
242
- normalizedDir = await fsPromises.realpath(sessionDir);
242
+ normalizedDir = await fs$1.realpath(sessionDir);
243
243
  } catch {}
244
244
  const normalizedSessionFile = path.join(normalizedDir, path.basename(sessionFile));
245
245
  const lockPath = `${normalizedSessionFile}.lock`;
@@ -256,7 +256,7 @@ async function acquireSessionWriteLock(params) {
256
256
  while (Date.now() - startedAt < timeoutMs) {
257
257
  attempt += 1;
258
258
  try {
259
- const handle = await fsPromises.open(lockPath, "wx");
259
+ const handle = await fs$1.open(lockPath, "wx");
260
260
  const createdAt = (/* @__PURE__ */ new Date()).toISOString();
261
261
  await handle.writeFile(JSON.stringify({
262
262
  pid: process.pid,
@@ -276,7 +276,7 @@ async function acquireSessionWriteLock(params) {
276
276
  } catch (err) {
277
277
  if (err.code !== "EEXIST") throw err;
278
278
  if (inspectLockPayload(await readLockPayload(lockPath), staleMs, Date.now()).stale) {
279
- await fsPromises.rm(lockPath, { force: true });
279
+ await fs$1.rm(lockPath, { force: true });
280
280
  continue;
281
281
  }
282
282
  const delay = Math.min(1e3, 50 * attempt);
@@ -1,7 +1,7 @@
1
1
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
2
2
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
3
3
  import { c as resolveGatewayLaunchAgentLabel, d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName } from "./constants-BLIhifCJ.js";
4
- import { t as resolveGatewayService } from "./service-CRZoXO_n.js";
4
+ import { t as resolveGatewayService } from "./service-e6MzlLCd.js";
5
5
 
6
6
  //#region src/cli/gateway-cli/shared.ts
7
7
  const toOptionString = (value) => {
@@ -1,8 +1,8 @@
1
1
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
2
2
  import { o as normalizeAgentId } from "./session-key-DUSb7CCb.js";
3
- import { n as listAgentIds } from "./agent-scope-Bnsyyeci.js";
4
- import { _ as resolveModelRefFromString, c as modelKey, r as buildModelAliasIndex, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
5
- import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
3
+ import { n as listAgentIds } from "./agent-scope-DOrZjOnW.js";
4
+ import { _ as resolveModelRefFromString, c as modelKey, r as buildModelAliasIndex, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
5
+ import { l as writeConfigFile, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
6
6
 
7
7
  //#region src/commands/models/shared.ts
8
8
  const ensureFlagCompatibility = (opts) => {
@@ -1,8 +1,8 @@
1
1
  import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
- import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-Bnsyyeci.js";
3
- import { n as buildWorkspaceSkillCommandSpecs } from "./skills-CYcBtLGH.js";
4
- import { n as listChatCommands } from "./commands-registry-CwXsDVuO.js";
5
- import { t as getRemoteSkillEligibility } from "./skills-remote-BcRQTDsZ.js";
2
+ import { c as resolveAgentWorkspaceDir, n as listAgentIds } from "./agent-scope-DOrZjOnW.js";
3
+ import { n as buildWorkspaceSkillCommandSpecs } from "./skills-BwDmcZdt.js";
4
+ import { n as listChatCommands } from "./commands-registry-Ca5hh7nh.js";
5
+ import { t as getRemoteSkillEligibility } from "./skills-remote-bz71Bstn.js";
6
6
  import fs from "node:fs";
7
7
 
8
8
  //#region src/auto-reply/skill-commands.ts
@@ -1,7 +1,7 @@
1
1
  import { i as isPathInside } from "./legacy-names-BQ9vKISY.js";
2
2
  import { i as hasErrnoCode } from "./errors-bI7Tdx75.js";
3
3
  import path from "node:path";
4
- import fsPromises from "node:fs/promises";
4
+ import fs from "node:fs/promises";
5
5
 
6
6
  //#region src/security/skill-scanner.ts
7
7
  const SCANNABLE_EXTENSIONS = new Set([
@@ -154,7 +154,7 @@ async function walkDirWithLimit(dirPath, maxFiles) {
154
154
  while (stack.length > 0 && files.length < maxFiles) {
155
155
  const currentDir = stack.pop();
156
156
  if (!currentDir) break;
157
- const entries = await fsPromises.readdir(currentDir, { withFileTypes: true });
157
+ const entries = await fs.readdir(currentDir, { withFileTypes: true });
158
158
  for (const entry of entries) {
159
159
  if (files.length >= maxFiles) break;
160
160
  if (entry.name.startsWith(".") || entry.name === "node_modules") continue;
@@ -176,7 +176,7 @@ async function resolveForcedFiles(params) {
176
176
  if (seen.has(includePath)) continue;
177
177
  let st = null;
178
178
  try {
179
- st = await fsPromises.stat(includePath);
179
+ st = await fs.stat(includePath);
180
180
  } catch (err) {
181
181
  if (hasErrnoCode(err, "ENOENT")) continue;
182
182
  throw err;
@@ -208,14 +208,14 @@ async function collectScannableFiles(dirPath, opts) {
208
208
  async function readScannableSource(filePath, maxFileBytes) {
209
209
  let st = null;
210
210
  try {
211
- st = await fsPromises.stat(filePath);
211
+ st = await fs.stat(filePath);
212
212
  } catch (err) {
213
213
  if (hasErrnoCode(err, "ENOENT")) return null;
214
214
  throw err;
215
215
  }
216
216
  if (!st?.isFile() || st.size > maxFileBytes) return null;
217
217
  try {
218
- return await fsPromises.readFile(filePath, "utf-8");
218
+ return await fs.readFile(filePath, "utf-8");
219
219
  } catch (err) {
220
220
  if (hasErrnoCode(err, "ENOENT")) return null;
221
221
  throw err;
@@ -1,13 +1,13 @@
1
1
  import { h as resolveUserPath, t as CONFIG_DIR } from "./utils-CTPsqyE_.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { i as normalizeSkillFilter, n as resolveSymiPackageRootSync } from "./symi-root-DeCVdZB4.js";
3
+ import { i as normalizeSkillFilter, n as resolveSymiPackageRootSync } from "./symi-root-BQ0IpoW2.js";
4
4
  import { d as resolveEnableState, f as resolveMemorySlotDecision, h as isDangerousHostEnvVarName, n as loadPluginManifestRegistry, u as normalizePluginsConfig } from "./manifest-registry-D1MLZEjS.js";
5
5
  import { a as resolveSymiManifestBlock, c as resolveSymiManifestRequires, d as hasBinary, f as isConfigPathTruthyWithDefaults, i as parseSymiManifestInstallBase, l as parseFrontmatterBlock, n as normalizeStringList, o as resolveSymiManifestInstall, p as resolveRuntimePlatform, r as parseFrontmatterBool, s as resolveSymiManifestOs, t as getFrontmatterString, u as evaluateRuntimeRequires } from "./frontmatter-B_jqcova.js";
6
6
  import { fileURLToPath } from "node:url";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs";
9
9
  import os from "node:os";
10
- import fsPromises from "node:fs/promises";
10
+ import fs$1 from "node:fs/promises";
11
11
  import { formatSkillsForPrompt, loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
12
12
 
13
13
  //#region src/agents/skills/frontmatter.ts
@@ -392,7 +392,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
392
392
  const isLast = idx === parts.length - 1;
393
393
  current = path.join(current, part);
394
394
  try {
395
- if ((await fsPromises.lstat(current)).isSymbolicLink()) {
395
+ if ((await fs$1.lstat(current)).isSymbolicLink()) {
396
396
  if (options?.allowFinalSymlink && isLast) return;
397
397
  const target = await tryRealpath(current);
398
398
  if (!isPathInside(rootReal, target)) throw new Error(`Symlink escapes sandbox root (${shortPath(rootReal)}): ${shortPath(current)}`);
@@ -406,7 +406,7 @@ async function assertNoSymlinkEscape(relative, root, options) {
406
406
  }
407
407
  async function tryRealpath(value) {
408
408
  try {
409
- return await fsPromises.realpath(value);
409
+ return await fs$1.realpath(value);
410
410
  } catch {
411
411
  return path.resolve(value);
412
412
  }
@@ -4,9 +4,9 @@ import { v as shortenHomePath } from "./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 { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
8
- import "./model-selection-CCTzD29o.js";
9
- import { i as loadConfig } from "./config-BngIfn5l.js";
7
+ import { c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
8
+ import "./model-selection-7wdmO-Iw.js";
9
+ import { 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";
@@ -236,7 +236,7 @@ function registerSkillsCli(program) {
236
236
  try {
237
237
  const config = loadConfig();
238
238
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
239
- const { buildWorkspaceSkillStatus } = await import("./skills-status-DLnCHUZ2.js").then((n) => n.n);
239
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-BKX1PjCc.js").then((n) => n.n);
240
240
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
241
241
  defaultRuntime.log(formatSkillsList(report, opts));
242
242
  } catch (err) {
@@ -248,7 +248,7 @@ function registerSkillsCli(program) {
248
248
  try {
249
249
  const config = loadConfig();
250
250
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
251
- const { buildWorkspaceSkillStatus } = await import("./skills-status-DLnCHUZ2.js").then((n) => n.n);
251
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-BKX1PjCc.js").then((n) => n.n);
252
252
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
253
253
  defaultRuntime.log(formatSkillInfo(report, name, opts));
254
254
  } catch (err) {
@@ -260,7 +260,7 @@ function registerSkillsCli(program) {
260
260
  try {
261
261
  const config = loadConfig();
262
262
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
263
- const { buildWorkspaceSkillStatus } = await import("./skills-status-DLnCHUZ2.js").then((n) => n.n);
263
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-BKX1PjCc.js").then((n) => n.n);
264
264
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
265
265
  defaultRuntime.log(formatSkillsCheck(report, opts));
266
266
  } catch (err) {
@@ -272,7 +272,7 @@ function registerSkillsCli(program) {
272
272
  try {
273
273
  const config = loadConfig();
274
274
  const workspaceDir = resolveAgentWorkspaceDir(config, resolveDefaultAgentId(config));
275
- const { buildWorkspaceSkillStatus } = await import("./skills-status-DLnCHUZ2.js").then((n) => n.n);
275
+ const { buildWorkspaceSkillStatus } = await import("./skills-status-BKX1PjCc.js").then((n) => n.n);
276
276
  const report = buildWorkspaceSkillStatus(workspaceDir, { config });
277
277
  defaultRuntime.log(formatSkillsList(report, {}));
278
278
  } catch (err) {
@@ -1,12 +1,12 @@
1
1
  import { h as resolveUserPath, p as resolveConfigDir, s as ensureDir } from "./utils-CTPsqyE_.js";
2
2
  import { t as runCommandWithTimeout } from "./exec-DuYbft0z.js";
3
3
  import { d as hasBinary } from "./frontmatter-B_jqcova.js";
4
- import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-CYcBtLGH.js";
4
+ import { i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, x as resolveSkillKey } from "./skills-BwDmcZdt.js";
5
5
  import { t as fetchWithSsrFGuard } from "./fetch-guard-JHxT9355.js";
6
6
  import { t as resolveBrewExecutable } from "./brew-DD55iLUe.js";
7
7
  import { t as isWithinDir } from "./path-safety-CkXjT453.js";
8
- import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-BrpA09f2.js";
9
- import { t as scanDirectoryWithSummary } from "./skill-scanner-CIlHPszT.js";
8
+ import { a as extractArchive$1, d as resolveArchiveOutputPath, f as stripArchivePath, p as validateArchiveEntryPath, r as safePathSegmentHashed, u as isWindowsDrivePath } from "./install-safe-path-B2JrFspY.js";
9
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-BCgVcIwi.js";
10
10
  import path from "node:path";
11
11
  import fs from "node:fs";
12
12
  import { pipeline } from "node:stream/promises";
@@ -1,8 +1,8 @@
1
1
  import { h as resolveUserPath, t as CONFIG_DIR } from "./utils-CTPsqyE_.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { i as loadWorkspaceSkillEntries, s as resolvePluginSkillDirs } from "./skills-CYcBtLGH.js";
4
- import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-B703A1U3.js";
5
- import { t as listAgentWorkspaceDirs } from "./workspace-dirs-DCICLTHx.js";
3
+ import { i as loadWorkspaceSkillEntries, s as resolvePluginSkillDirs } from "./skills-BwDmcZdt.js";
4
+ import { a as upsertPendingPairingRequest, c as writeJsonAtomic, i as resolvePairingPaths, n as verifyPairingToken, o as createAsyncLock, r as pruneExpiredPending, s as readJsonFile, t as generatePairingToken } from "./pairing-token-Dcy37-4s.js";
5
+ import { t as listAgentWorkspaceDirs } from "./workspace-dirs-jKFQf7of.js";
6
6
  import { randomUUID } from "node:crypto";
7
7
  import path from "node:path";
8
8
  import os from "node:os";
@@ -2,7 +2,7 @@ import { t as __exportAll } from "./rolldown-runtime-Cbj13DAv.js";
2
2
  import { t as CONFIG_DIR } from "./utils-CTPsqyE_.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
4
4
  import { d as hasBinary } from "./frontmatter-B_jqcova.js";
5
- import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-CYcBtLGH.js";
5
+ import { _ as isBundledSkillAllowed, b as resolveSkillConfig, c as resolveBundledSkillsDir, i as loadWorkspaceSkillEntries, t as resolveSkillsInstallPreferences, v as isConfigPathTruthy, y as resolveBundledAllowlist } from "./skills-BwDmcZdt.js";
6
6
  import { t as evaluateEntryMetadataRequirementsForCurrentPlatform } from "./entry-status-DnvpZhUd.js";
7
7
  import path from "node:path";
8
8
  import { loadSkillsFromDir } from "@mariozechner/pi-coding-agent";
@@ -1,17 +1,17 @@
1
1
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
2
2
  import { n as redactSensitiveText } from "./redact-B3O-RBO1.js";
3
3
  import { s as resolveSessionTranscriptsDirForAgent } from "./paths-BtvQ7JvU.js";
4
- import { a as hashText } from "./internal-csqU78gW.js";
4
+ import { a as hashText } from "./internal-DVCddhhN.js";
5
5
  import { createRequire } from "node:module";
6
6
  import path from "node:path";
7
- import fsPromises from "node:fs/promises";
7
+ import fs from "node:fs/promises";
8
8
 
9
9
  //#region src/memory/session-files.ts
10
10
  const log = createSubsystemLogger("memory");
11
11
  async function listSessionFilesForAgent(agentId) {
12
12
  const dir = resolveSessionTranscriptsDirForAgent(agentId);
13
13
  try {
14
- return (await fsPromises.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
14
+ return (await fs.readdir(dir, { withFileTypes: true })).filter((entry) => entry.isFile()).map((entry) => entry.name).filter((name) => name.endsWith(".jsonl")).map((name) => path.join(dir, name));
15
15
  } catch {
16
16
  return [];
17
17
  }
@@ -41,8 +41,8 @@ function extractSessionText(content) {
41
41
  }
42
42
  async function buildSessionEntry(absPath) {
43
43
  try {
44
- const stat = await fsPromises.stat(absPath);
45
- const lines = (await fsPromises.readFile(absPath, "utf-8")).split("\n");
44
+ const stat = await fs.stat(absPath);
45
+ const lines = (await fs.readFile(absPath, "utf-8")).split("\n");
46
46
  const collected = [];
47
47
  const lineMap = [];
48
48
  for (let jsonlIdx = 0; jsonlIdx < lines.length; jsonlIdx++) {
@@ -2,41 +2,41 @@ import { A as isRich, j as theme, x as info } from "./registry-Sbac4a4z.js";
2
2
  import { u as resolveGatewayPort } from "./paths-By0XjHBk.js";
3
3
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
4
4
  import { x as parseAgentSessionKey } from "./session-key-DUSb7CCb.js";
5
- import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
5
+ import { t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
6
6
  import { n as runExec } from "./exec-DuYbft0z.js";
7
- import { c as resolveAgentWorkspaceDir } from "./agent-scope-Bnsyyeci.js";
8
- import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-CCTzD29o.js";
9
- import { N as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-BngIfn5l.js";
7
+ import { c as resolveAgentWorkspaceDir } from "./agent-scope-DOrZjOnW.js";
8
+ import { C as DEFAULT_MODEL, S as DEFAULT_CONTEXT_TOKENS, m as resolveConfiguredModelRef, w as DEFAULT_PROVIDER } from "./model-selection-7wdmO-Iw.js";
9
+ import { N as VERSION, i as loadConfig, o as readConfigFileSnapshot } from "./config-B4jkreCN.js";
10
10
  import { o as getTailnetHostname, s as readTailscaleStatusJson } from "./tailscale-DpKBMIvx.js";
11
- import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-CB_Iu83U.js";
12
- import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-BCc3THTm.js";
11
+ import { a as inspectPortUsage, s as formatPortDiagnostics } from "./ports-gxLM5ahL.js";
12
+ import { H as resolveMainSessionKey, R as resolveFreshSessionTotalTokens, o as loadSessionStore } from "./sessions-Dxf5Kjig.js";
13
13
  import { n as listChannelPlugins } from "./plugins-CF5skkHh.js";
14
14
  import { c as resolveStorePath } from "./paths-BtvQ7JvU.js";
15
- import { A as sha256HexPrefix, D as buildChannelAccountSnapshot, E as buildChannelSummary, O as formatChannelAllowFrom, T as peekSystemEvents, _ as loadProviderUsageSummary, l as resolveSessionModelRef, m as summarizeRestartSentinel, n as classifySessionKey, p as readRestartSentinel, r as listAgentsForGateway, v as formatUsageReportLines, x as lookupContextTokens } from "./session-utils-CJhcRx3E.js";
16
- import { t as getMemorySearchManager } from "./memory-BFnx3v3_.js";
17
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-Bpjj5p7I.js";
15
+ import { A as sha256HexPrefix, D as buildChannelAccountSnapshot, E as buildChannelSummary, O as formatChannelAllowFrom, T as peekSystemEvents, _ as loadProviderUsageSummary, l as resolveSessionModelRef, m as summarizeRestartSentinel, n as classifySessionKey, p as readRestartSentinel, r as listAgentsForGateway, v as formatUsageReportLines, x as lookupContextTokens } from "./session-utils-Cs1jlD-q.js";
16
+ import { t as getMemorySearchManager } from "./memory-B067LTL9.js";
17
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-xdEE97oU.js";
18
18
  import { n as formatTimeAgo } from "./format-relative-D4GQsWlP.js";
19
- import { t as getRemoteSkillEligibility } from "./skills-remote-BcRQTDsZ.js";
19
+ import { t as getRemoteSkillEligibility } from "./skills-remote-bz71Bstn.js";
20
20
  import { r as formatDurationPrecise } from "./format-duration-CIjmjQST.js";
21
21
  import { n as withProgress } from "./progress-swt2y17x.js";
22
- import { t as buildWorkspaceSkillStatus } from "./skills-status-DLnCHUZ2.js";
22
+ import { t as buildWorkspaceSkillStatus } from "./skills-status-BKX1PjCc.js";
23
23
  import { t as resolveChannelDefaultAccountId } from "./helpers-G6zuddmF.js";
24
24
  import { t as collectChannelStatusIssues } from "./channels-status-issues-DLIzUsjR.js";
25
- import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-BKejzolA.js";
26
- import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-CRZoXO_n.js";
25
+ import { C as normalizeControlUiBasePath, g as resolveControlUiLinks } from "./onboard-helpers-CLXJ8zp0.js";
26
+ import { s as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-e6MzlLCd.js";
27
27
  import { t as formatRuntimeStatusWithDetails } from "./runtime-status-DV2uMNRb.js";
28
- import { t as readLastGatewayErrorLine } from "./diagnostics-CYkqD5lP.js";
28
+ import { t as readLastGatewayErrorLine } from "./diagnostics-DlZODdRf.js";
29
29
  import { t as renderTable } from "./table-0A3xKJVC.js";
30
- import { l as probeGateway, o as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-CXIXYDRx.js";
31
- import { t as formatHealthChannelLines } from "./health-CMbUI4aN.js";
32
- import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-u6Jgr1cz.js";
33
- import { t as resolveNodeService } from "./node-service-Cc18m-uk.js";
30
+ import { l as probeGateway, o as resolveGatewayProbeAuth$1, t as runSecurityAudit } from "./audit-Ce-u6aaR.js";
31
+ import { t as formatHealthChannelLines } from "./health-DpE9GWGn.js";
32
+ import { g as resolveUpdateChannelDisplay, i as formatGitInstallLabel, m as normalizeUpdateChannel, t as checkUpdateStatus } from "./update-check-BCL_K7kx.js";
33
+ import { t as resolveNodeService } from "./node-service-BH08wY5j.js";
34
34
  import { n as redactSecrets, t as formatGatewayAuthUsed } from "./format-CZeGyu83.js";
35
- import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-CKfyV6zw.js";
35
+ import { i as resolveUpdateAvailability, n as formatUpdateOneLiner, r as getUpdateCheckResult, t as formatUpdateAvailableHint } from "./status.update-DGJi0OLl.js";
36
36
  import path from "node:path";
37
37
  import fs from "node:fs";
38
38
  import os from "node:os";
39
- import fsPromises from "node:fs/promises";
39
+ import fs$1 from "node:fs/promises";
40
40
  import { spawnSync } from "node:child_process";
41
41
 
42
42
  //#region src/commands/gateway-presence.ts
@@ -125,7 +125,7 @@ function resolveOsSummary() {
125
125
  //#region src/commands/status-all/agents.ts
126
126
  async function fileExists$1(p) {
127
127
  try {
128
- await fsPromises.access(p);
128
+ await fs$1.access(p);
129
129
  return true;
130
130
  } catch {
131
131
  return false;
@@ -490,7 +490,7 @@ async function buildChannelsTable(cfg, opts) {
490
490
  //#endregion
491
491
  //#region src/commands/status-all/gateway.ts
492
492
  async function readFileTailLines(filePath, maxLines) {
493
- const raw = await fsPromises.readFile(filePath, "utf8").catch(() => "");
493
+ const raw = await fs$1.readFile(filePath, "utf8").catch(() => "");
494
494
  if (!raw.trim()) return [];
495
495
  const lines = raw.replace(/\r/g, "").split("\n");
496
496
  return lines.slice(Math.max(0, lines.length - maxLines)).map((line) => line.trimEnd()).filter((line) => line.trim().length > 0);
@@ -1256,7 +1256,7 @@ function resolveGatewayProbeAuth(cfg) {
1256
1256
  //#region src/commands/status.agent-local.ts
1257
1257
  async function fileExists(p) {
1258
1258
  try {
1259
- await fsPromises.access(p);
1259
+ await fs$1.access(p);
1260
1260
  return true;
1261
1261
  } catch {
1262
1262
  return false;
@@ -1,7 +1,7 @@
1
- import { o as createPluginLoaderLogger, s as loadSymiPlugins } from "./unified-runner-DXjH-prv.js";
1
+ import { o as createPluginLoaderLogger, s as loadSymiPlugins } from "./unified-runner-CznU7Ad0.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-CHbO_DkH.js";
3
- import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-Bnsyyeci.js";
4
- import { i as loadConfig } from "./config-BngIfn5l.js";
3
+ import { D as resolveDefaultAgentWorkspaceDir, c as resolveAgentWorkspaceDir, l as resolveDefaultAgentId } from "./agent-scope-DOrZjOnW.js";
4
+ import { i as loadConfig } from "./config-B4jkreCN.js";
5
5
 
6
6
  //#region src/plugins/status.ts
7
7
  const log = createSubsystemLogger("plugins");
@@ -1,7 +1,7 @@
1
1
  import { t as formatCliCommand } from "./command-format-BzjsXBTi.js";
2
- import { t as resolveSymiPackageRoot } from "./symi-root-DeCVdZB4.js";
3
- import { N as VERSION } from "./config-BngIfn5l.js";
4
- import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-u6Jgr1cz.js";
2
+ import { t as resolveSymiPackageRoot } from "./symi-root-BQ0IpoW2.js";
3
+ import { N as VERSION } from "./config-B4jkreCN.js";
4
+ import { n as compareSemverStrings, t as checkUpdateStatus } from "./update-check-BCL_K7kx.js";
5
5
 
6
6
  //#region src/commands/status.update.ts
7
7
  async function getUpdateCheckResult(params) {
@@ -3,21 +3,21 @@ import "./paths-By0XjHBk.js";
3
3
  import "./utils-CTPsqyE_.js";
4
4
  import { f as defaultRuntime } from "./subsystem-CHbO_DkH.js";
5
5
  import "./exec-DuYbft0z.js";
6
- import "./agent-scope-Bnsyyeci.js";
7
- import "./model-selection-CCTzD29o.js";
8
- import "./config-BngIfn5l.js";
6
+ import "./agent-scope-DOrZjOnW.js";
7
+ import "./model-selection-7wdmO-Iw.js";
8
+ import "./config-B4jkreCN.js";
9
9
  import "./boolean-CbZoNRMn.js";
10
10
  import "./env-BRnPI9sO.js";
11
11
  import "./shell-env-Dc3iU7HK.js";
12
12
  import "./manifest-registry-D1MLZEjS.js";
13
13
  import "./message-channel-DgjXWzf-.js";
14
- import "./client-CTrfpKT3.js";
15
- import "./call-Bpjj5p7I.js";
16
- import "./pairing-token-B703A1U3.js";
14
+ import "./client-Cs9Bh-G0.js";
15
+ import "./call-xdEE97oU.js";
16
+ import "./pairing-token-Dcy37-4s.js";
17
17
  import { t as formatDocsLink } from "./links-Bqr0FxXx.js";
18
18
  import "./progress-swt2y17x.js";
19
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-gaoD882s.js";
20
- import fsPromises from "node:fs/promises";
19
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BTGT1SuZ.js";
20
+ import fs from "node:fs/promises";
21
21
 
22
22
  //#region src/cli/symframe-cli.ts
23
23
  function registerSymframeCli(program) {
@@ -35,7 +35,7 @@ function registerSymframeCli(program) {
35
35
  "unpin"
36
36
  ]).has(action)) throw new Error(`--action must be one of: add | update | remove | dwell | release | recall | pin | unpin (got '${action}')`);
37
37
  let bodyText = opts.body;
38
- if (opts.file) bodyText = await fsPromises.readFile(opts.file, "utf8");
38
+ if (opts.file) bodyText = await fs.readFile(opts.file, "utf8");
39
39
  const params = { action };
40
40
  if (opts.id) params.id = opts.id;
41
41
  if (opts.force) params.force = true;
@@ -1,7 +1,7 @@
1
1
  import { fileURLToPath } from "node:url";
2
2
  import path from "node:path";
3
3
  import fs from "node:fs";
4
- import fsPromises from "node:fs/promises";
4
+ import fs$1 from "node:fs/promises";
5
5
 
6
6
  //#region src/agents/skills/filter.ts
7
7
  function normalizeSkillFilter(skillFilter) {
@@ -26,7 +26,7 @@ function matchesSkillFilter(cached, next) {
26
26
  const CORE_PACKAGE_NAMES = new Set(["symi", "@symerian/symi"]);
27
27
  async function readPackageName(dir) {
28
28
  try {
29
- const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
29
+ const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
30
30
  const parsed = JSON.parse(raw);
31
31
  return typeof parsed.name === "string" ? parsed.name : null;
32
32
  } catch {
@@ -6,8 +6,8 @@ import "./model-selection-BisYvTBb.js";
6
6
  import "./reply-prefix-i-FPYcoQ.js";
7
7
  import "./plugins-CZ_mYwXq.js";
8
8
  import "./replies-0nzkXt6o.js";
9
- import { n as runAgentTurn } from "./pi-embedded-CviuByGd.js";
10
- import "./deliver-q23ar_Pm.js";
9
+ import { n as runAgentTurn } from "./pi-embedded-B9rtlNMc.js";
10
+ import "./deliver-f3cIWxXT.js";
11
11
  import "./diagnostic-BdRnGknC.js";
12
12
  import "./diagnostic-session-state-DpxCUzoM.js";
13
13
  import "./chunk-CAZujdOi.js";
@@ -16,14 +16,14 @@ import "./ssrf-BCSnhba8.js";
16
16
  import "./boolean-BW6OTjPi.js";
17
17
  import "./shell-env-DgjeObDZ.js";
18
18
  import "./manifest-registry-CAWGTwb5.js";
19
- import "./chrome-DNssqQJs.js";
19
+ import "./chrome-3jl2ulOE.js";
20
20
  import "./skills-DO7WNsVJ.js";
21
21
  import "./redact-DSOAcWMe.js";
22
22
  import "./errors-BEU7IHU6.js";
23
23
  import "./tokens-yWO1wD7Z.js";
24
24
  import "./thinking-DgjGxdSP.js";
25
25
  import "./paths-BsT3BvfH.js";
26
- import "./manager-qrAOWmHt.js";
26
+ import "./manager-V4UCf0Av.js";
27
27
  import "./github-copilot-token-dYUr1mDQ.js";
28
28
  import "./sqlite-D8iYC_CU.js";
29
29
  import "./markdown-tables-jQzXAsf3.js";