skykoi 2026.3.39 → 2026.3.40

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 (175) hide show
  1. package/dist/{SKYKOI-root-B5HYTPZX.js → SKYKOI-root-AZiQv7tD.js} +2 -2
  2. package/dist/{accounts-CnTxg3dy.js → accounts-BVj7wD7a.js} +7 -7
  3. package/dist/{acp-cli-C6L7OUKw.js → acp-cli-Co2ojfg_.js} +4 -4
  4. package/dist/{acp-cli-BRl4uwBs.js → acp-cli-DnKcMnWw.js} +4 -4
  5. package/dist/{agent-ncW65WkN.js → agent-Ml5azn6Z.js} +10 -10
  6. package/dist/{agent-zhUICSua.js → agent-WpP68gCK.js} +6 -6
  7. package/dist/{agent-scope-C-oITVZT.js → agent-scope-DNm5APaI.js} +11 -11
  8. package/dist/{archive-B7z71oiV.js → archive-jA3NtOTU.js} +9 -9
  9. package/dist/{audit-q_zDY_55.js → audit-BofNAKFx.js} +7 -7
  10. package/dist/{audit-D0OQ_h8g.js → audit-zpAGRw4r.js} +16 -16
  11. package/dist/{auth-Bb35ZEqZ.js → auth-DSrYkGU-.js} +1 -1
  12. package/dist/{auth-health-CYc6Lu9i.js → auth-health-D84zwToy.js} +1 -1
  13. package/dist/{auth-profiles-BJV-XXxt.js → auth-profiles-Dl4AWMpB.js} +1 -1
  14. package/dist/build-info.json +2 -2
  15. package/dist/{call-UKT9jjH5.js → call-aRVe3g49.js} +8 -8
  16. package/dist/{call-CqlBPNlv.js → call-wa7Gy_M7.js} +2 -2
  17. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  18. package/dist/{channel-options-CRTZrTtv.js → channel-options-DF-LKLds.js} +2 -2
  19. package/dist/{channel-options-BHwXRfx2.js → channel-options-tVc0T8K3.js} +3 -3
  20. package/dist/{channel-selection-B1jlZvso.js → channel-selection-BY1UQehW.js} +1 -1
  21. package/dist/{channel-summary-BfmMtKO5.js → channel-summary-BmdepLga.js} +5 -5
  22. package/dist/{channel-summary-CCdsbpZ_.js → channel-summary-ZI618FLF.js} +3 -3
  23. package/dist/{channels-cli-D3Th8_EO.js → channels-cli-BxlpiDEL.js} +18 -18
  24. package/dist/{channels-cli-3PXGViZO.js → channels-cli-DebosrUJ.js} +36 -36
  25. package/dist/{channels-status-issues-Cx4DwKM8.js → channels-status-issues-B7_2BFtg.js} +1 -1
  26. package/dist/{chrome-CxUmwXb8.js → chrome-BRsSB_Bh.js} +7 -7
  27. package/dist/cli/daemon-cli.js +1 -1
  28. package/dist/{cli-D_kKBIfU.js → cli-Ulpv-fk6.js} +16 -16
  29. package/dist/{cli-Cmjg3ykL.js → cli-n6c4nxvy.js} +25 -25
  30. package/dist/{command-options-CvUMUixt.js → command-options-C-4ts3NY.js} +3 -3
  31. package/dist/{commands-CJbSyilT.js → commands-DJNihRJq.js} +3 -3
  32. package/dist/{completion-cli-MAhQD7Kc.js → completion-cli-DckMZBnO.js} +26 -26
  33. package/dist/{completion-cli-Bg8TpwwL.js → completion-cli-h9mpTe0h.js} +13 -13
  34. package/dist/{config-CJhjWqlt.js → config-CVSdvcRA.js} +7 -0
  35. package/dist/{config-DX7M0yZn.js → config-DotRAQmF.js} +7 -0
  36. package/dist/{config-CtkB7u5D.js → config-ZVT-gMSB.js} +9 -2
  37. package/dist/{config-guard-BKB0XPUE.js → config-guard-KJYp3wpL.js} +34 -34
  38. package/dist/{configure-DgOZJh1i.js → configure-D0wosY-y.js} +6 -6
  39. package/dist/{configure-8l2nhd-4.js → configure-DK-wQSGu.js} +10 -10
  40. package/dist/{control-service-C0tJ5ptn.js → control-service-BEliJWU5.js} +4 -4
  41. package/dist/{control-service-3OV9Ue_2.js → control-service-DigxECTw.js} +4 -4
  42. package/dist/{cron-cli-DEEXwtb8.js → cron-cli-C2Nqry4P.js} +7 -7
  43. package/dist/{cron-cli-BuTMy06J.js → cron-cli-C_qmKBqW.js} +4 -4
  44. package/dist/{daemon-cli-6WSn6akn.js → daemon-cli-CIlRkWUt.js} +10 -10
  45. package/dist/{daemon-cli-w87l38td.js → daemon-cli-Cre4ymMI.js} +11 -11
  46. package/dist/{daemon-runtime-HqcnmSTj.js → daemon-runtime-BkjrfYdN.js} +10 -10
  47. package/dist/{daemon-runtime-B7p4kL16.js → daemon-runtime-D3XrX8jd.js} +1 -1
  48. package/dist/{deliver-Dc9s9T7-.js → deliver-BHio1uEH.js} +7 -7
  49. package/dist/{deliver-D2yA2ziF.js → deliver-Df2Vc7ss.js} +2 -2
  50. package/dist/{deliver-D4YbLcJK.js → deliver-pRvfS38a.js} +4 -4
  51. package/dist/{deps-p1BWhkc1.js → deps-CJWFa9Lx.js} +2 -2
  52. package/dist/{deps-oyCOBN7k.js → deps-CiSc8Rmn.js} +2 -2
  53. package/dist/{devices-cli-DPvInMjn.js → devices-cli-BCUWSUAB.js} +3 -3
  54. package/dist/{devices-cli-DbirVCsn.js → devices-cli-CxYNw2wz.js} +4 -4
  55. package/dist/{directory-cli-B1-c4xNc.js → directory-cli-B0qhe-2c.js} +1 -1
  56. package/dist/{directory-cli-BAAhdjPH.js → directory-cli-CvMOxl0Q.js} +6 -6
  57. package/dist/{dispatcher-7jbXcXDr.js → dispatcher-Lf8eF4Ik.js} +1 -1
  58. package/dist/{dns-cli-CqEsZkfz.js → dns-cli-D4S7e1SH.js} +3 -3
  59. package/dist/{dns-cli-DMJBy1IS.js → dns-cli-ejF3pFoo.js} +1 -1
  60. package/dist/{docs-cli-BDOiFw-y.js → docs-cli-C9c1IE5_.js} +1 -1
  61. package/dist/{doctor-BkGjFABF.js → doctor-5NgvnQHt.js} +33 -33
  62. package/dist/{doctor-DrHJcej6.js → doctor-Cb3xmQ98.js} +12 -12
  63. package/dist/entry.js +1 -1
  64. package/dist/{errors-B_oMOHSO.js → errors-CDv4N5sG.js} +2 -2
  65. package/dist/{exec-approvals-cli-BYoc5KNh.js → exec-approvals-cli-BSI2Fy5p.js} +11 -11
  66. package/dist/{exec-approvals-cli-B3tbz4E6.js → exec-approvals-cli-C7c-nUXU.js} +5 -5
  67. package/dist/extensionAPI.js +8 -8
  68. package/dist/{gateway-cli-CBNmgjoa.js → gateway-cli-BNcu9vUV.js} +117 -117
  69. package/dist/{gateway-cli-C7AD20n6.js → gateway-cli-DhV1sZEt.js} +35 -35
  70. package/dist/{gateway-rpc-DQcPueX1.js → gateway-rpc-B5LKwKPr.js} +1 -1
  71. package/dist/{gateway-rpc-ByZnW4n0.js → gateway-rpc-b3bu9cbn.js} +1 -1
  72. package/dist/{github-copilot-auth-Bw2tyABo.js → github-copilot-auth-D1eKRdDP.js} +3 -3
  73. package/dist/{github-copilot-auth-3YeMs_HW.js → github-copilot-auth-na-mgwYB.js} +5 -5
  74. package/dist/{gmail-setup-utils-4SK5msI5.js → gmail-setup-utils-C93p0IzP.js} +1 -1
  75. package/dist/{health-format-BjE-x5RN.js → health-format-CoPcVvS_.js} +11 -11
  76. package/dist/{health-format-D9Q27cT0.js → health-format-DWeqky5j.js} +6 -6
  77. package/dist/{hooks-cli-82xyrKhz.js → hooks-cli-B-uj7kBc.js} +17 -17
  78. package/dist/{hooks-cli-BdAz6QGA.js → hooks-cli-nFyFT44X.js} +49 -49
  79. package/dist/{hooks-status-k4MUOGQH.js → hooks-status-Cmci_pTC.js} +1 -1
  80. package/dist/{image-cCVFBaDe.js → image-BpSb8ABB.js} +2 -2
  81. package/dist/{image-5nXazPVV.js → image-D74VjmDV.js} +8 -8
  82. package/dist/{image-DpIJU6JV.js → image-Zj1KiGb5.js} +2 -2
  83. package/dist/index.js +35 -35
  84. package/dist/{installs-CSjAIvjg.js → installs-CFgC99LI.js} +18 -18
  85. package/dist/{loader-BuAY7wJ8.js → loader-De3uQvTm.js} +115 -115
  86. package/dist/{login-qr-Ds55li0Y.js → login-qr-CvqED8XU.js} +1 -1
  87. package/dist/{login-qr-BHTIpk7i.js → login-qr-DmpXvBTg.js} +2 -2
  88. package/dist/{login-qr-CgkZri20.js → login-qr-pGaE08Jw.js} +7 -7
  89. package/dist/{logs-cli-CSNLbEaZ.js → logs-cli-BwLRM7a9.js} +4 -4
  90. package/dist/{logs-cli-BPZwQXW9.js → logs-cli-D3w6NNoj.js} +5 -5
  91. package/dist/{manager-DZ9vDFG9.js → manager-IewkLSaD.js} +15 -15
  92. package/dist/{models-cli-Bg5d1pWc.js → models-cli-CdzPMNh3.js} +17 -17
  93. package/dist/{models-cli-C_pLLd7H.js → models-cli-D56GkxjG.js} +30 -30
  94. package/dist/{net-qUVdg8oU.js → net-sP4-ayNL.js} +3 -3
  95. package/dist/{node-cli-T3ViSg58.js → node-cli-hBtrIjBK.js} +14 -14
  96. package/dist/{node-cli-BlLjHEJY.js → node-cli-umSprPTK.js} +10 -10
  97. package/dist/{node-service-CZ2f4t4z.js → node-service-Bn3J24RH.js} +1 -1
  98. package/dist/{nodes-cli-8CwN84wh.js → nodes-cli-Cndqeeh0.js} +8 -8
  99. package/dist/{nodes-cli-DsDnx21V.js → nodes-cli-VUmLZZ-L.js} +4 -4
  100. package/dist/{nodes-screen-COmr4MnV.js → nodes-screen-B4k0elxc.js} +2 -2
  101. package/dist/{onboard-channels-dMxm27a0.js → onboard-channels-BJ2ZpGj_.js} +5 -5
  102. package/dist/{onboard-channels-DjZ07HjQ.js → onboard-channels-BPqCKCSu.js} +1 -1
  103. package/dist/{onboard-skills-wetKMU6x.js → onboard-skills-BWL_rIu0.js} +9 -9
  104. package/dist/{onboard-skills-IMdoMVbQ.js → onboard-skills-CPbfCYux.js} +4 -4
  105. package/dist/{onboarding-BU3feGHm.js → onboarding-Bk8sYZKd.js} +15 -15
  106. package/dist/{pairing-cli-Cr6KM-05.js → pairing-cli-6LJJ014k.js} +1 -1
  107. package/dist/{pairing-cli-ByMyEjRg.js → pairing-cli-wmMF5wqN.js} +7 -7
  108. package/dist/{pairing-labels-DxpfDscO.js → pairing-labels-D2_BvwF2.js} +1 -1
  109. package/dist/{pairing-store-D5pH_THY.js → pairing-store-bHxLRHu0.js} +1 -1
  110. package/dist/{pi-embedded-helpers-IHwbGN7R.js → pi-embedded-helpers-CyocH3Nm.js} +2 -2
  111. package/dist/{pi-embedded-helpers-DAfvgfQC.js → pi-embedded-helpers-D5dTF-JC.js} +6 -6
  112. package/dist/{pi-embedded-helpers-I3k7k0uD.js → pi-embedded-helpers-DWaCX4-U.js} +1 -1
  113. package/dist/{pi-tools.policy-Dh7tNgTk.js → pi-tools.policy-BaCezaC3.js} +1 -1
  114. package/dist/{plugin-auto-enable-Ckty7RH7.js → plugin-auto-enable-n4uLpFqu.js} +2 -2
  115. package/dist/plugin-sdk/config/zod-schema.d.ts +7 -0
  116. package/dist/plugin-sdk/index.js +7 -0
  117. package/dist/{plugins-Czjx5qei.js → plugins-Z4YBdivb.js} +1 -1
  118. package/dist/{plugins-cli-BkrE3glb.js → plugins-cli-Dqgo10-5.js} +30 -30
  119. package/dist/{plugins-cli-C4Ilq4cd.js → plugins-cli-bGrxvSKA.js} +17 -17
  120. package/dist/{ports-B9ymx6GD.js → ports-Bb3d3ttB.js} +1 -1
  121. package/dist/{program-Cc-A6NDB.js → program-BFj4K9CK.js} +58 -58
  122. package/dist/{pw-ai-DzgG6D7d.js → pw-ai-BuTaDE6_.js} +4 -4
  123. package/dist/{pw-ai-BAHnvGn5.js → pw-ai-bLG7nQG3.js} +1 -1
  124. package/dist/{qmd-manager-DUyjTVat.js → qmd-manager-C572raWY.js} +15 -15
  125. package/dist/{register.subclis-8AdrpgMP.js → register.subclis-OPhehcB_.js} +28 -28
  126. package/dist/{reply-BBaTRH2p.js → reply-CSzRmu_L.js} +18 -18
  127. package/dist/{routes-CoNxzqK4.js → routes-CF1YY3lZ.js} +17 -17
  128. package/dist/{routes-BGA37b82.js → routes-TZ8X7uIF.js} +3 -3
  129. package/dist/{rpc-D9X1ky_m.js → rpc-DGylg8mL.js} +1 -1
  130. package/dist/{rpc-BewBTqpy.js → rpc-c3Ouvj9Z.js} +1 -1
  131. package/dist/{run-main-BNpfEDWN.js → run-main-Dg96nRaw.js} +60 -60
  132. package/dist/{runner-CfW9xkTY.js → runner-BAUJcuKH.js} +6 -6
  133. package/dist/{runner-twAuiN0W.js → runner-C5-Hm63Y.js} +30 -30
  134. package/dist/{sandbox-DyDrMxBF.js → sandbox-BHhoHYtJ.js} +21 -21
  135. package/dist/{sandbox-cli-BBLFPxSc.js → sandbox-cli-DfdVUMFD.js} +10 -10
  136. package/dist/{sandbox-cli-DYS0jr0N.js → sandbox-cli-RTstaaC3.js} +5 -5
  137. package/dist/{sandbox-BLh4X-xY.js → sandbox-pyqhXr6S.js} +4 -4
  138. package/dist/{security-cli-YoBOXKGf.js → security-cli-D2mmpAPT.js} +21 -21
  139. package/dist/{security-cli-ElrsCi5-.js → security-cli-DmfFNrJw.js} +10 -10
  140. package/dist/{server-context-CkdbWaqL.js → server-context-B7H-KlhV.js} +4 -4
  141. package/dist/{server-context-Bdeie10d.js → server-context-C-e92YdU.js} +4 -4
  142. package/dist/{server-node-events-BZhYgHty.js → server-node-events-COzAXYlM.js} +27 -27
  143. package/dist/{server-node-events-DjAW5YU2.js → server-node-events-DwZUN91W.js} +18 -18
  144. package/dist/{service-DV05Mtg_.js → service-Dn0w6vyS.js} +17 -17
  145. package/dist/{service-audit-CQ1bUSCH.js → service-audit-C_-BuSvV.js} +13 -13
  146. package/dist/{service-audit-Cyagv33t.js → service-audit-DRBHt3x1.js} +1 -1
  147. package/dist/{shared-D6pQLf6V.js → shared-B9OcWc8N.js} +1 -1
  148. package/dist/{shared-B_UA5GEy.js → shared-Dj0q68ab.js} +1 -1
  149. package/dist/{shared-OnLMEMKb.js → shared-kMTQ9UT0.js} +1 -1
  150. package/dist/{skill-scanner-BAxRMq-1.js → skill-scanner-DtMxigBM.js} +5 -5
  151. package/dist/{skills-CCunBWnn.js → skills-CVrsB4OF.js} +1 -1
  152. package/dist/{skills-cli-LTgbUYeg.js → skills-cli-CRgYzXMN.js} +5 -5
  153. package/dist/{skills-cli-B2bgo4Tz.js → skills-cli-drDlowxe.js} +1 -1
  154. package/dist/{skills-status-C7vawdcf.js → skills-status-DGIlZeAs.js} +1 -1
  155. package/dist/{sqlite-DKK1V89f.js → sqlite-BB-vJGj5.js} +8 -8
  156. package/dist/{status-Drrt9jCm.js → status-BRGUygXg.js} +2 -2
  157. package/dist/{status-PFSviRMF.js → status-CgvVkMyU.js} +3 -3
  158. package/dist/{status-BV55-WO3.js → status-es24M0Jr.js} +31 -31
  159. package/dist/{system-cli-CNiXqYr8.js → system-cli-C0HBS0Cm.js} +4 -4
  160. package/dist/{system-cli-BGGHJIX7.js → system-cli-CrE0JntR.js} +5 -5
  161. package/dist/{systemd-DQvm8tRB.js → systemd-DRXkc2Kt.js} +5 -5
  162. package/dist/{systemd-linger-DcXZ2d0V.js → systemd-linger-BqR57bHu.js} +1 -1
  163. package/dist/{tui-B9xcq5vW.js → tui-BU61z7-z.js} +5 -5
  164. package/dist/{tui-FZGQD5M2.js → tui-DXZ80a7e.js} +5 -5
  165. package/dist/{tui-cli-CkmoLmRp.js → tui-cli-BZhAicR8.js} +10 -10
  166. package/dist/{tui-cli-Bqwsu9Fh.js → tui-cli-CZgGMoZk.js} +14 -14
  167. package/dist/{update-BhfB1gW0.js → update-DoCn70aq.js} +3 -3
  168. package/dist/{update-cli-Bs-R7AkN.js → update-cli-BlJB9QXz.js} +53 -53
  169. package/dist/{update-cli-BrjHlqms.js → update-cli-DkVUnBFv.js} +26 -26
  170. package/dist/{update-runner-CH811UIe.js → update-runner-BVf31lJR.js} +5 -5
  171. package/dist/{update-runner-CIrLVqXg.js → update-runner-Dg3fAwSp.js} +25 -25
  172. package/dist/{webhooks-cli-f9ZWn6ZF.js → webhooks-cli-BOljLMnw.js} +5 -5
  173. package/dist/{webhooks-cli-DmLkm55q.js → webhooks-cli-Bx2JxmxF.js} +1 -1
  174. package/dist/{wsl-BTFKXQ4I.js → wsl-B7iFauUn.js} +3 -3
  175. package/package.json +1 -1
