@hoilab/ada-cli 0.84.6 → 0.84.7
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.
|
@@ -676,7 +676,33 @@ export class InteractiveMode {
|
|
|
676
676
|
await this.themeController.applyFromSettings();
|
|
677
677
|
// Add header with keybindings from config (unless silenced)
|
|
678
678
|
if (this.options.verbose || !this.settingsManager.getQuietStartup()) {
|
|
679
|
+
const accent = (text) => theme.fg("accent", text);
|
|
680
|
+
const dim = (text) => theme.fg("dim", text);
|
|
681
|
+
const muted = (text) => theme.fg("muted", text);
|
|
679
682
|
const logo = theme.bold(theme.fg("accent", APP_NAME)) + theme.fg("dim", ` v${this.version}`);
|
|
683
|
+
// Welcome screen (central): ASCII logo + environment status + quick commands
|
|
684
|
+
const asciiLogo = [
|
|
685
|
+
" █████╗ ██████╗ █████╗",
|
|
686
|
+
" ██╔══██╗██╔══██╗██╔══██╗",
|
|
687
|
+
" ███████║██║ ██║███████║",
|
|
688
|
+
" ██╔══██║██║ ██║██╔══██║",
|
|
689
|
+
" ██║ ██║██████╔╝██║ ██║",
|
|
690
|
+
" ╚═╝ ╚═╝╚═════╝ ╚═╝ ╚═╝",
|
|
691
|
+
].join("\n");
|
|
692
|
+
const welcomeTagline = `${accent("Ada")} ${dim("· coding agent · HOILAB TECH")} ${muted(`v${this.version}`)}`;
|
|
693
|
+
// Environment status line
|
|
694
|
+
const defaultProvider = this.settingsManager.getDefaultProvider();
|
|
695
|
+
const defaultModel = this.settingsManager.getDefaultModel();
|
|
696
|
+
const modelLabel = defaultProvider && defaultModel
|
|
697
|
+
? `${defaultProvider}/${defaultModel}`
|
|
698
|
+
: muted("not configured (open /model)");
|
|
699
|
+
const cwd = this.sessionManager.getCwd();
|
|
700
|
+
const memoryEnabled = this.settingsManager.getProjectMemoryEnabled();
|
|
701
|
+
const statusLine = [
|
|
702
|
+
dim(`model: ${modelLabel}`),
|
|
703
|
+
dim(`cwd: ${cwd}`),
|
|
704
|
+
dim(`memory: ${memoryEnabled ? "on" : "off"}`),
|
|
705
|
+
].join(" ");
|
|
680
706
|
// Build startup instructions using keybinding hint helpers
|
|
681
707
|
const hint = (keybinding, description) => keyHint(keybinding, description);
|
|
682
708
|
const expandedInstructions = [
|
|
@@ -708,8 +734,14 @@ export class InteractiveMode {
|
|
|
708
734
|
hint("app.tools.expand", "more"),
|
|
709
735
|
].join(theme.fg("muted", " · "));
|
|
710
736
|
const compactOnboarding = theme.fg("dim", `Press ${keyText("app.tools.expand")} to show full startup help and loaded resources.`);
|
|
711
|
-
const
|
|
712
|
-
|
|
737
|
+
const quickCommands = [
|
|
738
|
+
rawKeyHint("/new", "new conversation"),
|
|
739
|
+
rawKeyHint("/resume", "resume a session"),
|
|
740
|
+
rawKeyHint("/model", "pick a model"),
|
|
741
|
+
rawKeyHint("/settings", "settings"),
|
|
742
|
+
].join(theme.fg("muted", " "));
|
|
743
|
+
const onboarding = theme.fg("dim", `Ada can explain its own features and look up its docs. Ask it how to use or extend Ada.`);
|
|
744
|
+
this.builtInHeader = new ExpandableText(() => `${accent(asciiLogo)}\n${welcomeTagline}\n\n${statusLine}\n\n${quickCommands}\n\n${compactInstructions}\n${compactOnboarding}`, () => `${accent(asciiLogo)}\n${welcomeTagline}\n\n${statusLine}\n\n${expandedInstructions}\n\n${onboarding}`, this.getStartupExpansionState(), 1, 0);
|
|
713
745
|
// Setup UI layout
|
|
714
746
|
this.headerContainer.addChild(new Spacer(1));
|
|
715
747
|
this.headerContainer.addChild(this.builtInHeader);
|