skykoi 2026.3.242 → 2026.3.244

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 (127) hide show
  1. package/dist/{acp-cli-Dyp8dSQQ.js → acp-cli-B5q4dL6i.js} +6 -6
  2. package/dist/{archive-CTvmnO0Q.js → archive-CNS_m5BC.js} +1 -1
  3. package/dist/{audit-B_Ye62_8.js → audit-005sWlLr.js} +7 -7
  4. package/dist/{auth-DcUFkxj-.js → auth-DGixDs29.js} +1 -1
  5. package/dist/{auth-health-Bg2n10b5.js → auth-health-Dme6P_xB.js} +1 -1
  6. package/dist/build-info.json +3 -3
  7. package/dist/{call-B0XDsG3E.js → call-DX0qYMrV.js} +2 -2
  8. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  9. package/dist/{channel-options-B4NQAjmk.js → channel-options-a_Y0W5yN.js} +2 -2
  10. package/dist/{channel-summary-BInOQgyV.js → channel-summary-6gLEc8x9.js} +4 -4
  11. package/dist/{channels-cli-D0RsgiwG.js → channels-cli-DMKXCdPo.js} +27 -27
  12. package/dist/cli/daemon-cli.js +1 -1
  13. package/dist/{cli-B2o8IKjt.js → cli-BcM_SK_i.js} +21 -21
  14. package/dist/{completion-cli-XgEqVkhR.js → completion-cli-DwMMhTvA.js} +1 -1
  15. package/dist/{config-DUlVD6_Y.js → config-DG0yIsda.js} +3 -3
  16. package/dist/{config-guard-DwQ_NpTZ.js → config-guard-dOZ62tPA.js} +19 -19
  17. package/dist/{configure-L9kWiyGu.js → configure-Ygcb0QzK.js} +7 -7
  18. package/dist/{control-service-D2mGSObN.js → control-service-DvYWm_np.js} +1 -1
  19. package/dist/{cron-cli-b2J7rrR5.js → cron-cli-BHL0YEHi.js} +6 -6
  20. package/dist/{daemon-cli-jtn4nU7H.js → daemon-cli-C1-FCDpd.js} +9 -9
  21. package/dist/{daemon-runtime-s4bEPaLr.js → daemon-runtime-BrHV63lV.js} +1 -1
  22. package/dist/{deliver-CxXihUsx.js → deliver-DlslSAR8.js} +4 -4
  23. package/dist/{deps-BUhGa_HH.js → deps-Db-6DS0_.js} +2 -2
  24. package/dist/{devices-cli-BTCcgObp.js → devices-cli-DFT_aG0y.js} +5 -5
  25. package/dist/{directory-cli-BE7XaSkd.js → directory-cli-B4dRHesA.js} +3 -3
  26. package/dist/{dispatcher-DceYsguf.js → dispatcher-EIlc1qZN.js} +1 -1
  27. package/dist/{dist-CUntXuvE.js → dist-DRiaTLnT.js} +2 -2
  28. package/dist/{dist-DsEoGH_d.js → dist-DYK6ugDL.js} +3 -3
  29. package/dist/{dns-cli-xHimTn8G.js → dns-cli-pJyTs4WJ.js} +3 -3
  30. package/dist/{docs-cli-BXBOkHJV.js → docs-cli-D3RQXpdt.js} +3 -3
  31. package/dist/{doctor-DLLAPI4k.js → doctor-BjrZV0Lc.js} +16 -16
  32. package/dist/entry.js +1 -1
  33. package/dist/{exec-approvals-cli-C1BzEzxa.js → exec-approvals-cli-DUIWXMbF.js} +7 -7
  34. package/dist/extension-api.js +21 -21
  35. package/dist/{gateway-cli-By2iuXW_.js → gateway-cli-Dr5Ubz0Q.js} +49 -49
  36. package/dist/{gateway-rpc-B5KSW1jh.js → gateway-rpc-BmbZ18rs.js} +1 -1
  37. package/dist/{github-copilot-auth-V89YKFlq.js → github-copilot-auth-CNhgIs3p.js} +4 -4
  38. package/dist/{gmail-setup-utils-7tO-yO-H.js → gmail-setup-utils-ClKf607w.js} +1 -1
  39. package/dist/{health-format-BzY_zwAN.js → health-format-CEquFhAM.js} +5 -5
  40. package/dist/{hooks-cli-BWTKa8i2.js → hooks-cli-MNOZ6O9k.js} +24 -24
  41. package/dist/{hooks-status-BYUTsP4m.js → hooks-status-C0aYdYh8.js} +1 -1
  42. package/dist/{image-BnuO4R_F.js → image-BbxIjCEt.js} +5 -5
  43. package/dist/index.js +49 -49
  44. package/dist/{installs-C6StwqxJ.js → installs-BHLMX4pW.js} +1 -1
  45. package/dist/{koi-CPZambpG.js → koi-BfAJ6Sb1.js} +8 -8
  46. package/dist/{login-qr-C1F4yopV.js → login-qr-BVfOIfgb.js} +1 -1
  47. package/dist/{logs-cli-BYf3S-3C.js → logs-cli-_fq7jA4t.js} +6 -6
  48. package/dist/{manager-DE5IeHr7.js → manager-BJzdkhaU.js} +1 -1
  49. package/dist/{model-selection-DGrXzJoJ.js → model-selection-CEkGIwYe.js} +1 -1
  50. package/dist/{models-cli-DCpBDOI4.js → models-cli-Chr5Yp7o.js} +23 -23
  51. package/dist/{net-hcYzb5qw.js → net-CFwo3i7p.js} +2 -2
  52. package/dist/{node-cli-CEu97QUl.js → node-cli-C-ACEeSU.js} +10 -10
  53. package/dist/{nodes-cli-aau9nxBA.js → nodes-cli-DTH76Hhh.js} +6 -6
  54. package/dist/{onboard-channels-D3dBrASR.js → onboard-channels-Bk6igXEK.js} +3 -3
  55. package/dist/{onboard-skills-CBr_y6nC.js → onboard-skills-BLBaKXGy.js} +8 -8
  56. package/dist/{onboarding-5lr3zHf5.js → onboarding-BLF48_oC.js} +17 -17
  57. package/dist/{pairing-cli-H5ynv_Bo.js → pairing-cli-DyLBaOcj.js} +3 -3
  58. package/dist/{pi-embedded-helpers-BFOvHIvC.js → pi-embedded-helpers-SYv6smkX.js} +2 -2
  59. package/dist/{pi-model-discovery-DKNcYQve.js → pi-model-discovery-CG7G_woz.js} +1 -1
  60. package/dist/{pi-tools.policy-B6NGqvwX.js → pi-tools.policy-BCqUCdew.js} +2 -2
  61. package/dist/{plugin-auto-enable-PL5unXxJ.js → plugin-auto-enable-CDSibY2C.js} +1 -1
  62. package/dist/{plugin-registry-B892JwUR.js → plugin-registry-DSNYEXHW.js} +2 -2
  63. package/dist/plugin-sdk/index.js +22 -580
  64. package/dist/{plugins-cli-imCsYTkx.js → plugins-cli-rwnJMkOF.js} +25 -25
  65. package/dist/{program-iMa54mXM.js → program-BIWBgcSN.js} +6 -6
  66. package/dist/{register.subclis-Bu2eZq1w.js → register.subclis-DFI4VlXD.js} +28 -28
  67. package/dist/{reply-Cgz9s2Gn.js → reply-DmgKEa9F.js} +40 -598
  68. package/dist/{routes-rXDWA7PI.js → routes-BbTJeCHM.js} +1 -1
  69. package/dist/{rpc-CCy01zoD.js → rpc-B4u-DFh1.js} +1 -1
  70. package/dist/{run-main-CmhPCuCF.js → run-main-JDRsau7b.js} +51 -51
  71. package/dist/{runner-VRoNA2zY.js → runner-DnAaO5ft.js} +5 -5
  72. package/dist/{sandbox-B0f6vGEF.js → sandbox-DtpRfTgx.js} +4 -4
  73. package/dist/{sandbox-cli-4khKOlX9.js → sandbox-cli-JZkFcv0g.js} +8 -8
  74. package/dist/{security-cli-CXUdfMRs.js → security-cli-B4skMqVf.js} +13 -13
  75. package/dist/{server-node-events-CQgifVOv.js → server-node-events-CNZMC0uO.js} +23 -23
  76. package/dist/{service-audit-D5_xcF75.js → service-audit-0Irp8Nwq.js} +1 -1
  77. package/dist/{sessions-C9GIoZ28.js → sessions-xyW6etJT.js} +2 -2
  78. package/dist/{shared-lkFihiKy.js → shared-BaXeHg7G.js} +1 -1
  79. package/dist/{skills-BVetMWFp.js → skills-TW-WUPck.js} +1 -1
  80. package/dist/{skills-cli-DYUQURiF.js → skills-cli-CcF3J2sN.js} +6 -6
  81. package/dist/{skills-status-Bk-6M9tR.js → skills-status-KJJChFPh.js} +2 -2
  82. package/dist/{status-BWZEIjO2.js → status-CxsjnQK1.js} +2 -2
  83. package/dist/{system-cli-CTX23m3a.js → system-cli-CPhnh_LM.js} +6 -6
  84. package/dist/{tui-DhoP2zn2.js → tui-DzcJudeK.js} +6 -6
  85. package/dist/{tui-cli-Bh56lhDX.js → tui-cli-DKVRTcgC.js} +13 -13
  86. package/dist/{update-D4d5tKHh.js → update-Cm-Mc-MK.js} +1 -1
  87. package/dist/{update-cli-SbxmlHT7.js → update-cli-BNZQopR0.js} +38 -38
  88. package/dist/{update-runner-WZYy-oGm.js → update-runner-DnP_Eegv.js} +5 -5
  89. package/dist/{webhooks-cli-BnMn87ps.js → webhooks-cli-CucQ5Td7.js} +6 -6
  90. package/docs/reference/templates/USER.md +109 -12
  91. package/extensions/bluebubbles/node_modules/.bin/skykoi +2 -2
  92. package/extensions/copilot-proxy/node_modules/.bin/skykoi +2 -2
  93. package/extensions/diagnostics-otel/node_modules/.bin/acorn +21 -0
  94. package/extensions/diagnostics-otel/node_modules/.bin/skykoi +2 -2
  95. package/extensions/discord/node_modules/.bin/skykoi +2 -2
  96. package/extensions/feishu/node_modules/.bin/skykoi +2 -2
  97. package/extensions/google-antigravity-auth/node_modules/.bin/skykoi +2 -2
  98. package/extensions/google-gemini-cli-auth/node_modules/.bin/skykoi +2 -2
  99. package/extensions/googlechat/node_modules/.bin/skykoi +2 -2
  100. package/extensions/imessage/node_modules/.bin/skykoi +2 -2
  101. package/extensions/line/node_modules/.bin/skykoi +2 -2
  102. package/extensions/llm-task/node_modules/.bin/skykoi +2 -2
  103. package/extensions/lobster/node_modules/.bin/skykoi +2 -2
  104. package/extensions/matrix/node_modules/.bin/markdown-it +2 -2
  105. package/extensions/matrix/node_modules/.bin/skykoi +2 -2
  106. package/extensions/mattermost/node_modules/.bin/skykoi +2 -2
  107. package/extensions/memory-core/node_modules/.bin/skykoi +2 -2
  108. package/extensions/memory-lancedb/node_modules/.bin/arrow2csv +21 -0
  109. package/extensions/memory-lancedb/node_modules/.bin/openai +2 -2
  110. package/extensions/memory-lancedb/node_modules/.bin/skykoi +2 -2
  111. package/extensions/minimax-portal-auth/node_modules/.bin/skykoi +2 -2
  112. package/extensions/msteams/node_modules/.bin/skykoi +2 -2
  113. package/extensions/nextcloud-talk/node_modules/.bin/skykoi +2 -2
  114. package/extensions/nostr/node_modules/.bin/skykoi +2 -2
  115. package/extensions/nostr/node_modules/.bin/tsc +21 -0
  116. package/extensions/nostr/node_modules/.bin/tsserver +21 -0
  117. package/extensions/open-prose/node_modules/.bin/skykoi +2 -2
  118. package/extensions/signal/node_modules/.bin/skykoi +2 -2
  119. package/extensions/slack/node_modules/.bin/skykoi +2 -2
  120. package/extensions/telegram/node_modules/.bin/skykoi +2 -2
  121. package/extensions/tlon/node_modules/.bin/skykoi +2 -2
  122. package/extensions/twitch/node_modules/.bin/skykoi +2 -2
  123. package/extensions/voice-call/node_modules/.bin/skykoi +2 -2
  124. package/extensions/whatsapp/node_modules/.bin/skykoi +2 -2
  125. package/extensions/zalo/node_modules/.bin/skykoi +2 -2
  126. package/extensions/zalouser/node_modules/.bin/skykoi +2 -2
  127. package/package.json +1 -1
