skykoi 2026.3.333 → 2026.3.334

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 (104) hide show
  1. package/dist/{acp-cli-BoIg0V26.js → acp-cli-BTxdTjd4.js} +4 -4
  2. package/dist/{admin-unlock-DrMLstym.js → admin-unlock-BPH4mlvg.js} +2 -2
  3. package/dist/{archive-Cnt0Z28Z.js → archive-8x0EvT_N.js} +1 -1
  4. package/dist/{audit-W8eBqXeu.js → audit-hXEwoyqG.js} +5 -5
  5. package/dist/{auth-health-CbcD1zY3.js → auth-health-D-EO7Gy6.js} +1 -1
  6. package/dist/build-info.json +3 -3
  7. package/dist/{call-CoyRNd9g.js → call-sA6hQaS-.js} +1 -1
  8. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  9. package/dist/{channel-options-Cl-nN2X1.js → channel-options-DatqQMu-.js} +2 -2
  10. package/dist/{channel-summary-B5QCYL0T.js → channel-summary-CLON6lNN.js} +4 -4
  11. package/dist/{channels-cli-CTyAhop_.js → channels-cli-B9nzDGiE.js} +32 -31
  12. package/dist/cli/daemon-cli.js +1 -1
  13. package/dist/{cli-rY8tA4cM.js → cli-Do6zuGSa.js} +21 -21
  14. package/dist/{completion-cli-w81kdnLt.js → completion-cli-BUvof8ba.js} +1 -1
  15. package/dist/{config-Yyu5PFtw.js → config-BYfVVC4w.js} +1 -1
  16. package/dist/{config-guard-DzxvOKoq.js → config-guard-h5le6zs3.js} +31 -32
  17. package/dist/{configure-CYVJYRz2.js → configure-RUC9j2Tt.js} +7 -7
  18. package/dist/{control-service-D5oDgT_0.js → control-service-D9AMN7Pw.js} +1 -1
  19. package/dist/{cron-cli-Duw9y4J8.js → cron-cli-Jf2ffOp5.js} +5 -5
  20. package/dist/{daemon-cli-BrkNhhMu.js → daemon-cli-CDUBObTi.js} +6 -6
  21. package/dist/{daemon-runtime-DtMlY4NF.js → daemon-runtime-C_fffScE.js} +1 -1
  22. package/dist/{deliver-B3Rxt1I5.js → deliver-B9dSaGMw.js} +4 -4
  23. package/dist/{deps-vzaA3cCi.js → deps-Sx6LSw30.js} +2 -2
  24. package/dist/{devices-cli-DC-6Hc39.js → devices-cli-CAjvlSgC.js} +4 -4
  25. package/dist/{directory-cli-BzBUwqL7.js → directory-cli-CI1UcXcQ.js} +3 -3
  26. package/dist/{dispatcher-CzLKpwFu.js → dispatcher-CktpIU6y.js} +1 -1
  27. package/dist/{dist-FjCvU06b.js → dist-B7TwlN4O.js} +1 -1
  28. package/dist/{dist-DDAUdagw.js → dist-DeXSENCS.js} +1 -1
  29. package/dist/{dns-cli-DnltM9bh.js → dns-cli-D7mLy57C.js} +7 -5
  30. package/dist/{docs-cli-DTUF789J.js → docs-cli-CPoQHqu9.js} +3 -3
  31. package/dist/{doctor-BibkbdDu.js → doctor-BbFhtTJN.js} +14 -17
  32. package/dist/{doctor-completion-CR3IC9T_.js → doctor-completion-RhF6S3_C.js} +3 -2
  33. package/dist/{ensure-local-gateway-DDwrRwp7.js → ensure-local-gateway-Dhu_e55g.js} +3 -3
  34. package/dist/entry.js +1 -1
  35. package/dist/{exec-approvals-cli-C-kcAzNY.js → exec-approvals-cli-CIr1tcHP.js} +6 -6
  36. package/dist/extension-api.js +21 -21
  37. package/dist/{gateway-cli-Di3LpBuD.js → gateway-cli-uBA9gFWY.js} +117 -71
  38. package/dist/{gateway-rpc-C5eEkFCq.js → gateway-rpc-BbPQNaPu.js} +1 -1
  39. package/dist/{github-copilot-auth-DUR2Rurk.js → github-copilot-auth-C-5yS7-S.js} +3 -3
  40. package/dist/{gmail-setup-utils-5sz9cPwR.js → gmail-setup-utils-aNLlRREc.js} +1 -1
  41. package/dist/{health-format-CzzzPGkV.js → health-format-5hIukkMW.js} +5 -5
  42. package/dist/{hooks-cli-tbdpmPjO.js → hooks-cli-ni1bljxq.js} +24 -24
  43. package/dist/{hooks-status-C5cjna2N.js → hooks-status-CEe-RaiY.js} +1 -1
  44. package/dist/{image-D6UeitDz.js → image-DEPZA1EU.js} +5 -5
  45. package/dist/index.js +52 -52
  46. package/dist/{installs-e_Og4qaV.js → installs-DO1Qob_z.js} +1 -1
  47. package/dist/{koi-8agaiLxg.js → koi-D2JSJabK.js} +8 -8
  48. package/dist/{login-Cy6bmFgL.js → login-DQBkjWQh.js} +19 -13
  49. package/dist/{login-qr-mj9Ovfcm.js → login-qr-Di7t9ZSi.js} +1 -1
  50. package/dist/{logs-cli-DaQ6QR0-.js → logs-cli-CP9kPTTm.js} +5 -5
  51. package/dist/{manager-BE5gqmC5.js → manager-DB-Or87s.js} +1 -1
  52. package/dist/{model-selection-VOshtyu1.js → model-selection-CPMFDdc0.js} +6 -10
  53. package/dist/{models-cli-C7e0-9Rp.js → models-cli-Biw742NV.js} +23 -23
  54. package/dist/{node-cli-Cgq3yC5p.js → node-cli-CCsdpo2K.js} +8 -8
  55. package/dist/{nodes-cli-BYMXykP9.js → nodes-cli-iAW8vC5a.js} +5 -5
  56. package/dist/{onboard-channels-Ch2W-Ej-.js → onboard-channels-6_svNn6o.js} +3 -3
  57. package/dist/{onboard-helpers-CD3eWVOa.js → onboard-helpers-BIRpPu6r.js} +2 -2
  58. package/dist/{onboard-skills-C8uiqqrm.js → onboard-skills-DLJlrqc_.js} +14 -122
  59. package/dist/{onboarding-C1Kxffeh.js → onboarding-BFYgCHQD.js} +21 -18
  60. package/dist/{pairing-cli-t1N5hhJ-.js → pairing-cli--7h8FfSz.js} +3 -3
  61. package/dist/{pi-embedded-helpers-BgkCz6-a.js → pi-embedded-helpers-na1C-AMb.js} +2 -7
  62. package/dist/{pi-model-discovery-B1Go53C-.js → pi-model-discovery-guv06aCx.js} +1 -1
  63. package/dist/{pi-tools.policy-CXoKU_41.js → pi-tools.policy-CgqDcBD7.js} +1 -1
  64. package/dist/{plugin-auto-enable-BbtrAaLS.js → plugin-auto-enable-v4DB4YP9.js} +1 -1
  65. package/dist/{plugin-registry-DAUQX31K.js → plugin-registry-CbCweUIK.js} +2 -2
  66. package/dist/plugin-sdk/auto-reply/reply/response-prefix-template.d.ts +3 -3
  67. package/dist/plugin-sdk/auto-reply/thinking.d.ts +1 -1
  68. package/dist/plugin-sdk/commands/onboard-types.d.ts +1 -1
  69. package/dist/plugin-sdk/index.js +26 -30
  70. package/dist/plugin-sdk/infra/provider-usage.fetch.d.ts +0 -1
  71. package/dist/plugin-sdk/infra/provider-usage.types.d.ts +1 -1
  72. package/dist/plugin-sdk/koi/auth-profiles/constants.d.ts +0 -1
  73. package/dist/plugin-sdk/koi/auth-profiles.d.ts +1 -1
  74. package/dist/plugin-sdk/koi/cli-credentials.d.ts +1 -13
  75. package/dist/plugin-sdk/koi/pi-tools.d.ts +1 -1
  76. package/dist/plugin-sdk/{pi-model-discovery-szlzYGsC.js → pi-model-discovery-CBWcyyqn.js} +3 -3
  77. package/dist/{plugins-cli-DjdzVnKn.js → plugins-cli-nBHysCOE.js} +25 -25
  78. package/dist/{ports-CjjKBLMt.js → ports-BamXUQot.js} +4 -1
  79. package/dist/{program-CxE2_4v9.js → program-DBPBjQ6C.js} +5 -5
  80. package/dist/{qmd-manager-CudGE-sq.js → qmd-manager-C_tc1Xq0.js} +2 -1
  81. package/dist/{register.subclis-DCOaS-pp.js → register.subclis-Dnsmfs55.js} +28 -28
  82. package/dist/{reply-D9OBgRzU.js → reply-CDA3useo.js} +67 -202
  83. package/dist/{routes-BbYeFGmy.js → routes-C0p9r7wb.js} +1 -1
  84. package/dist/{rpc-DbjzLV36.js → rpc-DUHe8aDr.js} +1 -1
  85. package/dist/{run-main-vtyDK4ra.js → run-main-DlaQd9Vk.js} +55 -55
  86. package/dist/{runner-B3u_k4Uq.js → runner-Cd3l9l20.js} +23 -8
  87. package/dist/{sandbox-cli-D4lB68DM.js → sandbox-cli-Cnr2r5Xh.js} +8 -8
  88. package/dist/{sandbox-Dz0NJ75f.js → sandbox-r-9_x8xh.js} +4 -4
  89. package/dist/{security-cli-CTw6b4HA.js → security-cli-D-TmwgkE.js} +11 -11
  90. package/dist/{server-node-events-cjf8ej8t.js → server-node-events-Biz7Isls.js} +23 -23
  91. package/dist/{service-audit-BVth2lV7.js → service-audit-QCeWRiGh.js} +1 -1
  92. package/dist/{sessions-qSxjB3ek.js → sessions-CCcuvPWB.js} +2 -2
  93. package/dist/{skills-CAW1wGfu.js → skills-CBwfZKgG.js} +1 -1
  94. package/dist/{skills-cli-DW13Gi2s.js → skills-cli-bIqmQ4mX.js} +6 -6
  95. package/dist/{skills-status-Co31m4Xi.js → skills-status-hSlV1cuE.js} +2 -2
  96. package/dist/{status-BvOUIniP.js → status-yBch52Bb.js} +2 -2
  97. package/dist/{system-cli-CIBevsue.js → system-cli-DVTze1St.js} +5 -5
  98. package/dist/{tui-CAzfViNt.js → tui-Dil1xfUg.js} +50 -8
  99. package/dist/{tui-cli-CZ2EUtmz.js → tui-cli-u8Z71iuw.js} +15 -15
  100. package/dist/{update-03nzaNIh.js → update-B8J7Uxu1.js} +1 -1
  101. package/dist/{update-cli-D1tHe8ig.js → update-cli-8mtNxpYM.js} +38 -37
  102. package/dist/{webhooks-cli-CjqCOvRr.js → webhooks-cli-DrwKzl3F.js} +10 -7
  103. package/package.json +1 -1
  104. package/dist/plugin-sdk/infra/provider-usage.fetch.codex.d.ts +0 -2