@@ -1,13 +1,13 @@
1
1
  import path from "node:path";
2
2
  import fs from "node:fs";
3
- import fs$1 from "node:fs/promises";
3
+ import fsPromises from "node:fs/promises";
4
4
  import { fileURLToPath } from "node:url";
5
5
 
6
6
  //#region src/infra/SKYKOI-root.ts
7
7
  const CORE_PACKAGE_NAMES = new Set(["skykoi"]);
8
8
  async function readPackageName(dir) {
9
9
  try {
10
- const raw = await fs$1.readFile(path.join(dir, "package.json"), "utf-8");
10
+ const raw = await fsPromises.readFile(path.join(dir, "package.json"), "utf-8");
11
11
  const parsed = JSON.parse(raw);
12
12
  return typeof parsed.name === "string" ? parsed.name : null;
13
13
  } catch {
@@ -3,7 +3,7 @@ import { c as normalizeAccountId, t as DEFAULT_ACCOUNT_ID } from "./session-key-
3
3
  import { l as jidToE164, m as resolveUserPath } from "./utils-BMYqLzNy.js";
4
4
  import path from "node:path";
5
5
  import fs from "node:fs";
6
- import fs$1 from "node:fs/promises";
6
+ import fsPromises from "node:fs/promises";
7
7
 
8
8
  //#region src/web/auth-store.ts
9
9
  function resolveDefaultWebAuthDir() {
@@ -56,14 +56,14 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
56
56
  maybeRestoreCredsFromBackup(resolvedAuthDir);
57
57
  const credsPath = resolveWebCredsPath(resolvedAuthDir);
58
58
  try {
59
- await fs$1.access(resolvedAuthDir);
59
+ await fsPromises.access(resolvedAuthDir);
60
60
  } catch {
61
61
  return false;
62
62
  }
63
63
  try {
64
- const stats = await fs$1.stat(credsPath);
64
+ const stats = await fsPromises.stat(credsPath);
65
65
  if (!stats.isFile() || stats.size <= 1) return false;
66
- const raw = await fs$1.readFile(credsPath, "utf-8");
66
+ const raw = await fsPromises.readFile(credsPath, "utf-8");
67
67
  JSON.parse(raw);
68
68
  return true;
69
69
  } catch {
@@ -71,7 +71,7 @@ async function webAuthExists(authDir = resolveDefaultWebAuthDir()) {
71
71
  }
72
72
  }
73
73
  async function clearLegacyBaileysAuthState(authDir) {
74
- const entries = await fs$1.readdir(authDir, { withFileTypes: true });
74
+ const entries = await fsPromises.readdir(authDir, { withFileTypes: true });
75
75
  const shouldDelete = (name) => {
76
76
  if (name === "oauth.json") return false;
77
77
  if (name === "creds.json" || name === "creds.json.bak") return true;
@@ -81,7 +81,7 @@ async function clearLegacyBaileysAuthState(authDir) {
81
81
  await Promise.all(entries.map(async (entry) => {
82
82
  if (!entry.isFile()) return;
83
83
  if (!shouldDelete(entry.name)) return;
84
- await fs$1.rm(path.join(authDir, entry.name), { force: true });
84
+ await fsPromises.rm(path.join(authDir, entry.name), { force: true });
85
85
  }));
86
86
  }
87
87
  async function logoutWeb(params) {
@@ -92,7 +92,7 @@ async function logoutWeb(params) {
92
92
  return false;
93
93
  }
94
94
  if (params.isLegacyAuthDir) await clearLegacyBaileysAuthState(resolvedAuthDir);
95
- else await fs$1.rm(resolvedAuthDir, {
95
+ else await fsPromises.rm(resolvedAuthDir, {
96
96
  recursive: true,
97
97
  force: true
98
98
  });
@@ -1,16 +1,16 @@
1
1
  import { k as theme, p as defaultRuntime } from "./entry.js";
2
- import "./auth-profiles-BJV-XXxt.js";
2
+ import "./auth-profiles-Dl4AWMpB.js";
3
3
  import "./utils-BMYqLzNy.js";
4
4
  import "./exec-CUWUdKmp.js";
5
- import "./agent-scope-C-oITVZT.js";
5
+ import "./agent-scope-DNm5APaI.js";
6
6
  import "./github-copilot-token-D3BDUkS_.js";
7
- import { i as loadConfig, j as VERSION } from "./config-CtkB7u5D.js";
7
+ import { i as loadConfig, j as VERSION } from "./config-ZVT-gMSB.js";
8
8
  import "./manifest-registry-BwckFakx.js";
9
9
  import { t as ensureSKYKOICliOnPath } from "./path-env-DKuROk9X.js";
10
10
  import "./tailscale-DPwNB3iM.js";
11
11
  import { t as GatewayClient } from "./client-CkUn7eWk.js";
12
12
  import { i as resolveGatewayAuth } from "./auth-kOl4q1D7.js";
13
- import { t as buildGatewayConnectionDetails } from "./call-UKT9jjH5.js";
13
+ import { t as buildGatewayConnectionDetails } from "./call-aRVe3g49.js";
14
14
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-6KBhOx_o.js";
15
15
  import { t as isMainModule } from "./is-main-DopiqU5A.js";
16
16
  import { t as formatDocsLink } from "./links-Br7nIvtU.js";
@@ -7,16 +7,16 @@ import "./model-selection-BVecmGTV.js";
7
7
  import "./boolean-B8-BqKGQ.js";
8
8
  import "./env-CuKWe8kv.js";
9
9
  import "./github-copilot-token-BZm0Gj7z.js";
10
- import { i as loadConfig, j as VERSION } from "./config-CJhjWqlt.js";
10
+ import { i as loadConfig, j as VERSION } from "./config-CVSdvcRA.js";
11
11
  import "./manifest-registry-BWwhsgX7.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DHb3z4h2.js";
13
- import { l as GatewayClient } from "./net-qUVdg8oU.js";
14
- import { t as buildGatewayConnectionDetails } from "./call-CqlBPNlv.js";
13
+ import { l as GatewayClient } from "./net-sP4-ayNL.js";
14
+ import { t as buildGatewayConnectionDetails } from "./call-wa7Gy_M7.js";
15
15
  import { t as formatDocsLink } from "./links-BYUF0_Hp.js";
16
16
  import "./tailscale-C9oNI3cv.js";
17
17
  import { t as isMainModule } from "./is-main-B6kCyqsv.js";
18
18
  import { t as ensureSKYKOICliOnPath } from "./path-env-BnUKFCos.js";
19
- import { i as resolveGatewayAuth } from "./auth-Bb35ZEqZ.js";
19
+ import { i as resolveGatewayAuth } from "./auth-DSrYkGU-.js";
20
20
  import { fileURLToPath } from "node:url";
21
21
  import { spawn } from "node:child_process";
22
22
  import { randomUUID } from "node:crypto";
@@ -1,19 +1,19 @@
1
1
  import { $ as DEFAULT_CHAT_CHANNEL, p as defaultRuntime } from "./entry.js";
2
- import { C as buildAllowedModelSet, D as isCliProvider, L as resolveThinkingDefault, N as resolveConfiguredModelRef, O as modelKey, _ as ensureAuthProfileStore, bt as DEFAULT_PROVIDER, vt as DEFAULT_CONTEXT_TOKENS, yt as DEFAULT_MODEL } from "./auth-profiles-BJV-XXxt.js";
2
+ import { C as buildAllowedModelSet, D as isCliProvider, L as resolveThinkingDefault, N as resolveConfiguredModelRef, O as modelKey, _ as ensureAuthProfileStore, bt as DEFAULT_PROVIDER, vt as DEFAULT_CONTEXT_TOKENS, yt as DEFAULT_MODEL } from "./auth-profiles-Dl4AWMpB.js";
3
3
  import { t as formatCliCommand } from "./command-format-B5jjY9oQ.js";
4
4
  import { d as resolveAgentIdFromSessionKey, l as normalizeAgentId, u as normalizeMainKey } from "./session-key-BmNnF5dG.js";
5
- import { a as resolveAgentModelPrimary, i as resolveAgentModelFallbacksOverride, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, x as ensureAgentWorkspace } from "./agent-scope-C-oITVZT.js";
6
- import { i as loadConfig } from "./config-CtkB7u5D.js";
5
+ import { a as resolveAgentModelPrimary, i as resolveAgentModelFallbacksOverride, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, x as ensureAgentWorkspace } from "./agent-scope-DNm5APaI.js";
6
+ import { i as loadConfig } from "./config-ZVT-gMSB.js";
7
7
  import { a as isInternalMessageChannel, d as resolveMessageChannel, i as isGatewayMessageChannel, l as normalizeMessageChannel, n as isDeliverableMessageChannel, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-6KBhOx_o.js";
8
- import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Czjx5qei.js";
9
- import { Bt as clearAgentRunContext, Dt as runEmbeddedPiAgent, H as getCliSessionId, Jt as applyModelOverrideToSessionEntry, K as resolveSendPolicy, Kt as AGENT_LANE_NESTED, Tn as runWithModelFallback, U as setCliSessionId, Vt as emitAgentEvent, W as runCliAgent, Wt as registerAgentRunContext, bn as resolveOutboundTarget, ct as clearSessionAuthProfileOverride, dn as lookupContextTokens, lt as applyVerboseOverride, ot as getSkillsSnapshotVersion, q as getRemoteSkillEligibility, qt as loadModelCatalog, xn as resolveSessionDeliveryTarget, zt as resolveAgentTimeoutMs } from "./loader-BuAY7wJ8.js";
8
+ import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Z4YBdivb.js";
9
+ import { Bt as clearAgentRunContext, Dt as runEmbeddedPiAgent, H as getCliSessionId, Jt as applyModelOverrideToSessionEntry, K as resolveSendPolicy, Kt as AGENT_LANE_NESTED, Tn as runWithModelFallback, U as setCliSessionId, Vt as emitAgentEvent, W as runCliAgent, Wt as registerAgentRunContext, bn as resolveOutboundTarget, ct as clearSessionAuthProfileOverride, dn as lookupContextTokens, lt as applyVerboseOverride, ot as getSkillsSnapshotVersion, q as getRemoteSkillEligibility, qt as loadModelCatalog, xn as resolveSessionDeliveryTarget, zt as resolveAgentTimeoutMs } from "./loader-De3uQvTm.js";
10
10
  import { n as resolveSessionFilePath, o as resolveStorePath } from "./paths-DPLOvGLU.js";
11
- import { B as normalizeThinkLevel, F as formatXHighModelHint, H as normalizeVerboseLevel, P as formatThinkingLevels, W as supportsXHighThinking } from "./pi-embedded-helpers-DAfvgfQC.js";
12
- import { a as normalizeOutboundPayloadsForJson, i as normalizeOutboundPayloads, r as formatOutboundPayloadLog, t as deliverOutboundPayloads } from "./deliver-Dc9s9T7-.js";
13
- import { A as resolveSessionResetType, D as evaluateSessionFreshness, E as resolveSessionKey, F as resolveExplicitAgentSessionKey, O as resolveChannelResetConfig, T as normalizeAccountId, d as loadSessionStore, g as updateSessionStore, k as resolveSessionResetPolicy } from "./sandbox-DyDrMxBF.js";
14
- import { r as buildWorkspaceSkillSnapshot } from "./skills-CCunBWnn.js";
11
+ import { B as normalizeThinkLevel, F as formatXHighModelHint, H as normalizeVerboseLevel, P as formatThinkingLevels, W as supportsXHighThinking } from "./pi-embedded-helpers-D5dTF-JC.js";
12
+ import { a as normalizeOutboundPayloadsForJson, i as normalizeOutboundPayloads, r as formatOutboundPayloadLog, t as deliverOutboundPayloads } from "./deliver-BHio1uEH.js";
13
+ import { A as resolveSessionResetType, D as evaluateSessionFreshness, E as resolveSessionKey, F as resolveExplicitAgentSessionKey, O as resolveChannelResetConfig, T as normalizeAccountId, d as loadSessionStore, g as updateSessionStore, k as resolveSessionResetPolicy } from "./sandbox-BHhoHYtJ.js";
14
+ import { r as buildWorkspaceSkillSnapshot } from "./skills-CVrsB4OF.js";
15
15
  import { l as hasNonzeroUsage } from "./session-cost-usage-Ceehob2Z.js";
16
- import { t as createDefaultDeps } from "./deps-oyCOBN7k.js";
16
+ import { t as createDefaultDeps } from "./deps-CiSc8Rmn.js";
17
17
  import crypto from "node:crypto";
18
18
 
19
19
  //#region src/cli/outbound-send-deps.ts
@@ -1,19 +1,19 @@
1
- import { H as normalizeThinkLevel, I as formatThinkingLevels, K as supportsXHighThinking, L as formatXHighModelHint, W as normalizeVerboseLevel } from "./pi-embedded-helpers-IHwbGN7R.js";
2
- import { An as emitAgentEvent, Er as loadModelCatalog, I as runWithModelFallback, M as resolveSessionDeliveryTarget, Nn as registerAgentRunContext, On as AGENT_LANE_NESTED, Rt as getRemoteSkillEligibility, Vr as resolveAgentTimeoutMs, Zt as getSkillsSnapshotVersion, br as applyModelOverrideToSessionEntry, c as runEmbeddedPiAgent, i as runCliAgent, j as resolveOutboundTarget, kn as clearAgentRunContext, n as getCliSessionId, o as resolveSendPolicy, r as setCliSessionId, vr as lookupContextTokens, xr as applyVerboseOverride, yr as clearSessionAuthProfileOverride } from "./reply-BBaTRH2p.js";
1
+ import { H as normalizeThinkLevel, I as formatThinkingLevels, K as supportsXHighThinking, L as formatXHighModelHint, W as normalizeVerboseLevel } from "./pi-embedded-helpers-CyocH3Nm.js";
2
+ import { An as emitAgentEvent, Er as loadModelCatalog, I as runWithModelFallback, M as resolveSessionDeliveryTarget, Nn as registerAgentRunContext, On as AGENT_LANE_NESTED, Rt as getRemoteSkillEligibility, Vr as resolveAgentTimeoutMs, Zt as getSkillsSnapshotVersion, br as applyModelOverrideToSessionEntry, c as runEmbeddedPiAgent, i as runCliAgent, j as resolveOutboundTarget, kn as clearAgentRunContext, n as getCliSessionId, o as resolveSendPolicy, r as setCliSessionId, vr as lookupContextTokens, xr as applyVerboseOverride, yr as clearSessionAuthProfileOverride } from "./reply-CSzRmu_L.js";
3
3
  import { d as resolveAgentIdFromSessionKey, l as normalizeAgentId, u as normalizeMainKey } from "./session-key-DrNCyvP1.js";
4
4
  import { c as defaultRuntime, h as DEFAULT_CHAT_CHANNEL } from "./subsystem-B6KC_eUM.js";
5
5
  import { a as resolveAgentModelPrimary, i as resolveAgentModelFallbacksOverride, o as resolveAgentSkillsFilter, r as resolveAgentDir, s as resolveAgentWorkspaceDir, t as listAgentIds, x as ensureAgentWorkspace } from "./agent-scope-DgrFnRZg.js";
6
6
  import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, a as isCliProvider, d as resolveConfiguredModelRef, h as resolveThinkingDefault, o as modelKey, ot as ensureAuthProfileStore, t as buildAllowedModelSet, xt as DEFAULT_CONTEXT_TOKENS } from "./model-selection-BVecmGTV.js";
7
7
  import { t as formatCliCommand } from "./command-format-FMXZ1CPB.js";
8
- import { i as loadConfig } from "./config-CJhjWqlt.js";
8
+ import { i as loadConfig } from "./config-CVSdvcRA.js";
9
9
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Dy91ZCOv.js";
10
- import { A as resolveSessionResetPolicy, D as resolveSessionKey, I as resolveExplicitAgentSessionKey, O as evaluateSessionFreshness, T as normalizeAccountId, d as loadSessionStore, g as updateSessionStore, j as resolveSessionResetType, k as resolveChannelResetConfig } from "./sandbox-BLh4X-xY.js";
10
+ import { A as resolveSessionResetPolicy, D as resolveSessionKey, I as resolveExplicitAgentSessionKey, O as evaluateSessionFreshness, T as normalizeAccountId, d as loadSessionStore, g as updateSessionStore, j as resolveSessionResetType, k as resolveChannelResetConfig } from "./sandbox-pyqhXr6S.js";
11
11
  import { r as buildWorkspaceSkillSnapshot } from "./skills-CLfcjncu.js";
12
12
  import { a as isInternalMessageChannel, d as resolveMessageChannel, i as isGatewayMessageChannel, l as normalizeMessageChannel, n as isDeliverableMessageChannel, t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-DHb3z4h2.js";
13
13
  import { n as resolveSessionFilePath, o as resolveStorePath } from "./paths-BRP11_63.js";
14
- import { a as normalizeOutboundPayloadsForJson, i as normalizeOutboundPayloads, r as formatOutboundPayloadLog, t as deliverOutboundPayloads } from "./deliver-D4YbLcJK.js";
14
+ import { a as normalizeOutboundPayloadsForJson, i as normalizeOutboundPayloads, r as formatOutboundPayloadLog, t as deliverOutboundPayloads } from "./deliver-pRvfS38a.js";
15
15
  import { l as hasNonzeroUsage } from "./session-cost-usage-BR5ASC0b.js";
16
- import { t as createDefaultDeps } from "./deps-p1BWhkc1.js";
16
+ import { t as createDefaultDeps } from "./deps-CJWFa9Lx.js";
17
17
  import crypto from "node:crypto";
18
18
 
19
19
  //#region src/cli/outbound-send-deps.ts
@@ -2,10 +2,10 @@ import { X as resolveStateDir } from "./entry.js";
2
2
  import { _ as isSubagentSessionKey, l as normalizeAgentId, n as DEFAULT_AGENT_ID, v as parseAgentSessionKey } from "./session-key-BmNnF5dG.js";
3
3
  import { m as resolveUserPath } from "./utils-BMYqLzNy.js";
4
4
  import { t as runCommandWithTimeout } from "./exec-CUWUdKmp.js";
5
- import { t as resolveSKYKOIPackageRoot } from "./SKYKOI-root-B5HYTPZX.js";
5
+ import { t as resolveSKYKOIPackageRoot } from "./SKYKOI-root-AZiQv7tD.js";
6
6
  import path from "node:path";
7
7
  import os from "node:os";
8
- import fs from "node:fs/promises";
8
+ import fsPromises from "node:fs/promises";
9
9
  import { fileURLToPath } from "node:url";
10
10
 
11
11
  //#region src/agents/workspace-templates.ts
@@ -14,7 +14,7 @@ let cachedTemplateDir;
14
14
  let resolvingTemplateDir;
15
15
  async function pathExists(candidate) {
16
16
  try {
17
- await fs.access(candidate);
17
+ await fsPromises.access(candidate);
18
18
  return true;
19
19
  } catch {
20
20
  return false;
@@ -81,14 +81,14 @@ async function loadTemplate(name) {
81
81
  const templateDir = await resolveWorkspaceTemplateDir();
82
82
  const templatePath = path.join(templateDir, name);
83
83
  try {
84
- return stripFrontMatter(await fs.readFile(templatePath, "utf-8"));
84
+ return stripFrontMatter(await fsPromises.readFile(templatePath, "utf-8"));
85
85
  } catch {
86
86
  throw new Error(`Missing workspace template: ${name} (${templatePath}). Ensure docs/reference/templates are packaged.`);
87
87
  }
88
88
  }
89
89
  async function writeFileIfMissing(filePath, content) {
90
90
  try {
91
- await fs.writeFile(filePath, content, {
91
+ await fsPromises.writeFile(filePath, content, {
92
92
  encoding: "utf-8",
93
93
  flag: "wx"
94
94
  });
@@ -98,7 +98,7 @@ async function writeFileIfMissing(filePath, content) {
98
98
  }
99
99
  async function hasGitRepo(dir) {
100
100
  try {
101
- await fs.stat(path.join(dir, ".git"));
101
+ await fsPromises.stat(path.join(dir, ".git"));
102
102
  return true;
103
103
  } catch {
104
104
  return false;
@@ -124,7 +124,7 @@ async function ensureGitRepo(dir, isBrandNewWorkspace) {
124
124
  }
125
125
  async function ensureAgentWorkspace(params) {
126
126
  const dir = resolveUserPath(params?.dir?.trim() ? params.dir.trim() : DEFAULT_AGENT_WORKSPACE_DIR);
127
- await fs.mkdir(dir, { recursive: true });
127
+ await fsPromises.mkdir(dir, { recursive: true });
128
128
  if (!params?.ensureBootstrapFiles) return { dir };
129
129
  const agentsPath = path.join(dir, DEFAULT_AGENTS_FILENAME);
130
130
  const soulPath = path.join(dir, DEFAULT_SOUL_FILENAME);
@@ -144,7 +144,7 @@ async function ensureAgentWorkspace(params) {
144
144
  ];
145
145
  return (await Promise.all(paths.map(async (p) => {
146
146
  try {
147
- await fs.access(p);
147
+ await fsPromises.access(p);
148
148
  return true;
149
149
  } catch {
150
150
  return false;
@@ -183,7 +183,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
183
183
  for (const name of candidates) {
184
184
  const filePath = path.join(resolvedDir, name);
185
185
  try {
186
- await fs.access(filePath);
186
+ await fsPromises.access(filePath);
187
187
  entries.push({
188
188
  name,
189
189
  filePath
@@ -196,7 +196,7 @@ async function resolveMemoryBootstrapEntries(resolvedDir) {
196
196
  for (const entry of entries) {
197
197
  let key = entry.filePath;
198
198
  try {
199
- key = await fs.realpath(entry.filePath);
199
+ key = await fsPromises.realpath(entry.filePath);
200
200
  } catch {}
201
201
  if (seen.has(key)) continue;
202
202
  seen.add(key);
@@ -239,7 +239,7 @@ async function loadWorkspaceBootstrapFiles(dir) {
239
239
  entries.push(...await resolveMemoryBootstrapEntries(resolvedDir));
240
240
  const result = [];
241
241
  for (const entry of entries) try {
242
- const content = await fs.readFile(entry.filePath, "utf-8");
242
+ const content = await fsPromises.readFile(entry.filePath, "utf-8");
243
243
  result.push({
244
244
  name: entry.name,
245
245
  path: entry.filePath,
@@ -1,5 +1,5 @@
1
1
  import path from "node:path";
2
- import fs from "node:fs/promises";
2
+ import fsPromises from "node:fs/promises";
3
3
  import JSZip from "jszip";
4
4
  import * as tar from "tar";
5
5
 
@@ -18,9 +18,9 @@ function resolveArchiveKind(filePath) {
18
18
  async function resolvePackedRootDir(extractDir) {
19
19
  const direct = path.join(extractDir, "package");
20
20
  try {
21
- if ((await fs.stat(direct)).isDirectory()) return direct;
21
+ if ((await fsPromises.stat(direct)).isDirectory()) return direct;
22
22
  } catch {}
23
- const dirs = (await fs.readdir(extractDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name);
23
+ const dirs = (await fsPromises.readdir(extractDir, { withFileTypes: true })).filter((entry) => entry.isDirectory()).map((entry) => entry.name);
24
24
  if (dirs.length !== 1) throw new Error(`unexpected archive layout (dirs: ${dirs.join(", ")})`);
25
25
  const onlyDir = dirs[0];
26
26
  if (!onlyDir) throw new Error("unexpected archive layout (no package dir found)");
@@ -37,7 +37,7 @@ async function withTimeout(promise, timeoutMs, label) {
37
37
  }
38
38
  }
39
39
  async function extractZip(params) {
40
- const buffer = await fs.readFile(params.archivePath);
40
+ const buffer = await fsPromises.readFile(params.archivePath);
41
41
  const zip = await JSZip.loadAsync(buffer);
42
42
  const entries = Object.values(zip.files);
43
43
  for (const entry of entries) {
@@ -45,14 +45,14 @@ async function extractZip(params) {
45
45
  if (!entryPath || entryPath.endsWith("/")) {
46
46
  const dirPath = path.resolve(params.destDir, entryPath);
47
47
  if (!dirPath.startsWith(params.destDir)) throw new Error(`zip entry escapes destination: ${entry.name}`);
48
- await fs.mkdir(dirPath, { recursive: true });
48
+ await fsPromises.mkdir(dirPath, { recursive: true });
49
49
  continue;
50
50
  }
51
51
  const outPath = path.resolve(params.destDir, entryPath);
52
52
  if (!outPath.startsWith(params.destDir)) throw new Error(`zip entry escapes destination: ${entry.name}`);
53
- await fs.mkdir(path.dirname(outPath), { recursive: true });
53
+ await fsPromises.mkdir(path.dirname(outPath), { recursive: true });
54
54
  const data = await entry.async("nodebuffer");
55
- await fs.writeFile(outPath, data);
55
+ await fsPromises.writeFile(outPath, data);
56
56
  }
57
57
  }
58
58
  async function extractArchive(params) {
@@ -70,14 +70,14 @@ async function extractArchive(params) {
70
70
  }
71
71
  async function fileExists(filePath) {
72
72
  try {
73
- await fs.stat(filePath);
73
+ await fsPromises.stat(filePath);
74
74
  return true;
75
75
  } catch {
76
76
  return false;
77
77
  }
78
78
  }
79
79
  async function readJsonFile(filePath) {
80
- const raw = await fs.readFile(filePath, "utf-8");
80
+ const raw = await fsPromises.readFile(filePath, "utf-8");
81
81
  return JSON.parse(raw);
82
82
  }
83
83
 
@@ -3,20 +3,20 @@ import { l as normalizeAgentId } from "./session-key-DrNCyvP1.js";
3
3
  import { n as runExec } from "./exec-B_35B71R.js";
4
4
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-DgrFnRZg.js";
5
5
  import { t as formatCliCommand } from "./command-format-FMXZ1CPB.js";
6
- import { D as MAX_INCLUDE_DEPTH, E as INCLUDE_KEY, r as createConfigIO } from "./config-CJhjWqlt.js";
6
+ import { D as MAX_INCLUDE_DEPTH, E as INCLUDE_KEY, r as createConfigIO } from "./config-CVSdvcRA.js";
7
7
  import { a as MANIFEST_KEY } from "./manifest-registry-BWwhsgX7.js";
8
8
  import { n as listChannelPlugins } from "./plugins-Dy91ZCOv.js";
9
- import { $ as resolveSandboxToolPolicyForAgent, Z as resolveSandboxConfigForAgent, ot as resolveToolProfilePolicy } from "./sandbox-BLh4X-xY.js";
9
+ import { $ as resolveSandboxToolPolicyForAgent, Z as resolveSandboxConfigForAgent, ot as resolveToolProfilePolicy } from "./sandbox-pyqhXr6S.js";
10
10
  import { i as loadWorkspaceSkillEntries } from "./skills-CLfcjncu.js";
11
- import { a as resolveProfile, i as resolveBrowserConfig } from "./server-context-CkdbWaqL.js";
11
+ import { a as resolveProfile, i as resolveBrowserConfig } from "./server-context-B7H-KlhV.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DHb3z4h2.js";
13
- import { l as GatewayClient } from "./net-qUVdg8oU.js";
14
- import { t as buildGatewayConnectionDetails } from "./call-CqlBPNlv.js";
13
+ import { l as GatewayClient } from "./net-sP4-ayNL.js";
14
+ import { t as buildGatewayConnectionDetails } from "./call-wa7Gy_M7.js";
15
15
  import { i as readChannelAllowFromStore } from "./pairing-store-DRbuKDlg.js";
16
- import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-Dh7tNgTk.js";
16
+ import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-BaCezaC3.js";
17
17
  import { t as resolveChannelDefaultAccountId } from "./helpers-yjIEMzi8.js";
18
18
  import { t as scanDirectoryWithSummary } from "./skill-scanner-BoGjHXUZ.js";
19
- import { i as resolveGatewayAuth } from "./auth-Bb35ZEqZ.js";
19
+ import { i as resolveGatewayAuth } from "./auth-DSrYkGU-.js";
20
20
  import os from "node:os";
21
21
  import path from "node:path";
22
22
  import JSON5 from "json5";
@@ -2,25 +2,25 @@ import { B as resolveConfigPath, J as resolveOAuthDir, X as resolveStateDir } fr
2
2
  import { t as formatCliCommand } from "./command-format-B5jjY9oQ.js";
3
3
  import { l as normalizeAgentId } from "./session-key-BmNnF5dG.js";
4
4
  import { n as runExec } from "./exec-CUWUdKmp.js";
5
- import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-C-oITVZT.js";
6
- import { D as MAX_INCLUDE_DEPTH, E as INCLUDE_KEY, r as createConfigIO } from "./config-CtkB7u5D.js";
5
+ import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-DNm5APaI.js";
6
+ import { D as MAX_INCLUDE_DEPTH, E as INCLUDE_KEY, r as createConfigIO } from "./config-ZVT-gMSB.js";
7
7
  import { a as MANIFEST_KEY } from "./manifest-registry-BwckFakx.js";
8
- import { a as resolveBrowserConfig, o as resolveProfile } from "./server-context-Bdeie10d.js";
8
+ import { a as resolveBrowserConfig, o as resolveProfile } from "./server-context-C-e92YdU.js";
9
9
  import { t as GatewayClient } from "./client-CkUn7eWk.js";
10
10
  import { i as resolveGatewayAuth } from "./auth-kOl4q1D7.js";
11
- import { t as buildGatewayConnectionDetails } from "./call-UKT9jjH5.js";
11
+ import { t as buildGatewayConnectionDetails } from "./call-aRVe3g49.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-6KBhOx_o.js";
13
- import { n as listChannelPlugins } from "./plugins-Czjx5qei.js";
13
+ import { n as listChannelPlugins } from "./plugins-Z4YBdivb.js";
14
14
  import { t as resolveChannelDefaultAccountId } from "./helpers-BToWq-9U.js";
15
- import { t as scanDirectoryWithSummary } from "./skill-scanner-BAxRMq-1.js";
16
- import { G as resolveSandboxToolPolicyForAgent, Q as resolveToolProfilePolicy, U as resolveSandboxConfigForAgent } from "./sandbox-DyDrMxBF.js";
17
- import { i as loadWorkspaceSkillEntries } from "./skills-CCunBWnn.js";
18
- import { a as isToolAllowedByPolicies, n as resolveNativeCommandsEnabled, r as resolveNativeSkillsEnabled } from "./commands-CJbSyilT.js";
19
- import { i as readChannelAllowFromStore } from "./pairing-store-D5pH_THY.js";
15
+ import { t as scanDirectoryWithSummary } from "./skill-scanner-DtMxigBM.js";
16
+ import { G as resolveSandboxToolPolicyForAgent, Q as resolveToolProfilePolicy, U as resolveSandboxConfigForAgent } from "./sandbox-BHhoHYtJ.js";
17
+ import { i as loadWorkspaceSkillEntries } from "./skills-CVrsB4OF.js";
18
+ import { a as isToolAllowedByPolicies, n as resolveNativeCommandsEnabled, r as resolveNativeSkillsEnabled } from "./commands-DJNihRJq.js";
19
+ import { i as readChannelAllowFromStore } from "./pairing-store-bHxLRHu0.js";
20
20
  import path from "node:path";
21
21
  import os from "node:os";
22
22
  import JSON5 from "json5";
23
- import fs from "node:fs/promises";
23
+ import fsPromises from "node:fs/promises";
24
24
  import { randomUUID } from "node:crypto";
25
25
 
26
26
  //#region src/gateway/probe.ts
@@ -275,7 +275,7 @@ function createIcaclsResetCommand(targetPath, opts) {
275
275
  //#region src/security/audit-fs.ts
276
276
  async function safeStat(targetPath) {
277
277
  try {
278
- const lst = await fs.lstat(targetPath);
278
+ const lst = await fsPromises.lstat(targetPath);
279
279
  return {
280
280
  ok: true,
281
281
  isSymlink: lst.isSymbolicLink(),
@@ -750,7 +750,7 @@ async function collectPluginsTrustFindings(params) {
750
750
  const extensionsDir = path.join(params.stateDir, "extensions");
751
751
  const st = await safeStat(extensionsDir);
752
752
  if (!st.ok || !st.isDir) return findings;
753
- const pluginDirs = (await fs.readdir(extensionsDir, { withFileTypes: true }).catch(() => [])).filter((e) => e.isDirectory()).map((e) => e.name).filter(Boolean);
753
+ const pluginDirs = (await fsPromises.readdir(extensionsDir, { withFileTypes: true }).catch(() => [])).filter((e) => e.isDirectory()).map((e) => e.name).filter(Boolean);
754
754
  if (pluginDirs.length === 0) return findings;
755
755
  const allow = params.cfg.plugins?.allow;
756
756
  if (!(Array.isArray(allow) && allow.length > 0)) {
@@ -815,7 +815,7 @@ async function collectIncludePathsRecursive(params) {
815
815
  if (visited.has(resolved)) continue;
816
816
  visited.add(resolved);
817
817
  result.push(resolved);
818
- const rawText = await fs.readFile(resolved, "utf-8").catch(() => null);
818
+ const rawText = await fsPromises.readFile(resolved, "utf-8").catch(() => null);
819
819
  if (!rawText) continue;
820
820
  const nestedParsed = (() => {
821
821
  try {
@@ -1060,7 +1060,7 @@ function extensionUsesSkippedScannerPath(entry) {
1060
1060
  }
1061
1061
  async function readPluginManifestExtensions(pluginPath) {
1062
1062
  const manifestPath = path.join(pluginPath, "package.json");
1063
- const raw = await fs.readFile(manifestPath, "utf-8").catch(() => "");
1063
+ const raw = await fsPromises.readFile(manifestPath, "utf-8").catch(() => "");
1064
1064
  if (!raw.trim()) return [];
1065
1065
  const extensions = JSON.parse(raw)?.[MANIFEST_KEY]?.extensions;
1066
1066
  if (!Array.isArray(extensions)) return [];
@@ -1087,7 +1087,7 @@ async function collectPluginsCodeSafetyFindings(params) {
1087
1087
  const extensionsDir = path.join(params.stateDir, "extensions");
1088
1088
  const st = await safeStat(extensionsDir);
1089
1089
  if (!st.ok || !st.isDir) return findings;
1090
- const pluginDirs = (await fs.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1090
+ const pluginDirs = (await fsPromises.readdir(extensionsDir, { withFileTypes: true }).catch((err) => {
1091
1091
  findings.push({
1092
1092
  checkId: "plugins.code_safety.scan_failed",
1093
1093
  severity: "warn",
@@ -1,4 +1,4 @@
1
- import { i as parseForwardedForClientIp, r as isTrustedProxyAddress, s as resolveGatewayClientIp } from "./net-qUVdg8oU.js";
1
+ import { i as parseForwardedForClientIp, r as isTrustedProxyAddress, s as resolveGatewayClientIp } from "./net-sP4-ayNL.js";
2
2
  import { c as readTailscaleWhoisIdentity } from "./tailscale-C9oNI3cv.js";
3
3
  import { timingSafeEqual } from "node:crypto";
4
4
 
@@ -1,4 +1,4 @@
1
- import { xt as resolveAuthProfileDisplayLabel } from "./auth-profiles-BJV-XXxt.js";
1
+ import { xt as resolveAuthProfileDisplayLabel } from "./auth-profiles-Dl4AWMpB.js";
2
2
 
3
3
  //#region src/agents/auth-health.ts
4
4
  const DEFAULT_OAUTH_WARN_MS = 1440 * 60 * 1e3;
@@ -3,7 +3,7 @@ import { X as resolveStateDir, Y as resolveOAuthPath, n as isTruthyEnvValue, o a
3
3
  import { t as formatCliCommand } from "./command-format-B5jjY9oQ.js";
4
4
  import { n as DEFAULT_AGENT_ID } from "./session-key-BmNnF5dG.js";
5
5
  import { m as resolveUserPath } from "./utils-BMYqLzNy.js";
6
- import { a as resolveAgentModelPrimary } from "./agent-scope-C-oITVZT.js";
6
+ import { a as resolveAgentModelPrimary } from "./agent-scope-DNm5APaI.js";
7
7
  import { a as saveJsonFile, i as loadJsonFile, r as resolveCopilotApiToken, t as DEFAULT_COPILOT_API_BASE_URL } from "./github-copilot-token-D3BDUkS_.js";
8
8
  import { execFileSync, execSync } from "node:child_process";
9
9
  import path from "node:path";
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2026.3.39",
2
+ "version": "2026.3.40",
3
3
  "commit": "a5fe407580a020e451ac8d02c2a969d077865541",
4
- "builtAt": "2026-03-18T17:53:52.873Z"
4
+ "builtAt": "2026-03-18T18:02:08.776Z"
5
5
  }
@@ -1,20 +1,20 @@
1
1
  import { B as resolveConfigPath, W as resolveGatewayPort, X as resolveStateDir } from "./entry.js";
2
2
  import { h as shortenHomeInString, m as resolveUserPath, o as ensureDir, t as CONFIG_DIR } from "./utils-BMYqLzNy.js";
3
- import { i as loadConfig } from "./config-CtkB7u5D.js";
3
+ import { i as loadConfig } from "./config-ZVT-gMSB.js";
4
4
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-DdlcUdSm.js";
5
5
  import { Et as PROTOCOL_VERSION, Mt as normalizeFingerprint, Pt as loadOrCreateDeviceIdentity, Vt as pickPrimaryLanIPv4, t as GatewayClient } from "./client-CkUn7eWk.js";
6
6
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-6KBhOx_o.js";
7
7
  import { execFile } from "node:child_process";
8
8
  import path from "node:path";
9
9
  import { promisify } from "node:util";
10
- import fs from "node:fs/promises";
10
+ import fsPromises from "node:fs/promises";
11
11
  import { X509Certificate, randomUUID } from "node:crypto";
12
12
 
13
13
  //#region src/infra/tls/gateway.ts
14
14
  const execFileAsync = promisify(execFile);
15
15
  async function fileExists(filePath) {
16
16
  try {
17
- await fs.access(filePath);
17
+ await fsPromises.access(filePath);
18
18
  return true;
19
19
  } catch {
20
20
  return false;
@@ -41,8 +41,8 @@ async function generateSelfSignedCert(params) {
41
41
  "-subj",
42
42
  "/CN=SKYKOI-gateway"
43
43
  ]);
44
- await fs.chmod(params.keyPath, 384).catch(() => {});
45
- await fs.chmod(params.certPath, 384).catch(() => {});
44
+ await fsPromises.chmod(params.keyPath, 384).catch(() => {});
45
+ await fsPromises.chmod(params.certPath, 384).catch(() => {});
46
46
  params.log?.info?.(`gateway tls: generated self-signed cert at ${shortenHomeInString(params.certPath)}`);
47
47
  }
48
48
  async function loadGatewayTlsRuntime(cfg, log) {
@@ -80,9 +80,9 @@ async function loadGatewayTlsRuntime(cfg, log) {
80
80
  error: "gateway tls: cert/key missing"
81
81
  };
82
82
  try {
83
- const cert = await fs.readFile(certPath, "utf8");
84
- const key = await fs.readFile(keyPath, "utf8");
85
- const ca = caPath ? await fs.readFile(caPath, "utf8") : void 0;
83
+ const cert = await fsPromises.readFile(certPath, "utf8");
84
+ const key = await fsPromises.readFile(keyPath, "utf8");
85
+ const ca = caPath ? await fsPromises.readFile(caPath, "utf8") : void 0;
86
86
  const fingerprintSha256 = normalizeFingerprint(new X509Certificate(cert).fingerprint256 ?? "");
87
87
  if (!fingerprintSha256) return {
88
88
  enabled: false,
@@ -1,8 +1,8 @@
1
1
  import { g as resolveStateDir, o as resolveConfigPath, u as resolveGatewayPort } from "./paths-BP5k1v-m.js";
2
2
  import { g as shortenHomeInString, h as resolveUserPath, s as ensureDir, t as CONFIG_DIR } from "./utils-CV3CeN0V.js";
3
- import { i as loadConfig } from "./config-CJhjWqlt.js";
3
+ import { i as loadConfig } from "./config-CVSdvcRA.js";
4
4
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-DHb3z4h2.js";
5
- import { Bt as normalizeFingerprint, Ht as loadOrCreateDeviceIdentity, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-qUVdg8oU.js";
5
+ import { Bt as normalizeFingerprint, Ht as loadOrCreateDeviceIdentity, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-sP4-ayNL.js";
6
6
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-DLDGNuH2.js";
7
7
  import path from "node:path";
8
8
  import fs from "node:fs/promises";
@@ -1 +1 @@
1
- 5a48a2163553edcd880ea1cea71944ebb91d69534bb3763fa55eaf64f47cb92c
1
+ d1656554f54d9992484cdd9dbd198d545e3a186054e69601cbceb47a909b808a
@@ -1,8 +1,8 @@
1
- import { lt as loadSKYKOIPlugins } from "./reply-BBaTRH2p.js";
1
+ import { lt as loadSKYKOIPlugins } from "./reply-CSzRmu_L.js";
2
2
  import { m as CHAT_CHANNEL_ORDER, t as createSubsystemLogger } from "./subsystem-B6KC_eUM.js";
3
3
  import { c as resolveDefaultAgentId, s as resolveAgentWorkspaceDir } from "./agent-scope-DgrFnRZg.js";
4
4
  import { t as isTruthyEnvValue } from "./env-CuKWe8kv.js";
5
- import { i as loadConfig } from "./config-CJhjWqlt.js";
5
+ import { i as loadConfig } from "./config-CVSdvcRA.js";
6
6
  import { n as listChannelPlugins } from "./plugins-Dy91ZCOv.js";
7
7
  import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-KzIwJe0A.js";
8
8
 
@@ -1,7 +1,7 @@
1
1
  import { Q as CHAT_CHANNEL_ORDER, n as isTruthyEnvValue } from "./entry.js";
2
- import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-Ckty7RH7.js";
3
- import { n as listChannelPlugins } from "./plugins-Czjx5qei.js";
4
- import { n as ensurePluginRegistryLoaded } from "./command-options-CvUMUixt.js";
2
+ import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-n4uLpFqu.js";
3
+ import { n as listChannelPlugins } from "./plugins-Z4YBdivb.js";
4
+ import { n as ensurePluginRegistryLoaded } from "./command-options-C-4ts3NY.js";
5
5
 
6
6
  //#region src/cli/channel-options.ts
7
7
  function dedupe(values) {
@@ -1,5 +1,5 @@
1
1
  import { c as listDeliverableMessageChannels, l as normalizeMessageChannel } from "./message-channel-6KBhOx_o.js";
2
- import { n as listChannelPlugins } from "./plugins-Czjx5qei.js";
2
+ import { n as listChannelPlugins } from "./plugins-Z4YBdivb.js";
3
3
 
4
4
  //#region src/infra/outbound/channel-selection.ts
5
5
  const getMessageChannels = () => listDeliverableMessageChannels();
@@ -1,10 +1,10 @@
1
1
  import { k as theme, st as getActivePluginRegistry } from "./entry.js";
2
- import { N as resolveConfiguredModelRef, bt as DEFAULT_PROVIDER, yt as DEFAULT_MODEL } from "./auth-profiles-BJV-XXxt.js";
2
+ import { N as resolveConfiguredModelRef, bt as DEFAULT_PROVIDER, yt as DEFAULT_MODEL } from "./auth-profiles-Dl4AWMpB.js";
3
3
  import { t as DEFAULT_ACCOUNT_ID } from "./session-key-BmNnF5dG.js";
4
- import { i as loadConfig } from "./config-CtkB7u5D.js";
5
- import { n as listChannelPlugins } from "./plugins-Czjx5qei.js";
6
- import { L as listThinkingLevels, m as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-DAfvgfQC.js";
7
- import { it as listChannelDocks } from "./sandbox-DyDrMxBF.js";
4
+ import { i as loadConfig } from "./config-ZVT-gMSB.js";
5
+ import { n as listChannelPlugins } from "./plugins-Z4YBdivb.js";
6
+ import { L as listThinkingLevels, m as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-D5dTF-JC.js";
7
+ import { it as listChannelDocks } from "./sandbox-BHhoHYtJ.js";
8
8
  import { n as formatTokenCount } from "./usage-format-byZKzM9f.js";
9
9
  import { createRequire } from "node:module";
10
10
  import path from "node:path";
@@ -1,10 +1,10 @@
1
- import { g as formatRawAssistantErrorForUi, z as listThinkingLevels } from "./pi-embedded-helpers-IHwbGN7R.js";
1
+ import { g as formatRawAssistantErrorForUi, z as listThinkingLevels } from "./pi-embedded-helpers-CyocH3Nm.js";
2
2
  import { t as DEFAULT_ACCOUNT_ID } from "./session-key-DrNCyvP1.js";
3
3
  import { C as getActivePluginRegistry, R as theme } from "./subsystem-B6KC_eUM.js";
4
4
  import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, d as resolveConfiguredModelRef } from "./model-selection-BVecmGTV.js";
5
- import { i as loadConfig } from "./config-CJhjWqlt.js";
5
+ import { i as loadConfig } from "./config-CVSdvcRA.js";
6
6
  import { n as listChannelPlugins } from "./plugins-Dy91ZCOv.js";
7
- import { H as listChannelDocks } from "./sandbox-BLh4X-xY.js";
7
+ import { H as listChannelDocks } from "./sandbox-pyqhXr6S.js";
8
8
  import { n as formatTokenCount } from "./usage-format-DvowRSs-.js";
9
9
  import { createRequire } from "node:module";
10
10
  import path from "node:path";