@@ -3,23 +3,23 @@ import "./paths-VdmjGGyc.js";
3
3
  import "./utils-rBzA-VDv.js";
4
4
  import "./exec-BE7MIgZB.js";
5
5
  import "./koi-scope-B7BaYiK4.js";
6
- import "./model-selection-DGrXzJoJ.js";
7
- import "./dist-CUntXuvE.js";
6
+ import "./model-selection-CEkGIwYe.js";
7
+ import "./dist-DRiaTLnT.js";
8
8
  import "./dist-cjs-CaOwlbAz.js";
9
9
  import "./boolean-BXL1jIU4.js";
10
10
  import "./env-BA3nu3t6.js";
11
11
  import "./github-copilot-token-v4Mg1eJR.js";
12
- import { N as VERSION, o as loadConfig } from "./config-DUlVD6_Y.js";
12
+ import { N as VERSION, o as loadConfig } from "./config-DG0yIsda.js";
13
13
  import "./manifest-registry-BfJkwq3e.js";
14
14
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CtKNDWCz.js";
15
15
  import "./device-identity-LQTSoG4n.js";
16
- import { l as GatewayClient } from "./net-hcYzb5qw.js";
17
- import { t as buildGatewayConnectionDetails } from "./call-B0XDsG3E.js";
16
+ import { l as GatewayClient } from "./net-CFwo3i7p.js";
17
+ import { t as buildGatewayConnectionDetails } from "./call-DX0qYMrV.js";
18
18
  import { t as formatDocsLink } from "./links-BraPfmsh.js";
19
19
  import "./tailscale-BVFil2zN.js";
20
20
  import { t as isMainModule } from "./is-main-CFOIyUwL.js";
21
21
  import { t as ensureSKYKOICliOnPath } from "./path-env-D7MDOz2j.js";
22
- import { i as resolveGatewayAuth } from "./auth-DcUFkxj-.js";
22
+ import { i as resolveGatewayAuth } from "./auth-DGixDs29.js";
23
23
  import { fileURLToPath } from "node:url";
24
24
  import { spawn } from "node:child_process";
25
25
  import { Readable, Writable } from "node:stream";
@@ -1,5 +1,5 @@
1
1
  import { i as __require, o as __toESM, t as __commonJSMin } from "./chunk-D_gEzPfs.js";
2
- import { St as require_inherits } from "./reply-Cgz9s2Gn.js";
2
+ import { St as require_inherits } from "./reply-DmgKEa9F.js";
3
3
  import path from "node:path";
4
4
  import fs from "node:fs/promises";
5
5
  import * as tar from "tar";
