skykoi 2026.3.153 → 2026.3.155

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 (73) hide show
  1. package/dist/{acp-cli-DKk5qbHW.js → acp-cli-CLQyVKqb.js} +3 -3
  2. package/dist/{archive-eJnsstoB.js → archive-CqC3MH7S.js} +1 -1
  3. package/dist/{audit-C0ixMaLQ.js → audit-BOLXY7t7.js} +6 -6
  4. package/dist/{auth-DQvUzR68.js → auth-Rm5wqEvH.js} +1 -1
  5. package/dist/build-info.json +3 -3
  6. package/dist/{call-ByTcqcvV.js → call-Bu-PXtQa.js} +1 -1
  7. package/dist/canvas-host/a2ui/.bundle.hash +1 -1
  8. package/dist/{channel-options-B52NE1Gn.js → channel-options-TMV-MIFx.js} +1 -1
  9. package/dist/{channel-summary-DjJ3lkCW.js → channel-summary-B_qS6CMo.js} +2 -2
  10. package/dist/{channels-cli-cxRYTnpE.js → channels-cli-Bad2Gunk.js} +20 -20
  11. package/dist/{chrome-CYjH7HBH.js → chrome-lbEbQ56F.js} +7 -7
  12. package/dist/cli/daemon-cli.js +1 -1
  13. package/dist/{cli-kppYSWp5.js → cli-D4bhAEsN.js} +15 -15
  14. package/dist/{completion-cli-BdQvVN7p.js → completion-cli-Dqbdq9QO.js} +1 -1
  15. package/dist/{config-guard-_4ndGZWA.js → config-guard-C7hl_Omx.js} +17 -17
  16. package/dist/{configure-C9Jj0juN.js → configure-D4gG84As.js} +4 -4
  17. package/dist/{control-service-DnzgVIyk.js → control-service-BeD9aAWG.js} +3 -3
  18. package/dist/{cron-cli-BT1PUmY9.js → cron-cli-CIUnaJNn.js} +3 -3
  19. package/dist/{daemon-cli-DXDF6h4N.js → daemon-cli-BuYtUGAD.js} +7 -7
  20. package/dist/{deliver-CJ2Pjcyz.js → deliver-V9WA_kZK.js} +3 -3
  21. package/dist/{deps-Cxv3atRa.js → deps-DliWBLR6.js} +2 -2
  22. package/dist/{devices-cli-C8ekbl1p.js → devices-cli-C-9tBxpI.js} +2 -2
  23. package/dist/{dispatcher-jfUrueZo.js → dispatcher-CbiLzdIu.js} +1 -1
  24. package/dist/{doctor-B_i35zTj.js → doctor-DEOTHN19.js} +9 -9
  25. package/dist/entry.js +1 -1
  26. package/dist/{exec-approvals-cli-CNAmravt.js → exec-approvals-cli-C41v4YhY.js} +4 -4
  27. package/dist/extension-api.js +15 -15
  28. package/dist/{gateway-cli-DcKAo3IU.js → gateway-cli-7rdUDBR3.js} +47 -38
  29. package/dist/{gateway-rpc-GLatQ1eS.js → gateway-rpc-DBPVLpDy.js} +1 -1
  30. package/dist/{github-copilot-auth-BTjBE2j5.js → github-copilot-auth-CS-mE14G.js} +2 -2
  31. package/dist/{health-format-DqINFTje.js → health-format-DoDy22kS.js} +5 -5
  32. package/dist/{hooks-cli-DoN3ObuE.js → hooks-cli-2ChRmeIQ.js} +17 -17
  33. package/dist/{image-B551BV5h.js → image-Ci-8c7yZ.js} +1 -1
  34. package/dist/index.js +38 -38
  35. package/dist/{installs-SHFX8JPu.js → installs-Qk1mor7n.js} +1 -1
  36. package/dist/{koi-BzvZFySU.js → koi-5h06XWKZ.js} +5 -5
  37. package/dist/{login-qr-ZIqZmEKc.js → login-qr-DM79a9gM.js} +6 -6
  38. package/dist/{logs-cli-D0kEcjfo.js → logs-cli-DSnW34p8.js} +3 -3
  39. package/dist/{models-cli-Cdp9Ua02.js → models-cli-DmLzrDvw.js} +16 -16
  40. package/dist/{net-Cmh623y0.js → net-BmNLdzEu.js} +3 -3
  41. package/dist/{node-cli-DaG_RgI-.js → node-cli-CUKvnrE8.js} +8 -8
  42. package/dist/{nodes-cli-Bq2qH5t0.js → nodes-cli-D2tC5zwn.js} +3 -3
  43. package/dist/{onboard-channels-B40cENeo.js → onboard-channels-DLwghLSX.js} +2 -2
  44. package/dist/{onboard-skills-MqXQ1yhm.js → onboard-skills-BMSs_h52.js} +4 -4
  45. package/dist/{onboarding-DnxGVdFu.js → onboarding-CuOwUIxr.js} +12 -12
  46. package/dist/{pi-embedded-helpers-1Nerrhel.js → pi-embedded-helpers-c_aUXGW8.js} +2 -2
  47. package/dist/{pi-tools.policy-CGTDSyw9.js → pi-tools.policy-C7zitA8h.js} +1 -1
  48. package/dist/{plugin-registry-BBCM-5FD.js → plugin-registry-DfDx2SEB.js} +1 -1
  49. package/dist/plugin-sdk/index.js +3 -3
  50. package/dist/{plugins-cli-CKprr7yo.js → plugins-cli-QOu4fptF.js} +19 -19
  51. package/dist/{ports-RMh76QZ2.js → ports-CB2baTjH.js} +1 -1
  52. package/dist/{program-ZqsTHic1.js → program-DKZmtnMn.js} +5 -5
  53. package/dist/{pw-ai-CXf_puwX.js → pw-ai-BAED3BZI.js} +1 -1
  54. package/dist/{register.subclis-6zodByv_.js → register.subclis-BQpVyH_3.js} +21 -21
  55. package/dist/{reply-CSn6Lm8-.js → reply-BzrO3bUp.js} +19 -19
  56. package/dist/{routes-O9a-k9LQ.js → routes-CjhejVNa.js} +2 -2
  57. package/dist/{rpc-B-CECmlQ.js → rpc-BMBLbOiy.js} +1 -1
  58. package/dist/{run-main-DYZfgnkH.js → run-main-DZjM7tUa.js} +38 -38
  59. package/dist/{runner-BnT9P1r3.js → runner-BrFcTeOL.js} +5 -5
  60. package/dist/{sandbox-BCOmiLLk.js → sandbox-CUfq0krW.js} +3 -3
  61. package/dist/{sandbox-cli-BmHuaCL1.js → sandbox-cli-BrjRalq3.js} +4 -4
  62. package/dist/{security-cli-BqoFplHx.js → security-cli-gs6xwbr9.js} +9 -9
  63. package/dist/{server-context-DziyNN8b.js → server-context-C0eFgku9.js} +4 -4
  64. package/dist/{server-node-events-B4B7KGfQ.js → server-node-events-BXKC2JSS.js} +17 -17
  65. package/dist/{shared-DCuTTPOy.js → shared-BBEi30PJ.js} +1 -1
  66. package/dist/{status-C8GmDAmm.js → status-Cakc8HBC.js} +1 -1
  67. package/dist/{system-cli-BJWDq8t2.js → system-cli-DFtxTgjZ.js} +3 -3
  68. package/dist/{tui-9aUeGcxw.js → tui-Ctd5kF_4.js} +4 -4
  69. package/dist/{tui-cli-JsDtZMrF.js → tui-cli-emtyc7VD.js} +9 -9
  70. package/dist/{update-cli-BfwqnHkd.js → update-cli-BXRQLDlF.js} +27 -27
  71. package/dist/{update-runner-DfcP9otZ.js → update-runner-BZ1YtRG1.js} +3 -3
  72. package/dist/{update-a8Sodxye.js → update-yGBcPbA_.js} +1 -1
  73. package/package.json +1 -1