@@ -6,19 +6,19 @@ import "./utils-D019Z2NU.js";
6
6
  import "./logger-BKidfKRU.js";
7
7
  import "./exec-XH65-wH1.js";
8
8
  import "./koi-scope-je0O-Kk9.js";
9
- import "./model-selection-VOshtyu1.js";
10
- import "./dist-DDAUdagw.js";
9
+ import "./model-selection-CPMFDdc0.js";
10
+ import "./dist-DeXSENCS.js";
11
11
  import "./dist-cjs-uww7sAWb.js";
12
12
  import "./boolean-D-3joTkO.js";
13
13
  import "./env-ChCKTuXK.js";
14
14
  import "./github-copilot-token-BqhLBQWA.js";
15
15
  import { t as VERSION } from "./version-BKRSzdyx.js";
16
- import { o as loadConfig } from "./config-Yyu5PFtw.js";
16
+ import { o as loadConfig } from "./config-BYfVVC4w.js";
17
17
  import "./manifest-registry-DEGu_o5t.js";
18
18
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CaDAAMe0.js";
19
19
  import "./device-identity-1_HtULLF.js";
20
20
  import { n as GatewayClient } from "./client-BoaSlLiw.js";
21
- import { t as buildGatewayConnectionDetails } from "./call-CoyRNd9g.js";
21
+ import { t as buildGatewayConnectionDetails } from "./call-sA6hQaS-.js";
22
22
  import { t as formatDocsLink } from "./links-DLPVdfTL.js";
23
23
  import "./tailscale-D0cB8Nyf.js";
24
24
  import { t as isMainModule } from "./is-main-DZvllFzQ.js";
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { r as theme } from "./theme-C5EwWDWE.js";
3
- import { o as loadConfig, u as writeConfigFile } from "./config-Yyu5PFtw.js";
3
+ import { o as loadConfig, u as writeConfigFile } from "./config-BYfVVC4w.js";
4
4
  import process from "node:process";
5
5
  import fs from "node:fs";
6
6
  import { join } from "node:path";
@@ -130,7 +130,7 @@ async function adminUnlock(opts = {}) {
130
130
  error: err?.message ?? "Failed to write config"
131
131
  };
132
132
  }
133
- const { ensureLocalGatewayRunning } = await import("./ensure-local-gateway-DDwrRwp7.js").then((n) => n.n);
133
+ const { ensureLocalGatewayRunning } = await import("./ensure-local-gateway-Dhu_e55g.js").then((n) => n.n);
134
134
  const gw = await ensureLocalGatewayRunning();