@@ -3,20 +3,20 @@ import { l as normalizeKoiId } from "./session-key-DvA8Pdt6.js";
3
3
  import { n as runExec } from "./exec-BE7MIgZB.js";
4
4
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-B7BaYiK4.js";
5
5
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
6
- import { O as INCLUDE_KEY, a as createConfigIO, k as MAX_INCLUDE_DEPTH } from "./config-DUlVD6_Y.js";
6
+ import { O as INCLUDE_KEY, a as createConfigIO, k as MAX_INCLUDE_DEPTH } from "./config-DG0yIsda.js";
7
7
  import { a as MANIFEST_KEY } from "./manifest-registry-BfJkwq3e.js";
8
8
  import { n as listChannelPlugins } from "./plugins-D6P_BD0C.js";
9
- import { d as resolveSandboxToolPolicyForKoi, l as resolveSandboxConfigForKoi, v as resolveToolProfilePolicy } from "./sandbox-B0f6vGEF.js";
10
- import { i as loadWorkspaceSkillEntries } from "./skills-BVetMWFp.js";
9
+ import { d as resolveSandboxToolPolicyForKoi, l as resolveSandboxConfigForKoi, v as resolveToolProfilePolicy } from "./sandbox-DtpRfTgx.js";
10
+ import { i as loadWorkspaceSkillEntries } from "./skills-TW-WUPck.js";
11
11
  import { a as resolveProfile, i as resolveBrowserConfig } from "./server-context-DAStrM-0.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CtKNDWCz.js";
13
- import { l as GatewayClient } from "./net-hcYzb5qw.js";
14
- import { t as buildGatewayConnectionDetails } from "./call-B0XDsG3E.js";
13
+ import { l as GatewayClient } from "./net-CFwo3i7p.js";
14
+ import { t as buildGatewayConnectionDetails } from "./call-DX0qYMrV.js";
15
15
  import { i as readChannelAllowFromStore } from "./pairing-store-BkbnZP2Y.js";
16
- import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-B6NGqvwX.js";
16
+ import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-BCqUCdew.js";
17
17
  import { t as resolveChannelDefaultAccountId } from "./helpers-BNuSQH6i.js";
18
18
  import { t as scanDirectoryWithSummary } from "./skill-scanner-C1Y-vAfe.js";
19
- import { i as resolveGatewayAuth } from "./auth-DcUFkxj-.js";
19
+ import { i as resolveGatewayAuth } from "./auth-DGixDs29.js";
20
20
  import path from "node:path";
21
21
  import JSON5 from "json5";
22
22
  import os from "node:os";
@@ -1,4 +1,4 @@
1
- import { i as parseForwardedForClientIp, r as isTrustedProxyAddress, s as resolveGatewayClientIp } from "./net-hcYzb5qw.js";
1
+ import { i as parseForwardedForClientIp, r as isTrustedProxyAddress, s as resolveGatewayClientIp } from "./net-CFwo3i7p.js";
2
2
  import { c as readTailscaleWhoisIdentity } from "./tailscale-BVFil2zN.js";
3
3
  import { timingSafeEqual } from "node:crypto";
4
4
 
@@ -1,4 +1,4 @@
1
- import { ft as resolveAuthProfileDisplayLabel } from "./model-selection-DGrXzJoJ.js";
1
+ import { ft as resolveAuthProfileDisplayLabel } from "./model-selection-CEkGIwYe.js";
2
2
 
3
3
  //#region src/koi/auth-health.ts
4
4
  const DEFAULT_OAUTH_WARN_MS = 1440 * 60 * 1e3;
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2026.3.242",
3
- "commit": "afff8f84e7fead302562f9c2876e9a6f27b38f91",
4
- "builtAt": "2026-05-03T00:58:57.238Z"
2
+ "version": "2026.3.244",
3
+ "commit": "f2fde881963f128af6cd9c28a21c87fd7f08f1bf",
4
+ "builtAt": "2026-05-03T02:01:12.138Z"
5
5
  }
