@chatcode/chatcode-cli 3.0.2-rc.3 → 3.0.2-rc.5
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/README.i18n.yaml +4 -4
- package/README.md +10 -0
- package/README.zh.md +10 -0
- package/lib/bin.js +11 -67
- package/lib/{command-errors-CIYn1nnW.js → command-errors-B-jCwfLt.js} +12 -12
- package/lib/{command-trees-8o99Bws7.js → command-trees-CdgUsoW4.js} +2 -2
- package/lib/{component-identity-CnmIKHEF.js → component-identity-ax93NpoH.js} +3 -3
- package/lib/{dump-config-BSTrhTT_.js → dump-config-CauO75nE.js} +1 -1
- package/lib/dump-config-CijLv_kn.js +2 -0
- package/lib/{dump-config-schema-Cz4A13GB.js → dump-config-schema-CObLWWaW.js} +2 -2
- package/lib/{extension-events-DciGPKJa.js → extension-events-DJTP1cCG.js} +20 -20
- package/lib/{home-migration-DLaSvmfn.js → home-migration-BjDmRwBB.js} +23 -4
- package/lib/{host-access-CmD27uhQ.js → host-access-D3lpiaUY.js} +1 -1
- package/lib/{keymap-CFChEJ2W.js → keymap-DAr6MX8m.js} +2 -2
- package/lib/{plugin-ChwScT9e.js → plugin-BGw2QmPK.js} +1357 -680
- package/lib/{plugin-DYHtreEd.js → plugin-Cn-hyYY8.js} +1 -1
- package/lib/{profile-boot-Blq7uqhx.js → profile-boot-SJGbpLgN.js} +13 -1
- package/lib/profile-boot.js +1 -1
- package/lib/{scenes-ai_8sHDs.js → scenes-BeuL5ow2.js} +3 -3
- package/lib/{settings-sections-QQ1-2lhL.js → settings-sections-dGk8gNU7.js} +3 -3
- package/lib/startup-diagnostics-C_hRCp-q.js +91 -0
- package/lib/{themes-DTzG_9I_.js → themes-O-UQAfC7.js} +12 -12
- package/lib/tui-compat-command-trees.js +1 -1
- package/lib/tui-compat-extensions.js +3 -3
- package/lib/tui-compat-plugin-host.js +5 -5
- package/lib/tui-compat-scenes.js +1 -1
- package/lib/tui-compat-settings-sections.js +1 -1
- package/lib/tui-compat-working-activity.js +1 -1
- package/lib/tui-compat-workspaces.js +1 -1
- package/lib/tui-compat.js +41 -9
- package/lib/{tuiDisplayPrefs-BCHRRcfe.js → tuiDisplayPrefs-DdU4O_sF.js} +44 -2
- package/lib/types/home-migration.d.ts +8 -0
- package/lib/types/startup-diagnostics.d.ts +13 -0
- package/lib/types/tui-compat.d.ts +2 -0
- package/lib/{workspaces-CznCgVHv.js → workspaces-CE18wA21.js} +2 -2
- package/package.json +29 -29
- package/runtime/manifest.json +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-account/lib/client.js +2 -2
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-settings-general/lib/client.js +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-client-ui-sidebar/lib/client.js +1 -1
- package/runtime/node_modules/@deepseek-ai/dsh-compaction-basic/lib/index.js +84 -8
- package/runtime/node_modules/@deepseek-ai/dsh-compaction-basic/lib/types/region.d.ts +9 -0
- package/runtime/node_modules/@deepseek-ai/dsh-compaction-basic/lib/types/summarizer.d.ts +7 -0
- package/runtime/node_modules/@deepseek-ai/dsh-session-log-export/lib/client.js +3 -4
- package/runtime/node_modules/@deepseek-ai/dsh-session-log-export/lib/types/client/HeaderAction.d.ts +1 -1
- package/lib/dump-config-DBW7YLx-.js +0 -2
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import { r as INSTALL_ANCHOR, t as CHATCODE_PROFILE_TEMPLATES } from "./profile-boot-
|
|
1
|
+
import { r as INSTALL_ANCHOR, t as CHATCODE_PROFILE_TEMPLATES } from "./profile-boot-SJGbpLgN.js";
|
|
2
2
|
import { existsSync } from "node:fs";
|
|
3
3
|
import { DEFAULT_PROFILE_BUNDLES, initProfile, readProfileCompatibility, resolveProfileDir } from "@deepseek-ai/dsh-app-boot";
|
|
4
4
|
import { join } from "node:path";
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
import { i as synchronizeLegacyHomeEnvironment, r as resolveChatCodeCliHome } from "./chatcode-home-B93iESZd.js";
|
|
2
|
+
import { n as startStartupPhase, r as traceStartupPlugins } from "./startup-diagnostics-C_hRCp-q.js";
|
|
2
3
|
import { createRequire } from "node:module";
|
|
3
4
|
import { existsSync, mkdirSync, readFileSync, rmSync, writeFileSync } from "node:fs";
|
|
4
5
|
import { fileURLToPath } from "node:url";
|
|
@@ -478,9 +479,11 @@ async function composeProfile(name, patchFiles, fromDefaultProfile, resolvedProf
|
|
|
478
479
|
*/
|
|
479
480
|
async function runProfile(options) {
|
|
480
481
|
synchronizeLegacyHomeEnvironment();
|
|
482
|
+
const finishProxy = startStartupPhase("proxy-setup");
|
|
481
483
|
const disposeProxy = await installProxyFromEnvironment(options.environment, (message) => {
|
|
482
484
|
process.stderr.write(`${NAME}: ${message}\n`);
|
|
483
485
|
});
|
|
486
|
+
finishProxy();
|
|
484
487
|
const app = {};
|
|
485
488
|
let disposal;
|
|
486
489
|
const dispose = () => disposal ??= (async () => {
|
|
@@ -494,7 +497,9 @@ async function runProfile(options) {
|
|
|
494
497
|
if (failures.length > 1) throw new AggregateError(failures, "dsh: profile cleanup failed");
|
|
495
498
|
})();
|
|
496
499
|
try {
|
|
500
|
+
const finishComposition = startStartupPhase("profile-composition");
|
|
497
501
|
const composed = await composeProfile(options.profile, options.patchFiles, options.fromDefaultProfile, options.resolvedProfile);
|
|
502
|
+
finishComposition();
|
|
498
503
|
const appReady = createAppReady();
|
|
499
504
|
const shutdown = createProcessShutdown(dispose);
|
|
500
505
|
const signalShutdown = new AbortController();
|
|
@@ -525,7 +530,11 @@ async function runProfile(options) {
|
|
|
525
530
|
trustedVersionExemptions: CHATCODE_TRUSTED_VERSION_EXEMPTIONS,
|
|
526
531
|
telemetryDisabledEnv: process.env.DSH_TELEMETRY_DISABLED
|
|
527
532
|
};
|
|
528
|
-
const
|
|
533
|
+
const patches = resolveChatCodePackageAliases(readProfilePatches(NAME, profileContext, composed.profile));
|
|
534
|
+
const finishActivation = startStartupPhase("plugin-activation");
|
|
535
|
+
let stopPluginTrace;
|
|
536
|
+
const ctx = await boot(NAME, rootConfig, patches, async (hostCtx) => {
|
|
537
|
+
stopPluginTrace = traceStartupPlugins(hostCtx);
|
|
529
538
|
app.current = hostCtx;
|
|
530
539
|
installProfileInvocationAccessor(hostCtx);
|
|
531
540
|
hostCtx.provide("profileContext", profileContext);
|
|
@@ -536,7 +545,10 @@ async function runProfile(options) {
|
|
|
536
545
|
exit: (code) => void shutdown.shutdown(code),
|
|
537
546
|
ready: appReady.service
|
|
538
547
|
});
|
|
548
|
+
}).finally(() => {
|
|
549
|
+
stopPluginTrace?.();
|
|
539
550
|
});
|
|
551
|
+
finishActivation();
|
|
540
552
|
app.current = ctx;
|
|
541
553
|
if (!signalShutdown.signal.aborted && ctx.fiber.state === 2 && ctx.get("loader") !== void 0) appReady.commit();
|
|
542
554
|
return {
|
package/lib/profile-boot.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as chatCodeProfilePatchFiles, c as initializeProfileFromDefault, d as preferEmbeddedRuntimeResolution, f as prepareProfile, h as runProfile, i as PROFILE_ROOT_FILENAME, l as installProfileInvocationAccessor, m as restoreTrustedTuiLayer, n as CHATCODE_TRUSTED_VERSION_EXEMPTIONS, o as embeddedRuntimePackageDir, p as resolveChatCodePackageAliases, r as INSTALL_ANCHOR, s as homePatchPath, t as CHATCODE_PROFILE_TEMPLATES, u as preferEmbeddedProfileLayers } from "./profile-boot-
|
|
1
|
+
import { a as chatCodeProfilePatchFiles, c as initializeProfileFromDefault, d as preferEmbeddedRuntimeResolution, f as prepareProfile, h as runProfile, i as PROFILE_ROOT_FILENAME, l as installProfileInvocationAccessor, m as restoreTrustedTuiLayer, n as CHATCODE_TRUSTED_VERSION_EXEMPTIONS, o as embeddedRuntimePackageDir, p as resolveChatCodePackageAliases, r as INSTALL_ANCHOR, s as homePatchPath, t as CHATCODE_PROFILE_TEMPLATES, u as preferEmbeddedProfileLayers } from "./profile-boot-SJGbpLgN.js";
|
|
2
2
|
export { CHATCODE_PROFILE_TEMPLATES, CHATCODE_TRUSTED_VERSION_EXEMPTIONS, INSTALL_ANCHOR, PROFILE_ROOT_FILENAME, chatCodeProfilePatchFiles, embeddedRuntimePackageDir, homePatchPath, initializeProfileFromDefault, installProfileInvocationAccessor, preferEmbeddedProfileLayers, preferEmbeddedRuntimeResolution, prepareProfile, resolveChatCodePackageAliases, restoreTrustedTuiLayer, runProfile };
|
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-
|
|
2
|
-
import { n as componentIdentityOf } from "./component-identity-
|
|
1
|
+
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-D3lpiaUY.js";
|
|
2
|
+
import { n as componentIdentityOf } from "./component-identity-ax93NpoH.js";
|
|
3
3
|
import { Service } from "@deepseek-ai/cordis";
|
|
4
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
4
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/scenes.js
|
|
5
5
|
/** Provider-neutral full-screen scene registry for terminal front doors. */
|
|
6
6
|
const name = "dsh-tui-scenes";
|
|
7
7
|
/**
|
|
@@ -1,6 +1,6 @@
|
|
|
1
|
-
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-
|
|
1
|
+
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-D3lpiaUY.js";
|
|
2
2
|
import { Service } from "@deepseek-ai/cordis";
|
|
3
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
3
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/credentialRefGuard.js
|
|
4
4
|
/**
|
|
5
5
|
* Credential-ref reservation guard for the plugin settings-section seam.
|
|
6
6
|
*
|
|
@@ -49,7 +49,7 @@ function vetSectionSecretRefs(section) {
|
|
|
49
49
|
};
|
|
50
50
|
}
|
|
51
51
|
//#endregion
|
|
52
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
52
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/settings-sections.js
|
|
53
53
|
/**
|
|
54
54
|
* Plugin settings-section extension seam for terminal front doors.
|
|
55
55
|
*
|
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
import { join } from "node:path";
|
|
2
|
+
import { randomUUID } from "node:crypto";
|
|
3
|
+
import { mkdir, writeFile } from "node:fs/promises";
|
|
4
|
+
import { inspect } from "node:util";
|
|
5
|
+
//#region lib/types/startup-diagnostics.js
|
|
6
|
+
/** Save original startup diagnostics while keeping the terminal report concise. */
|
|
7
|
+
/**
|
|
8
|
+
* Trace one startup phase to stderr when CHATCODE_CLI_STARTUP_TRACE=1.
|
|
9
|
+
* @param phase - launcher-owned label; exclude paths, arguments and configuration values.
|
|
10
|
+
* @returns a callback recording the elapsed milliseconds when the phase completes.
|
|
11
|
+
*/
|
|
12
|
+
function startStartupPhase(phase) {
|
|
13
|
+
if (process.env.CHATCODE_CLI_STARTUP_TRACE !== "1") return () => {};
|
|
14
|
+
const started = performance.now();
|
|
15
|
+
process.stderr.write(`[cco-startup] ${phase}: begin\n`);
|
|
16
|
+
return () => {
|
|
17
|
+
process.stderr.write(`[cco-startup] ${phase}: ${(performance.now() - started).toFixed(1)} ms\n`);
|
|
18
|
+
};
|
|
19
|
+
}
|
|
20
|
+
/**
|
|
21
|
+
* Trace plugin activation until the launcher's initial boot settles.
|
|
22
|
+
* @param ctx - the root context before profile entries mount.
|
|
23
|
+
* @returns the listener disposer; call before handing control to the interactive surface.
|
|
24
|
+
*/
|
|
25
|
+
function traceStartupPlugins(ctx) {
|
|
26
|
+
if (process.env.CHATCODE_CLI_STARTUP_TRACE !== "1") return () => {};
|
|
27
|
+
const pending = /* @__PURE__ */ new Map();
|
|
28
|
+
return ctx.on("internal/status", (fiber) => {
|
|
29
|
+
if (fiber.state === 1) pending.set(fiber, startStartupPhase(`plugin/${fiber.name}`));
|
|
30
|
+
else {
|
|
31
|
+
pending.get(fiber)?.();
|
|
32
|
+
pending.delete(fiber);
|
|
33
|
+
}
|
|
34
|
+
}, { global: true });
|
|
35
|
+
}
|
|
36
|
+
/** Wait for stderr to finish the write before the failed process exits. */
|
|
37
|
+
function writeStderr(text) {
|
|
38
|
+
return new Promise((resolve, reject) => {
|
|
39
|
+
process.stderr.write(text, (error) => {
|
|
40
|
+
if (error) reject(error);
|
|
41
|
+
else resolve();
|
|
42
|
+
});
|
|
43
|
+
});
|
|
44
|
+
}
|
|
45
|
+
/**
|
|
46
|
+
* Print the startup summary and save a private, uniquely named report under DSH_HOME/logs.
|
|
47
|
+
* Failed writes print the complete report to stderr instead of claiming a saved path.
|
|
48
|
+
* @param error - startup audit failure retaining plugin metadata and original errors.
|
|
49
|
+
* @param context - resolved Harness home, application version, and selected profile.
|
|
50
|
+
* @param write - terminal output sink; awaited before returning, defaults to stderr.
|
|
51
|
+
* @returns after saving or printing the report and completing terminal writes.
|
|
52
|
+
*/
|
|
53
|
+
async function reportStartupFailure(error, context, write = writeStderr) {
|
|
54
|
+
const now = (/* @__PURE__ */ new Date()).toISOString();
|
|
55
|
+
const report = "WARNING: Raw diagnostics may contain configuration or credential values from plugin errors. Review before sharing.\n\n" + inspect({
|
|
56
|
+
timestamp: now,
|
|
57
|
+
dshVersion: context.version,
|
|
58
|
+
nodeVersion: process.version,
|
|
59
|
+
platform: process.platform,
|
|
60
|
+
arch: process.arch,
|
|
61
|
+
profile: context.profile,
|
|
62
|
+
error
|
|
63
|
+
}, {
|
|
64
|
+
depth: null,
|
|
65
|
+
maxArrayLength: null,
|
|
66
|
+
maxStringLength: null,
|
|
67
|
+
showHidden: true,
|
|
68
|
+
customInspect: false,
|
|
69
|
+
getters: false,
|
|
70
|
+
colors: false
|
|
71
|
+
}) + "\n";
|
|
72
|
+
await write(`${error.message}\n`);
|
|
73
|
+
const logDir = join(context.home, "logs");
|
|
74
|
+
const logPath = join(logDir, `startup-${now.replaceAll(":", "-")}-${randomUUID()}.log`);
|
|
75
|
+
try {
|
|
76
|
+
await mkdir(logDir, {
|
|
77
|
+
recursive: true,
|
|
78
|
+
mode: 448
|
|
79
|
+
});
|
|
80
|
+
await writeFile(logPath, report, {
|
|
81
|
+
flag: "wx",
|
|
82
|
+
mode: 384
|
|
83
|
+
});
|
|
84
|
+
} catch (writeError) {
|
|
85
|
+
await write(`\ndsh: warning: could not write startup diagnostics: ${String(writeError)}\nFull diagnostics:\n${report}`);
|
|
86
|
+
return;
|
|
87
|
+
}
|
|
88
|
+
await write(`\nFull diagnostics: ${logPath}\n`);
|
|
89
|
+
}
|
|
90
|
+
//#endregion
|
|
91
|
+
export { startStartupPhase as n, traceStartupPlugins as r, reportStartupFailure as t };
|
|
@@ -1,12 +1,12 @@
|
|
|
1
|
-
import { c as parseCombo, i as comboMatchesStrict, r as canonicalCombo, s as fixedReservedCombos, u as reservedActionCombos } from "./keymap-
|
|
2
|
-
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, r as assertCallerContext, s as requirePluginCaller, t as activationContext } from "./host-access-
|
|
3
|
-
import { n as componentIdentityOf } from "./component-identity-
|
|
4
|
-
import { S as DATA_DIR, f as cleanRenderText, p as cleanScalarText } from "./extension-events-
|
|
1
|
+
import { c as parseCombo, i as comboMatchesStrict, r as canonicalCombo, s as fixedReservedCombos, u as reservedActionCombos } from "./keymap-DAr6MX8m.js";
|
|
2
|
+
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, r as assertCallerContext, s as requirePluginCaller, t as activationContext } from "./host-access-D3lpiaUY.js";
|
|
3
|
+
import { n as componentIdentityOf } from "./component-identity-ax93NpoH.js";
|
|
4
|
+
import { S as DATA_DIR, f as cleanRenderText, p as cleanScalarText } from "./extension-events-DJTP1cCG.js";
|
|
5
5
|
import { readFileSync, readdirSync } from "node:fs";
|
|
6
6
|
import { join } from "node:path";
|
|
7
7
|
import { KNOWN_SESSION_EVENT_TYPES } from "@deepseek-ai/dsh-session";
|
|
8
8
|
import { Context, Service } from "@deepseek-ai/cordis";
|
|
9
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
9
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/dialogs.js
|
|
10
10
|
/**
|
|
11
11
|
* Managed plugin dialogs — the pi `ctx.ui.select/confirm/input` seam for
|
|
12
12
|
* ChatCode CLI TUI. Plugins hand the HOST a declarative request; the TUI renders the
|
|
@@ -279,7 +279,7 @@ function getHostDialogStore(runtime) {
|
|
|
279
279
|
}
|
|
280
280
|
}
|
|
281
281
|
//#endregion
|
|
282
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
282
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/status.js
|
|
283
283
|
/**
|
|
284
284
|
* Keyed status-line contributions — pi's `ctx.ui.setStatus(key, text)`.
|
|
285
285
|
* Each plugin owns a key; setting text shows it, setting undefined clears
|
|
@@ -503,7 +503,7 @@ function getHostStatusStore(runtime) {
|
|
|
503
503
|
}
|
|
504
504
|
}
|
|
505
505
|
//#endregion
|
|
506
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
506
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/shortcuts.js
|
|
507
507
|
/**
|
|
508
508
|
* Plugin keyboard shortcuts — pi's `pi.registerShortcut`. A plugin binds a
|
|
509
509
|
* combo (`ctrl+shift+p`, `alt+k`, …) to a handler; the chat screen matches
|
|
@@ -704,7 +704,7 @@ function getHostShortcuts(runtime) {
|
|
|
704
704
|
}
|
|
705
705
|
}
|
|
706
706
|
//#endregion
|
|
707
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
707
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/renderers.js
|
|
708
708
|
/**
|
|
709
709
|
* Custom session-entry renderers — pi's `pi.registerMessageRenderer`. A
|
|
710
710
|
* plugin that appends its own log-only session events (`session.append(
|
|
@@ -876,7 +876,7 @@ function getHostRenderers(runtime) {
|
|
|
876
876
|
}
|
|
877
877
|
}
|
|
878
878
|
//#endregion
|
|
879
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
879
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/toast.js
|
|
880
880
|
/**
|
|
881
881
|
* Plugin-facing transient notifications — a fire-and-forget toast shown on
|
|
882
882
|
* the host's existing notification surface (the same toasts the channel
|
|
@@ -1011,7 +1011,7 @@ function getHostToastStore(runtime) {
|
|
|
1011
1011
|
}
|
|
1012
1012
|
}
|
|
1013
1013
|
//#endregion
|
|
1014
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1014
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/theme.js
|
|
1015
1015
|
/**
|
|
1016
1016
|
* dsh-tui color themes — ChatCode CLI terminal family.
|
|
1017
1017
|
*
|
|
@@ -1486,7 +1486,7 @@ function getActiveTheme() {
|
|
|
1486
1486
|
return getTheme(activeThemeName);
|
|
1487
1487
|
}
|
|
1488
1488
|
//#endregion
|
|
1489
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1489
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/customTheme.js
|
|
1490
1490
|
/**
|
|
1491
1491
|
* User-defined color themes for dsh-tui.
|
|
1492
1492
|
*
|
|
@@ -1716,7 +1716,7 @@ function indexCustomThemeNames() {
|
|
|
1716
1716
|
nameIndexed = true;
|
|
1717
1717
|
}
|
|
1718
1718
|
//#endregion
|
|
1719
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1719
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/themes.js
|
|
1720
1720
|
/**
|
|
1721
1721
|
* Cordis-backed runtime theme contributions.
|
|
1722
1722
|
*
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { r as name, t as TuiCommandTreeRuntime } from "./command-trees-
|
|
1
|
+
import { r as name, t as TuiCommandTreeRuntime } from "./command-trees-CdgUsoW4.js";
|
|
2
2
|
export { TuiCommandTreeRuntime, TuiCommandTreeRuntime as default, name };
|
|
@@ -1,9 +1,9 @@
|
|
|
1
|
-
import { a as normalizeCancelDecision, c as installDecisionGuard, n as DECISION_TOTAL_TIMEOUT_MS, o as DECISION_EVENT_PERMISSIONS, t as DECISION_HANDLER_TIMEOUT_MS, x as readGrantStore } from "./extension-events-
|
|
2
|
-
import { A as TuiDialogRuntime, C as matchShortcut, D as getHostStatusStore, E as TuiStatusStore, O as DIALOG_DEFAULT_TIMEOUT_MS, T as TuiStatusRuntime, _ as TuiToastRuntime, j as TuiDialogStore, k as INPUT_CELLS, t as TuiThemeRuntime, w as parseShortcutCombo, x as TuiShortcutRuntime, y as TuiRendererRuntime } from "./themes-
|
|
1
|
+
import { a as normalizeCancelDecision, c as installDecisionGuard, n as DECISION_TOTAL_TIMEOUT_MS, o as DECISION_EVENT_PERMISSIONS, t as DECISION_HANDLER_TIMEOUT_MS, x as readGrantStore } from "./extension-events-DJTP1cCG.js";
|
|
2
|
+
import { A as TuiDialogRuntime, C as matchShortcut, D as getHostStatusStore, E as TuiStatusStore, O as DIALOG_DEFAULT_TIMEOUT_MS, T as TuiStatusRuntime, _ as TuiToastRuntime, j as TuiDialogStore, k as INPUT_CELLS, t as TuiThemeRuntime, w as parseShortcutCombo, x as TuiShortcutRuntime, y as TuiRendererRuntime } from "./themes-O-UQAfC7.js";
|
|
3
3
|
import { appendFileSync, mkdirSync } from "node:fs";
|
|
4
4
|
import { homedir } from "node:os";
|
|
5
5
|
import { dirname, join } from "node:path";
|
|
6
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
6
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/extensions.js
|
|
7
7
|
/**
|
|
8
8
|
* The dsh-tui-extensions row: mounts every plugin-facing UI seam service in
|
|
9
9
|
* one cordis plugin (one profile row, one patch-surface entry — see issue
|
|
@@ -1,10 +1,10 @@
|
|
|
1
|
-
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, r as assertCallerContext, t as activationContext } from "./host-access-
|
|
2
|
-
import { c as requiresDecisionEvents, o as requireComponentIdentity, r as declaresCommand, s as requiresContract, t as bindComponentIdentity } from "./component-identity-
|
|
3
|
-
import { B as createAdmissionCatalog, F as verifyRegistry, I as DECISION_EVENTS_COORDINATE, J as parseManifest, L as TUI_DECISION_EVENT_NAMES, M as loadSpecData, P as verifyContractProfiles, R as TUI_EXTENSION_API_VERSION, Y as projectManifest, c as installDecisionGuard, l as registerDecisionHandler, n as DECISION_TOTAL_TIMEOUT_MS, o as DECISION_EVENT_PERMISSIONS, s as decisionHandlerMetadataOf, t as DECISION_HANDLER_TIMEOUT_MS, u as withDecisionRegistration, x as readGrantStore, z as TUI_EXTENSION_PERMISSION_NAMES } from "./extension-events-
|
|
4
|
-
import { A as validatePlugin, C as TuiPluginStorageRuntime, D as buildHostDescriptor, E as HOST_SUPPORTED_CONTRACTS, O as negotiate, S as STORAGE_MAX_KEYS, T as TuiEffectLedgerRuntime, b as STORAGE_KEY_MAX_LENGTH, c as OBSERVE_CALLBACK_QUEUE_LIMIT, d as OBSERVE_ID_MAX_CHARS, f as OBSERVE_IMAGE_BASE64_MAX_CHARS, g as TuiMessageObserverRuntime, h as OBSERVE_SUMMARY_CELLS, i as withCommandErrorMapping, k as createContractIndex, l as OBSERVE_CALLBACK_TIMEOUT_MS, m as OBSERVE_SCOPE_MAX_CHARS, n as hasCommandErrorCode, o as stampCommandOwner, p as OBSERVE_IMAGE_MAX_BYTES, r as mapCommandError, s as unstampCommandOwner, t as COMMAND_ERROR_CODES, u as OBSERVE_CONTENT_MAX_CHARS, x as STORAGE_MAX_BYTES, y as PluginStorageError } from "./command-errors-
|
|
1
|
+
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, r as assertCallerContext, t as activationContext } from "./host-access-D3lpiaUY.js";
|
|
2
|
+
import { c as requiresDecisionEvents, o as requireComponentIdentity, r as declaresCommand, s as requiresContract, t as bindComponentIdentity } from "./component-identity-ax93NpoH.js";
|
|
3
|
+
import { B as createAdmissionCatalog, F as verifyRegistry, I as DECISION_EVENTS_COORDINATE, J as parseManifest, L as TUI_DECISION_EVENT_NAMES, M as loadSpecData, P as verifyContractProfiles, R as TUI_EXTENSION_API_VERSION, Y as projectManifest, c as installDecisionGuard, l as registerDecisionHandler, n as DECISION_TOTAL_TIMEOUT_MS, o as DECISION_EVENT_PERMISSIONS, s as decisionHandlerMetadataOf, t as DECISION_HANDLER_TIMEOUT_MS, u as withDecisionRegistration, x as readGrantStore, z as TUI_EXTENSION_PERMISSION_NAMES } from "./extension-events-DJTP1cCG.js";
|
|
4
|
+
import { A as validatePlugin, C as TuiPluginStorageRuntime, D as buildHostDescriptor, E as HOST_SUPPORTED_CONTRACTS, O as negotiate, S as STORAGE_MAX_KEYS, T as TuiEffectLedgerRuntime, b as STORAGE_KEY_MAX_LENGTH, c as OBSERVE_CALLBACK_QUEUE_LIMIT, d as OBSERVE_ID_MAX_CHARS, f as OBSERVE_IMAGE_BASE64_MAX_CHARS, g as TuiMessageObserverRuntime, h as OBSERVE_SUMMARY_CELLS, i as withCommandErrorMapping, k as createContractIndex, l as OBSERVE_CALLBACK_TIMEOUT_MS, m as OBSERVE_SCOPE_MAX_CHARS, n as hasCommandErrorCode, o as stampCommandOwner, p as OBSERVE_IMAGE_MAX_BYTES, r as mapCommandError, s as unstampCommandOwner, t as COMMAND_ERROR_CODES, u as OBSERVE_CONTENT_MAX_CHARS, x as STORAGE_MAX_BYTES, y as PluginStorageError } from "./command-errors-B-jCwfLt.js";
|
|
5
5
|
import { randomUUID } from "node:crypto";
|
|
6
6
|
import { Context, Service } from "@deepseek-ai/cordis";
|
|
7
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
7
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/plugin-host.js
|
|
8
8
|
/**
|
|
9
9
|
* The dsh-tui-plugin-host row: the plugin-interop anchor every later
|
|
10
10
|
* contract surface hangs off (storage.local, messages.observe, effect
|
package/lib/tui-compat-scenes.js
CHANGED
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { r as name, t as TuiSceneRuntime } from "./scenes-
|
|
1
|
+
import { r as name, t as TuiSceneRuntime } from "./scenes-BeuL5ow2.js";
|
|
2
2
|
export { TuiSceneRuntime, TuiSceneRuntime as default, name };
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { i as name, t as TuiSettingsSectionsRuntime } from "./settings-sections-
|
|
1
|
+
import { i as name, t as TuiSettingsSectionsRuntime } from "./settings-sections-dGk8gNU7.js";
|
|
2
2
|
export { TuiSettingsSectionsRuntime, TuiSettingsSectionsRuntime as default, name };
|
|
@@ -235,7 +235,7 @@ function apply$1(ctx, config = {}) {
|
|
|
235
235
|
}, "working-activity tick timer");
|
|
236
236
|
}
|
|
237
237
|
//#endregion
|
|
238
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
238
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/working-activity.js
|
|
239
239
|
/**
|
|
240
240
|
* Re-export of the `dsh-working-activity` plugin under this package's own
|
|
241
241
|
* name, so the bundle patch layer can mount the working-activity row as
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import { a as localWorkspaceUri, n as WORKSPACE_PROVIDER_TIMEOUT_MS, o as name, r as createLocalWorkspaceRuntime, s as parseLocalWorkspaceReference, t as TuiWorkspaceRuntime } from "./workspaces-
|
|
1
|
+
import { a as localWorkspaceUri, n as WORKSPACE_PROVIDER_TIMEOUT_MS, o as name, r as createLocalWorkspaceRuntime, s as parseLocalWorkspaceReference, t as TuiWorkspaceRuntime } from "./workspaces-CE18wA21.js";
|
|
2
2
|
export { TuiWorkspaceRuntime, TuiWorkspaceRuntime as default, WORKSPACE_PROVIDER_TIMEOUT_MS, createLocalWorkspaceRuntime, localWorkspaceUri, name, parseLocalWorkspaceReference };
|
package/lib/tui-compat.js
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
import { n as DEFAULT_STATUS_BAR, s as normalizePageMargin } from "./tuiDisplayPrefs-
|
|
2
|
-
import { t as SHORTCUT_ACTIONS } from "./keymap-
|
|
1
|
+
import { _ as withLiveSettings, h as liveConfigValues, n as DEFAULT_STATUS_BAR, s as normalizePageMargin } from "./tuiDisplayPrefs-DdU4O_sF.js";
|
|
2
|
+
import { t as SHORTCUT_ACTIONS } from "./keymap-DAr6MX8m.js";
|
|
3
3
|
import z from "@deepseek-ai/schemastery";
|
|
4
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
4
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/force-production-react.js
|
|
5
5
|
/**
|
|
6
6
|
* React-reconciler selects its dev/production build at require time from
|
|
7
7
|
* NODE_ENV; the dev build records one performance.measure() per render into
|
|
@@ -14,10 +14,18 @@ import z from "@deepseek-ai/schemastery";
|
|
|
14
14
|
*/
|
|
15
15
|
process.env.NODE_ENV ??= "production";
|
|
16
16
|
//#endregion
|
|
17
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
17
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/index.js
|
|
18
|
+
/**
|
|
19
|
+
* dsh-tui plugin entry. The TUI implementation lives in `./plugin.tsx` (its
|
|
20
|
+
* render path is JSX); this module owns the plugin surface (`name`/`inject`/
|
|
21
|
+
* `Config`/`apply`) at the canonical `src/index.ts` location and delegates
|
|
22
|
+
* `apply` through a dynamic import so entry-scanning tooling and the Loader
|
|
23
|
+
* resolve a plain `.ts` module.
|
|
24
|
+
* @module @chatcode/cco-tui
|
|
25
|
+
*/
|
|
18
26
|
const name = "dsh-tui";
|
|
19
|
-
const inject = ["agents"];
|
|
20
|
-
const Config = z.object({
|
|
27
|
+
const inject$1 = ["agents"];
|
|
28
|
+
const Config = withLiveSettings(z.object({
|
|
21
29
|
sessionId: z.string().required(false),
|
|
22
30
|
provider: z.string().required(false),
|
|
23
31
|
model: z.string().required(false),
|
|
@@ -51,6 +59,9 @@ const Config = z.object({
|
|
|
51
59
|
promptSessionLabel: z.boolean().default(false),
|
|
52
60
|
expandEditor: z.boolean().default(true),
|
|
53
61
|
smoothStreaming: z.boolean().default(true),
|
|
62
|
+
whale: z.boolean().default(true),
|
|
63
|
+
minimal: z.boolean().default(false),
|
|
64
|
+
recapOnOpen: z.boolean().default(true),
|
|
54
65
|
statusBar: z.object({
|
|
55
66
|
compact: z.boolean().default(DEFAULT_STATUS_BAR.compact),
|
|
56
67
|
tokenDashboard: z.boolean().default(DEFAULT_STATUS_BAR.tokenDashboard),
|
|
@@ -83,7 +94,24 @@ const Config = z.object({
|
|
|
83
94
|
]).required(false),
|
|
84
95
|
approval: z.union(["ask", "never"]).required(false)
|
|
85
96
|
})).required(false)
|
|
86
|
-
})
|
|
97
|
+
}), [
|
|
98
|
+
"fullscreen",
|
|
99
|
+
"lang",
|
|
100
|
+
"diffLayout",
|
|
101
|
+
"thinkingFold",
|
|
102
|
+
"toolBackground",
|
|
103
|
+
"scrollGutter",
|
|
104
|
+
"pageMargin",
|
|
105
|
+
"foldTerminalCommand",
|
|
106
|
+
"promptSessionLabel",
|
|
107
|
+
"expandEditor",
|
|
108
|
+
"smoothStreaming",
|
|
109
|
+
"statusBar",
|
|
110
|
+
"shortcuts",
|
|
111
|
+
"whale",
|
|
112
|
+
"minimal",
|
|
113
|
+
"recapOnOpen"
|
|
114
|
+
]);
|
|
87
115
|
/**
|
|
88
116
|
* Start the interactive TUI front door, delegating to the JSX implementation
|
|
89
117
|
* in `./plugin.tsx` (see its module doc for the full contract).
|
|
@@ -92,8 +120,12 @@ const Config = z.object({
|
|
|
92
120
|
* @returns a promise settling when the TUI teardown completes.
|
|
93
121
|
*/
|
|
94
122
|
async function apply(ctx, config) {
|
|
95
|
-
const { apply: ccTuiApply } = await import("./plugin-
|
|
96
|
-
return ccTuiApply(ctx, config);
|
|
123
|
+
const { apply: ccTuiApply } = await import("./plugin-BGw2QmPK.js");
|
|
124
|
+
return ccTuiApply(ctx, liveConfigValues(config));
|
|
97
125
|
}
|
|
98
126
|
//#endregion
|
|
127
|
+
//#region lib/types/tui-compat.js
|
|
128
|
+
/** Wait for the shared model default before the TUI creates its first session. */
|
|
129
|
+
const inject = [...inject$1, "agentDefaultModel"];
|
|
130
|
+
//#endregion
|
|
99
131
|
export { Config, apply, inject, name };
|
|
@@ -1,4 +1,46 @@
|
|
|
1
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
1
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/settingsCompat.js
|
|
2
|
+
/** Mark display fields editable on hosts that support volatile Config references. */
|
|
3
|
+
function withLiveSettings(schema, fields) {
|
|
4
|
+
for (const key of fields) {
|
|
5
|
+
const field = schema.dict?.[String(key)];
|
|
6
|
+
if (field?.volatile) schema.dict[String(key)] = field.volatile();
|
|
7
|
+
}
|
|
8
|
+
return schema;
|
|
9
|
+
}
|
|
10
|
+
/** Keep plain Config consumers reading the latest snapshots without exposing references. */
|
|
11
|
+
function liveConfigValues(config) {
|
|
12
|
+
return new Proxy(config, { get(target, key, receiver) {
|
|
13
|
+
const value = Reflect.get(target, key, receiver);
|
|
14
|
+
if (value && typeof value === "object" && Symbol.for("cosmokit.volatile.write") in value && "get" in value && typeof value.get === "function") return value.get();
|
|
15
|
+
return value;
|
|
16
|
+
} });
|
|
17
|
+
}
|
|
18
|
+
/** Observe display settings without remounting the TUI or creating another session. */
|
|
19
|
+
function displaySettingsScope(owner, settingsCtx, ns, schema, config) {
|
|
20
|
+
const settings = settingsCtx.settings;
|
|
21
|
+
if (typeof settings.register === "function") {
|
|
22
|
+
const scope = settings.register(ns, schema);
|
|
23
|
+
return {
|
|
24
|
+
get: () => scope.get(),
|
|
25
|
+
watch: (listener) => scope.watch(listener),
|
|
26
|
+
legacy: true
|
|
27
|
+
};
|
|
28
|
+
}
|
|
29
|
+
const get = () => Object.fromEntries(Object.keys(schema.dict ?? {}).map((key) => [key, Reflect.get(config, key)]));
|
|
30
|
+
const events = owner;
|
|
31
|
+
return {
|
|
32
|
+
get,
|
|
33
|
+
watch: (listener) => events.on("loader/volatile-update", () => listener(get())),
|
|
34
|
+
legacy: false
|
|
35
|
+
};
|
|
36
|
+
}
|
|
37
|
+
/** Read effective values on new hosts; retain support for older descriptor implementations. */
|
|
38
|
+
function settingsValue(settings, ns) {
|
|
39
|
+
const descriptor = settings.describe().find((row) => row.ns === ns);
|
|
40
|
+
return descriptor && "value" in descriptor ? descriptor.value : settings.get?.(ns);
|
|
41
|
+
}
|
|
42
|
+
//#endregion
|
|
43
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/tuiDisplayPrefs.js
|
|
2
44
|
/** Default footer is intentionally quiet: only the Yuanjing token dashboard. */
|
|
3
45
|
const DEFAULT_STATUS_BAR = Object.freeze({
|
|
4
46
|
compact: true,
|
|
@@ -159,4 +201,4 @@ function applyPageMargin(setting) {
|
|
|
159
201
|
return next;
|
|
160
202
|
}
|
|
161
203
|
//#endregion
|
|
162
|
-
export { getPageMarginSetting as a, normalizeScrollGutter as c, parsePageMarginSpec as d, resolvePageMargin as f, formatContextUsage as i, normalizeStatusBar as l, DEFAULT_STATUS_BAR as n, isPageMarginMode as o, subscribePageMargin as p, applyPageMargin as r, normalizePageMargin as s, DEFAULT_PAGE_MARGIN as t, normalizeToolBackground as u };
|
|
204
|
+
export { withLiveSettings as _, getPageMarginSetting as a, normalizeScrollGutter as c, parsePageMarginSpec as d, resolvePageMargin as f, settingsValue as g, liveConfigValues as h, formatContextUsage as i, normalizeStatusBar as l, displaySettingsScope as m, DEFAULT_STATUS_BAR as n, isPageMarginMode as o, subscribePageMargin as p, applyPageMargin as r, normalizePageMargin as s, DEFAULT_PAGE_MARGIN as t, normalizeToolBackground as u };
|
|
@@ -49,6 +49,14 @@ export declare function isTransientMigrationPath(relativePath: string, kind: Hom
|
|
|
49
49
|
export declare function resolveHomeMigrationRoots(env?: Record<string, string | undefined>): HomeMigrationRoots;
|
|
50
50
|
/** Find legacy trees with durable entries that are still absent from the canonical home. */
|
|
51
51
|
export declare function detectPendingHomeMigrations(roots: HomeMigrationRoots): Promise<HomeMigrationPlan[]>;
|
|
52
|
+
/**
|
|
53
|
+
* Probe the legacy roots for a startup reminder without descending or reading file contents.
|
|
54
|
+
* A positive result reports legacy data, not a claim that it still needs copying;
|
|
55
|
+
* the explicit migration command owns destination comparison and fingerprinting.
|
|
56
|
+
* @param roots - legacy directories and their canonical destinations.
|
|
57
|
+
* @returns whether either distinct, readable legacy root contains a durable entry.
|
|
58
|
+
*/
|
|
59
|
+
export declare function hasLegacyHomeData(roots: HomeMigrationRoots): Promise<boolean>;
|
|
52
60
|
/** Inspect both trees and return a deterministic, side-effect-free migration plan. */
|
|
53
61
|
export declare function planHomeMigration(source: string, destination: string): Promise<HomeMigrationPlan>;
|
|
54
62
|
/** Apply exactly one reviewed plan without overwriting destinations or removing legacy data. */
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
/** Save original startup diagnostics while keeping the terminal report concise. */
|
|
2
|
+
import { type Context } from '@deepseek-ai/cordis';
|
|
2
3
|
import type { StartupError } from '@deepseek-ai/dsh-app-boot';
|
|
3
4
|
/** Launcher-owned context; no environment values or plugin configurations are collected. */
|
|
4
5
|
interface StartupDiagnosticContext {
|
|
@@ -6,6 +7,18 @@ interface StartupDiagnosticContext {
|
|
|
6
7
|
version: string;
|
|
7
8
|
profile: string;
|
|
8
9
|
}
|
|
10
|
+
/**
|
|
11
|
+
* Trace one startup phase to stderr when CHATCODE_CLI_STARTUP_TRACE=1.
|
|
12
|
+
* @param phase - launcher-owned label; exclude paths, arguments and configuration values.
|
|
13
|
+
* @returns a callback recording the elapsed milliseconds when the phase completes.
|
|
14
|
+
*/
|
|
15
|
+
export declare function startStartupPhase(phase: string): () => void;
|
|
16
|
+
/**
|
|
17
|
+
* Trace plugin activation until the launcher's initial boot settles.
|
|
18
|
+
* @param ctx - the root context before profile entries mount.
|
|
19
|
+
* @returns the listener disposer; call before handing control to the interactive surface.
|
|
20
|
+
*/
|
|
21
|
+
export declare function traceStartupPlugins(ctx: Context): () => void;
|
|
9
22
|
/**
|
|
10
23
|
* Print the startup summary and save a private, uniquely named report under DSH_HOME/logs.
|
|
11
24
|
* Failed writes print the complete report to stderr instead of claiming a saved path.
|
|
@@ -1,3 +1,5 @@
|
|
|
1
1
|
/** Exact-version TUI bridge owned by the ChatCode launcher. */
|
|
2
2
|
export * from '@deepseek-harness-tui/dsh-tui';
|
|
3
|
+
/** Wait for the shared model default before the TUI creates its first session. */
|
|
4
|
+
export declare const inject: string[];
|
|
3
5
|
//# sourceMappingURL=tui-compat.d.ts.map
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-
|
|
1
|
+
import { a as compositionRoot, i as bindCallerEffect, n as activationFiber, o as concreteService, s as requirePluginCaller } from "./host-access-D3lpiaUY.js";
|
|
2
2
|
import { fileURLToPath, pathToFileURL } from "node:url";
|
|
3
3
|
import { basename, isAbsolute, resolve } from "node:path";
|
|
4
4
|
import { Service } from "@deepseek-ai/cordis";
|
|
5
|
-
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.
|
|
5
|
+
//#region ../../node_modules/.pnpm/@chatcode+cco-tui@0.10.0-rc.14_08ea48c8555976e562c6368d51cb542b/node_modules/@chatcode/cco-tui/lib/types/dsh-adapter/workspaces.js
|
|
6
6
|
/**
|
|
7
7
|
* Workspace-target extension seam for terminal front doors.
|
|
8
8
|
*
|