@@ -13,13 +13,13 @@ import { N as VERSION, o as loadConfig } from "./config-C_blrocr.js";
13
13
  import "./manifest-registry-BM_kgwtA.js";
14
14
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
15
15
  import "./device-identity-zXWmZUVz.js";
16
- import { l as GatewayClient } from "./net-Cmh623y0.js";
17
- import { t as buildGatewayConnectionDetails } from "./call-ByTcqcvV.js";
16
+ import { l as GatewayClient } from "./net-BmNLdzEu.js";
17
+ import { t as buildGatewayConnectionDetails } from "./call-Bu-PXtQa.js";
18
18
  import { t as formatDocsLink } from "./links-D5FJjx5x.js";
19
19
  import "./tailscale-4hm01eUI.js";
20
20
  import { t as isMainModule } from "./is-main-BmAsi6j8.js";
21
21
  import { t as ensureSKYKOICliOnPath } from "./path-env-B1xMZ4TX.js";
22
- import { i as resolveGatewayAuth } from "./auth-DQvUzR68.js";
22
+ import { i as resolveGatewayAuth } from "./auth-Rm5wqEvH.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 { xt as require_inherits } from "./reply-CSn6Lm8-.js";
2
+ import { xt as require_inherits } from "./reply-BzrO3bUp.js";
3
3
  import path from "node:path";
4
4
  import fs from "node:fs/promises";
5
5
  import * as tar from "tar";
@@ -6,17 +6,17 @@ import { t as formatCliCommand } from "./command-format-CvpDYKxh.js";
6
6
  import { O as INCLUDE_KEY, a as createConfigIO, k as MAX_INCLUDE_DEPTH } from "./config-C_blrocr.js";
7
7
  import { a as MANIFEST_KEY } from "./manifest-registry-BM_kgwtA.js";
8
8
  import { n as listChannelPlugins } from "./plugins-DUZvbUrn.js";
9
- import { $ as resolveSandboxToolPolicyForKoi, Z as resolveSandboxConfigForKoi, ot as resolveToolProfilePolicy } from "./sandbox-BCOmiLLk.js";
9
+ import { $ as resolveSandboxToolPolicyForKoi, Z as resolveSandboxConfigForKoi, ot as resolveToolProfilePolicy } from "./sandbox-CUfq0krW.js";
10
10
  import { i as loadWorkspaceSkillEntries } from "./skills-CtnLB14H.js";
11
- import { a as resolveProfile, i as resolveBrowserConfig } from "./server-context-DziyNN8b.js";
11
+ import { a as resolveProfile, i as resolveBrowserConfig } from "./server-context-C0eFgku9.js";
12
12
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
13
- import { l as GatewayClient } from "./net-Cmh623y0.js";
14
- import { t as buildGatewayConnectionDetails } from "./call-ByTcqcvV.js";
13
+ import { l as GatewayClient } from "./net-BmNLdzEu.js";
14
+ import { t as buildGatewayConnectionDetails } from "./call-Bu-PXtQa.js";
15
15
  import { i as readChannelAllowFromStore } from "./pairing-store-BpSDb0uv.js";
16
- import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-CGTDSyw9.js";
16
+ import { c as resolveNativeSkillsEnabled, n as isToolAllowedByPolicies, s as resolveNativeCommandsEnabled } from "./pi-tools.policy-C7zitA8h.js";
17
17
  import { t as resolveChannelDefaultAccountId } from "./helpers-BMifWcsO.js";
18
18
  import { t as scanDirectoryWithSummary } from "./skill-scanner-WnNLktfw.js";
19
- import { i as resolveGatewayAuth } from "./auth-DQvUzR68.js";
19
+ import { i as resolveGatewayAuth } from "./auth-Rm5wqEvH.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-Cmh623y0.js";
1
+ import { i as parseForwardedForClientIp, r as isTrustedProxyAddress, s as resolveGatewayClientIp } from "./net-BmNLdzEu.js";
2
2
  import { c as readTailscaleWhoisIdentity } from "./tailscale-4hm01eUI.js";
3
3
  import { timingSafeEqual } from "node:crypto";
4
4
 
@@ -1,5 +1,5 @@
1
1
  {
2
- "version": "2026.3.153",
3
- "commit": "080a36012cb4c9a6525ea880a5c222809087e0fb",
4
- "builtAt": "2026-04-29T09:45:39.344Z"
2
+ "version": "2026.3.155",
3
+ "commit": "84c79cab7ef55b8bc09d418d0722a93ced01943c",
4
+ "builtAt": "2026-04-29T18:46:35.539Z"
5
5
  }