135
135
  if (!gw.ok) return {
136
136
  ok: false,
@@ -1,5 +1,5 @@
1
1
  import { i as __require, o as __toESM, t as __commonJSMin } from "./chunk-D_gEzPfs.js";
2
- import { Ot as require_inherits } from "./reply-D9OBgRzU.js";
2
+ import { Ot as require_inherits } from "./reply-CDA3useo.js";
3
3
  import path from "node:path";
4
4
  import fs from "node:fs/promises";
5
5
  import * as tar from "tar";
@@ -3,18 +3,18 @@ import { l as normalizeKoiId } from "./session-key-B2OXLVi_.js";
3
3
  import { n as runExec } from "./exec-XH65-wH1.js";
4
4
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-je0O-Kk9.js";
5
5
  import { t as formatCliCommand } from "./command-format-DOYW_19_.js";
6
- import { O as INCLUDE_KEY, a as createConfigIO, k as MAX_INCLUDE_DEPTH } from "./config-Yyu5PFtw.js";
6
+ import { O as INCLUDE_KEY, a as createConfigIO, k as MAX_INCLUDE_DEPTH } from "./config-BYfVVC4w.js";
7
7
  import { a as MANIFEST_KEY } from "./manifest-registry-DEGu_o5t.js";
8
8
  import { n as listChannelPlugins } from "./plugins-Ct7Mnq1x.js";
9
- import { d as resolveSandboxToolPolicyForKoi, l as resolveSandboxConfigForKoi } from "./sandbox-Dz0NJ75f.js";
9
+ import { d as resolveSandboxToolPolicyForKoi, l as resolveSandboxConfigForKoi } from "./sandbox-r-9_x8xh.js";
10
10
  import { s as resolveToolProfilePolicy } from "./tool-policy-D7sC9oiD.js";
11
- import { i as loadWorkspaceSkillEntries } from "./skills-CAW1wGfu.js";
11
+ import { i as loadWorkspaceSkillEntries } from "./skills-CBwfZKgG.js";
12
12
  import { i as resolveBrowserConfig, o as resolveProfile } from "./server-context-aoJXOi8y.js";
13
13
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CaDAAMe0.js";
14
14
  import { n as GatewayClient } from "./client-BoaSlLiw.js";
15
- import { t as buildGatewayConnectionDetails } from "./call-CoyRNd9g.js";
15
+ import { t as buildGatewayConnectionDetails } from "./call-sA6hQaS-.js";
16
16
  import { i as readChannelAllowFromStore } from "./pairing-store-T6gWH6ac.js";
17
- import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-CXoKU_41.js";
17
+ import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-CgqDcBD7.js";
18
18
  import { t as resolveChannelDefaultAccountId } from "./helpers-BJ0RdAWy.js";
19
19
  import { t as scanDirectoryWithSummary } from "./skill-scanner-Cw1pkvBp.js";
20
20
  import { i as resolveGatewayAuth } from "./auth-C6B1VxVI.js";
@@ -1,4 +1,4 @@
1
- import { ft as resolveAuthProfileDisplayLabel } from "./model-selection-VOshtyu1.js";
1
+ import { ft as resolveAuthProfileDisplayLabel } from "./model-selection-CPMFDdc0.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.333",
3
- "commit": "1904528a1ab9bed82f4e79891a6060afd191ee81",
4
- "builtAt": "2026-06-11T07:28:27.778Z"
2
+ "version": "2026.3.334",
3
+ "commit": "0d9535dd2955f1246b73e4a3d2d7daace4a5e98c",
4
+ "builtAt": "2026-06-11T17:47:30.981Z"
5
5
  }
@@ -2,7 +2,7 @@ import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-hATE68va.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-D019Z2NU.js";
5
- import { o as loadConfig } from "./config-Yyu5PFtw.js";
5
+ import { o as loadConfig } from "./config-BYfVVC4w.js";
6
6
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CaDAAMe0.js";
7
7
  import { r as loadOrCreateDeviceIdentity } from "./device-identity-1_HtULLF.js";
8
8
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-V5QYiabw.js";
@@ -1 +1 @@
1
- 0e5c7e64fba93fa5f391f9569a3fed3b0475c4ebd8a480f6360ac8043980d9a9
1
+ 7da13edbfd07f2376c57e09ec234ba15b02a73b1a392bafb9c7b58f75c69e929
@@ -1,8 +1,8 @@
1
1
  import { O as CHAT_CHANNEL_ORDER } from "./subsystem-hATE68va.js";
2
2
  import { t as isTruthyEnvValue } from "./env-ChCKTuXK.js";
3
3
  import { n as listChannelPlugins } from "./plugins-Ct7Mnq1x.js";
4
- import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-BbtrAaLS.js";
5
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DAUQX31K.js";
4
+ import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-v4DB4YP9.js";
5
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-CbCweUIK.js";
6
6
 
7
7
  //#region src/cli/channel-options.ts