@@ -2,11 +2,11 @@ import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-RXphV8Xh.js";
3
3
  import { g as resolveStateDir, o as resolveConfigPath, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
4
4
  import { h as resolveUserPath, s as ensureDir, t as CONFIG_DIR, v as shortenHomeInString } from "./utils-rBzA-VDv.js";
5
- import { o as loadConfig } from "./config-DUlVD6_Y.js";
5
+ import { o as loadConfig } from "./config-DG0yIsda.js";
6
6
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CtKNDWCz.js";
7
7
  import { r as loadOrCreateDeviceIdentity } from "./device-identity-LQTSoG4n.js";
8
8
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-C9LSfbiu.js";
9
- import { Bt as normalizeFingerprint, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-hcYzb5qw.js";
9
+ import { Bt as normalizeFingerprint, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-CFwo3i7p.js";
10
10
  import path from "node:path";
11
11
  import { promisify } from "node:util";
12
12
  import fs from "node:fs/promises";
@@ -1 +1 @@
1
- dc72300b010170164cda4f80efea73ce674ce007927b55e000fecde4e1e36515
1
+ 8538e769b30fc5ce6e5f9357361f2556fe9f29dfe15a61f03b8cb98cadb6f5a4
@@ -1,8 +1,8 @@
1
1
  import { M as CHAT_CHANNEL_ORDER } from "./subsystem-RXphV8Xh.js";
2
2
  import { t as isTruthyEnvValue } from "./env-BA3nu3t6.js";
3
3
  import { n as listChannelPlugins } from "./plugins-D6P_BD0C.js";
4
- import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-PL5unXxJ.js";
5
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-B892JwUR.js";
4
+ import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-CDSibY2C.js";
5
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DSNYEXHW.js";
6
6
 
7
7
  //#region src/cli/channel-options.ts
8
8
  function dedupe(values) {
@@ -1,10 +1,10 @@
1
- import { g as formatRawAssistantErrorForUi, z as listThinkingLevels } from "./pi-embedded-helpers-BFOvHIvC.js";
1
+ import { g as formatRawAssistantErrorForUi, z as listThinkingLevels } from "./pi-embedded-helpers-SYv6smkX.js";
2
2
  import { T as theme, V as getActivePluginRegistry } from "./subsystem-RXphV8Xh.js";
3
3
  import { t as DEFAULT_ACCOUNT_ID } from "./session-key-DvA8Pdt6.js";
4
- import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, d as resolveConfiguredModelRef } from "./model-selection-DGrXzJoJ.js";
5
- import { o as loadConfig } from "./config-DUlVD6_Y.js";
4
+ import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, d as resolveConfiguredModelRef } from "./model-selection-CEkGIwYe.js";
5
+ import { o as loadConfig } from "./config-DG0yIsda.js";
6
6
  import { n as listChannelPlugins } from "./plugins-D6P_BD0C.js";
7
- import { I as listChannelDocks } from "./sessions-C9GIoZ28.js";
7
+ import { I as listChannelDocks } from "./sessions-xyW6etJT.js";
8
8
  import { n as formatTokenCount } from "./usage-format-CzRY73um.js";
9
9
  import { createRequire } from "node:module";
10
10
  import fs from "node:fs";
@@ -1,32 +1,32 @@
1
- import "./pi-embedded-helpers-BFOvHIvC.js";
2
- import { Fn as createSlackWebClient, Sn as fetchChannelPermissionsDiscord, _t as loadProviderUsageSummary, vt as formatUsageReportLines, xn as parseDiscordTarget } from "./reply-Cgz9s2Gn.js";
1
+ import "./pi-embedded-helpers-SYv6smkX.js";
2
+ import { Fn as createSlackWebClient, Sn as fetchChannelPermissionsDiscord, _t as loadProviderUsageSummary, vt as formatUsageReportLines, xn as parseDiscordTarget } from "./reply-DmgKEa9F.js";
3
3
  import { N as DEFAULT_CHAT_CHANNEL, O as getResolvedLoggerSettings, T as theme, c as defaultRuntime, p as danger, y as setVerbose } from "./subsystem-RXphV8Xh.js";
4
4
  import "./paths-VdmjGGyc.js";
5
5
  import { c as normalizeAccountId, t as DEFAULT_ACCOUNT_ID } from "./session-key-DvA8Pdt6.js";
6
6
  import "./utils-rBzA-VDv.js";
7
7
  import "./exec-BE7MIgZB.js";
8
8
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-B7BaYiK4.js";
9
- import { st as loadAuthProfileStore } from "./model-selection-DGrXzJoJ.js";
10
- import "./dist-CUntXuvE.js";
9
+ import { st as loadAuthProfileStore } from "./model-selection-CEkGIwYe.js";
10
+ import "./dist-DRiaTLnT.js";
11
11
  import "./dist-cjs-CaOwlbAz.js";
12
12
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
13
13
  import "./boolean-BXL1jIU4.js";
14
14
  import "./env-BA3nu3t6.js";
15
15
  import "./github-copilot-token-v4Mg1eJR.js";
16
- import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DUlVD6_Y.js";
16
+ import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DG0yIsda.js";
17
17
  import "./manifest-registry-BfJkwq3e.js";
18
18
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-D6P_BD0C.js";
19
- import "./sessions-C9GIoZ28.js";
20
- import "./image-BnuO4R_F.js";
21
- import "./dist-DsEoGH_d.js";
19
+ import "./sessions-xyW6etJT.js";
20
+ import "./image-BbxIjCEt.js";
21
+ import "./dist-DYK6ugDL.js";
22
22
  import "./lib-B-iAYD_i.js";
23
23
  import "./src-D8AlCNvU.js";
24
24
  import "./core-zaSuwqYw.js";
25
- import "./pi-model-discovery-DKNcYQve.js";
26
- import "./sandbox-B0f6vGEF.js";
25
+ import "./pi-model-discovery-CG7G_woz.js";
26
+ import "./sandbox-DtpRfTgx.js";
27
27
  import "./chrome-Brn_16IG.js";
28
- import "./skills-BVetMWFp.js";
29
- import "./routes-rXDWA7PI.js";
28
+ import "./skills-TW-WUPck.js";
29
+ import "./routes-BbTJeCHM.js";
30
30
  import "./server-context-DAStrM-0.js";
31
31
  import "./message-channel-CtKNDWCz.js";
32
32
  import "./logging-D3KTM1pH.js";
@@ -34,43 +34,43 @@ import "./accounts-WJ90N3bh.js";
34
34
  import "./paths-g0XVCc1s.js";
35
35
  import "./redact-BHmk44DI.js";
36
36
  import "./tool-display-DBn8ZzjL.js";
37
- import "./deliver-CxXihUsx.js";
38
- import "./dispatcher-DceYsguf.js";
37
+ import "./deliver-DlslSAR8.js";
38
+ import "./dispatcher-EIlc1qZN.js";
39
39
  import "./dist-C5ZVqA1j.js";
40
- import "./manager-DE5IeHr7.js";
40
+ import "./manager-BJzdkhaU.js";
41
41
  import "./sqlite-0g9IpyUO.js";
42
42
  import "./warnings-D_pOVQAQ.js";
43
43
  import "./proxy-from-env-qe1tLo4p.js";
44
- import "./login-qr-C1F4yopV.js";
45
- import { n as formatAge } from "./channel-summary-BInOQgyV.js";
44
+ import "./login-qr-BVfOIfgb.js";
45
+ import { n as formatAge } from "./channel-summary-6gLEc8x9.js";
46
46
  import "./device-identity-LQTSoG4n.js";
47
- import "./net-hcYzb5qw.js";
48
- import { n as callGateway } from "./call-B0XDsG3E.js";
47
+ import "./net-CFwo3i7p.js";
48
+ import { n as callGateway } from "./call-DX0qYMrV.js";
49
49
  import "./koi-events-BaxaD02c.js";
50
50
  import "./pairing-store-BkbnZP2Y.js";
51
51
  import { t as formatDocsLink } from "./links-BraPfmsh.js";
52
52
  import { n as runCommandWithRuntime } from "./cli-utils-c9SIZezA.js";
53
53
  import { n as withProgress } from "./progress-n072C1nN.js";
54
54
  import "./node-pairing-zvZxvhjB.js";
55
- import "./pi-tools.policy-B6NGqvwX.js";
55
+ import "./pi-tools.policy-BCqUCdew.js";
56
56
  import "./prompt-style-BioBnB_X.js";
57
57
  import "./pairing-labels-Cmbgk00_.js";
58
58
  import "./satisfies-BxuPnKPm.js";
59
59
  import "./session-cost-usage-C3Scd8s_.js";
60
- import "./control-service-D2mGSObN.js";
60
+ import "./control-service-DvYWm_np.js";
61
61
  import { n as resolveMessageChannelSelection } from "./channel-selection-jyGnnq0E.js";
62
62
  import "./event-log-CRTHQkp5.js";
63
63
  import { t as resolveChannelDefaultAccountId } from "./helpers-BNuSQH6i.js";
64
64
  import "./note-CrS1Szhk.js";
65
65
  import { t as createClackPrompter } from "./clack-prompter-D65FuQH4.js";
66
- import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-D3dBrASR.js";
67
- import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-PL5unXxJ.js";
68
- import "./archive-CTvmnO0Q.js";
66
+ import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-Bk6igXEK.js";
67
+ import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-CDSibY2C.js";
68
+ import "./archive-CNS_m5BC.js";
69
69
  import "./skill-scanner-C1Y-vAfe.js";
70
- import "./installs-C6StwqxJ.js";
70
+ import "./installs-BHLMX4pW.js";
71
71
  import { t as collectChannelStatusIssues } from "./channels-status-issues-C88xoNq1.js";
72
- import { n as hasExplicitOptions } from "./plugin-registry-B892JwUR.js";
73
- import { t as formatCliChannelOptions } from "./channel-options-B4NQAjmk.js";
72
+ import { n as hasExplicitOptions } from "./plugin-registry-DSNYEXHW.js";
73
+ import { t as formatCliChannelOptions } from "./channel-options-a_Y0W5yN.js";
74
74
  import { t as buildChannelAccountSnapshot } from "./status-jB5_YcY1.js";
75
75
  import { t as parseLogLine } from "./parse-log-line-D-aKdxYt.js";
76
76
  import fs from "node:fs/promises";
@@ -1,2 +1,2 @@
1
1
  // Legacy shim for pre-tsdown update-cli imports.
2
- export { registerDaemonCli, runDaemonInstall, runDaemonRestart, runDaemonStart, runDaemonStatus, runDaemonStop, runDaemonUninstall } from "../daemon-cli-jtn4nU7H.js";
2
+ export { registerDaemonCli, runDaemonInstall, runDaemonRestart, runDaemonStart, runDaemonStatus, runDaemonStop, runDaemonUninstall } from "../daemon-cli-C1-FCDpd.js";
@@ -1,30 +1,30 @@
1
- import "./pi-embedded-helpers-BFOvHIvC.js";
2
- import { gt as loadSKYKOIPlugins } from "./reply-Cgz9s2Gn.js";
1
+ import "./pi-embedded-helpers-SYv6smkX.js";
2
+ import { gt as loadSKYKOIPlugins } from "./reply-DmgKEa9F.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-RXphV8Xh.js";
4
4
  import "./paths-VdmjGGyc.js";
5
5
  import "./utils-rBzA-VDv.js";
6
6
  import "./exec-BE7MIgZB.js";
7
7
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-B7BaYiK4.js";
8
- import "./model-selection-DGrXzJoJ.js";
9
- import "./dist-CUntXuvE.js";
8
+ import "./model-selection-CEkGIwYe.js";
9
+ import "./dist-DRiaTLnT.js";
10
10
  import "./dist-cjs-CaOwlbAz.js";
11
11
  import "./boolean-BXL1jIU4.js";
12
12
  import "./env-BA3nu3t6.js";
13
13
  import "./github-copilot-token-v4Mg1eJR.js";
14
- import { o as loadConfig } from "./config-DUlVD6_Y.js";
14
+ import { o as loadConfig } from "./config-DG0yIsda.js";
15
15
  import "./manifest-registry-BfJkwq3e.js";
16
16
  import "./plugins-D6P_BD0C.js";
17
- import "./sessions-C9GIoZ28.js";
18
- import "./image-BnuO4R_F.js";
19
- import "./dist-DsEoGH_d.js";
17
+ import "./sessions-xyW6etJT.js";
18
+ import "./image-BbxIjCEt.js";
19
+ import "./dist-DYK6ugDL.js";
20
20
  import "./lib-B-iAYD_i.js";
21
21
  import "./src-D8AlCNvU.js";
22
22
  import "./core-zaSuwqYw.js";
23
- import "./pi-model-discovery-DKNcYQve.js";
24
- import "./sandbox-B0f6vGEF.js";
23
+ import "./pi-model-discovery-CG7G_woz.js";
24
+ import "./sandbox-DtpRfTgx.js";
25
25
  import "./chrome-Brn_16IG.js";
26
- import "./skills-BVetMWFp.js";
27
- import "./routes-rXDWA7PI.js";
26
+ import "./skills-TW-WUPck.js";
27
+ import "./routes-BbTJeCHM.js";
28
28
  import "./server-context-DAStrM-0.js";
29
29
  import "./message-channel-CtKNDWCz.js";
30
30
  import "./logging-D3KTM1pH.js";
@@ -32,29 +32,29 @@ import "./accounts-WJ90N3bh.js";
32
32
  import "./paths-g0XVCc1s.js";
33
33
  import "./redact-BHmk44DI.js";
34
34
  import "./tool-display-DBn8ZzjL.js";
35
- import "./deliver-CxXihUsx.js";
36
- import "./dispatcher-DceYsguf.js";
35
+ import "./deliver-DlslSAR8.js";
36
+ import "./dispatcher-EIlc1qZN.js";
37
37
  import "./dist-C5ZVqA1j.js";
38
- import "./manager-DE5IeHr7.js";
38
+ import "./manager-BJzdkhaU.js";
39
39
  import "./sqlite-0g9IpyUO.js";
40
40
  import "./warnings-D_pOVQAQ.js";
41
41
  import "./proxy-from-env-qe1tLo4p.js";
42
- import "./login-qr-C1F4yopV.js";
43
- import "./channel-summary-BInOQgyV.js";
42
+ import "./login-qr-BVfOIfgb.js";
43
+ import "./channel-summary-6gLEc8x9.js";
44
44
  import "./device-identity-LQTSoG4n.js";
45
- import "./net-hcYzb5qw.js";
46
- import "./call-B0XDsG3E.js";
45
+ import "./net-CFwo3i7p.js";
46
+ import "./call-DX0qYMrV.js";
47
47
  import "./koi-events-BaxaD02c.js";
48
48
  import "./pairing-store-BkbnZP2Y.js";
49
49
  import "./links-BraPfmsh.js";
50
50
  import "./progress-n072C1nN.js";
51
51
  import "./node-pairing-zvZxvhjB.js";
52
- import "./pi-tools.policy-B6NGqvwX.js";
52
+ import "./pi-tools.policy-BCqUCdew.js";
53
53
  import "./prompt-style-BioBnB_X.js";
54
54
  import "./pairing-labels-Cmbgk00_.js";
55
55
  import "./satisfies-BxuPnKPm.js";
56
56
  import "./session-cost-usage-C3Scd8s_.js";
57
- import "./control-service-D2mGSObN.js";
57
+ import "./control-service-DvYWm_np.js";
58
58
  import "./channel-selection-jyGnnq0E.js";
59
59
  import "./event-log-CRTHQkp5.js";
60
60
 
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { g as resolveStateDir } from "./paths-VdmjGGyc.js";
3
- import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-Bu2eZq1w.js";
3
+ import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-DFI4VlXD.js";
4
4
  import path from "node:path";
5
5
  import os from "node:os";
6
6
  import fs from "node:fs/promises";
@@ -4,14 +4,14 @@ import { a as resolveCanonicalConfigPath, c as resolveDefaultConfigCandidates, d
4
4
  import { l as normalizeKoiId, n as DEFAULT_KOI_ID } from "./session-key-DvA8Pdt6.js";
5
5
  import { h as resolveUserPath } from "./utils-rBzA-VDv.js";
6
6
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-B7BaYiK4.js";
7
- import { _t as loadShellEnvFallback, bt as shouldEnableShellEnvFallback, c as parseModelRef, vt as resolveShellEnvFallbackTimeoutMs, xt as DEFAULT_CONTEXT_TOKENS, yt as shouldDeferShellEnvFallback } from "./model-selection-DGrXzJoJ.js";
7
+ import { _t as loadShellEnvFallback, bt as shouldEnableShellEnvFallback, c as parseModelRef, vt as resolveShellEnvFallbackTimeoutMs, xt as DEFAULT_CONTEXT_TOKENS, yt as shouldDeferShellEnvFallback } from "./model-selection-CEkGIwYe.js";
8
8
  import { c as resolveEnableState, l as resolveMemorySlotDecision, s as normalizePluginsConfig, t as loadPluginManifestRegistry } from "./manifest-registry-BfJkwq3e.js";
9
9
  import { createRequire } from "node:module";
10
10
  import fs from "node:fs";
11
11
  import path from "node:path";
12
12
  import JSON5 from "json5";
13
13
  import os from "node:os";
14
- import AjvPkg from "ajv";
14
+ import AjvModule from "ajv";
15
15
  import crypto from "node:crypto";
16
16
  import { z } from "zod";
17
17
 
@@ -1718,7 +1718,7 @@ function applyConfigOverrides(cfg) {
1718
1718
 
1719
1719
  //#endregion
1720
1720
  //#region src/plugins/schema-validator.ts
1721
- const ajv = new AjvPkg({
1721
+ const ajv = new AjvModule({
1722
1722
  allErrors: true,
1723
1723
  strict: false,
1724
1724
  removeAdditional: false
@@ -1,47 +1,47 @@
1
- import { B as formatTargetDisplay, Dt as detectBrowserOpenSupport, H as CHANNEL_MESSAGE_ACTION_NAMES, Lt as randomToken, Mt as moveToTrash, N as runMessageAction, Ot as ensureWorkspaceAndSessions, Pt as openUrl, Rt as resolveControlUiLinks, Tt as applyWizardMetadata, Vt as waitForGatewayReachable, _r as lookupContextTokens, an as runMemoryStatus, dt as CHANNEL_TARGETS_DESCRIPTION, ft as CHANNEL_TARGET_DESCRIPTION, in as registerMemoryCli, jt as handleReset, kt as formatControlUiSshHint, wt as DEFAULT_WORKSPACE } from "./reply-Cgz9s2Gn.js";
1
+ import { B as formatTargetDisplay, Dt as detectBrowserOpenSupport, H as CHANNEL_MESSAGE_ACTION_NAMES, Lt as randomToken, Mt as moveToTrash, N as runMessageAction, Ot as ensureWorkspaceAndSessions, Pt as openUrl, Rt as resolveControlUiLinks, Tt as applyWizardMetadata, Vt as waitForGatewayReachable, _r as lookupContextTokens, an as runMemoryStatus, dt as CHANNEL_TARGETS_DESCRIPTION, ft as CHANNEL_TARGET_DESCRIPTION, in as registerMemoryCli, jt as handleReset, kt as formatControlUiSshHint, wt as DEFAULT_WORKSPACE } from "./reply-DmgKEa9F.js";
2
2
  import { B as normalizeChatChannelId, C as colorize, I as getChatChannelMeta, N as DEFAULT_CHAT_CHANNEL, T as theme, c as defaultRuntime, l as restoreTerminalState, m as info, p as danger, w as isRich, y as setVerbose } from "./subsystem-RXphV8Xh.js";
3
3
  import { g as resolveStateDir, i as isNixMode, m as resolveOAuthDir, o as resolveConfigPath, r as STATE_DIR, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
4
4
  import { l as normalizeKoiId, n as DEFAULT_KOI_ID, t as DEFAULT_ACCOUNT_ID } from "./session-key-DvA8Pdt6.js";
5
5
  import { h as resolveUserPath, p as resolveHomeDir, v as shortenHomeInString, y as shortenHomePath } from "./utils-rBzA-VDv.js";
6
6
  import { t as runCommandWithTimeout } from "./exec-BE7MIgZB.js";
7
7
  import { S as ensureKoiWorkspace, T as resolveDefaultKoiWorkspaceDir, a as resolveKoiDir, g as DEFAULT_KOI_WORKSPACE_DIR, l as resolveKoiWorkspaceDir, m as DEFAULT_IDENTITY_FILENAME, n as listKoiIds, r as resolveDefaultKoiId } from "./koi-scope-B7BaYiK4.js";
8
- import { Ct as DEFAULT_PROVIDER, G as resolveAuthProfileOrder, H as resolveEnvApiKey, St as DEFAULT_MODEL, X as resolveApiKeyForProfile, at as upsertAuthProfile, d as resolveConfiguredModelRef, lt as resolveAuthStorePath, ot as ensureAuthProfileStore, s as normalizeProviderId, xt as DEFAULT_CONTEXT_TOKENS } from "./model-selection-DGrXzJoJ.js";
8
+ import { Ct as DEFAULT_PROVIDER, G as resolveAuthProfileOrder, H as resolveEnvApiKey, St as DEFAULT_MODEL, X as resolveApiKeyForProfile, at as upsertAuthProfile, d as resolveConfiguredModelRef, lt as resolveAuthStorePath, ot as ensureAuthProfileStore, s as normalizeProviderId, xt as DEFAULT_CONTEXT_TOKENS } from "./model-selection-CEkGIwYe.js";
9
9
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
10
10
  import { t as parseBooleanValue } from "./boolean-BXL1jIU4.js";
11
- import { _ as parseDurationMs, a as createConfigIO, c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DUlVD6_Y.js";
11
+ import { _ as parseDurationMs, a as createConfigIO, c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DG0yIsda.js";
12
12
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-D6P_BD0C.js";
13
- import { i as loadSessionStore } from "./sessions-C9GIoZ28.js";
13
+ import { i as loadSessionStore } from "./sessions-xyW6etJT.js";
14
14
  import { n as movePathToTrash } from "./server-context-DAStrM-0.js";
15
15
  import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-CtKNDWCz.js";
16
16
  import { a as resolveSessionTranscriptsDirForKoi, i as resolveSessionTranscriptsDir, o as resolveStorePath } from "./paths-g0XVCc1s.js";
17
- import { a as randomIdempotencyKey, n as callGateway } from "./call-B0XDsG3E.js";
17
+ import { a as randomIdempotencyKey, n as callGateway } from "./call-DX0qYMrV.js";
18
18
  import { t as formatDocsLink } from "./links-BraPfmsh.js";
19
19
  import { n as runCommandWithRuntime } from "./cli-utils-c9SIZezA.js";
20
20
  import { n as withProgress } from "./progress-n072C1nN.js";
21
21
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-BioBnB_X.js";
22
- import { t as createDefaultDeps } from "./deps-BUhGa_HH.js";
23
- import { a as gatewayInstallErrorHint, g as assertSupportedRuntime, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-s4bEPaLr.js";
22
+ import { t as createDefaultDeps } from "./deps-Db-6DS0_.js";
23
+ import { a as gatewayInstallErrorHint, g as assertSupportedRuntime, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BrHV63lV.js";
24
24
  import { t as resolveChannelDefaultAccountId } from "./helpers-BNuSQH6i.js";
25
25
  import { n as logConfigUpdated, t as formatConfigPath } from "./logging-D_xKFcV1.js";
26
26
  import { t as WizardCancelledError } from "./prompts-CL2SstQz.js";
27
27
  import { t as createClackPrompter } from "./clack-prompter-D65FuQH4.js";
28
- import { a as buildKoiSummaries, c as loadKoiIdentity, f as parseIdentityMarkdown, i as applyKoiConfig, l as pruneKoiConfig, n as statusCommand, o as findKoiEntryIndex, s as listKoiEntries, t as runOnboardingWizard, u as identityHasValues } from "./onboarding-5lr3zHf5.js";
29
- import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-CBr_y6nC.js";
30
- import { $ as setOpenrouterApiKey, C as applyMoonshotConfig, D as applyOpenrouterConfig, F as applyVercelAiGatewayConfig, J as setGeminiApiKey, K as setAnthropicApiKey, L as applyXaiConfig, N as applyVeniceConfig, Q as setOpencodeZenApiKey, V as applyZaiConfig, X as setMinimaxApiKey, Y as setKimiCodingApiKey, Z as setMoonshotApiKey, at as setXiaomiApiKey, et as setQianfanApiKey, f as applyOpencodeZenConfig, ft as buildTokenProfileId, g as applyMinimaxConfig, it as setXaiApiKey, j as applySyntheticConfig, k as applyQianfanConfig, m as applyMinimaxApiConfig, nt as setVeniceApiKey, ot as setZaiApiKey, pt as validateAnthropicSetupToken, q as setCloudflareAiGatewayConfig, rt as setVercelAiGatewayApiKey, tt as setSyntheticApiKey, v as applyAuthProfileConfig, w as applyMoonshotConfigCn, x as applyKimiCodeConfig, y as applyCloudflareAiGatewayConfig, z as applyXiaomiConfig } from "./github-copilot-auth-V89YKFlq.js";
31
- import { n as setupChannels } from "./onboard-channels-D3dBrASR.js";
32
- import { l as healthCommand } from "./health-format-BzY_zwAN.js";
28
+ import { a as buildKoiSummaries, c as loadKoiIdentity, f as parseIdentityMarkdown, i as applyKoiConfig, l as pruneKoiConfig, n as statusCommand, o as findKoiEntryIndex, s as listKoiEntries, t as runOnboardingWizard, u as identityHasValues } from "./onboarding-BLF48_oC.js";
29
+ import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-BLBaKXGy.js";
30
+ import { $ as setOpenrouterApiKey, C as applyMoonshotConfig, D as applyOpenrouterConfig, F as applyVercelAiGatewayConfig, J as setGeminiApiKey, K as setAnthropicApiKey, L as applyXaiConfig, N as applyVeniceConfig, Q as setOpencodeZenApiKey, V as applyZaiConfig, X as setMinimaxApiKey, Y as setKimiCodingApiKey, Z as setMoonshotApiKey, at as setXiaomiApiKey, et as setQianfanApiKey, f as applyOpencodeZenConfig, ft as buildTokenProfileId, g as applyMinimaxConfig, it as setXaiApiKey, j as applySyntheticConfig, k as applyQianfanConfig, m as applyMinimaxApiConfig, nt as setVeniceApiKey, ot as setZaiApiKey, pt as validateAnthropicSetupToken, q as setCloudflareAiGatewayConfig, rt as setVercelAiGatewayApiKey, tt as setSyntheticApiKey, v as applyAuthProfileConfig, w as applyMoonshotConfigCn, x as applyKimiCodeConfig, y as applyCloudflareAiGatewayConfig, z as applyXiaomiConfig } from "./github-copilot-auth-CNhgIs3p.js";
31
+ import { n as setupChannels } from "./onboard-channels-Bk6igXEK.js";
32
+ import { l as healthCommand } from "./health-format-CEquFhAM.js";
33
33
  import { t as renderTable } from "./table-6UNPpVEx.js";
34
34
  import { t as resolveGatewayService } from "./service-bz-Q1pz8.js";
35
35
  import { r as isSystemdUserServiceAvailable } from "./systemd-WeDhEsPI.js";
36
- import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-Bu2eZq1w.js";
37
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-B5KSW1jh.js";
36
+ import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-DFI4VlXD.js";
37
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BmbZ18rs.js";
38
38
  import { t as formatHelpExamples } from "./help-format-BN200Sfc.js";
39
- import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-CPZambpG.js";
40
- import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-B892JwUR.js";
39
+ import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-BfAJ6Sb1.js";
40
+ import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-DSNYEXHW.js";
41
41
  import { n as parsePositiveIntOrUndefined, t as collectOption } from "./helpers-DUclfUl-.js";
42
- import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-L9kWiyGu.js";
42
+ import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-Ygcb0QzK.js";
43
43
  import { n as ensureSystemdUserLingerNonInteractive } from "./systemd-linger-BjfFUdaX.js";
44
- import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-DLLAPI4k.js";
44
+ import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-BjrZV0Lc.js";
45
45
  import { fileURLToPath } from "node:url";
46
46
  import fs from "node:fs";
47
47
  import path from "node:path";
@@ -2792,7 +2792,7 @@ async function loadValidConfig() {
2792
2792
  }
2793
2793
  function registerConfigCli(program) {
2794
2794
  const cmd = program.command("config").description("Config helpers (get/set/unset). Run without subcommand for the wizard.").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/config", "docs.skykoi.com/cli/config")}\n`).option("--section <section>", "Configure wizard sections (repeatable). Use with no subcommand.", (value, previous) => [...previous, value], []).action(async (opts) => {
2795
- const { CONFIGURE_WIZARD_SECTIONS, configureCommand, configureCommandWithSections } = await import("./configure-L9kWiyGu.js").then((n) => n.t);
2795
+ const { CONFIGURE_WIZARD_SECTIONS, configureCommand, configureCommandWithSections } = await import("./configure-Ygcb0QzK.js").then((n) => n.t);
2796
2796
  const sections = Array.isArray(opts.section) ? opts.section.map((value) => typeof value === "string" ? value.trim() : "").filter(Boolean) : [];
2797
2797
  if (sections.length === 0) {
2798
2798
  await configureCommand(defaultRuntime);
@@ -1,23 +1,23 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
- import { At as guardCancel, Bt as summarizeExistingConfig, Ft as printWizardHeader, It as probeGatewayReachable, Lt as randomToken, Nt as normalizeGatewayTokenInput, Ot as ensureWorkspaceAndSessions, Rt as resolveControlUiLinks, Tt as applyWizardMetadata, Vt as waitForGatewayReachable, wt as DEFAULT_WORKSPACE } from "./reply-Cgz9s2Gn.js";
2
+ import { At as guardCancel, Bt as summarizeExistingConfig, Ft as printWizardHeader, It as probeGatewayReachable, Lt as randomToken, Nt as normalizeGatewayTokenInput, Ot as ensureWorkspaceAndSessions, Rt as resolveControlUiLinks, Tt as applyWizardMetadata, Vt as waitForGatewayReachable, wt as DEFAULT_WORKSPACE } from "./reply-DmgKEa9F.js";
3
3
  import { c as defaultRuntime } from "./subsystem-RXphV8Xh.js";
4
4
  import { t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
5
5
  import { h as resolveUserPath, y as shortenHomePath } from "./utils-rBzA-VDv.js";
6
- import { ot as ensureAuthProfileStore } from "./model-selection-DGrXzJoJ.js";
6
+ import { ot as ensureAuthProfileStore } from "./model-selection-CEkGIwYe.js";
7
7
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
8
- import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DUlVD6_Y.js";
8
+ import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-DG0yIsda.js";
9
9
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-D6P_BD0C.js";
10
10
  import { n as withProgress } from "./progress-n072C1nN.js";
11
11
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-BioBnB_X.js";
12
12
  import { a as findTailscaleBinary } from "./tailscale-BVFil2zN.js";
13
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-s4bEPaLr.js";
13
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BrHV63lV.js";
14
14
  import { n as logConfigUpdated } from "./logging-D_xKFcV1.js";
15
15
  import { t as note$1 } from "./note-CrS1Szhk.js";
16
16
  import { t as WizardCancelledError } from "./prompts-CL2SstQz.js";
17
17
  import { t as createClackPrompter } from "./clack-prompter-D65FuQH4.js";
18
- import { a as applyModelFallbacksFromSelection, c as promptModelAllowlist, d as applyAuthChoice, h as promptAuthChoiceGrouped, i as applyModelAllowlist, l as resolvePreferredProviderForAuthChoice, o as applyPrimaryModel, r as promptRemoteGatewayConfig, s as promptDefaultModel, t as setupSkills } from "./onboard-skills-CBr_y6nC.js";
19
- import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-D3dBrASR.js";
20
- import { l as healthCommand, n as ensureControlUiAssetsBuilt, t as formatHealthCheckFailure } from "./health-format-BzY_zwAN.js";
18
+ import { a as applyModelFallbacksFromSelection, c as promptModelAllowlist, d as applyAuthChoice, h as promptAuthChoiceGrouped, i as applyModelAllowlist, l as resolvePreferredProviderForAuthChoice, o as applyPrimaryModel, r as promptRemoteGatewayConfig, s as promptDefaultModel, t as setupSkills } from "./onboard-skills-BLBaKXGy.js";
19
+ import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-Bk6igXEK.js";
20
+ import { l as healthCommand, n as ensureControlUiAssetsBuilt, t as formatHealthCheckFailure } from "./health-format-CEquFhAM.js";
21
21
  import { t as resolveGatewayService } from "./service-bz-Q1pz8.js";
22
22
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BjfFUdaX.js";
23
23
  import { confirm, intro, outro, select, text } from "@clack/prompts";
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-RXphV8Xh.js";
3
- import { o as loadConfig } from "./config-DUlVD6_Y.js";
3
+ import { o as loadConfig } from "./config-DG0yIsda.js";
4
4
  import { S as ensureChromeExtensionRelayServer } from "./chrome-Brn_16IG.js";
5
5
  import { a as resolveProfile, i as resolveBrowserConfig, t as createBrowserRouteContext } from "./server-context-DAStrM-0.js";
6
6
 
@@ -4,25 +4,25 @@ import { p as sanitizeKoiId } from "./session-key-DvA8Pdt6.js";
4
4
  import "./utils-rBzA-VDv.js";
5
5
  import "./exec-BE7MIgZB.js";
6
6
  import "./koi-scope-B7BaYiK4.js";
7
- import "./model-selection-DGrXzJoJ.js";
8
- import "./dist-CUntXuvE.js";
7
+ import "./model-selection-CEkGIwYe.js";
8
+ import "./dist-DRiaTLnT.js";
9
9
  import "./dist-cjs-CaOwlbAz.js";
10
10
  import "./boolean-BXL1jIU4.js";
11
11
  import "./env-BA3nu3t6.js";
12
12
  import "./github-copilot-token-v4Mg1eJR.js";
13
- import "./config-DUlVD6_Y.js";
13
+ import "./config-DG0yIsda.js";
14
14
  import "./manifest-registry-BfJkwq3e.js";
15
15
  import { n as listChannelPlugins } from "./plugins-D6P_BD0C.js";
16
16
  import "./message-channel-CtKNDWCz.js";
17
17
  import "./logging-D3KTM1pH.js";
18
18
  import "./accounts-WJ90N3bh.js";
19
19
  import "./device-identity-LQTSoG4n.js";
20
- import "./net-hcYzb5qw.js";
21
- import "./call-B0XDsG3E.js";
20
+ import "./net-CFwo3i7p.js";
21
+ import "./call-DX0qYMrV.js";
22
22
  import { t as formatDocsLink } from "./links-BraPfmsh.js";
23
23
  import "./progress-n072C1nN.js";
24
24
  import { t as parseAbsoluteTimeMs } from "./parse-TGKW2P5S.js";
25
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-B5KSW1jh.js";
25
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BmbZ18rs.js";
26
26
  import { n as parsePositiveIntOrUndefined } from "./helpers-DUclfUl-.js";
27
27
 
28
28
  //#region src/cli/cron-cli/shared.ts
@@ -1,26 +1,26 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
- import { Rt as resolveControlUiLinks } from "./reply-Cgz9s2Gn.js";
2
+ import { Rt as resolveControlUiLinks } from "./reply-DmgKEa9F.js";
3
3
  import { C as colorize, O as getResolvedLoggerSettings, T as theme, c as defaultRuntime, w as isRich } from "./subsystem-RXphV8Xh.js";
4
4
  import { d as resolveIsNixMode, g as resolveStateDir, o as resolveConfigPath, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
5
5
  import { y as shortenHomePath } from "./utils-rBzA-VDv.js";
6
6
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
7
- import { a as createConfigIO, o as loadConfig } from "./config-DUlVD6_Y.js";
7
+ import { a as createConfigIO, o as loadConfig } from "./config-DG0yIsda.js";
8
8
  import { d as inspectPortUsage, p as formatPortDiagnostics } from "./chrome-Brn_16IG.js";
9
9
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CtKNDWCz.js";
10
- import { n as isWSL, r as isWSLEnv } from "./dispatcher-DceYsguf.js";
10
+ import { n as isWSL, r as isWSLEnv } from "./dispatcher-EIlc1qZN.js";
11
11
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-C9LSfbiu.js";
12
- import { o as resolveGatewayBindHost } from "./net-hcYzb5qw.js";
13
- import { n as callGateway } from "./call-B0XDsG3E.js";
12
+ import { o as resolveGatewayBindHost } from "./net-CFwo3i7p.js";
13
+ import { n as callGateway } from "./call-DX0qYMrV.js";
14
14
  import { t as formatDocsLink } from "./links-BraPfmsh.js";
15
15
  import { n as withProgress } from "./progress-n072C1nN.js";
16
16
  import { d as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-BgaL_XFJ.js";
17
- import { t as createDefaultDeps } from "./deps-BUhGa_HH.js";
18
- import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-s4bEPaLr.js";
17
+ import { t as createDefaultDeps } from "./deps-Db-6DS0_.js";
18
+ import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-BrHV63lV.js";
19
19
  import { o as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-bz-Q1pz8.js";
20
20
  import { r as isSystemdUserServiceAvailable } from "./systemd-WeDhEsPI.js";
21
- import { a as renderGatewayServiceCleanupHints, i as findExtraGatewayServices, n as auditGatewayServiceConfig, o as readLastGatewayErrorLine } from "./service-audit-D5_xcF75.js";
21
+ import { a as renderGatewayServiceCleanupHints, i as findExtraGatewayServices, n as auditGatewayServiceConfig, o as readLastGatewayErrorLine } from "./service-audit-0Irp8Nwq.js";
22
22
  import { n as renderSystemdUnavailableHints, t as isSystemdUnavailableDetail } from "./systemd-hints-D65GSvgn.js";
23
- import { a as parsePortFromArgs, c as renderRuntimeHints, d as createNullWriter, f as emitDaemonActionJson, i as parsePort, l as safeDaemonEnv, n as formatRuntimeStatus, o as pickProbeHostForBind, r as normalizeListenerAddress, s as renderGatewayServiceStartHints, t as filterDaemonEnv, u as buildDaemonServiceSnapshot } from "./shared-lkFihiKy.js";
23
+ import { a as parsePortFromArgs, c as renderRuntimeHints, d as createNullWriter, f as emitDaemonActionJson, i as parsePort, l as safeDaemonEnv, n as formatRuntimeStatus, o as pickProbeHostForBind, r as normalizeListenerAddress, s as renderGatewayServiceStartHints, t as filterDaemonEnv, u as buildDaemonServiceSnapshot } from "./shared-BaXeHg7G.js";
24
24
 
25
25
  //#region src/cli/daemon-cli/install.ts
26
26
  async function runDaemonInstall(opts) {
@@ -1,6 +1,6 @@
1
1
  import { c as defaultRuntime } from "./subsystem-RXphV8Xh.js";
2
2
  import { t as formatCliCommand } from "./command-format-DQtyHEuH.js";
3
- import { A as collectConfigEnvVars, N as VERSION } from "./config-DUlVD6_Y.js";
3
+ import { A as collectConfigEnvVars, N as VERSION } from "./config-DG0yIsda.js";
4
4
  import { a as NODE_SERVICE_MARKER, d as resolveGatewaySystemdServiceName, g as resolveNodeWindowsTaskName, h as resolveNodeSystemdServiceName, i as NODE_SERVICE_KIND, l as resolveGatewayLaunchAgentLabel, m as resolveNodeLaunchAgentLabel, n as GATEWAY_SERVICE_KIND, o as NODE_WINDOWS_TASK_SCRIPT_NAME, r as GATEWAY_SERVICE_MARKER } from "./constants-BgaL_XFJ.js";
5
5
  import process$1 from "node:process";
6
6
  import path from "node:path";
@@ -1,12 +1,12 @@
1
1
  import { o as __toESM, r as __exportAll, t as __commonJSMin } from "./chunk-D_gEzPfs.js";
2
- import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-BFOvHIvC.js";
2
+ import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-SYv6smkX.js";
3
3
  import { V as getActivePluginRegistry, _ as logVerbose, b as shouldLogVerbose } from "./subsystem-RXphV8Xh.js";
4
4
  import { c as normalizeAccountId$1 } from "./session-key-DvA8Pdt6.js";
5
5
  import { h as resolveUserPath } from "./utils-rBzA-VDv.js";
6
- import { o as loadConfig } from "./config-DUlVD6_Y.js";
6
+ import { o as loadConfig } from "./config-DG0yIsda.js";
7
7
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-D6P_BD0C.js";
8
- import { F as getChannelDock, V as resolveSignalAccount, n as appendAssistantMessageToSessionTranscript, r as resolveMirroredTranscriptText } from "./sessions-C9GIoZ28.js";
9
- import { C as resolvePinnedHostnameWithPolicy, S as resolvePinnedHostname, _ as maxBytesForKind, a as optimizeImageToPng, b as closeDispatcher, c as saveMediaBuffer, i as hasAlphaChannel, l as detectMime, n as convertHeicToJpeg, o as resizeToJpeg, u as extensionForMime, v as mediaKindFromMime, x as createPinnedDispatcher } from "./routes-rXDWA7PI.js";
8
+ import { F as getChannelDock, V as resolveSignalAccount, n as appendAssistantMessageToSessionTranscript, r as resolveMirroredTranscriptText } from "./sessions-xyW6etJT.js";
9
+ import { C as resolvePinnedHostnameWithPolicy, S as resolvePinnedHostname, _ as maxBytesForKind, a as optimizeImageToPng, b as closeDispatcher, c as saveMediaBuffer, i as hasAlphaChannel, l as detectMime, n as convertHeicToJpeg, o as resizeToJpeg, u as extensionForMime, v as mediaKindFromMime, x as createPinnedDispatcher } from "./routes-BbTJeCHM.js";
10
10
  import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-CtKNDWCz.js";
11
11
  import { fileURLToPath } from "node:url";
12
12
  import path from "node:path";