@@ -6,7 +6,7 @@ import { o as loadConfig } from "./config-C_blrocr.js";
6
6
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
7
7
  import { r as loadOrCreateDeviceIdentity } from "./device-identity-zXWmZUVz.js";
8
8
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-DEIxPaFW.js";
9
- import { Bt as normalizeFingerprint, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-Cmh623y0.js";
9
+ import { Bt as normalizeFingerprint, Pt as PROTOCOL_VERSION, a as pickPrimaryLanIPv4, l as GatewayClient } from "./net-BmNLdzEu.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
- 1c387ded4be64ed6136e36ba00bf7c3eff8caeae80cb37763c2a63b9f05b4207
1
+ 98b170adcd09f0bf0f7dfcd4ab91eddf90624c0a0abfc92a491e112655356c15
@@ -2,7 +2,7 @@ import { M as CHAT_CHANNEL_ORDER } from "./subsystem-RXphV8Xh.js";
2
2
  import { t as isTruthyEnvValue } from "./env-Bj0uZSiW.js";
3
3
  import { n as listChannelPlugins } from "./plugins-DUZvbUrn.js";
4
4
  import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-BmXyiOxr.js";
5
- import { t as ensurePluginRegistryLoaded } from "./plugin-registry-BBCM-5FD.js";
5
+ import { t as ensurePluginRegistryLoaded } from "./plugin-registry-DfDx2SEB.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-1Nerrhel.js";
1
+ import { g as formatRawAssistantErrorForUi, z as listThinkingLevels } from "./pi-embedded-helpers-c_aUXGW8.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
4
  import { Ct as DEFAULT_PROVIDER, St as DEFAULT_MODEL, d as resolveConfiguredModelRef } from "./model-selection-B2Qu7niX.js";
5
5
  import { o as loadConfig } from "./config-C_blrocr.js";
6
6
  import { n as listChannelPlugins } from "./plugins-DUZvbUrn.js";
7
- import { H as listChannelDocks } from "./sandbox-BCOmiLLk.js";
7
+ import { H as listChannelDocks } from "./sandbox-CUfq0krW.js";
8
8
  import { n as formatTokenCount } from "./usage-format-Bodo4xSf.js";
9
9
  import { createRequire } from "node:module";
10
10
  import fs from "node:fs";
@@ -1,5 +1,5 @@
1
- import "./pi-embedded-helpers-1Nerrhel.js";
2
- import { Pn as createSlackWebClient, _t as formatUsageReportLines, bn as parseDiscordTarget, gt as loadProviderUsageSummary, xn as fetchChannelPermissionsDiscord } from "./reply-CSn6Lm8-.js";
1
+ import "./pi-embedded-helpers-c_aUXGW8.js";
2
+ import { Pn as createSlackWebClient, _t as formatUsageReportLines, bn as parseDiscordTarget, gt as loadProviderUsageSummary, xn as fetchChannelPermissionsDiscord } from "./reply-BzrO3bUp.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";
@@ -16,60 +16,60 @@ import "./github-copilot-token-vwbChOko.js";
16
16
  import { c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-C_blrocr.js";
17
17
  import "./manifest-registry-BM_kgwtA.js";
18
18
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DUZvbUrn.js";
19
- import "./sandbox-BCOmiLLk.js";
20
- import "./image-B551BV5h.js";
19
+ import "./sandbox-CUfq0krW.js";
20
+ import "./image-Ci-8c7yZ.js";
21
21
  import "./dist-4p3Dftrr.js";
22
22
  import "./lib-D5Ykvbqv.js";
23
23
  import "./src-DPo7gLpE.js";
24
24
  import "./core-CwxJUNZP.js";
25
25
  import "./pi-model-discovery-BBsfBxi6.js";
26
- import "./chrome-CYjH7HBH.js";
26
+ import "./chrome-lbEbQ56F.js";
27
27
  import "./skills-CtnLB14H.js";
28
- import "./routes-O9a-k9LQ.js";
29
- import "./server-context-DziyNN8b.js";
28
+ import "./routes-CjhejVNa.js";
29
+ import "./server-context-C0eFgku9.js";
30
30
  import "./message-channel-CeYCOtod.js";
31
31
  import "./logging-DhMPP27D.js";
32
32
  import "./accounts-DsQ7CSeY.js";
33
33
  import "./paths-tKN7Eof7.js";
34
34
  import "./redact-CDPAzwi8.js";
35
35
  import "./tool-display-CZxQ9k3d.js";
36
- import "./deliver-CJ2Pjcyz.js";
37
- import "./dispatcher-jfUrueZo.js";
36
+ import "./deliver-V9WA_kZK.js";
37
+ import "./dispatcher-CbiLzdIu.js";
38
38
  import "./dist-DUjL9oGZ.js";
39
39
  import "./manager-CdqSmO1V.js";
40
40
  import "./sqlite-_-9SFPm5.js";
41
41
  import "./warnings-cKNxF3D-.js";
42
42
  import "./proxy-from-env-CBU662Ik.js";
43
- import "./login-qr-ZIqZmEKc.js";
44
- import { n as formatAge } from "./channel-summary-DjJ3lkCW.js";
43
+ import "./login-qr-DM79a9gM.js";
44
+ import { n as formatAge } from "./channel-summary-B_qS6CMo.js";
45
45
  import "./device-identity-zXWmZUVz.js";
46
- import "./net-Cmh623y0.js";
47
- import { n as callGateway } from "./call-ByTcqcvV.js";
46
+ import "./net-BmNLdzEu.js";
47
+ import { n as callGateway } from "./call-Bu-PXtQa.js";
48
48
  import "./koi-events-CA5YtglQ.js";
49
49
  import "./pairing-store-BpSDb0uv.js";
50
50
  import { t as formatDocsLink } from "./links-D5FJjx5x.js";
51
51
  import { n as runCommandWithRuntime } from "./cli-utils-C1YHVD4o.js";
52
52
  import { n as withProgress } from "./progress-CIrle3FT.js";
53
53
  import "./node-pairing-BzdbhxdV.js";
54
- import "./pi-tools.policy-CGTDSyw9.js";
54
+ import "./pi-tools.policy-C7zitA8h.js";
55
55
  import "./prompt-style-BJmW_JM3.js";
56
56
  import "./pairing-labels-lMAKWEYR.js";
57
57
  import "./satisfies-Bk0BrI13.js";
58
58
  import "./session-cost-usage-CbribqqH.js";
59
- import "./control-service-DnzgVIyk.js";
59
+ import "./control-service-BeD9aAWG.js";
60
60
  import { n as resolveMessageChannelSelection } from "./channel-selection-B5tUOB8t.js";
61
61
  import "./event-log-DtrKraIx.js";
62
62
  import { t as resolveChannelDefaultAccountId } from "./helpers-BMifWcsO.js";
63
63
  import "./note-CbRknFZ7.js";
64
64
  import { t as createClackPrompter } from "./clack-prompter-BxHCh6Tn.js";
65
- import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-B40cENeo.js";
65
+ import { i as reloadOnboardingPluginRegistry, n as setupChannels, r as ensureOnboardingPluginInstalled } from "./onboard-channels-DLwghLSX.js";
66
66
  import { i as listChannelPluginCatalogEntries } from "./plugin-auto-enable-BmXyiOxr.js";
67
- import "./archive-eJnsstoB.js";
67
+ import "./archive-CqC3MH7S.js";
68
68
  import "./skill-scanner-WnNLktfw.js";
69
- import "./installs-SHFX8JPu.js";
69
+ import "./installs-Qk1mor7n.js";
70
70
  import { t as collectChannelStatusIssues } from "./channels-status-issues-GKs-LbrV.js";
71
- import { n as hasExplicitOptions } from "./plugin-registry-BBCM-5FD.js";
72
- import { t as formatCliChannelOptions } from "./channel-options-B52NE1Gn.js";
71
+ import { n as hasExplicitOptions } from "./plugin-registry-DfDx2SEB.js";
72
+ import { t as formatCliChannelOptions } from "./channel-options-TMV-MIFx.js";
73
73
  import { t as buildChannelAccountSnapshot } from "./status-BA0KgRIG.js";
74
74
  import { t as parseLogLine } from "./parse-log-line-Btq1hVHj.js";
75
75
  import fs from "node:fs/promises";
@@ -8,7 +8,7 @@ import path from "node:path";
8
8
  import os from "node:os";
9
9
  import fs$1 from "node:fs/promises";
10
10
  import { execFileSync, spawn } from "node:child_process";
11
- import WebSocket, { WebSocketServer } from "ws";
11
+ import WebSocket$1, { WebSocketServer } from "ws";
12
12
  import { randomBytes } from "node:crypto";
13
13
  import { createServer } from "node:http";
14
14
  import net from "node:net";
@@ -129,7 +129,7 @@ async function ensureChromeExtensionRelayServer(opts) {
129
129
  let nextExtensionId = 1;
130
130
  const sendToExtension = async (payload) => {
131
131
  const ws = extensionWs;
132
- if (!ws || ws.readyState !== WebSocket.OPEN) throw new Error("Chrome extension not connected");
132
+ if (!ws || ws.readyState !== WebSocket$1.OPEN) throw new Error("Chrome extension not connected");
133
133
  ws.send(JSON.stringify(payload));
134
134
  return await new Promise((resolve, reject) => {
135
135
  const timer = setTimeout(() => {
@@ -146,12 +146,12 @@ async function ensureChromeExtensionRelayServer(opts) {
146
146
  const broadcastToCdpClients = (evt) => {
147
147
  const msg = JSON.stringify(evt);
148
148
  for (const ws of cdpClients) {
149
- if (ws.readyState !== WebSocket.OPEN) continue;
149
+ if (ws.readyState !== WebSocket$1.OPEN) continue;
150
150
  ws.send(msg);
151
151
  }
152
152
  };
153
153
  const sendResponseToCdp = (ws, res) => {
154
- if (ws.readyState !== WebSocket.OPEN) return;
154
+ if (ws.readyState !== WebSocket$1.OPEN) return;
155
155
  ws.send(JSON.stringify(res));
156
156
  };
157
157
  const ensureTargetEventsForClient = (ws, mode) => {
@@ -371,7 +371,7 @@ async function ensureChromeExtensionRelayServer(opts) {
371
371
  wssExtension.on("connection", (ws) => {
372
372
  extensionWs = ws;
373
373
  const ping = setInterval(() => {
374
- if (ws.readyState !== WebSocket.OPEN) return;
374
+ if (ws.readyState !== WebSocket$1.OPEN) return;
375
375
  ws.send(JSON.stringify({ method: "ping" }));
376
376
  }, EXTENSION_PING_INTERVAL_MS);
377
377
  ws.on("message", (data) => {
@@ -668,7 +668,7 @@ async function fetchJson(url, timeoutMs = 1500, init) {
668
668
  }
669
669
  async function withCdpSocket(wsUrl, fn, opts) {
670
670
  const headers = getHeadersWithAuth(wsUrl, opts?.headers ?? {});
671
- const ws = new WebSocket(wsUrl, {
671
+ const ws = new WebSocket$1(wsUrl, {
672
672
  handshakeTimeout: 5e3,
673
673
  ...Object.keys(headers).length ? { headers } : {}
674
674
  });
@@ -1830,7 +1830,7 @@ async function getChromeWebSocketUrl(cdpUrl, timeoutMs = 500) {
1830
1830
  async function canOpenWebSocket(wsUrl, timeoutMs = 800) {
1831
1831
  return await new Promise((resolve) => {
1832
1832
  const headers = getHeadersWithAuth(wsUrl);
1833
- const ws = new WebSocket(wsUrl, {
1833
+ const ws = new WebSocket$1(wsUrl, {
1834
1834
  handshakeTimeout: timeoutMs,
1835
1835
  ...Object.keys(headers).length ? { headers } : {}
1836
1836
  });
@@ -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-DXDF6h4N.js";
2
+ export { registerDaemonCli, runDaemonInstall, runDaemonRestart, runDaemonStart, runDaemonStatus, runDaemonStop, runDaemonUninstall } from "../daemon-cli-BuYtUGAD.js";
@@ -1,5 +1,5 @@
1
- import "./pi-embedded-helpers-1Nerrhel.js";
2
- import { ht as loadSKYKOIPlugins } from "./reply-CSn6Lm8-.js";
1
+ import "./pi-embedded-helpers-c_aUXGW8.js";
2
+ import { ht as loadSKYKOIPlugins } from "./reply-BzrO3bUp.js";
3
3
  import { t as createSubsystemLogger } from "./subsystem-RXphV8Xh.js";
4
4
  import "./paths-VdmjGGyc.js";
5
5
  import "./utils-rBzA-VDv.js";
@@ -14,46 +14,46 @@ import "./github-copilot-token-vwbChOko.js";
14
14
  import { o as loadConfig } from "./config-C_blrocr.js";
15
15
  import "./manifest-registry-BM_kgwtA.js";
16
16
  import "./plugins-DUZvbUrn.js";
17
- import "./sandbox-BCOmiLLk.js";
18
- import "./image-B551BV5h.js";
17
+ import "./sandbox-CUfq0krW.js";
18
+ import "./image-Ci-8c7yZ.js";
19
19
  import "./dist-4p3Dftrr.js";
20
20
  import "./lib-D5Ykvbqv.js";
21
21
  import "./src-DPo7gLpE.js";
22
22
  import "./core-CwxJUNZP.js";
23
23
  import "./pi-model-discovery-BBsfBxi6.js";
24
- import "./chrome-CYjH7HBH.js";
24
+ import "./chrome-lbEbQ56F.js";
25
25
  import "./skills-CtnLB14H.js";
26
- import "./routes-O9a-k9LQ.js";
27
- import "./server-context-DziyNN8b.js";
26
+ import "./routes-CjhejVNa.js";
27
+ import "./server-context-C0eFgku9.js";
28
28
  import "./message-channel-CeYCOtod.js";
29
29
  import "./logging-DhMPP27D.js";
30
30
  import "./accounts-DsQ7CSeY.js";
31
31
  import "./paths-tKN7Eof7.js";
32
32
  import "./redact-CDPAzwi8.js";
33
33
  import "./tool-display-CZxQ9k3d.js";
34
- import "./deliver-CJ2Pjcyz.js";
35
- import "./dispatcher-jfUrueZo.js";
34
+ import "./deliver-V9WA_kZK.js";
35
+ import "./dispatcher-CbiLzdIu.js";
36
36
  import "./dist-DUjL9oGZ.js";
37
37
  import "./manager-CdqSmO1V.js";
38
38
  import "./sqlite-_-9SFPm5.js";
39
39
  import "./warnings-cKNxF3D-.js";
40
40
  import "./proxy-from-env-CBU662Ik.js";
41
- import "./login-qr-ZIqZmEKc.js";
42
- import "./channel-summary-DjJ3lkCW.js";
41
+ import "./login-qr-DM79a9gM.js";
42
+ import "./channel-summary-B_qS6CMo.js";
43
43
  import "./device-identity-zXWmZUVz.js";
44
- import "./net-Cmh623y0.js";
45
- import "./call-ByTcqcvV.js";
44
+ import "./net-BmNLdzEu.js";
45
+ import "./call-Bu-PXtQa.js";
46
46
  import "./koi-events-CA5YtglQ.js";
47
47
  import "./pairing-store-BpSDb0uv.js";
48
48
  import "./links-D5FJjx5x.js";
49
49
  import "./progress-CIrle3FT.js";
50
50
  import "./node-pairing-BzdbhxdV.js";
51
- import "./pi-tools.policy-CGTDSyw9.js";
51
+ import "./pi-tools.policy-C7zitA8h.js";
52
52
  import "./prompt-style-BJmW_JM3.js";
53
53
  import "./pairing-labels-lMAKWEYR.js";
54
54
  import "./satisfies-Bk0BrI13.js";
55
55
  import "./session-cost-usage-CbribqqH.js";
56
- import "./control-service-DnzgVIyk.js";
56
+ import "./control-service-BeD9aAWG.js";
57
57
  import "./channel-selection-B5tUOB8t.js";
58
58
  import "./event-log-DtrKraIx.js";
59
59
 
@@ -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-6zodByv_.js";
3
+ import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-BQpVyH_3.js";
4
4
  import path from "node:path";
5
5
  import os from "node:os";
6
6
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { At as handleReset, Bt as waitForGatewayReachable, Ct as DEFAULT_WORKSPACE, Dt as ensureWorkspaceAndSessions, Et as detectBrowserOpenSupport, It as randomToken, Lt as resolveControlUiLinks, M as runMessageAction, Nt as openUrl, Ot as formatControlUiSshHint, V as CHANNEL_MESSAGE_ACTION_NAMES, dt as CHANNEL_TARGET_DESCRIPTION, gr as lookupContextTokens, in as runMemoryStatus, jt as moveToTrash, rn as registerMemoryCli, ut as CHANNEL_TARGETS_DESCRIPTION, wt as applyWizardMetadata, z as formatTargetDisplay } from "./reply-CSn6Lm8-.js";
1
+ import { At as handleReset, Bt as waitForGatewayReachable, Ct as DEFAULT_WORKSPACE, Dt as ensureWorkspaceAndSessions, Et as detectBrowserOpenSupport, It as randomToken, Lt as resolveControlUiLinks, M as runMessageAction, Nt as openUrl, Ot as formatControlUiSshHint, V as CHANNEL_MESSAGE_ACTION_NAMES, dt as CHANNEL_TARGET_DESCRIPTION, gr as lookupContextTokens, in as runMemoryStatus, jt as moveToTrash, rn as registerMemoryCli, ut as CHANNEL_TARGETS_DESCRIPTION, wt as applyWizardMetadata, z as formatTargetDisplay } from "./reply-BzrO3bUp.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";
@@ -10,38 +10,38 @@ import { t as formatCliCommand } from "./command-format-CvpDYKxh.js";
10
10
  import { t as parseBooleanValue } from "./boolean-Cf0nzYal.js";
11
11
  import { _ as parseDurationMs, a as createConfigIO, c as readConfigFileSnapshot, o as loadConfig, u as writeConfigFile } from "./config-C_blrocr.js";
12
12
  import { n as listChannelPlugins, r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DUZvbUrn.js";
13
- import { d as loadSessionStore } from "./sandbox-BCOmiLLk.js";
14
- import { n as movePathToTrash } from "./server-context-DziyNN8b.js";
13
+ import { d as loadSessionStore } from "./sandbox-CUfq0krW.js";
14
+ import { n as movePathToTrash } from "./server-context-C0eFgku9.js";
15
15
  import { h as GATEWAY_CLIENT_NAMES, l as normalizeMessageChannel, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
16
16
  import { a as resolveSessionTranscriptsDirForKoi, i as resolveSessionTranscriptsDir, o as resolveStorePath } from "./paths-tKN7Eof7.js";
17
- import { a as randomIdempotencyKey, n as callGateway } from "./call-ByTcqcvV.js";
17
+ import { a as randomIdempotencyKey, n as callGateway } from "./call-Bu-PXtQa.js";
18
18
  import { t as formatDocsLink } from "./links-D5FJjx5x.js";
19
19
  import { n as runCommandWithRuntime } from "./cli-utils-C1YHVD4o.js";
20
20
  import { n as withProgress } from "./progress-CIrle3FT.js";
21
21
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-BJmW_JM3.js";
22
- import { t as createDefaultDeps } from "./deps-Cxv3atRa.js";
22
+ import { t as createDefaultDeps } from "./deps-DliWBLR6.js";
23
23
  import { a as gatewayInstallErrorHint, g as assertSupportedRuntime, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DkLy62aK.js";
24
24
  import { t as resolveChannelDefaultAccountId } from "./helpers-BMifWcsO.js";
25
25
  import { n as logConfigUpdated, t as formatConfigPath } from "./logging-BusiCyt_.js";
26
26
  import { t as WizardCancelledError } from "./prompts-DxnxCHKt.js";
27
27
  import { t as createClackPrompter } from "./clack-prompter-BxHCh6Tn.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-DnxGVdFu.js";
29
- import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-MqXQ1yhm.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-BTjBE2j5.js";
31
- import { n as setupChannels } from "./onboard-channels-B40cENeo.js";
32
- import { l as healthCommand } from "./health-format-DqINFTje.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-CuOwUIxr.js";
29
+ import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-BMSs_h52.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-CS-mE14G.js";
31
+ import { n as setupChannels } from "./onboard-channels-DLwghLSX.js";
32
+ import { l as healthCommand } from "./health-format-DoDy22kS.js";
33
33
  import { t as renderTable } from "./table-CgHdpI6b.js";
34
34
  import { t as resolveGatewayService } from "./service-CTrRN1-T.js";
35
35
  import { r as isSystemdUserServiceAvailable } from "./systemd-BuS1yu_z.js";
36
- import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-6zodByv_.js";
37
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-GLatQ1eS.js";
36
+ import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-BQpVyH_3.js";
37
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DBPVLpDy.js";
38
38
  import { t as formatHelpExamples } from "./help-format-Cbr54gLP.js";
39
- import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-BzvZFySU.js";
40
- import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-BBCM-5FD.js";
39
+ import { a as createOutboundSendDeps, n as resolveSessionKeyForRequest, t as koiCommand } from "./koi-5h06XWKZ.js";
40
+ import { n as hasExplicitOptions, t as ensurePluginRegistryLoaded } from "./plugin-registry-DfDx2SEB.js";
41
41
  import { n as parsePositiveIntOrUndefined, t as collectOption } from "./helpers-CgAOTnxe.js";
42
- import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-C9Jj0juN.js";
42
+ import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCommandWithSections } from "./configure-D4gG84As.js";
43
43
  import { n as ensureSystemdUserLingerNonInteractive } from "./systemd-linger-BLQwmm6k.js";
44
- import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-B_i35zTj.js";
44
+ import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-DEOTHN19.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-C9Jj0juN.js").then((n) => n.t);
2795
+ const { CONFIGURE_WIZARD_SECTIONS, configureCommand, configureCommandWithSections } = await import("./configure-D4gG84As.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,5 +1,5 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
- import { Bt as waitForGatewayReachable, Ct as DEFAULT_WORKSPACE, Dt as ensureWorkspaceAndSessions, Ft as probeGatewayReachable, It as randomToken, Lt as resolveControlUiLinks, Mt as normalizeGatewayTokenInput, Pt as printWizardHeader, kt as guardCancel, wt as applyWizardMetadata, zt as summarizeExistingConfig } from "./reply-CSn6Lm8-.js";
2
+ import { Bt as waitForGatewayReachable, Ct as DEFAULT_WORKSPACE, Dt as ensureWorkspaceAndSessions, Ft as probeGatewayReachable, It as randomToken, Lt as resolveControlUiLinks, Mt as normalizeGatewayTokenInput, Pt as printWizardHeader, kt as guardCancel, wt as applyWizardMetadata, zt as summarizeExistingConfig } from "./reply-BzrO3bUp.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";
@@ -15,9 +15,9 @@ import { n as logConfigUpdated } from "./logging-BusiCyt_.js";
15
15
  import { t as note$1 } from "./note-CbRknFZ7.js";
16
16
  import { t as WizardCancelledError } from "./prompts-DxnxCHKt.js";
17
17
  import { t as createClackPrompter } from "./clack-prompter-BxHCh6Tn.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-MqXQ1yhm.js";
19
- import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-B40cENeo.js";
20
- import { l as healthCommand, n as ensureControlUiAssetsBuilt, t as formatHealthCheckFailure } from "./health-format-DqINFTje.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-BMSs_h52.js";
19
+ import { n as setupChannels, t as noteChannelStatus } from "./onboard-channels-DLwghLSX.js";
20
+ import { l as healthCommand, n as ensureControlUiAssetsBuilt, t as formatHealthCheckFailure } from "./health-format-DoDy22kS.js";
21
21
  import { t as resolveGatewayService } from "./service-CTrRN1-T.js";
22
22
  import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-BLQwmm6k.js";
23
23
  import { confirm, intro, outro, select, text } from "@clack/prompts";
@@ -1,8 +1,8 @@
1
1
  import { r as __exportAll } from "./chunk-D_gEzPfs.js";
2
2
  import { t as createSubsystemLogger } from "./subsystem-RXphV8Xh.js";
3
3
  import { o as loadConfig } from "./config-C_blrocr.js";
4
- import { S as ensureChromeExtensionRelayServer } from "./chrome-CYjH7HBH.js";
5
- import { a as resolveProfile, i as resolveBrowserConfig, t as createBrowserRouteContext } from "./server-context-DziyNN8b.js";
4
+ import { S as ensureChromeExtensionRelayServer } from "./chrome-lbEbQ56F.js";
5
+ import { a as resolveProfile, i as resolveBrowserConfig, t as createBrowserRouteContext } from "./server-context-C0eFgku9.js";
6
6
 
7
7
  //#region src/browser/control-service.ts
8
8
  var control_service_exports = /* @__PURE__ */ __exportAll({
@@ -53,7 +53,7 @@ async function stopBrowserControlService() {
53
53
  }
54
54
  state = null;
55
55
  try {
56
- await (await import("./pw-ai-CXf_puwX.js")).closePlaywrightBrowserConnection();
56
+ await (await import("./pw-ai-BAED3BZI.js")).closePlaywrightBrowserConnection();
57
57
  } catch {}
58
58
  }
59
59
 
@@ -17,12 +17,12 @@ import "./message-channel-CeYCOtod.js";
17
17
  import "./logging-DhMPP27D.js";
18
18
  import "./accounts-DsQ7CSeY.js";
19
19
  import "./device-identity-zXWmZUVz.js";
20
- import "./net-Cmh623y0.js";
21
- import "./call-ByTcqcvV.js";
20
+ import "./net-BmNLdzEu.js";
21
+ import "./call-Bu-PXtQa.js";
22
22
  import { t as formatDocsLink } from "./links-D5FJjx5x.js";
23
23
  import "./progress-CIrle3FT.js";
24
24
  import { t as parseAbsoluteTimeMs } from "./parse-DbwfoyR_.js";
25
- import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-GLatQ1eS.js";
25
+ import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DBPVLpDy.js";
26
26
  import { n as parsePositiveIntOrUndefined } from "./helpers-CgAOTnxe.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 { Lt as resolveControlUiLinks } from "./reply-CSn6Lm8-.js";
2
+ import { Lt as resolveControlUiLinks } from "./reply-BzrO3bUp.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-CvpDYKxh.js";
7
7
  import { a as createConfigIO, o as loadConfig } from "./config-C_blrocr.js";
8
- import { d as inspectPortUsage, p as formatPortDiagnostics } from "./chrome-CYjH7HBH.js";
8
+ import { d as inspectPortUsage, p as formatPortDiagnostics } from "./chrome-lbEbQ56F.js";
9
9
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
10
- import { n as isWSL, r as isWSLEnv } from "./dispatcher-jfUrueZo.js";
10
+ import { n as isWSL, r as isWSLEnv } from "./dispatcher-CbiLzdIu.js";
11
11
  import { t as pickPrimaryTailnetIPv4 } from "./tailnet-DEIxPaFW.js";
12
- import { o as resolveGatewayBindHost } from "./net-Cmh623y0.js";
13
- import { n as callGateway } from "./call-ByTcqcvV.js";
12
+ import { o as resolveGatewayBindHost } from "./net-BmNLdzEu.js";
13
+ import { n as callGateway } from "./call-Bu-PXtQa.js";
14
14
  import { t as formatDocsLink } from "./links-D5FJjx5x.js";
15
15
  import { n as withProgress } from "./progress-CIrle3FT.js";
16
16
  import { d as resolveGatewaySystemdServiceName, l as resolveGatewayLaunchAgentLabel } from "./constants-QCWVHQSI.js";
17
- import { t as createDefaultDeps } from "./deps-Cxv3atRa.js";
17
+ import { t as createDefaultDeps } from "./deps-DliWBLR6.js";
18
18
  import { i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-DkLy62aK.js";
19
19
  import { o as resolveGatewayLogPaths, t as resolveGatewayService } from "./service-CTrRN1-T.js";
20
20
  import { r as isSystemdUserServiceAvailable } from "./systemd-BuS1yu_z.js";
21
21
  import { a as renderGatewayServiceCleanupHints, i as findExtraGatewayServices, n as auditGatewayServiceConfig, o as readLastGatewayErrorLine } from "./service-audit-CN0kFCuS.js";
22
22
  import { n as renderSystemdUnavailableHints, t as isSystemdUnavailableDetail } from "./systemd-hints-CLa1lyL0.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-DCuTTPOy.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-BBEi30PJ.js";
24
24
 
25
25
  //#region src/cli/daemon-cli/install.ts
26
26
  async function runDaemonInstall(opts) {
@@ -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-1Nerrhel.js";
2
+ import { i as isMessagingToolDuplicate } from "./pi-embedded-helpers-c_aUXGW8.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
6
  import { o as loadConfig } from "./config-C_blrocr.js";
7
7
  import { r as normalizeChannelId, t as getChannelPlugin } from "./plugins-DUZvbUrn.js";
8
- import { V as getChannelDock, l as appendAssistantMessageToSessionTranscript, q as resolveSignalAccount, u as resolveMirroredTranscriptText } from "./sandbox-BCOmiLLk.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-O9a-k9LQ.js";
8
+ import { V as getChannelDock, l as appendAssistantMessageToSessionTranscript, q as resolveSignalAccount, u as resolveMirroredTranscriptText } from "./sandbox-CUfq0krW.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-CjhejVNa.js";
10
10
  import { t as INTERNAL_MESSAGE_CHANNEL } from "./message-channel-CeYCOtod.js";
11
11
  import { fileURLToPath } from "node:url";
12
12
  import path from "node:path";
@@ -1,5 +1,5 @@
1
- import { Nn as sendMessageSlack, St as sendMessageIMessage, _n as sendMessageTelegram, jn as sendMessageWhatsApp, vn as sendMessageDiscord } from "./reply-CSn6Lm8-.js";
2
- import { b as sendMessageSignal } from "./deliver-CJ2Pjcyz.js";
1
+ import { Nn as sendMessageSlack, St as sendMessageIMessage, _n as sendMessageTelegram, jn as sendMessageWhatsApp, vn as sendMessageDiscord } from "./reply-BzrO3bUp.js";
2
+ import { b as sendMessageSignal } from "./deliver-V9WA_kZK.js";
3
3
 
4
4
  //#region src/cli/deps.ts
5
5
  function createDefaultDeps() {
@@ -13,8 +13,8 @@ import "./config-C_blrocr.js";
13
13
  import "./manifest-registry-BM_kgwtA.js";
14
14
  import { h as GATEWAY_CLIENT_NAMES, m as GATEWAY_CLIENT_MODES } from "./message-channel-CeYCOtod.js";
15
15
  import "./device-identity-zXWmZUVz.js";
16
- import "./net-Cmh623y0.js";
17
- import { n as callGateway } from "./call-ByTcqcvV.js";
16
+ import "./net-BmNLdzEu.js";
17
+ import { n as callGateway } from "./call-Bu-PXtQa.js";
18
18
  import { n as withProgress } from "./progress-CIrle3FT.js";
19
19
  import { t as renderTable } from "./table-CgHdpI6b.js";
20
20
 
@@ -1,4 +1,4 @@
1
- import { t as registerBrowserRoutes } from "./routes-O9a-k9LQ.js";
1
+ import { t as registerBrowserRoutes } from "./routes-CjhejVNa.js";
2
2
  import os from "node:os";
3
3
  import { promisify } from "node:util";
4
4
  import fs from "node:fs/promises";
@@ -1,4 +1,4 @@
1
- import { It as randomToken, Pt as printWizardHeader, ht as loadSKYKOIPlugins, kt as guardCancel, wr as loadModelCatalog, wt as applyWizardMetadata } from "./reply-CSn6Lm8-.js";
1
+ import { It as randomToken, Pt as printWizardHeader, ht as loadSKYKOIPlugins, kt as guardCancel, wr as loadModelCatalog, wt as applyWizardMetadata } from "./reply-BzrO3bUp.js";
2
2
  import { O as getResolvedLoggerSettings, c as defaultRuntime } from "./subsystem-RXphV8Xh.js";
3
3
  import { d as resolveIsNixMode, f as resolveLegacyStateDirs, g as resolveStateDir, m as resolveOAuthDir, p as resolveNewStateDir, t as CONFIG_PATH, u as resolveGatewayPort } from "./paths-VdmjGGyc.js";
4
4
  import { a as buildKoiMainSessionKey, l as normalizeKoiId, r as DEFAULT_MAIN_KEY, t as DEFAULT_ACCOUNT_ID } from "./session-key-DvA8Pdt6.js";
@@ -11,12 +11,12 @@ import { t as formatCliCommand } from "./command-format-CvpDYKxh.js";
11
11
  import { t as isTruthyEnvValue } from "./env-Bj0uZSiW.js";
12
12
  import { c as readConfigFileSnapshot, f as SKYKOISchema, n as migrateLegacyConfig, u as writeConfigFile } from "./config-C_blrocr.js";
13
13
  import { n as listChannelPlugins } from "./plugins-DUZvbUrn.js";
14
- import { L as resolveMainSessionKey, P as canonicalizeMainSessionAlias, Q as resolveSandboxScope, ct as DEFAULT_SANDBOX_BROWSER_IMAGE, d as loadSessionStore, lt as DEFAULT_SANDBOX_COMMON_IMAGE, m as saveSessionStore, ut as DEFAULT_SANDBOX_IMAGE } from "./sandbox-BCOmiLLk.js";
15
- import { d as inspectPortUsage, p as formatPortDiagnostics } from "./chrome-CYjH7HBH.js";
14
+ import { L as resolveMainSessionKey, P as canonicalizeMainSessionAlias, Q as resolveSandboxScope, ct as DEFAULT_SANDBOX_BROWSER_IMAGE, d as loadSessionStore, lt as DEFAULT_SANDBOX_COMMON_IMAGE, m as saveSessionStore, ut as DEFAULT_SANDBOX_IMAGE } from "./sandbox-CUfq0krW.js";
15
+ import { d as inspectPortUsage, p as formatPortDiagnostics } from "./chrome-lbEbQ56F.js";
16
16
  import { a as resolveSessionTranscriptsDirForKoi, n as resolveSessionFilePath, o as resolveStorePath } from "./paths-tKN7Eof7.js";
17
- import { n as isWSL, r as isWSLEnv } from "./dispatcher-jfUrueZo.js";
18
- import { n as isLoopbackHost, o as resolveGatewayBindHost } from "./net-Cmh623y0.js";
19
- import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-ByTcqcvV.js";
17
+ import { n as isWSL, r as isWSLEnv } from "./dispatcher-CbiLzdIu.js";
18
+ import { n as isLoopbackHost, o as resolveGatewayBindHost } from "./net-BmNLdzEu.js";
19
+ import { n as callGateway, t as buildGatewayConnectionDetails } from "./call-Bu-PXtQa.js";
20
20
  import { i as readChannelAllowFromStore } from "./pairing-store-BpSDb0uv.js";
21
21
  import { n as stylePromptMessage, r as stylePromptTitle, t as stylePromptHint } from "./prompt-style-BJmW_JM3.js";
22
22
  import { d as resolveGatewaySystemdServiceName, f as resolveGatewayWindowsTaskName, l as resolveGatewayLaunchAgentLabel, m as resolveNodeLaunchAgentLabel } from "./constants-QCWVHQSI.js";
@@ -25,9 +25,9 @@ import { t as resolveChannelDefaultAccountId } from "./helpers-BMifWcsO.js";
25
25
  import { n as logConfigUpdated } from "./logging-BusiCyt_.js";
26
26
  import { t as note$1 } from "./note-CbRknFZ7.js";
27
27
  import { t as applyPluginAutoEnable } from "./plugin-auto-enable-BmXyiOxr.js";
28
- import { i as resolveControlUiDistIndexPathForRoot, l as healthCommand, r as resolveControlUiDistIndexHealth, t as formatHealthCheckFailure } from "./health-format-DqINFTje.js";
29
- import { c as doctorShellCompletion, t as runGatewayUpdate } from "./update-runner-DfcP9otZ.js";
30
- import { i as resolveGatewayAuth } from "./auth-DQvUzR68.js";
28
+ import { i as resolveControlUiDistIndexPathForRoot, l as healthCommand, r as resolveControlUiDistIndexHealth, t as formatHealthCheckFailure } from "./health-format-DoDy22kS.js";
29
+ import { c as doctorShellCompletion, t as runGatewayUpdate } from "./update-runner-BZ1YtRG1.js";
30
+ import { i as resolveGatewayAuth } from "./auth-Rm5wqEvH.js";
31
31
  import { t as buildWorkspaceSkillStatus } from "./skills-status-PwtGQTh5.js";
32
32
  import { a as repairLaunchAgentBootstrap, i as launchAgentPlistExists, n as isLaunchAgentListed, o as resolveGatewayLogPaths, r as isLaunchAgentLoaded, t as resolveGatewayService } from "./service-CTrRN1-T.js";
33
33
  import { r as isSystemdUserServiceAvailable } from "./systemd-BuS1yu_z.js";