8
8
  function dedupe(values) {
@@ -1,11 +1,11 @@
1
- import { L as listThinkingLevels, m as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-BgkCz6-a.js";
1
+ import { L as listThinkingLevels, m as formatRawAssistantErrorForUi } from "./pi-embedded-helpers-na1C-AMb.js";
2
2
  import { L as getActivePluginRegistry } from "./subsystem-hATE68va.js";
3
3
  import { r as theme } from "./theme-C5EwWDWE.js";
4
4
  import { t as DEFAULT_ACCOUNT_ID } from "./session-key-B2OXLVi_.js";
5
- import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, d as resolveConfiguredModelRef } from "./model-selection-VOshtyu1.js";
6
- import { o as loadConfig } from "./config-Yyu5PFtw.js";
5
+ import { St as DEFAULT_PROVIDER, d as resolveConfiguredModelRef, xt as DEFAULT_MODEL } from "./model-selection-CPMFDdc0.js";
6
+ import { o as loadConfig } from "./config-BYfVVC4w.js";
7
7
  import { n as listChannelPlugins } from "./plugins-Ct7Mnq1x.js";
8
- import { I as listChannelDocks } from "./sessions-qSxjB3ek.js";
8
+ import { I as listChannelDocks } from "./sessions-CCcuvPWB.js";
9
9
  import { n as SILENT_REPLY_TOKEN, t as HEARTBEAT_TOKEN } from "./tokens-9rhTb1EM.js";
10
10
  import { n as formatTokenCount } from "./usage-format-DmCdWNdr.js";
11
11
  import { createRequire } from "node:module";
@@ -1,5 +1,5 @@
1
- import "./pi-embedded-helpers-BgkCz6-a.js";
2
- import { $ as writeNylasGrant, Ct as loadProviderUsageSummary, J as nylasLinked, K as DEFAULT_NYLAS_API_URI, L as sendMessage, Q as sendMessage$1, X as readNylasGrant, Z as resolveNylasConfig, an as parseDiscordTarget, on as fetchChannelPermissionsDiscord, q as nylasConfigured, wt as formatUsageReportLines, yn as createSlackWebClient } from "./reply-D9OBgRzU.js";
1
+ import "./pi-embedded-helpers-na1C-AMb.js";
2
+ import { $ as writeNylasGrant, Ct as loadProviderUsageSummary, J as nylasLinked, K as DEFAULT_NYLAS_API_URI, L as sendMessage, Q as sendMessage$1, X as readNylasGrant, Z as resolveNylasConfig, an as parseDiscordTarget, on as fetchChannelPermissionsDiscord, q as nylasConfigured, wt as formatUsageReportLines, yn as createSlackWebClient } from "./reply-CDA3useo.js";
3
3
  import { b as success, f as danger, k as DEFAULT_CHAT_CHANNEL, p as info, s as defaultRuntime, v as setVerbose, w as getResolvedLoggerSettings } from "./subsystem-hATE68va.js";
4
4
  import "./paths-VdmjGGyc.js";
5
5
  import { r as theme } from "./theme-C5EwWDWE.js";
@@ -9,28 +9,28 @@ import "./utils-D019Z2NU.js";
9
9
  import "./logger-BKidfKRU.js";
10
10
  import "./exec-XH65-wH1.js";
11
11
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-je0O-Kk9.js";
12
- import { st as loadAuthProfileStore } from "./model-selection-VOshtyu1.js";
13
- import "./dist-DDAUdagw.js";
12
+ import { st as loadAuthProfileStore } from "./model-selection-CPMFDdc0.js";
13
+ import "./dist-DeXSENCS.js";
14
14
  import "./dist-cjs-uww7sAWb.js";
15
15
  import { t as formatCliCommand } from "./command-format-DOYW_19_.js";
16
16
  import "./boolean-D-3joTkO.js";
17
17
  import "./env-ChCKTuXK.js";
18
18
  import "./github-copilot-token-BqhLBQWA.js";
19
19
  import "./version-BKRSzdyx.js";
20
- import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-Yyu5PFtw.js";
20
+ import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-BYfVVC4w.js";
21
21
  import "./manifest-registry-DEGu_o5t.js";
22
22
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Ct7Mnq1x.js";
23
- import "./sessions-qSxjB3ek.js";
24
- import "./image-D6UeitDz.js";
25
- import "./dist-FjCvU06b.js";
23
+ import "./sessions-CCcuvPWB.js";
24
+ import "./image-DEPZA1EU.js";
25
+ import "./dist-B7TwlN4O.js";
26
26
  import "./lib-pS0Bd7GL.js";
27
27
  import "./src-ByySp9O0.js";
28
28
  import "./core-B7QS0Vnt.js";
29
- import "./pi-model-discovery-B1Go53C-.js";
30
- import "./sandbox-Dz0NJ75f.js";
29
+ import "./pi-model-discovery-guv06aCx.js";
30
+ import "./sandbox-r-9_x8xh.js";
31
31
  import "./chrome-B-IUYNJz.js";
32
- import "./skills-CAW1wGfu.js";
33
- import "./routes-BbYeFGmy.js";
32
+ import "./skills-CBwfZKgG.js";
33
+ import "./routes-C0p9r7wb.js";
34
34
  import "./server-context-aoJXOi8y.js";
35
35
  import "./image-ops-bY5IHCXb.js";
36
36
  import "./message-channel-CaDAAMe0.js";
@@ -40,51 +40,51 @@ import "./paths-DLKQOevr.js";
40
40
  import "./tool-images-DOz9yj-z.js";
41
41
  import "./redact-1AXapBET.js";
42
42
  import "./tool-display-DYOxwSs6.js";
43
- import "./deliver-B3Rxt1I5.js";
44
- import "./dispatcher-CzLKpwFu.js";
43
+ import "./deliver-B9dSaGMw.js";
44
+ import "./dispatcher-CktpIU6y.js";
45
45
  import "./dist-Byt8U32D.js";
46
46
  import "./pi-tool-definition-adapter-B5Zq7e5d.js";
47
- import "./manager-BE5gqmC5.js";
47
+ import "./manager-DB-Or87s.js";
48
48
  import "./sqlite-BNq8OiKY.js";
49
49
  import "./warnings-ZtUGH1-N.js";
50
50
  import "./proxy-from-env-BnenCgWg.js";
51
- import "./login-qr-mj9Ovfcm.js";
52
- import { n as formatAge } from "./channel-summary-B5QCYL0T.js";
51
+ import "./login-qr-Di7t9ZSi.js";
52
+ import { n as formatAge } from "./channel-summary-CLON6lNN.js";
53
53
  import "./device-identity-1_HtULLF.js";
54
54
  import "./client-BoaSlLiw.js";
55
- import { n as callGateway } from "./call-CoyRNd9g.js";
55
+ import { n as callGateway } from "./call-sA6hQaS-.js";
56
56
  import "./koi-events-PjhvrXGG.js";
57
57
  import "./pairing-store-T6gWH6ac.js";
58
58
  import { t as formatDocsLink } from "./links-DLPVdfTL.js";
59
59
  import { n as runCommandWithRuntime } from "./cli-utils-C7Y3mYV0.js";
60
60
  import { n as withProgress } from "./progress-CPiVHO-Z.js";
61
61
  import "./node-pairing-C1P39zn3.js";
62
- import "./pi-tools.policy-CXoKU_41.js";
63
- import "./onboard-helpers-CD3eWVOa.js";
62
+ import "./pi-tools.policy-CgqDcBD7.js";
63
+ import "./onboard-helpers-BIRpPu6r.js";
64
64
  import "./prompt-style-CCcySodo.js";
65
65
  import "./pairing-labels-C-enUdKD.js";
66
66
  import "./satisfies-BMYLGl6t.js";
67
67
  import "./session-cost-usage-5qAaW5Wc.js";
68
- import "./control-service-D5oDgT_0.js";
68
+ import "./control-service-D9AMN7Pw.js";
69
69
  import "./restart-sentinel-CPa0BLgc.js";
70
70
  import { n as resolveMessageChannelSelection } from "./channel-selection-OgVBkPDG.js";
71
71
  import "./event-log-D8bpV04L.js";
72
72
  import { t as resolveChannelDefaultAccountId } from "./helpers-BJ0RdAWy.js";
73
73
  import "./note-JXsKJ6Xp.js";
74
74
  import { t as createClackPrompter } from "./clack-prompter-t8CaZFBV.js";
75
- import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-Ch2W-Ej-.js";
76
- import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-BbtrAaLS.js";
77
- import "./archive-Cnt0Z28Z.js";
75
+ import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-6_svNn6o.js";
76
+ import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-v4DB4YP9.js";
77
+ import "./archive-8x0EvT_N.js";
78
78
  import "./skill-scanner-Cw1pkvBp.js";
79
- import "./installs-e_Og4qaV.js";
79
+ import "./installs-DO1Qob_z.js";
80
80
  import "./service-CKHP-LSk.js";
81
81
  import "./systemd-D9YMYUVJ.js";
82
82
  import "./diagnostics-C-YMJXl4.js";
83
83
  import { t as collectChannelStatusIssues } from "./channels-status-issues-T19-LXup.js";
84
- import { n as hasExplicitOptions } from "./plugin-registry-DAUQX31K.js";
85
- import "./daemon-runtime-DtMlY4NF.js";
86
- import { t as ensureLocalGatewayRunning } from "./ensure-local-gateway-DDwrRwp7.js";
87
- import { t as formatCliChannelOptions } from "./channel-options-Cl-nN2X1.js";
84
+ import { n as hasExplicitOptions } from "./plugin-registry-CbCweUIK.js";
85
+ import "./daemon-runtime-C_fffScE.js";
86
+ import { t as ensureLocalGatewayRunning } from "./ensure-local-gateway-Dhu_e55g.js";
87
+ import { t as formatCliChannelOptions } from "./channel-options-DatqQMu-.js";
88
88
  import { t as buildChannelAccountSnapshot } from "./status-nK1ROKw-.js";
89
89
  import { t as parseLogLine } from "./parse-log-line-CVV_nG9g.js";
90
90
  import process$1 from "node:process";
@@ -1469,7 +1469,8 @@ async function runNylasConnect(opts = {}) {
1469
1469
  if (process$1.platform === "darwin") try {
1470
1470
  spawn("open", [authUrl], {
1471
1471
  stdio: "ignore",
1472
- detached: true
1472
+ detached: true,
1473
+ windowsHide: true
1473
1474
  }).unref();
1474
1475
  } catch {}
1475
1476
  });
@@ -1591,7 +1592,7 @@ async function runChannelLoginAll(opts = {}, runtime = defaultRuntime) {
1591
1592
  } else runtime.log(info("\n──────── Email & Calendar ────────\nNot set up yet — skipping."));
1592
1593
  runtime.log(info("\nAll channels processed. Restarting the gateway once so the new sessions come online…"));
1593
1594
  await new Promise((resolve) => {
1594
- execFile("pkill", ["-f", "skykoi-gateway"], () => resolve());
1595
+ execFile("pkill", ["-f", "skykoi-gateway"], { windowsHide: true }, () => resolve());
1595
1596
  });
1596
1597
  await new Promise((resolve) => setTimeout(resolve, 1500));
1597
1598
  const result = await ensureLocalGatewayRunning();
@@ -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-BrkNhhMu.js";
2
+ export { registerDaemonCli, runDaemonInstall, runDaemonRestart, runDaemonStart, runDaemonStatus, runDaemonStop, runDaemonUninstall } from "../daemon-cli-CDUBObTi.js";
@@ -1,5 +1,5 @@
1
- import "./pi-embedded-helpers-BgkCz6-a.js";
2
- import { St as loadSKYKOIPlugins } from "./reply-D9OBgRzU.js";
1
+ import "./pi-embedded-helpers-na1C-AMb.js";
2
+ import { St as loadSKYKOIPlugins } from "./reply-CDA3useo.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-hATE68va.js";
4
4
  import "./paths-VdmjGGyc.js";
