skykoi 2026.3.384 → 2026.3.385
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.
- package/dist/build-info.json +3 -3
- package/dist/canvas-host/a2ui/.bundle.hash +1 -1
- package/dist/{completion-cli-Cr0QbN9h.js → completion-cli-BZOdUKC7.js} +1 -1
- package/dist/{config-guard-CykiCgAZ.js → config-guard-fPal6x-H.js} +4 -4
- package/dist/{doctor-CFXh7AVF.js → doctor-0THm5b6P.js} +1 -1
- package/dist/{doctor-completion-CUSKgqWX.js → doctor-completion-SM2eK0Lp.js} +1 -1
- package/dist/entry.js +1 -1
- package/dist/{gateway-cli-B1ktEbhU.js → gateway-cli-Bp_-9yN3.js} +5 -5
- package/dist/index.js +8 -8
- package/dist/{onboarding-ByjuJJvO.js → onboarding-BqgNExH9.js} +3 -3
- package/dist/plugin-sdk/index.js +3 -3
- package/dist/{program-BvneuwKl.js → program-HEmsYHwG.js} +3 -3
- package/dist/{register.subclis-iwqsU914.js → register.subclis-CW4mB1LQ.js} +4 -4
- package/dist/{run-main-9XTLErIN.js → run-main-CcQL7bOT.js} +9 -9
- package/dist/{tui-CLMQI4hR.js → tui-DzMl0uIy.js} +53 -26
- package/dist/{tui-cli-BXVWOpGK.js → tui-cli-Vc1AaLJt.js} +1 -1
- package/dist/{update-cli-EXCKmAei.js → update-cli-B-JAciDv.js} +4 -4
- package/extensions/bluebubbles/package.json +1 -1
- package/extensions/copilot-proxy/package.json +1 -1
- package/extensions/diagnostics-otel/package.json +1 -1
- package/extensions/discord/package.json +1 -1
- package/extensions/feishu/package.json +1 -1
- package/extensions/google-antigravity-auth/package.json +1 -1
- package/extensions/google-gemini-cli-auth/package.json +1 -1
- package/extensions/googlechat/package.json +1 -1
- package/extensions/imessage/package.json +1 -1
- package/extensions/line/package.json +1 -1
- package/extensions/llm-task/package.json +1 -1
- package/extensions/lobster/package.json +1 -1
- package/extensions/matrix/CHANGELOG.md +5 -0
- package/extensions/matrix/package.json +1 -1
- package/extensions/mattermost/package.json +1 -1
- package/extensions/memory-core/package.json +1 -1
- package/extensions/memory-lancedb/package.json +1 -1
- package/extensions/minimax-portal-auth/package.json +1 -1
- package/extensions/msteams/CHANGELOG.md +5 -0
- package/extensions/msteams/package.json +1 -1
- package/extensions/nextcloud-talk/package.json +1 -1
- package/extensions/nostr/CHANGELOG.md +5 -0
- package/extensions/nostr/package.json +1 -1
- package/extensions/open-prose/package.json +1 -1
- package/extensions/signal/package.json +1 -1
- package/extensions/slack/package.json +1 -1
- package/extensions/telegram/package.json +1 -1
- package/extensions/tlon/package.json +1 -1
- package/extensions/twitch/CHANGELOG.md +5 -0
- package/extensions/twitch/package.json +1 -1
- package/extensions/voice-call/CHANGELOG.md +5 -0
- package/extensions/voice-call/package.json +1 -1
- package/extensions/whatsapp/package.json +1 -1
- package/extensions/zalo/CHANGELOG.md +5 -0
- package/extensions/zalo/package.json +1 -1
- package/extensions/zalouser/CHANGELOG.md +5 -0
- package/extensions/zalouser/package.json +1 -1
- package/package.json +1 -1
package/dist/build-info.json
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
|
|
1
|
+
76436e11bef9eb6a5c5654cc6be05da2d8273df528255089a7567e38b6151719
|
|
@@ -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-
|
|
3
|
+
import { n as registerSubCliByName, t as getSubCliEntries } from "./register.subclis-CW4mB1LQ.js";
|
|
4
4
|
import path from "node:path";
|
|
5
5
|
import os from "node:os";
|
|
6
6
|
import fs from "node:fs/promises";
|
|
@@ -28,7 +28,7 @@ import { t as resolveChannelDefaultAccountId } from "./helpers-C0u-oaDR.js";
|
|
|
28
28
|
import { n as logConfigUpdated, t as formatConfigPath } from "./logging-CE47aZcO.js";
|
|
29
29
|
import { t as WizardCancelledError } from "./prompts-D59uQQdA.js";
|
|
30
30
|
import { t as createClackPrompter } from "./clack-prompter-BbdTlNx8.js";
|
|
31
|
-
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-
|
|
31
|
+
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-BqgNExH9.js";
|
|
32
32
|
import { d as applyAuthChoice, f as applyOpenAIConfig, h as promptAuthChoiceGrouped, m as applyGoogleGeminiModelDefault, p as upsertSharedEnvVar, u as warnIfModelConfigLooksOff } from "./onboard-skills-D5B_ZPKs.js";
|
|
33
33
|
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-C9mmx0Wd.js";
|
|
34
34
|
import { n as setupChannels } from "./onboard-channels-CJug7SFV.js";
|
|
@@ -36,7 +36,7 @@ import { i as healthCommand } from "./health-format-yvvQ18Ya.js";
|
|
|
36
36
|
import { t as renderTable } from "./table-BFIT6RB5.js";
|
|
37
37
|
import { t as resolveGatewayService } from "./service-CW9nUfWU.js";
|
|
38
38
|
import { r as isSystemdUserServiceAvailable } from "./systemd-fjt-WYE7.js";
|
|
39
|
-
import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-
|
|
39
|
+
import { l as getVerboseFlag, o as getFlagValue, r as registerSubCliCommands, s as getPositiveIntFlagValue, u as hasFlag } from "./register.subclis-CW4mB1LQ.js";
|
|
40
40
|
import { n as callGatewayFromCli, t as addGatewayClientOptions } from "./gateway-rpc-DYI5hnM6.js";
|
|
41
41
|
import { t as formatHelpExamples } from "./help-format-VHofKIT0.js";
|
|
42
42
|
import { t as adminUnlockCommand } from "./admin-unlock-CTCNN-zM.js";
|
|
@@ -47,7 +47,7 @@ import { i as CONFIGURE_WIZARD_SECTIONS, n as configureCommand, r as configureCo
|
|
|
47
47
|
import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, r as isGatewayDaemonRuntime, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-jkMiwykI.js";
|
|
48
48
|
import { n as ensureSystemdUserLingerNonInteractive } from "./systemd-linger-T7_vGBN4.js";
|
|
49
49
|
import { t as loginCommand } from "./login-Du7RjDym.js";
|
|
50
|
-
import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-
|
|
50
|
+
import { n as loadAndMaybeMigrateDoctorConfig, t as doctorCommand } from "./doctor-0THm5b6P.js";
|
|
51
51
|
import { fileURLToPath } from "node:url";
|
|
52
52
|
import fs from "node:fs";
|
|
53
53
|
import path from "node:path";
|
|
@@ -3106,7 +3106,7 @@ function registerLoginCommand(program) {
|
|
|
3106
3106
|
console.log(theme.muted(` user=${result.userId} org=${result.orgId}`));
|
|
3107
3107
|
}
|
|
3108
3108
|
if (opts.chat !== false && result.gatewayUrl && process.stdin.isTTY && process.stdout.isTTY) {
|
|
3109
|
-
const { runTui } = await import("./tui-
|
|
3109
|
+
const { runTui } = await import("./tui-DzMl0uIy.js").then((n) => n.n);
|
|
3110
3110
|
console.log(theme.muted("\n Opening your koi chat…\n"));
|
|
3111
3111
|
await runTui({
|
|
3112
3112
|
url: result.gatewayUrl,
|
|
@@ -34,7 +34,7 @@ import { a as repairLaunchAgentBootstrap, i as launchAgentPlistExists, n as isLa
|
|
|
34
34
|
import { r as isSystemdUserServiceAvailable } from "./systemd-fjt-WYE7.js";
|
|
35
35
|
import { t as readLastGatewayErrorLine } from "./diagnostics-DPRvn_ky.js";
|
|
36
36
|
import { t as collectChannelStatusIssues } from "./channels-status-issues-D92ZMiSY.js";
|
|
37
|
-
import { n as doctorShellCompletion } from "./doctor-completion-
|
|
37
|
+
import { n as doctorShellCompletion } from "./doctor-completion-SM2eK0Lp.js";
|
|
38
38
|
import { n as resolveControlUiDistIndexHealth, r as resolveControlUiDistIndexPathForRoot } from "./control-ui-assets-Dcc_8tht.js";
|
|
39
39
|
import { a as gatewayInstallErrorHint, d as renderSystemNodeWarning, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, p as resolveSystemNodeInfo, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-jkMiwykI.js";
|
|
40
40
|
import { t as ensureSystemdUserLingerInteractive } from "./systemd-linger-T7_vGBN4.js";
|
|
@@ -3,7 +3,7 @@ import { r as resolveCliName, t as formatCliCommand } from "./command-format-DOY
|
|
|
3
3
|
import { t as VERSION } from "./version-BKRSzdyx.js";
|
|
4
4
|
import { t as note } from "./note-BDX6ZDm1.js";
|
|
5
5
|
import { c as compareSemverStrings, s as checkUpdateStatus } from "./update-runner-BTHuBI1s.js";
|
|
6
|
-
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-
|
|
6
|
+
import { a as resolveCompletionCachePath, i as isCompletionInstalled, o as resolveShellFromEnv, r as installCompletion, s as usesSlowDynamicCompletion, t as completionCacheExists } from "./completion-cli-BZOdUKC7.js";
|
|
7
7
|
import path from "node:path";
|
|
8
8
|
import { spawnSync } from "node:child_process";
|
|
9
9
|
|
package/dist/entry.js
CHANGED
|
@@ -247,7 +247,7 @@ if (!ensureExperimentalWarningSuppressed()) {
|
|
|
247
247
|
applyCliProfileEnv({ profile: parsed.profile });
|
|
248
248
|
process$1.argv = parsed.argv;
|
|
249
249
|
}
|
|
250
|
-
import("./run-main-
|
|
250
|
+
import("./run-main-CcQL7bOT.js").then(({ runCli }) => runCli(process$1.argv)).catch((error) => {
|
|
251
251
|
console.error("[SKYKOI] Failed to start CLI:", error instanceof Error ? error.stack ?? error.message : error);
|
|
252
252
|
process$1.exitCode = 1;
|
|
253
253
|
});
|
|
@@ -94,7 +94,7 @@ import { t as resolveChannelDefaultAccountId } from "./helpers-C0u-oaDR.js";
|
|
|
94
94
|
import "./logging-CE47aZcO.js";
|
|
95
95
|
import "./note-BDX6ZDm1.js";
|
|
96
96
|
import { t as WizardCancelledError } from "./prompts-D59uQQdA.js";
|
|
97
|
-
import { c as loadKoiIdentity, d as loadKoiIdentityFromWorkspace, i as applyKoiConfig, l as pruneKoiConfig, o as findKoiEntryIndex, r as getStatusSummary, s as listKoiEntries, t as runOnboardingWizard } from "./onboarding-
|
|
97
|
+
import { c as loadKoiIdentity, d as loadKoiIdentityFromWorkspace, i as applyKoiConfig, l as pruneKoiConfig, o as findKoiEntryIndex, r as getStatusSummary, s as listKoiEntries, t as runOnboardingWizard } from "./onboarding-BqgNExH9.js";
|
|
98
98
|
import { n as installSkill } from "./onboard-skills-D5B_ZPKs.js";
|
|
99
99
|
import "./github-copilot-auth-C9mmx0Wd.js";
|
|
100
100
|
import "./onboard-channels-CJug7SFV.js";
|
|
@@ -113,18 +113,18 @@ import { p as resolveGatewayStateDir } from "./systemd-fjt-WYE7.js";
|
|
|
113
113
|
import "./diagnostics-DPRvn_ky.js";
|
|
114
114
|
import "./node-service--cl-zK26.js";
|
|
115
115
|
import "./channels-status-issues-D92ZMiSY.js";
|
|
116
|
-
import "./doctor-completion-
|
|
117
|
-
import "./register.subclis-
|
|
116
|
+
import "./doctor-completion-SM2eK0Lp.js";
|
|
117
|
+
import "./register.subclis-CW4mB1LQ.js";
|
|
118
118
|
import { a as createOutboundSendDeps$1, i as resolveKoiOutboundTarget, r as resolveKoiDeliveryPlan, t as koiCommand } from "./koi-xZEdDCXF.js";
|
|
119
119
|
import { a as resolveControlUiRootSync, i as resolveControlUiRootOverrideSync, t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Dcc_8tht.js";
|
|
120
120
|
import "./daemon-runtime-jkMiwykI.js";
|
|
121
121
|
import { n as resolveWideAreaDiscoveryDomain, r as writeWideAreaGatewayZone } from "./widearea-dns-DmDtfScg.js";
|
|
122
122
|
import { n as discoverGatewayBeacons } from "./bonjour-discovery-BcGs4w0m.js";
|
|
123
123
|
import "./ensure-local-gateway-B2qYYNsm.js";
|
|
124
|
-
import "./completion-cli-
|
|
124
|
+
import "./completion-cli-BZOdUKC7.js";
|
|
125
125
|
import "./service-audit-B_swanYW.js";
|
|
126
126
|
import { i as shouldIncludeHook, n as loadWorkspaceHookEntries, r as resolveHookConfig } from "./hooks-status-CJBhXrQP.js";
|
|
127
|
-
import "./tui-
|
|
127
|
+
import "./tui-DzMl0uIy.js";
|
|
128
128
|
import { t as buildChannelAccountSnapshot } from "./status-C8ntwWk9.js";
|
|
129
129
|
import "./shared-CsJmoyjd.js";
|
|
130
130
|
import { a as runDaemonStop, i as runDaemonStart, n as runDaemonStatus, o as runDaemonUninstall, r as runDaemonRestart, s as runDaemonInstall } from "./daemon-cli-BY6L_O1X.js";
|
package/dist/index.js
CHANGED
|
@@ -80,11 +80,11 @@ import { t as isMainModule } from "./is-main-D5NmXew9.js";
|
|
|
80
80
|
import { t as ensureSKYKOICliOnPath } from "./path-env-C0IwmyXV.js";
|
|
81
81
|
import { t as assertSupportedRuntime } from "./runtime-guard-DQEzrjPX.js";
|
|
82
82
|
import "./ports-CVcXIoyn.js";
|
|
83
|
-
import "./config-guard-
|
|
83
|
+
import "./config-guard-fPal6x-H.js";
|
|
84
84
|
import "./logging-CE47aZcO.js";
|
|
85
85
|
import "./note-BDX6ZDm1.js";
|
|
86
86
|
import "./clack-prompter-BbdTlNx8.js";
|
|
87
|
-
import "./onboarding-
|
|
87
|
+
import "./onboarding-BqgNExH9.js";
|
|
88
88
|
import "./onboard-skills-D5B_ZPKs.js";
|
|
89
89
|
import "./github-copilot-auth-C9mmx0Wd.js";
|
|
90
90
|
import "./onboard-channels-CJug7SFV.js";
|
|
@@ -103,8 +103,8 @@ import "./systemd-fjt-WYE7.js";
|
|
|
103
103
|
import "./diagnostics-DPRvn_ky.js";
|
|
104
104
|
import "./node-service--cl-zK26.js";
|
|
105
105
|
import "./channels-status-issues-D92ZMiSY.js";
|
|
106
|
-
import "./doctor-completion-
|
|
107
|
-
import "./register.subclis-
|
|
106
|
+
import "./doctor-completion-SM2eK0Lp.js";
|
|
107
|
+
import "./register.subclis-CW4mB1LQ.js";
|
|
108
108
|
import "./gateway-rpc-DYI5hnM6.js";
|
|
109
109
|
import "./help-format-VHofKIT0.js";
|
|
110
110
|
import "./admin-unlock-CTCNN-zM.js";
|
|
@@ -120,13 +120,13 @@ import "./ensure-local-gateway-B2qYYNsm.js";
|
|
|
120
120
|
import "./channel-auth-DOqfPLIr.js";
|
|
121
121
|
import "./login-Du7RjDym.js";
|
|
122
122
|
import "./auth-health-DfT6NGrM.js";
|
|
123
|
-
import "./doctor-
|
|
124
|
-
import "./completion-cli-
|
|
123
|
+
import "./doctor-0THm5b6P.js";
|
|
124
|
+
import "./completion-cli-BZOdUKC7.js";
|
|
125
125
|
import "./service-audit-B_swanYW.js";
|
|
126
126
|
import "./hooks-status-CJBhXrQP.js";
|
|
127
|
-
import "./tui-
|
|
127
|
+
import "./tui-DzMl0uIy.js";
|
|
128
128
|
import "./channel-options-BgY3Dql2.js";
|
|
129
|
-
import { n as buildProgram } from "./program-
|
|
129
|
+
import { n as buildProgram } from "./program-HEmsYHwG.js";
|
|
130
130
|
import process from "node:process";
|
|
131
131
|
import { fileURLToPath } from "node:url";
|
|
132
132
|
|
|
@@ -38,12 +38,12 @@ import { t as readLastGatewayErrorLine } from "./diagnostics-DPRvn_ky.js";
|
|
|
38
38
|
import { t as resolveNodeService } from "./node-service--cl-zK26.js";
|
|
39
39
|
import { t as collectChannelStatusIssues } from "./channels-status-issues-D92ZMiSY.js";
|
|
40
40
|
import { i as redactSecrets, n as formatDuration$1, r as formatGatewayAuthUsed, t as formatAge$1 } from "./format-lvtLJpBH.js";
|
|
41
|
-
import { a as formatUpdateOneLiner, i as formatUpdateAvailableHint, o as getUpdateCheckResult, r as ensureCompletionCacheExists, s as resolveUpdateAvailability, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
41
|
+
import { a as formatUpdateOneLiner, i as formatUpdateAvailableHint, o as getUpdateCheckResult, r as ensureCompletionCacheExists, s as resolveUpdateAvailability, t as checkShellCompletionStatus } from "./doctor-completion-SM2eK0Lp.js";
|
|
42
42
|
import { t as ensureControlUiAssetsBuilt } from "./control-ui-assets-Dcc_8tht.js";
|
|
43
43
|
import { a as gatewayInstallErrorHint, i as buildGatewayInstallPlan, n as GATEWAY_DAEMON_RUNTIME_OPTIONS, t as DEFAULT_GATEWAY_DAEMON_RUNTIME } from "./daemon-runtime-jkMiwykI.js";
|
|
44
|
-
import { r as installCompletion } from "./completion-cli-
|
|
44
|
+
import { r as installCompletion } from "./completion-cli-BZOdUKC7.js";
|
|
45
45
|
import { t as buildWorkspaceHookStatus } from "./hooks-status-CJBhXrQP.js";
|
|
46
|
-
import { t as runTui } from "./tui-
|
|
46
|
+
import { t as runTui } from "./tui-DzMl0uIy.js";
|
|
47
47
|
import fs from "node:fs";
|
|
48
48
|
import path from "node:path";
|
|
49
49
|
import os from "node:os";
|
package/dist/plugin-sdk/index.js
CHANGED
|
@@ -33,7 +33,7 @@ import { exec as exec$1 } from "child_process";
|
|
|
33
33
|
import { createReadStream as createReadStream$1, createWriteStream as createWriteStream$1, promises as promises$1 } from "fs";
|
|
34
34
|
import { Readable, Transform } from "stream";
|
|
35
35
|
import { platform, release, tmpdir as tmpdir$1 } from "os";
|
|
36
|
-
import EventEmitter
|
|
36
|
+
import EventEmitter, { EventEmitter as EventEmitter$1, once } from "events";
|
|
37
37
|
import { promisify as promisify$1 } from "util";
|
|
38
38
|
import { join as join$1 } from "path";
|
|
39
39
|
import * as Crypto from "crypto";
|
|
@@ -228371,7 +228371,7 @@ const BUFFERABLE_EVENT_SET = new Set([
|
|
|
228371
228371
|
* making the data processing more efficient.
|
|
228372
228372
|
*/
|
|
228373
228373
|
const makeEventBuffer = (logger) => {
|
|
228374
|
-
const ev = new EventEmitter
|
|
228374
|
+
const ev = new EventEmitter();
|
|
228375
228375
|
const historyCache = /* @__PURE__ */ new Set();
|
|
228376
228376
|
let data = makeBufferData();
|
|
228377
228377
|
let isBuffering = false;
|
|
@@ -233941,7 +233941,7 @@ var BinaryInfo = class {
|
|
|
233941
233941
|
|
|
233942
233942
|
//#endregion
|
|
233943
233943
|
//#region node_modules/.pnpm/@whiskeysockets+baileys@7.0.0-rc.9_audio-decode@2.2.3_sharp@0.34.5/node_modules/@whiskeysockets/baileys/lib/Socket/Client/types.js
|
|
233944
|
-
var AbstractSocketClient = class extends EventEmitter {
|
|
233944
|
+
var AbstractSocketClient = class extends EventEmitter$1 {
|
|
233945
233945
|
constructor(url, config) {
|
|
233946
233946
|
super();
|
|
233947
233947
|
this.url = url;
|
|
@@ -5,10 +5,10 @@ import { n as replaceCliName, r as resolveCliName } from "./command-format-DOYW_
|
|
|
5
5
|
import { t as isTruthyEnvValue } from "./env-ChCKTuXK.js";
|
|
6
6
|
import { t as VERSION } from "./version-BKRSzdyx.js";
|
|
7
7
|
import { t as formatDocsLink } from "./links-CFNtV6AI.js";
|
|
8
|
-
import { i as registerProgramCommands, n as PLUGIN_CLI_COMMANDS, t as ensureConfigReady } from "./config-guard-
|
|
9
|
-
import { a as getCommandPath, d as hasHelpOrVersion, l as getVerboseFlag } from "./register.subclis-
|
|
8
|
+
import { i as registerProgramCommands, n as PLUGIN_CLI_COMMANDS, t as ensureConfigReady } from "./config-guard-fPal6x-H.js";
|
|
9
|
+
import { a as getCommandPath, d as hasHelpOrVersion, l as getVerboseFlag } from "./register.subclis-CW4mB1LQ.js";
|
|
10
10
|
import { t as ensurePluginRegistryLoaded } from "./plugin-registry-C2tsOi_I.js";
|
|
11
|
-
import { a as hasEmittedCliBanner, i as formatCliBannerLine, r as emitCliBanner } from "./tui-
|
|
11
|
+
import { a as hasEmittedCliBanner, i as formatCliBannerLine, r as emitCliBanner } from "./tui-DzMl0uIy.js";
|
|
12
12
|
import { n as resolveCliChannelOptions } from "./channel-options-BgY3Dql2.js";
|
|
13
13
|
import { Command } from "commander";
|
|
14
14
|
|
|
@@ -124,7 +124,7 @@ const entries = [
|
|
|
124
124
|
name: "gateway",
|
|
125
125
|
description: "Gateway control",
|
|
126
126
|
register: async (program) => {
|
|
127
|
-
(await import("./gateway-cli-
|
|
127
|
+
(await import("./gateway-cli-Bp_-9yN3.js")).registerGatewayCli(program);
|
|
128
128
|
}
|
|
129
129
|
},
|
|
130
130
|
{
|
|
@@ -194,7 +194,7 @@ const entries = [
|
|
|
194
194
|
name: "tui",
|
|
195
195
|
description: "Terminal UI",
|
|
196
196
|
register: async (program) => {
|
|
197
|
-
(await import("./tui-cli-
|
|
197
|
+
(await import("./tui-cli-Vc1AaLJt.js")).registerTuiCli(program);
|
|
198
198
|
}
|
|
199
199
|
},
|
|
200
200
|
{
|
|
@@ -310,14 +310,14 @@ const entries = [
|
|
|
310
310
|
name: "update",
|
|
311
311
|
description: "CLI update helpers",
|
|
312
312
|
register: async (program) => {
|
|
313
|
-
(await import("./update-cli-
|
|
313
|
+
(await import("./update-cli-B-JAciDv.js")).registerUpdateCli(program);
|
|
314
314
|
}
|
|
315
315
|
},
|
|
316
316
|
{
|
|
317
317
|
name: "completion",
|
|
318
318
|
description: "Generate shell completion script",
|
|
319
319
|
register: async (program) => {
|
|
320
|
-
(await import("./completion-cli-
|
|
320
|
+
(await import("./completion-cli-BZOdUKC7.js").then((n) => n.n)).registerCompletionCli(program);
|
|
321
321
|
}
|
|
322
322
|
}
|
|
323
323
|
];
|
|
@@ -77,11 +77,11 @@ import "./deps-B3eCpudn.js";
|
|
|
77
77
|
import "./tailscale-B0Nz70aN.js";
|
|
78
78
|
import { t as ensureSKYKOICliOnPath } from "./path-env-C0IwmyXV.js";
|
|
79
79
|
import { t as assertSupportedRuntime } from "./runtime-guard-DQEzrjPX.js";
|
|
80
|
-
import { n as PLUGIN_CLI_COMMANDS, r as findRoutedCommand, t as ensureConfigReady } from "./config-guard-
|
|
80
|
+
import { n as PLUGIN_CLI_COMMANDS, r as findRoutedCommand, t as ensureConfigReady } from "./config-guard-fPal6x-H.js";
|
|
81
81
|
import "./logging-CE47aZcO.js";
|
|
82
82
|
import "./note-BDX6ZDm1.js";
|
|
83
83
|
import "./clack-prompter-BbdTlNx8.js";
|
|
84
|
-
import "./onboarding-
|
|
84
|
+
import "./onboarding-BqgNExH9.js";
|
|
85
85
|
import "./onboard-skills-D5B_ZPKs.js";
|
|
86
86
|
import "./github-copilot-auth-C9mmx0Wd.js";
|
|
87
87
|
import "./onboard-channels-CJug7SFV.js";
|
|
@@ -100,8 +100,8 @@ import "./systemd-fjt-WYE7.js";
|
|
|
100
100
|
import "./diagnostics-DPRvn_ky.js";
|
|
101
101
|
import "./node-service--cl-zK26.js";
|
|
102
102
|
import "./channels-status-issues-D92ZMiSY.js";
|
|
103
|
-
import "./doctor-completion-
|
|
104
|
-
import { a as getCommandPath, c as getPrimaryCommand, d as hasHelpOrVersion } from "./register.subclis-
|
|
103
|
+
import "./doctor-completion-SM2eK0Lp.js";
|
|
104
|
+
import { a as getCommandPath, c as getPrimaryCommand, d as hasHelpOrVersion } from "./register.subclis-CW4mB1LQ.js";
|
|
105
105
|
import "./gateway-rpc-DYI5hnM6.js";
|
|
106
106
|
import "./help-format-VHofKIT0.js";
|
|
107
107
|
import "./admin-unlock-CTCNN-zM.js";
|
|
@@ -117,11 +117,11 @@ import "./ensure-local-gateway-B2qYYNsm.js";
|
|
|
117
117
|
import "./channel-auth-DOqfPLIr.js";
|
|
118
118
|
import "./login-Du7RjDym.js";
|
|
119
119
|
import "./auth-health-DfT6NGrM.js";
|
|
120
|
-
import "./doctor-
|
|
121
|
-
import "./completion-cli-
|
|
120
|
+
import "./doctor-0THm5b6P.js";
|
|
121
|
+
import "./completion-cli-BZOdUKC7.js";
|
|
122
122
|
import "./service-audit-B_swanYW.js";
|
|
123
123
|
import "./hooks-status-CJBhXrQP.js";
|
|
124
|
-
import { r as emitCliBanner } from "./tui-
|
|
124
|
+
import { r as emitCliBanner } from "./tui-DzMl0uIy.js";
|
|
125
125
|
import process$1 from "node:process";
|
|
126
126
|
import { fileURLToPath } from "node:url";
|
|
127
127
|
import fs from "node:fs";
|
|
@@ -175,7 +175,7 @@ async function runCli(argv = process$1.argv) {
|
|
|
175
175
|
assertSupportedRuntime();
|
|
176
176
|
if (await tryRouteCli(normalizedArgv)) return;
|
|
177
177
|
enableConsoleCapture();
|
|
178
|
-
const { buildProgram } = await import("./program-
|
|
178
|
+
const { buildProgram } = await import("./program-HEmsYHwG.js").then((n) => n.t);
|
|
179
179
|
const program = buildProgram();
|
|
180
180
|
installUnhandledRejectionHandler();
|
|
181
181
|
process$1.on("uncaughtException", (error) => {
|
|
@@ -208,7 +208,7 @@ async function runCli(argv = process$1.argv) {
|
|
|
208
208
|
}
|
|
209
209
|
const primary = getPrimaryCommand(parseArgv);
|
|
210
210
|
if (primary) {
|
|
211
|
-
const { registerSubCliByName } = await import("./register.subclis-
|
|
211
|
+
const { registerSubCliByName } = await import("./register.subclis-CW4mB1LQ.js").then((n) => n.i);
|
|
212
212
|
await registerSubCliByName(program, primary);
|
|
213
213
|
}
|
|
214
214
|
if (!!primary && PLUGIN_CLI_COMMANDS.has(primary)) {
|
|
@@ -55,6 +55,7 @@ import vm from "node:vm";
|
|
|
55
55
|
*/
|
|
56
56
|
/** Fallback columns/rows when not attached to a TTY (matches pi-tui's ProcessTerminal). */
|
|
57
57
|
const FALLBACK_COLUMNS = 80;
|
|
58
|
+
const FALLBACK_ROWS = 24;
|
|
58
59
|
/** Kitty / iTerm2 inline-image escape leads — such lines are legitimately "wide" and
|
|
59
60
|
* must never be truncated (pi-tui skips them in its own width check). */
|
|
60
61
|
const IMAGE_LINE_RE = /\x1b_G|\x1b\]1337/;
|
|
@@ -64,6 +65,12 @@ function terminalColumns() {
|
|
|
64
65
|
if (typeof cols === "number" && Number.isFinite(cols) && cols > 0) return Math.floor(cols);
|
|
65
66
|
return FALLBACK_COLUMNS;
|
|
66
67
|
}
|
|
68
|
+
/** Current terminal height, always a safe positive integer. */
|
|
69
|
+
function terminalRows() {
|
|
70
|
+
const rows = process.stdout?.rows;
|
|
71
|
+
if (typeof rows === "number" && Number.isFinite(rows) && rows > 0) return Math.floor(rows);
|
|
72
|
+
return FALLBACK_ROWS;
|
|
73
|
+
}
|
|
67
74
|
/** Coerce any width-ish value to a usable non-negative integer. */
|
|
68
75
|
function safeWidth(width) {
|
|
69
76
|
return Number.isFinite(width) && width > 0 ? Math.floor(width) : 0;
|
|
@@ -5570,29 +5577,47 @@ function drawBarMeter(grid, x, y, w, ratio, fg, dimFg) {
|
|
|
5570
5577
|
const filled = Math.round(Math.max(0, Math.min(1, ratio)) * w);
|
|
5571
5578
|
for (let i = 0; i < w; i++) grid.set(x + i, y, i < filled ? "█" : "░", i < filled ? fg : dimFg, -2);
|
|
5572
5579
|
}
|
|
5580
|
+
/** Rows the bottom chat strip claims — media must never draw into them. */
|
|
5581
|
+
const CANVAS_CHAT_RESERVE = 6;
|
|
5582
|
+
function samplePixel(img, sx, sy) {
|
|
5583
|
+
const x = Math.min(img.width - 1, Math.max(0, sx | 0));
|
|
5584
|
+
const i = (Math.min(img.height - 1, Math.max(0, sy | 0)) * img.width + x) * 4;
|
|
5585
|
+
if (img.data[i + 3] < 40) return -1;
|
|
5586
|
+
return (img.data[i] & 255) << 16 | (img.data[i + 1] & 255) << 8 | img.data[i + 2] & 255;
|
|
5587
|
+
}
|
|
5573
5588
|
/**
|
|
5574
|
-
* Draw an
|
|
5575
|
-
*
|
|
5576
|
-
*
|
|
5589
|
+
* Draw an image so it ALWAYS fits: the (boxX,boxY,boxW,boxH) request is clamped
|
|
5590
|
+
* to the real grid (minus the chat strip via reserveBottom), the image is
|
|
5591
|
+
* scaled to fit inside that region preserving aspect ratio (nearest-neighbor,
|
|
5592
|
+
* up- or down-scale), and centered. Nothing ever overflows the terminal or the
|
|
5593
|
+
* prompt strip regardless of what dimensions the model requested.
|
|
5577
5594
|
*/
|
|
5578
|
-
function
|
|
5579
|
-
|
|
5580
|
-
const
|
|
5581
|
-
|
|
5582
|
-
|
|
5583
|
-
|
|
5595
|
+
function drawImageFitted(grid, boxX, boxY, boxW, boxH, img, opts) {
|
|
5596
|
+
if (img.width <= 0 || img.height <= 0) return;
|
|
5597
|
+
const reserve = opts?.reserveBottom ?? 0;
|
|
5598
|
+
const usableH = Math.max(1, grid.h - reserve);
|
|
5599
|
+
const gx = Math.max(0, Math.min(boxX | 0, grid.w - 1));
|
|
5600
|
+
const gy = Math.max(0, Math.min(boxY | 0, usableH - 1));
|
|
5601
|
+
const maxW = Math.max(1, Math.min(boxW | 0 || grid.w, grid.w - gx));
|
|
5602
|
+
const maxH = Math.max(1, Math.min(boxH | 0 || usableH, usableH - gy));
|
|
5603
|
+
const scale = Math.min(maxW / img.width, maxH * 2 / img.height);
|
|
5604
|
+
const outPxW = Math.max(1, Math.round(img.width * scale));
|
|
5605
|
+
const outPxH = Math.max(1, Math.round(img.height * scale));
|
|
5606
|
+
const outCellsW = Math.min(maxW, outPxW);
|
|
5607
|
+
const outCellsH = Math.min(maxH, Math.ceil(outPxH / 2));
|
|
5608
|
+
const offX = gx + Math.floor((maxW - outCellsW) / 2);
|
|
5609
|
+
const offY = gy + Math.floor((maxH - outCellsH) / 2);
|
|
5610
|
+
const invX = img.width / outPxW;
|
|
5611
|
+
const invY = img.height / outPxH;
|
|
5612
|
+
for (let cy = 0; cy < outCellsH; cy++) for (let cx = 0; cx < outCellsW; cx++) {
|
|
5613
|
+
const top = samplePixel(img, cx * invX, cy * 2 * invY);
|
|
5614
|
+
const bottom = samplePixel(img, cx * invX, (cy * 2 + 1) * invY);
|
|
5584
5615
|
if (top < 0 && bottom < 0) continue;
|
|
5585
|
-
if (top >= 0 && bottom >= 0) grid.set(
|
|
5586
|
-
else if (top >= 0) grid.set(
|
|
5587
|
-
else grid.set(
|
|
5616
|
+
if (top >= 0 && bottom >= 0) grid.set(offX + cx, offY + cy, "▀", top, bottom);
|
|
5617
|
+
else if (top >= 0) grid.set(offX + cx, offY + cy, "▀", top, -2);
|
|
5618
|
+
else grid.set(offX + cx, offY + cy, "▄", bottom, -2);
|
|
5588
5619
|
}
|
|
5589
5620
|
}
|
|
5590
|
-
function pixelAt(img, x, y) {
|
|
5591
|
-
if (x < 0 || y < 0 || x >= img.width || y >= img.height) return -1;
|
|
5592
|
-
const i = (y * img.width + x) * 4;
|
|
5593
|
-
if (img.data[i + 3] < 40) return -1;
|
|
5594
|
-
return (img.data[i] & 255) << 16 | (img.data[i + 1] & 255) << 8 | img.data[i + 2] & 255;
|
|
5595
|
-
}
|
|
5596
5621
|
const BRAILLE_BASE$1 = 10240;
|
|
5597
5622
|
const BRAILLE_BITS$1 = [
|
|
5598
5623
|
[1, 8],
|
|
@@ -6194,7 +6219,7 @@ function createProgramRunner(source) {
|
|
|
6194
6219
|
const mediaCache = /* @__PURE__ */ new Map();
|
|
6195
6220
|
const genCache = /* @__PURE__ */ new Map();
|
|
6196
6221
|
const highlightCache = /* @__PURE__ */ new Map();
|
|
6197
|
-
const drawMediaEntry = (key, x, y) => {
|
|
6222
|
+
const drawMediaEntry = (key, x, y, w, h) => {
|
|
6198
6223
|
const entry = mediaCache.get(key);
|
|
6199
6224
|
if (!grid) return;
|
|
6200
6225
|
if (!entry || entry.pending) {
|
|
@@ -6217,7 +6242,7 @@ function createProgramRunner(source) {
|
|
|
6217
6242
|
}
|
|
6218
6243
|
frame = media.frames[fi];
|
|
6219
6244
|
}
|
|
6220
|
-
|
|
6245
|
+
drawImageFitted(grid, x | 0, y | 0, w | 0, h | 0, frame, { reserveBottom: CANVAS_CHAT_RESERVE });
|
|
6221
6246
|
};
|
|
6222
6247
|
const api = {
|
|
6223
6248
|
get w() {
|
|
@@ -6286,7 +6311,7 @@ function createProgramRunner(source) {
|
|
|
6286
6311
|
pending: false
|
|
6287
6312
|
}));
|
|
6288
6313
|
}
|
|
6289
|
-
drawMediaEntry(key, x, y);
|
|
6314
|
+
drawMediaEntry(key, x, y, w, h);
|
|
6290
6315
|
},
|
|
6291
6316
|
genimage: (prompt, x, y, w, h) => {
|
|
6292
6317
|
const gkey = `image|${prompt}`;
|
|
@@ -6600,16 +6625,18 @@ function createSpecScene(spec) {
|
|
|
6600
6625
|
const media = /* @__PURE__ */ new Map();
|
|
6601
6626
|
const mediaClock = /* @__PURE__ */ new Map();
|
|
6602
6627
|
const programs = /* @__PURE__ */ new Map();
|
|
6628
|
+
const decodeW = Math.max(48, Math.min(220, terminalColumns()));
|
|
6629
|
+
const decodeH = Math.max(24, Math.min(80, terminalRows()));
|
|
6603
6630
|
for (const [i, layer] of layers.entries()) {
|
|
6604
|
-
if (layer.type === "image" && typeof layer.path === "string") decodeImage(layer.path,
|
|
6605
|
-
if (layer.type === "video" && typeof layer.path === "string") decodeVideo(layer.path,
|
|
6606
|
-
if (layer.type === "file" && typeof layer.path === "string") decodeAnyFile(layer.path,
|
|
6631
|
+
if (layer.type === "image" && typeof layer.path === "string") decodeImage(layer.path, decodeW, decodeH).then((d) => media.set(i, d));
|
|
6632
|
+
if (layer.type === "video" && typeof layer.path === "string") decodeVideo(layer.path, decodeW, decodeH).then((d) => media.set(i, d));
|
|
6633
|
+
if (layer.type === "file" && typeof layer.path === "string") decodeAnyFile(layer.path, decodeW, decodeH).then((d) => media.set(i, d));
|
|
6607
6634
|
if ((layer.type === "genimage" || layer.type === "genvideo") && typeof layer.prompt === "string") generateMedia(layer.type === "genvideo" ? "video" : "image", layer.prompt).then((gen) => {
|
|
6608
6635
|
if (!gen) {
|
|
6609
6636
|
media.set(i, null);
|
|
6610
6637
|
return;
|
|
6611
6638
|
}
|
|
6612
|
-
decodeAnyFile(gen.path,
|
|
6639
|
+
decodeAnyFile(gen.path, decodeW, decodeH).then((d) => media.set(i, d));
|
|
6613
6640
|
});
|
|
6614
6641
|
if (layer.type === "program" && typeof layer.source === "string") programs.set(i, createProgramRunner(layer.source));
|
|
6615
6642
|
}
|
|
@@ -6659,7 +6686,7 @@ function createSpecScene(spec) {
|
|
|
6659
6686
|
}
|
|
6660
6687
|
frame = d.frames[fi];
|
|
6661
6688
|
}
|
|
6662
|
-
|
|
6689
|
+
drawImageFitted(grid, Number(layer.x ?? 0), Number(layer.y ?? 0), Number(layer.w ?? grid.w), Number(layer.h ?? grid.h), frame, { reserveBottom: CANVAS_CHAT_RESERVE });
|
|
6663
6690
|
} else drawText(grid, Number(layer.x ?? 0), Number(layer.y ?? 0), "· loading media ·", DIM$1, -2);
|
|
6664
6691
|
} else if (type === "program") programs.get(i)?.draw(grid, t);
|
|
6665
6692
|
else if (type === "effect") drawEffect(grid, String(layer.kind ?? "waves"), t, layer);
|
|
@@ -52,7 +52,7 @@ import "./systemd-fjt-WYE7.js";
|
|
|
52
52
|
import "./diagnostics-DPRvn_ky.js";
|
|
53
53
|
import "./daemon-runtime-jkMiwykI.js";
|
|
54
54
|
import "./ensure-local-gateway-B2qYYNsm.js";
|
|
55
|
-
import { t as runTui } from "./tui-
|
|
55
|
+
import { t as runTui } from "./tui-DzMl0uIy.js";
|
|
56
56
|
|
|
57
57
|
//#region src/cli/tui-cli.ts
|
|
58
58
|
function registerTuiCli(program) {
|
|
@@ -93,15 +93,15 @@ import "./service-CW9nUfWU.js";
|
|
|
93
93
|
import "./systemd-fjt-WYE7.js";
|
|
94
94
|
import "./diagnostics-DPRvn_ky.js";
|
|
95
95
|
import "./channels-status-issues-D92ZMiSY.js";
|
|
96
|
-
import { a as formatUpdateOneLiner, i as formatUpdateAvailableHint, r as ensureCompletionCacheExists, s as resolveUpdateAvailability, t as checkShellCompletionStatus } from "./doctor-completion-
|
|
97
|
-
import "./register.subclis-
|
|
96
|
+
import { a as formatUpdateOneLiner, i as formatUpdateAvailableHint, r as ensureCompletionCacheExists, s as resolveUpdateAvailability, t as checkShellCompletionStatus } from "./doctor-completion-SM2eK0Lp.js";
|
|
97
|
+
import "./register.subclis-CW4mB1LQ.js";
|
|
98
98
|
import { t as formatHelpExamples } from "./help-format-VHofKIT0.js";
|
|
99
99
|
import "./control-ui-assets-Dcc_8tht.js";
|
|
100
100
|
import "./daemon-runtime-jkMiwykI.js";
|
|
101
101
|
import "./systemd-linger-T7_vGBN4.js";
|
|
102
102
|
import "./auth-health-DfT6NGrM.js";
|
|
103
|
-
import { t as doctorCommand } from "./doctor-
|
|
104
|
-
import { r as installCompletion } from "./completion-cli-
|
|
103
|
+
import { t as doctorCommand } from "./doctor-0THm5b6P.js";
|
|
104
|
+
import { r as installCompletion } from "./completion-cli-BZOdUKC7.js";
|
|
105
105
|
import "./service-audit-B_swanYW.js";
|
|
106
106
|
import "./shared-CsJmoyjd.js";
|
|
107
107
|
import { r as runDaemonRestart } from "./daemon-cli-BY6L_O1X.js";
|