5
5
  import "./theme-C5EwWDWE.js";
@@ -8,27 +8,27 @@ import "./utils-D019Z2NU.js";
8
8
  import "./logger-BKidfKRU.js";
9
9
  import "./exec-XH65-wH1.js";
10
10
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-je0O-Kk9.js";
11
- import "./model-selection-VOshtyu1.js";
12
- import "./dist-DDAUdagw.js";
11
+ import "./model-selection-CPMFDdc0.js";
12
+ import "./dist-DeXSENCS.js";
13
13
  import "./dist-cjs-uww7sAWb.js";
14
14
  import "./boolean-D-3joTkO.js";
15
15
  import "./env-ChCKTuXK.js";
16
16
  import "./github-copilot-token-BqhLBQWA.js";
17
17
  import "./version-BKRSzdyx.js";
18
- import { o as loadConfig } from "./config-Yyu5PFtw.js";
18
+ import { o as loadConfig } from "./config-BYfVVC4w.js";
19
19
  import "./manifest-registry-DEGu_o5t.js";
20
20
  import "./plugins-Ct7Mnq1x.js";
21
- import "./sessions-qSxjB3ek.js";
22
- import "./image-D6UeitDz.js";
23
- import "./dist-FjCvU06b.js";
21
+ import "./sessions-CCcuvPWB.js";
22
+ import "./image-DEPZA1EU.js";
23
+ import "./dist-B7TwlN4O.js";
24
24
  import "./lib-pS0Bd7GL.js";
25
25
  import "./src-ByySp9O0.js";
26
26
  import "./core-B7QS0Vnt.js";
27
- import "./pi-model-discovery-B1Go53C-.js";
28
- import "./sandbox-Dz0NJ75f.js";
27
+ import "./pi-model-discovery-guv06aCx.js";
28
+ import "./sandbox-r-9_x8xh.js";
29
29
  import "./chrome-B-IUYNJz.js";
30
- import "./skills-CAW1wGfu.js";
31
- import "./routes-BbYeFGmy.js";
30
+ import "./skills-CBwfZKgG.js";
31
+ import "./routes-C0p9r7wb.js";
32
32
  import "./server-context-aoJXOi8y.js";
33
33
  import "./image-ops-bY5IHCXb.js";
34
34
  import "./message-channel-CaDAAMe0.js";
@@ -38,31 +38,31 @@ import "./paths-DLKQOevr.js";
38
38
  import "./tool-images-DOz9yj-z.js";
39
39
  import "./redact-1AXapBET.js";
40
40
  import "./tool-display-DYOxwSs6.js";
41
- import "./deliver-B3Rxt1I5.js";
42
- import "./dispatcher-CzLKpwFu.js";
41
+ import "./deliver-B9dSaGMw.js";
42
+ import "./dispatcher-CktpIU6y.js";
43
43
  import "./dist-Byt8U32D.js";
44
44
  import "./pi-tool-definition-adapter-B5Zq7e5d.js";
45
- import "./manager-BE5gqmC5.js";
45
+ import "./manager-DB-Or87s.js";
46
46
  import "./sqlite-BNq8OiKY.js";
47
47
  import "./warnings-ZtUGH1-N.js";
48
48
  import "./proxy-from-env-BnenCgWg.js";
49
- import "./login-qr-mj9Ovfcm.js";
50
- import "./channel-summary-B5QCYL0T.js";
49
+ import "./login-qr-Di7t9ZSi.js";
50
+ import "./channel-summary-CLON6lNN.js";
51
51
  import "./device-identity-1_HtULLF.js";
52
52
  import "./client-BoaSlLiw.js";
53
- import "./call-CoyRNd9g.js";
53
+ import "./call-sA6hQaS-.js";
54
54
  import "./koi-events-PjhvrXGG.js";
55
55
  import "./pairing-store-T6gWH6ac.js";
56
56
  import "./links-DLPVdfTL.js";
57
57
  import "./progress-CPiVHO-Z.js";
58
58
  import "./node-pairing-C1P39zn3.js";
59
- import "./pi-tools.policy-CXoKU_41.js";
60
- import "./onboard-helpers-CD3eWVOa.js";
59
+ import "./pi-tools.policy-CgqDcBD7.js";
60
+ import "./onboard-helpers-BIRpPu6r.js";
61
61
  import "./prompt-style-CCcySodo.js";
62
62
  import "./pairing-labels-C-enUdKD.js";
63
63
  import "./satisfies-BMYLGl6t.js";
64
64
  import "./session-cost-usage-5qAaW5Wc.js";
65
- import "./control-service-D5oDgT_0.js";
65
+ import "./control-service-D9AMN7Pw.js";
66
66
  import "./restart-sentinel-CPa0BLgc.js";
67
67
  import "./channel-selection-OgVBkPDG.js";
68
68
  import "./event-log-D8bpV04L.js";
@@ -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-DCOaS-pp.js";
3
+ import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-Dnsmfs55.js";
4
4
  import path from "node:path";
5
5
  import os from "node:os";
6
6
  import fs from "node:fs/promises";
@@ -4,7 +4,7 @@ import { a as resolveCanonicalConfigPath, c as resolveDefaultConfigCandidates, d
4
4
  import { l as normalizeKoiId, n as DEFAULT_KOI_ID } from "./session-key-B2OXLVi_.js";
5
5
  import { h as resolveUserPath } from "./utils-D019Z2NU.js";
6
6
  import { l as resolveKoiWorkspaceDir, r as resolveDefaultKoiId } from "./koi-scope-je0O-Kk9.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-VOshtyu1.js";
7
+ import { _t as resolveShellEnvFallbackTimeoutMs, bt as DEFAULT_CONTEXT_TOKENS, c as parseModelRef, gt as loadShellEnvFallback, vt as shouldDeferShellEnvFallback, yt as shouldEnableShellEnvFallback } from "./model-selection-CPMFDdc0.js";
8
8
  import { t as VERSION } from "./version-BKRSzdyx.js";
9
9
  import { c as resolveEnableState, l as resolveMemorySlotDecision, s as normalizePluginsConfig, t as loadPluginManifestRegistry } from "./manifest-registry-DEGu_o5t.js";
10
10
  import fs from "node:fs";
@@ -1,4 +1,4 @@
1
- import { H as formatTargetDisplay, Ht as registerMemoryCli, P as runMessageAction, Ut as runMemoryStatus, W as CHANNEL_MESSAGE_ACTION_NAMES, _t as CHANNEL_TARGETS_DESCRIPTION, tr as lookupContextTokens, vt as CHANNEL_TARGET_DESCRIPTION } from "./reply-D9OBgRzU.js";
1
+ import { H as formatTargetDisplay, Ht as registerMemoryCli, P as runMessageAction, Ut as runMemoryStatus, W as CHANNEL_MESSAGE_ACTION_NAMES, _t as CHANNEL_TARGETS_DESCRIPTION, tr as lookupContextTokens, vt as CHANNEL_TARGET_DESCRIPTION } from "./reply-CDA3useo.js";
2
2
  import { I as normalizeChatChannelId, M as getChatChannelMeta, c as restoreTerminalState, f as danger, k as DEFAULT_CHAT_CHANNEL, p as info, s as defaultRuntime, v as setVerbose } from "./subsystem-hATE68va.js";
3
3
  import { g as resolveStateDir, i as isNixMode, m as resolveOAuthDir, o as resolveConfigPath, r as STATE_DIR, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
4
4
  import { n as isRich, r as theme, t as colorize } from "./theme-C5EwWDWE.js";
@@ -6,47 +6,47 @@ import { l as normalizeKoiId, n as DEFAULT_KOI_ID, t as DEFAULT_ACCOUNT_ID } fro
6
6
  import { h as resolveUserPath, p as resolveHomeDir, v as shortenHomeInString, y as shortenHomePath } from "./utils-D019Z2NU.js";
7
7
  import { t as runCommandWithTimeout } from "./exec-XH65-wH1.js";
8
8
  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-je0O-Kk9.js";
9
- 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-VOshtyu1.js";
9
+ import { G as resolveAuthProfileOrder, H as resolveEnvApiKey, St as DEFAULT_PROVIDER, X as resolveApiKeyForProfile, at as upsertAuthProfile, bt as DEFAULT_CONTEXT_TOKENS, d as resolveConfiguredModelRef, lt as resolveAuthStorePath, ot as ensureAuthProfileStore, s as normalizeProviderId, xt as DEFAULT_MODEL } from "./model-selection-CPMFDdc0.js";
10
10
  import { t as formatCliCommand } from "./command-format-DOYW_19_.js";
11
11
  import { t as parseBooleanValue } from "./boolean-D-3joTkO.js";
12
- import { D as applyLegacyMigrations, _ as parseDurationMs, a as createConfigIO, c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-Yyu5PFtw.js";
12
+ import { D as applyLegacyMigrations, _ as parseDurationMs, a as createConfigIO, c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-BYfVVC4w.js";
13
13
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-Ct7Mnq1x.js";
14
- import { i as loadSessionStore } from "./sessions-qSxjB3ek.js";
14
+ import { i as loadSessionStore } from "./sessions-CCcuvPWB.js";
15
15
  import { n as movePathToTrash } from "./server-context-aoJXOi8y.js";
16
16
  import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-CaDAAMe0.js";
17
17
  import { a as resolveSessionTranscriptsDirForKoi, i as resolveSessionTranscriptsDir, o as resolveStorePath } from "./paths-DLKQOevr.js";
18
- import { a as randomIdempotencyKey, n as callGateway } from "./call-CoyRNd9g.js";
18
+ import { a as randomIdempotencyKey, n as callGateway } from "./call-sA6hQaS-.js";
19
19
  import { t as formatDocsLink } from "./links-DLPVdfTL.js";
20
20
  import { n as runCommandWithRuntime } from "./cli-utils-C7Y3mYV0.js";
21
21
  import { n as withProgress } from "./progress-CPiVHO-Z.js";
22
- import { a as ensureWorkspaceAndSessions, c as handleReset, d as openUrl, h as resolveControlUiLinks, i as detectBrowserOpenSupport, l as moveToTrash, m as randomToken, n as applyWizardMetadata, o as formatControlUiSshHint, t as DEFAULT_WORKSPACE, v as waitForGatewayReachable } from "./onboard-helpers-CD3eWVOa.js";
22
+ import { a as ensureWorkspaceAndSessions, c as handleReset, d as openUrl, h as resolveControlUiLinks, i as detectBrowserOpenSupport, l as moveToTrash, m as randomToken, n as applyWizardMetadata, o as formatControlUiSshHint, t as DEFAULT_WORKSPACE, v as waitForGatewayReachable } from "./onboard-helpers-BIRpPu6r.js";
23
23
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-CCcySodo.js";
24
- import { t as createDefaultDeps } from "./deps-vzaA3cCi.js";
24
+ import { t as createDefaultDeps } from "./deps-Sx6LSw30.js";
25
25
  import { t as assertSupportedRuntime } from "./runtime-guard-DHvhwccg.js";
26
26
  import { t as resolveChannelDefaultAccountId } from "./helpers-BJ0RdAWy.js";
27
27
  import { n as logConfigUpdated, t as formatConfigPath } from "./logging-BYKu4FCl.js";
28
28
  import { t as WizardCancelledError } from "./prompts-QLr0uHK3.js";
29
29
  import { t as createClackPrompter } from "./clack-prompter-t8CaZFBV.js";
30
- 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-C1Kxffeh.js";
31
- import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-C8uiqqrm.js";
32
- 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-DUR2Rurk.js";
33
- import { n as setupChannels } from "./onboard-channels-Ch2W-Ej-.js";
34
- import { i as healthCommand } from "./health-format-CzzzPGkV.js";
30
+ 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-BFYgCHQD.js";
31
+ import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-DLJlrqc_.js";
32
+ 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-C-5yS7-S.js";
33
+ import { n as setupChannels } from "./onboard-channels-6_svNn6o.js";
34
+ import { i as healthCommand } from "./health-format-5hIukkMW.js";
35
35
  import { t as renderTable } from "./table-DGEf0ecX.js";
36
36
  import { t as resolveGatewayService } from "./service-CKHP-LSk.js";
37
37
  import { r as isSystemdUserServiceAvailable } from "./systemd-D9YMYUVJ.js";
38
- import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-DCOaS-pp.js";
39
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-C5eEkFCq.js";
38
+ import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-Dnsmfs55.js";
39
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-BbPQNaPu.js";
40
40
  import { t as formatHelpExamples } from "./help-format-D6QlSTzg.js";
41
- import { t as adminUnlockCommand } from "./admin-unlock-DrMLstym.js";
42
- import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-8agaiLxg.js";
43
- import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-DAUQX31K.js";
41
+ import { t as adminUnlockCommand } from "./admin-unlock-BPH4mlvg.js";
42
+ import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-D2JSJabK.js";
43
+ import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-CbCweUIK.js";
44
44
  import { n as parsePositiveIntOrUndefined, t as collectOption } from "./helpers-BNTDHUZB.js";
45
- import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-CYVJYRz2.js";
46
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DtMlY4NF.js";
45
+ import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-RUC9j2Tt.js";
46
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-C_fffScE.js";
47
47
  import { n as ensureSystemdUserLingerNonInteractive } from "./systemd-linger-Bp3jN74v.js";
48
- import { t as loginCommand } from "./login-Cy6bmFgL.js";
49
- import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-BibkbdDu.js";
48
+ import { t as loginCommand } from "./login-DQBkjWQh.js";
49
+ import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-BbFhtTJN.js";
50
50
  import { fileURLToPath } from "node:url";
51
51
  import fs from "node:fs";
52
52
  import path from "node:path";
@@ -2797,7 +2797,7 @@ async function loadValidConfig() {
2797
2797
  }
2798
2798
  function registerConfigCli(program) {
2799
2799
  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) => {
2800
- const { CONFIGURE_WIZARD_SECTIONS, configureCommand, configureCommandWithSections } = await import("./configure-CYVJYRz2.js").then((n) => n.t);
2800
+ const { CONFIGURE_WIZARD_SECTIONS, configureCommand, configureCommandWithSections } = await import("./configure-RUC9j2Tt.js").then((n) => n.t);
2801
2801
  const sections = Array.isArray(opts.section) ? opts.section.map((value) => typeof value === "string" ? value.trim() : "").filter(Boolean) : [];
2802
2802
  if (sections.length === 0) {
2803
2803
  await configureCommand(defaultRuntime);
@@ -3105,7 +3105,7 @@ function registerLoginCommand(program) {
3105
3105
  console.log(theme.muted(` user=${result.userId} org=${result.orgId}`));
3106
3106
  }
3107
3107
  if (opts.chat !== false && result.gatewayUrl && process.stdin.isTTY && process.stdout.isTTY) {
3108
- const { runTui } = await import("./tui-CAzfViNt.js").then((n) => n.n);
3108
+ const { runTui } = await import("./tui-Dil1xfUg.js").then((n) => n.n);
3109
3109
  console.log(theme.muted("\n Opening your koi chat…\n"));
3110
3110
  await runTui({
3111
3111
  url: result.gatewayUrl,
@@ -3130,7 +3130,7 @@ function registerLoginCommand(program) {
3130
3130
  }
3131
3131
  });
3132
3132
  program.command("whoami").description("Show the currently-logged-in SkyKoi account").action(async () => {
3133
- const { readAuthFile } = await import("./login-Cy6bmFgL.js").then((n) => n.n);
3133
+ const { readAuthFile } = await import("./login-DQBkjWQh.js").then((n) => n.n);
3134
3134
  const auth = await readAuthFile();
3135
3135
  if (!auth) {
3136
3136
  console.log(theme.muted("Not logged in. Run `skykoi login`."));
@@ -4344,8 +4344,8 @@ async function resolveNonInteractiveApiKey(params) {
4344
4344
  async function applyNonInteractiveAuthChoice(params) {
4345
4345
  const { authChoice, opts, runtime, baseConfig } = params;
4346
4346
  let nextConfig = params.nextConfig;
4347
- if (authChoice === "claude-cli" || authChoice === "codex-cli") {
4348
- runtime.error([`Auth choice "${authChoice}" is deprecated.`, "Use \"--auth-choice token\" (Anthropic setup-token) or \"--auth-choice openai-codex\"."].join("\n"));
4347
+ if (authChoice === "claude-cli") {
4348
+ runtime.error([`Auth choice "${authChoice}" is deprecated.`, "Use \"--auth-choice token\" (Anthropic setup-token)."].join("\n"));
4349
4349
  runtime.exit(1);
4350
4350
  return null;
4351
4351
  }
@@ -4725,7 +4725,7 @@ async function applyNonInteractiveAuthChoice(params) {
4725
4725
  });
4726
4726
  return applyOpencodeZenConfig(nextConfig);
4727
4727
  }
4728
- if (authChoice === "oauth" || authChoice === "chutes" || authChoice === "openai-codex" || authChoice === "qwen-portal" || authChoice === "minimax-portal") {
4728
+ if (authChoice === "oauth" || authChoice === "chutes" || authChoice === "qwen-portal" || authChoice === "minimax-portal") {
4729
4729
  runtime.error("OAuth requires interactive mode.");
4730
4730
  runtime.exit(1);
4731
4731
  return null;
@@ -5091,14 +5091,13 @@ async function runNonInteractiveOnboarding(opts, runtime = defaultRuntime) {
5091
5091
  async function onboardCommand(opts, runtime = defaultRuntime) {
5092
5092
  assertSupportedRuntime(runtime);
5093
5093
  const authChoice = opts.authChoice === "oauth" ? "setup-token" : opts.authChoice;
5094
- const normalizedAuthChoice = authChoice === "claude-cli" ? "setup-token" : authChoice === "codex-cli" ? "openai-codex" : authChoice;
5095
- if (opts.nonInteractive && (authChoice === "claude-cli" || authChoice === "codex-cli")) {
5096
- runtime.error([`Auth choice "${authChoice}" is deprecated.`, "Use \"--auth-choice token\" (Anthropic setup-token) or \"--auth-choice openai-codex\"."].join("\n"));
5094
+ const normalizedAuthChoice = authChoice === "claude-cli" ? "setup-token" : authChoice;
5095
+ if (opts.nonInteractive && authChoice === "claude-cli") {
5096
+ runtime.error([`Auth choice "${authChoice}" is deprecated.`, "Use \"--auth-choice token\" (Anthropic setup-token)."].join("\n"));
5097
5097
  runtime.exit(1);
5098
5098
  return;
5099
5099
  }
5100
5100
  if (authChoice === "claude-cli") runtime.log("Auth choice \"claude-cli\" is deprecated; using setup-token flow instead.");
5101
- if (authChoice === "codex-cli") runtime.log("Auth choice \"codex-cli\" is deprecated; using OpenAI Codex OAuth instead.");
5102
5101
  const flow = opts.flow === "manual" ? "advanced" : opts.flow;
5103
5102
  const normalizedOpts = normalizedAuthChoice === opts.authChoice && flow === opts.flow ? opts : {
5104
5103
  ...opts,
@@ -5142,7 +5141,7 @@ function resolveInstallDaemonFlag(command, opts) {
5142
5141
  if (getOptionValueSource.call(command, "installDaemon") === "cli") return Boolean(opts.installDaemon);
5143
5142
  }
5144
5143
  function registerOnboardCommand(program) {
5145
- program.command("onboard").description("Interactive wizard to set up the gateway, workspace, and skills").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/onboard", "docs.skykoi.com/cli/onboard")}\n`).option("--workspace <dir>", "Koi workspace directory (default: ~/.skykoi/workspace)").option("--reset", "Reset config + credentials + sessions + workspace before running wizard").option("--non-interactive", "Run without prompts", false).option("--accept-risk", "Acknowledge that Koi are powerful and full system access is risky (required for --non-interactive)", false).option("--flow <flow>", "Wizard flow: quickstart|advanced|manual").option("--mode <mode>", "Wizard mode: local|remote").option("--auth-choice <choice>", "Auth: setup-token|token|chutes|openai-codex|openai-api-key|xai-api-key|qianfan-api-key|openrouter-api-key|ai-gateway-api-key|cloudflare-ai-gateway-api-key|moonshot-api-key|moonshot-api-key-cn|kimi-code-api-key|synthetic-api-key|venice-api-key|gemini-api-key|zai-api-key|xiaomi-api-key|apiKey|minimax-api|minimax-api-lightning|opencode-zen|skip").option("--token-provider <id>", "Token provider id (non-interactive; used with --auth-choice token)").option("--token <token>", "Token value (non-interactive; used with --auth-choice token)").option("--token-profile-id <id>", "Auth profile id (non-interactive; default: <provider>:manual)").option("--token-expires-in <duration>", "Optional token expiry duration (e.g. 365d, 12h)").option("--anthropic-api-key <key>", "Anthropic API key").option("--openai-api-key <key>", "OpenAI API key").option("--openrouter-api-key <key>", "OpenRouter API key").option("--ai-gateway-api-key <key>", "Vercel AI Gateway API key").option("--cloudflare-ai-gateway-account-id <id>", "Cloudflare Account ID").option("--cloudflare-ai-gateway-gateway-id <id>", "Cloudflare AI Gateway ID").option("--cloudflare-ai-gateway-api-key <key>", "Cloudflare AI Gateway API key").option("--moonshot-api-key <key>", "Moonshot API key").option("--kimi-code-api-key <key>", "Kimi Coding API key").option("--gemini-api-key <key>", "Gemini API key").option("--zai-api-key <key>", "Z.AI API key").option("--xiaomi-api-key <key>", "Xiaomi API key").option("--minimax-api-key <key>", "MiniMax API key").option("--synthetic-api-key <key>", "Synthetic API key").option("--venice-api-key <key>", "Venice API key").option("--opencode-zen-api-key <key>", "OpenCode Zen API key").option("--xai-api-key <key>", "xAI API key").option("--qianfan-api-key <key>", "QIANFAN API key").option("--gateway-port <port>", "Gateway port").option("--gateway-bind <mode>", "Gateway bind: loopback|tailnet|lan|auto|custom").option("--gateway-auth <mode>", "Gateway auth: token|password").option("--gateway-token <token>", "Gateway token (token auth)").option("--gateway-password <password>", "Gateway password (password auth)").option("--remote-url <url>", "Remote Gateway WebSocket URL").option("--remote-token <token>", "Remote Gateway token (optional)").option("--tailscale <mode>", "Tailscale: off|serve|funnel").option("--tailscale-reset-on-exit", "Reset tailscale serve/funnel on exit").option("--install-daemon", "Install gateway service").option("--no-install-daemon", "Skip gateway service install").option("--skip-daemon", "Skip gateway service install").option("--daemon-runtime <runtime>", "Daemon runtime: node|bun").option("--skip-channels", "Skip channel setup").option("--skip-skills", "Skip skills setup").option("--skip-health", "Skip health check").option("--skip-ui", "Skip Control UI/TUI prompts").option("--node-manager <name>", "Node manager for skills: npm|pnpm|bun").option("--json", "Output JSON summary", false).action(async (opts, command) => {
5144
+ program.command("onboard").description("Interactive wizard to set up the gateway, workspace, and skills").addHelpText("after", () => `\n${theme.muted("Docs:")} ${formatDocsLink("/cli/onboard", "docs.skykoi.com/cli/onboard")}\n`).option("--workspace <dir>", "Koi workspace directory (default: ~/.skykoi/workspace)").option("--reset", "Reset config + credentials + sessions + workspace before running wizard").option("--non-interactive", "Run without prompts", false).option("--accept-risk", "Acknowledge that Koi are powerful and full system access is risky (required for --non-interactive)", false).option("--flow <flow>", "Wizard flow: quickstart|advanced|manual").option("--mode <mode>", "Wizard mode: local|remote").option("--auth-choice <choice>", "Auth: setup-token|token|chutes|openai-api-key|xai-api-key|qianfan-api-key|openrouter-api-key|ai-gateway-api-key|cloudflare-ai-gateway-api-key|moonshot-api-key|moonshot-api-key-cn|kimi-code-api-key|synthetic-api-key|venice-api-key|gemini-api-key|zai-api-key|xiaomi-api-key|apiKey|minimax-api|minimax-api-lightning|opencode-zen|skip").option("--token-provider <id>", "Token provider id (non-interactive; used with --auth-choice token)").option("--token <token>", "Token value (non-interactive; used with --auth-choice token)").option("--token-profile-id <id>", "Auth profile id (non-interactive; default: <provider>:manual)").option("--token-expires-in <duration>", "Optional token expiry duration (e.g. 365d, 12h)").option("--anthropic-api-key <key>", "Anthropic API key").option("--openai-api-key <key>", "OpenAI API key").option("--openrouter-api-key <key>", "OpenRouter API key").option("--ai-gateway-api-key <key>", "Vercel AI Gateway API key").option("--cloudflare-ai-gateway-account-id <id>", "Cloudflare Account ID").option("--cloudflare-ai-gateway-gateway-id <id>", "Cloudflare AI Gateway ID").option("--cloudflare-ai-gateway-api-key <key>", "Cloudflare AI Gateway API key").option("--moonshot-api-key <key>", "Moonshot API key").option("--kimi-code-api-key <key>", "Kimi Coding API key").option("--gemini-api-key <key>", "Gemini API key").option("--zai-api-key <key>", "Z.AI API key").option("--xiaomi-api-key <key>", "Xiaomi API key").option("--minimax-api-key <key>", "MiniMax API key").option("--synthetic-api-key <key>", "Synthetic API key").option("--venice-api-key <key>", "Venice API key").option("--opencode-zen-api-key <key>", "OpenCode Zen API key").option("--xai-api-key <key>", "xAI API key").option("--qianfan-api-key <key>", "QIANFAN API key").option("--gateway-port <port>", "Gateway port").option("--gateway-bind <mode>", "Gateway bind: loopback|tailnet|lan|auto|custom").option("--gateway-auth <mode>", "Gateway auth: token|password").option("--gateway-token <token>", "Gateway token (token auth)").option("--gateway-password <password>", "Gateway password (password auth)").option("--remote-url <url>", "Remote Gateway WebSocket URL").option("--remote-token <token>", "Remote Gateway token (optional)").option("--tailscale <mode>", "Tailscale: off|serve|funnel").option("--tailscale-reset-on-exit", "Reset tailscale serve/funnel on exit").option("--install-daemon", "Install gateway service").option("--no-install-daemon", "Skip gateway service install").option("--skip-daemon", "Skip gateway service install").option("--daemon-runtime <runtime>", "Daemon runtime: node|bun").option("--skip-channels", "Skip channel setup").option("--skip-skills", "Skip skills setup").option("--skip-health", "Skip health check").option("--skip-ui", "Skip Control UI/TUI prompts").option("--node-manager <name>", "Node manager for skills: npm|pnpm|bun").option("--json", "Output JSON summary", false).action(async (opts, command) => {
5146
5145
  await runCommandWithRuntime(defaultRuntime, async () => {
5147
5146
  const installDaemon = resolveInstallDaemonFlag(command, { installDaemon: Boolean(opts.installDaemon) });
5148
5147
  const gatewayPort = typeof opts.gatewayPort === "string" ? Number.parseInt(opts.gatewayPort, 10) : void 0;
@@ -2,24 +2,24 @@ import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { s as defaultRuntime } from "./subsystem-hATE68va.js";
3
3
  import { t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
4
4
  import { h as resolveUserPath, y as shortenHomePath } from "./utils-D019Z2NU.js";
5
- import { ot as ensureAuthProfileStore } from "./model-selection-VOshtyu1.js";
5
+ import { ot as ensureAuthProfileStore } from "./model-selection-CPMFDdc0.js";
6
6
  import { t as formatCliCommand } from "./command-format-DOYW_19_.js";
7
- import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-Yyu5PFtw.js";
7
+ import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-BYfVVC4w.js";
8
8
  import { n as listChannelPlugins, t as getChannelPlugin } from "./plugins-Ct7Mnq1x.js";
9
9
  import { n as withProgress } from "./progress-CPiVHO-Z.js";
10
- import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as waitForGatewayReachable } from "./onboard-helpers-CD3eWVOa.js";
10
+ import { _ as summarizeExistingConfig, a as ensureWorkspaceAndSessions, f as printWizardHeader, h as resolveControlUiLinks, m as randomToken, n as applyWizardMetadata, p as probeGatewayReachable, s as guardCancel, t as DEFAULT_WORKSPACE, u as normalizeGatewayTokenInput, v as waitForGatewayReachable } from "./onboard-helpers-BIRpPu6r.js";
11
11
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-CCcySodo.js";
12
12
  import { a as findTailscaleBinary } from "./tailscale-D0cB8Nyf.js";
13
13
  import { n as logConfigUpdated } from "./logging-BYKu4FCl.js";
14
14
  import { t as note$1 } from "./note-JXsKJ6Xp.js";
15
15
  import { t as WizardCancelledError } from "./prompts-QLr0uHK3.js";
16
16
  import { t as createClackPrompter } from "./clack-prompter-t8CaZFBV.js";
17
- 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-C8uiqqrm.js";
18
- import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-Ch2W-Ej-.js";
19
- import { i as healthCommand, t as formatHealthCheckFailure } from "./health-format-CzzzPGkV.js";
17
+ 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-DLJlrqc_.js";
18
+ import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-6_svNn6o.js";
19
+ import { i as healthCommand, t as formatHealthCheckFailure } from "./health-format-5hIukkMW.js";
20
20
  import { t as resolveGatewayService } from "./service-CKHP-LSk.js";
21
21
  import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-ulSPw_yr.js";
22
- import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DtMlY4NF.js";
22
+ import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-C_fffScE.js";
23
23
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-Bp3jN74v.js";
24
24
  import { confirm, intro, outro, select, text } from "@clack/prompts";
25
25
 
@@ -1,6 +1,6 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-hATE68va.js";
3
- import { o as loadConfig } from "./config-Yyu5PFtw.js";
3
+ import { o as loadConfig } from "./config-BYfVVC4w.js";
4
4
  import { S as ensureChromeExtensionRelayServer } from "./chrome-B-IUYNJz.js";
5
5
  import { i as resolveBrowserConfig, o as resolveProfile, t as createBrowserRouteContext } from "./server-context-aoJXOi8y.js";
6
6