@dreb/coding-agent 2.33.0 → 2.34.1
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.md +2 -0
- package/dist/cli/args.d.ts +1 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +4 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +1 -0
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/session-manager.d.ts +6 -0
- package/dist/core/session-manager.d.ts.map +1 -1
- package/dist/core/session-manager.js +19 -0
- package/dist/core/session-manager.js.map +1 -1
- package/dist/core/tools/bash.d.ts.map +1 -1
- package/dist/core/tools/bash.js +4 -4
- package/dist/core/tools/bash.js.map +1 -1
- package/dist/core/tools/edit.d.ts.map +1 -1
- package/dist/core/tools/edit.js +2 -2
- package/dist/core/tools/edit.js.map +1 -1
- package/dist/core/tools/find.d.ts.map +1 -1
- package/dist/core/tools/find.js +2 -2
- package/dist/core/tools/find.js.map +1 -1
- package/dist/core/tools/grep.d.ts.map +1 -1
- package/dist/core/tools/grep.js +2 -2
- package/dist/core/tools/grep.js.map +1 -1
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +2 -2
- package/dist/core/tools/ls.js.map +1 -1
- package/dist/core/tools/read.d.ts.map +1 -1
- package/dist/core/tools/read.js +2 -2
- package/dist/core/tools/read.js.map +1 -1
- package/dist/core/tools/search.d.ts.map +1 -1
- package/dist/core/tools/search.js +2 -2
- package/dist/core/tools/search.js.map +1 -1
- package/dist/core/tools/skill.d.ts.map +1 -1
- package/dist/core/tools/skill.js +2 -2
- package/dist/core/tools/skill.js.map +1 -1
- package/dist/core/tools/subagent.d.ts +3 -1
- package/dist/core/tools/subagent.d.ts.map +1 -1
- package/dist/core/tools/subagent.js +14 -9
- package/dist/core/tools/subagent.js.map +1 -1
- package/dist/core/tools/suggest-next.d.ts.map +1 -1
- package/dist/core/tools/suggest-next.js +5 -5
- package/dist/core/tools/suggest-next.js.map +1 -1
- package/dist/core/tools/tasks.d.ts.map +1 -1
- package/dist/core/tools/tasks.js +2 -2
- package/dist/core/tools/tasks.js.map +1 -1
- package/dist/core/tools/wait.d.ts.map +1 -1
- package/dist/core/tools/wait.js +2 -2
- package/dist/core/tools/wait.js.map +1 -1
- package/dist/core/tools/web.d.ts.map +1 -1
- package/dist/core/tools/web.js +4 -4
- package/dist/core/tools/web.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js +1 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +4 -0
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/assistant-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/assistant-message.js +5 -10
- package/dist/modes/interactive/components/assistant-message.js.map +1 -1
- package/dist/modes/interactive/components/bash-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/bash-execution.js +4 -4
- package/dist/modes/interactive/components/bash-execution.js.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js +1 -1
- package/dist/modes/interactive/components/branch-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js +1 -1
- package/dist/modes/interactive/components/compaction-summary-message.js.map +1 -1
- package/dist/modes/interactive/components/custom-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/custom-message.js +1 -1
- package/dist/modes/interactive/components/custom-message.js.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js +1 -1
- package/dist/modes/interactive/components/skill-invocation-message.js.map +1 -1
- package/dist/modes/interactive/components/tool-execution.d.ts.map +1 -1
- package/dist/modes/interactive/components/tool-execution.js +2 -2
- package/dist/modes/interactive/components/tool-execution.js.map +1 -1
- package/dist/modes/interactive/components/user-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/user-message.js +1 -1
- package/dist/modes/interactive/components/user-message.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +29 -29
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/session.md +2 -2
- package/package.json +1 -1
|
@@ -407,7 +407,7 @@ export class InteractiveMode {
|
|
|
407
407
|
else {
|
|
408
408
|
this.headerContainer.addChild(new Text(theme.bold(theme.fg("accent", "What's New")), 1, 0));
|
|
409
409
|
this.headerContainer.addChild(new Spacer(1));
|
|
410
|
-
this.headerContainer.addChild(new Markdown(this.changelogMarkdown.trim(), 1, 0, this.getMarkdownThemeWithSettings()));
|
|
410
|
+
this.headerContainer.addChild(new Markdown(this.changelogMarkdown.trim(), 1, 0, this.getMarkdownThemeWithSettings(), undefined, true));
|
|
411
411
|
this.headerContainer.addChild(new Spacer(1));
|
|
412
412
|
}
|
|
413
413
|
this.headerContainer.addChild(new DynamicBorder());
|
|
@@ -907,7 +907,7 @@ export class InteractiveMode {
|
|
|
907
907
|
const contextList = contextFiles
|
|
908
908
|
.map((f) => theme.fg("dim", ` ${this.formatDisplayPath(f.path)}`))
|
|
909
909
|
.join("\n");
|
|
910
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Context")}\n${contextList}`, 0, 0));
|
|
910
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Context")}\n${contextList}`, 0, 0, undefined, true));
|
|
911
911
|
this.chatContainer.addChild(new Spacer(1));
|
|
912
912
|
}
|
|
913
913
|
const memoryIndexes = this.session.resourceLoader.getMemoryIndexes();
|
|
@@ -920,7 +920,7 @@ export class InteractiveMode {
|
|
|
920
920
|
return theme.fg("dim", ` ${this.formatDisplayPath(m.dir)}/MEMORY.md${label}`);
|
|
921
921
|
})
|
|
922
922
|
.join("\n");
|
|
923
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Memory")}\n${memoryList}`, 0, 0));
|
|
923
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Memory")}\n${memoryList}`, 0, 0, undefined, true));
|
|
924
924
|
this.chatContainer.addChild(new Spacer(1));
|
|
925
925
|
}
|
|
926
926
|
const skills = skillsResult.skills;
|
|
@@ -930,7 +930,7 @@ export class InteractiveMode {
|
|
|
930
930
|
formatPath: (item) => this.formatDisplayPath(item.path),
|
|
931
931
|
formatPackagePath: (item) => this.getShortPath(item.path, item.sourceInfo),
|
|
932
932
|
});
|
|
933
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Skills")}\n${skillList}`, 0, 0));
|
|
933
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Skills")}\n${skillList}`, 0, 0, undefined, true));
|
|
934
934
|
this.chatContainer.addChild(new Spacer(1));
|
|
935
935
|
}
|
|
936
936
|
const templates = this.session.promptTemplates;
|
|
@@ -947,7 +947,7 @@ export class InteractiveMode {
|
|
|
947
947
|
return template ? `/${template.name}` : this.formatDisplayPath(item.path);
|
|
948
948
|
},
|
|
949
949
|
});
|
|
950
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Prompts")}\n${templateList}`, 0, 0));
|
|
950
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Prompts")}\n${templateList}`, 0, 0, undefined, true));
|
|
951
951
|
this.chatContainer.addChild(new Spacer(1));
|
|
952
952
|
}
|
|
953
953
|
if (extensions.length > 0) {
|
|
@@ -956,7 +956,7 @@ export class InteractiveMode {
|
|
|
956
956
|
formatPath: (item) => this.formatDisplayPath(item.path),
|
|
957
957
|
formatPackagePath: (item) => this.getShortPath(item.path, item.sourceInfo),
|
|
958
958
|
});
|
|
959
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Extensions", "mdHeading")}\n${extList}`, 0, 0));
|
|
959
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Extensions", "mdHeading")}\n${extList}`, 0, 0, undefined, true));
|
|
960
960
|
this.chatContainer.addChild(new Spacer(1));
|
|
961
961
|
}
|
|
962
962
|
// Show loaded themes (excluding built-in)
|
|
@@ -971,7 +971,7 @@ export class InteractiveMode {
|
|
|
971
971
|
formatPath: (item) => this.formatDisplayPath(item.path),
|
|
972
972
|
formatPackagePath: (item) => this.getShortPath(item.path, item.sourceInfo),
|
|
973
973
|
});
|
|
974
|
-
this.chatContainer.addChild(new Text(`${sectionHeader("Themes")}\n${themeList}`, 0, 0));
|
|
974
|
+
this.chatContainer.addChild(new Text(`${sectionHeader("Themes")}\n${themeList}`, 0, 0, undefined, true));
|
|
975
975
|
this.chatContainer.addChild(new Spacer(1));
|
|
976
976
|
}
|
|
977
977
|
}
|
|
@@ -979,13 +979,13 @@ export class InteractiveMode {
|
|
|
979
979
|
const skillDiagnostics = skillsResult.diagnostics;
|
|
980
980
|
if (skillDiagnostics.length > 0) {
|
|
981
981
|
const warningLines = this.formatDiagnostics(skillDiagnostics, sourceInfos);
|
|
982
|
-
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Skill conflicts]")}\n${warningLines}`, 0, 0));
|
|
982
|
+
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Skill conflicts]")}\n${warningLines}`, 0, 0, undefined, true));
|
|
983
983
|
this.chatContainer.addChild(new Spacer(1));
|
|
984
984
|
}
|
|
985
985
|
const promptDiagnostics = promptsResult.diagnostics;
|
|
986
986
|
if (promptDiagnostics.length > 0) {
|
|
987
987
|
const warningLines = this.formatDiagnostics(promptDiagnostics, sourceInfos);
|
|
988
|
-
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Prompt conflicts]")}\n${warningLines}`, 0, 0));
|
|
988
|
+
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Prompt conflicts]")}\n${warningLines}`, 0, 0, undefined, true));
|
|
989
989
|
this.chatContainer.addChild(new Spacer(1));
|
|
990
990
|
}
|
|
991
991
|
const extensionDiagnostics = [];
|
|
@@ -1002,13 +1002,13 @@ export class InteractiveMode {
|
|
|
1002
1002
|
extensionDiagnostics.push(...shortcutDiagnostics);
|
|
1003
1003
|
if (extensionDiagnostics.length > 0) {
|
|
1004
1004
|
const warningLines = this.formatDiagnostics(extensionDiagnostics, sourceInfos);
|
|
1005
|
-
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Extension issues]")}\n${warningLines}`, 0, 0));
|
|
1005
|
+
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Extension issues]")}\n${warningLines}`, 0, 0, undefined, true));
|
|
1006
1006
|
this.chatContainer.addChild(new Spacer(1));
|
|
1007
1007
|
}
|
|
1008
1008
|
const themeDiagnostics = themesResult.diagnostics;
|
|
1009
1009
|
if (themeDiagnostics.length > 0) {
|
|
1010
1010
|
const warningLines = this.formatDiagnostics(themeDiagnostics, sourceInfos);
|
|
1011
|
-
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Theme conflicts]")}\n${warningLines}`, 0, 0));
|
|
1011
|
+
this.chatContainer.addChild(new Text(`${theme.fg("warning", "[Theme conflicts]")}\n${warningLines}`, 0, 0, undefined, true));
|
|
1012
1012
|
this.chatContainer.addChild(new Spacer(1));
|
|
1013
1013
|
}
|
|
1014
1014
|
}
|
|
@@ -1740,7 +1740,7 @@ export class InteractiveMode {
|
|
|
1740
1740
|
*/
|
|
1741
1741
|
showExtensionError(extensionPath, error, stack) {
|
|
1742
1742
|
const errorMsg = `Extension "${extensionPath}" error: ${error}`;
|
|
1743
|
-
const errorText = new Text(theme.fg("error", errorMsg), 1, 0);
|
|
1743
|
+
const errorText = new Text(theme.fg("error", errorMsg), 1, 0, undefined, true);
|
|
1744
1744
|
this.chatContainer.addChild(errorText);
|
|
1745
1745
|
if (stack) {
|
|
1746
1746
|
// Show stack trace in dim color, indented
|
|
@@ -1750,7 +1750,7 @@ export class InteractiveMode {
|
|
|
1750
1750
|
.map((line) => theme.fg("dim", ` ${line.trim()}`))
|
|
1751
1751
|
.join("\n");
|
|
1752
1752
|
if (stackLines) {
|
|
1753
|
-
this.chatContainer.addChild(new Text(stackLines, 1, 0));
|
|
1753
|
+
this.chatContainer.addChild(new Text(stackLines, 1, 0, undefined, true));
|
|
1754
1754
|
}
|
|
1755
1755
|
}
|
|
1756
1756
|
this.ui.requestRender();
|
|
@@ -2268,7 +2268,7 @@ export class InteractiveMode {
|
|
|
2268
2268
|
else if (event.errorMessage) {
|
|
2269
2269
|
// Compaction failed (e.g., quota exceeded, API error)
|
|
2270
2270
|
this.chatContainer.addChild(new Spacer(1));
|
|
2271
|
-
this.chatContainer.addChild(new Text(theme.fg("error", event.errorMessage), 1, 0));
|
|
2271
|
+
this.chatContainer.addChild(new Text(theme.fg("error", event.errorMessage), 1, 0, undefined, true));
|
|
2272
2272
|
}
|
|
2273
2273
|
void this.flushCompactionQueue({ willRetry: event.willRetry });
|
|
2274
2274
|
this.ui.requestRender();
|
|
@@ -2416,7 +2416,7 @@ export class InteractiveMode {
|
|
|
2416
2416
|
return;
|
|
2417
2417
|
}
|
|
2418
2418
|
const spacer = new Spacer(1);
|
|
2419
|
-
const text = new Text(theme.fg("dim", message), 1, 0);
|
|
2419
|
+
const text = new Text(theme.fg("dim", message), 1, 0, undefined, true);
|
|
2420
2420
|
this.chatContainer.addChild(spacer);
|
|
2421
2421
|
this.chatContainer.addChild(text);
|
|
2422
2422
|
this.lastStatusSpacer = spacer;
|
|
@@ -2914,12 +2914,12 @@ export class InteractiveMode {
|
|
|
2914
2914
|
}
|
|
2915
2915
|
showError(errorMessage) {
|
|
2916
2916
|
this.chatContainer.addChild(new Spacer(1));
|
|
2917
|
-
this.chatContainer.addChild(new Text(theme.fg("error", `Error: ${errorMessage}`), 1, 0));
|
|
2917
|
+
this.chatContainer.addChild(new Text(theme.fg("error", `Error: ${errorMessage}`), 1, 0, undefined, true));
|
|
2918
2918
|
this.ui.requestRender();
|
|
2919
2919
|
}
|
|
2920
2920
|
showWarning(warningMessage) {
|
|
2921
2921
|
this.chatContainer.addChild(new Spacer(1));
|
|
2922
|
-
this.chatContainer.addChild(new Text(theme.fg("warning", `Warning: ${warningMessage}`), 1, 0));
|
|
2922
|
+
this.chatContainer.addChild(new Text(theme.fg("warning", `Warning: ${warningMessage}`), 1, 0, undefined, true));
|
|
2923
2923
|
this.ui.requestRender();
|
|
2924
2924
|
}
|
|
2925
2925
|
showNewVersionNotification(newVersion) {
|
|
@@ -2929,7 +2929,7 @@ export class InteractiveMode {
|
|
|
2929
2929
|
const changelogLine = theme.fg("muted", "Changelog: ") + changelogUrl;
|
|
2930
2930
|
this.chatContainer.addChild(new Spacer(1));
|
|
2931
2931
|
this.chatContainer.addChild(new DynamicBorder((text) => theme.fg("warning", text)));
|
|
2932
|
-
this.chatContainer.addChild(new Text(`${theme.bold(theme.fg("warning", "Update Available"))}\n${updateInstruction}\n${changelogLine}`, 1, 0));
|
|
2932
|
+
this.chatContainer.addChild(new Text(`${theme.bold(theme.fg("warning", "Update Available"))}\n${updateInstruction}\n${changelogLine}`, 1, 0, undefined, true));
|
|
2933
2933
|
this.chatContainer.addChild(new DynamicBorder((text) => theme.fg("warning", text)));
|
|
2934
2934
|
this.ui.requestRender();
|
|
2935
2935
|
}
|
|
@@ -2939,7 +2939,7 @@ export class InteractiveMode {
|
|
|
2939
2939
|
const packageLines = packages.map((pkg) => `- ${pkg}`).join("\n");
|
|
2940
2940
|
this.chatContainer.addChild(new Spacer(1));
|
|
2941
2941
|
this.chatContainer.addChild(new DynamicBorder((text) => theme.fg("warning", text)));
|
|
2942
|
-
this.chatContainer.addChild(new Text(`${theme.bold(theme.fg("warning", "Package Updates Available"))}\n${updateInstruction}\n${theme.fg("muted", "Packages:")}\n${packageLines}`, 1, 0));
|
|
2942
|
+
this.chatContainer.addChild(new Text(`${theme.bold(theme.fg("warning", "Package Updates Available"))}\n${updateInstruction}\n${theme.fg("muted", "Packages:")}\n${packageLines}`, 1, 0, undefined, true));
|
|
2943
2943
|
this.chatContainer.addChild(new DynamicBorder((text) => theme.fg("warning", text)));
|
|
2944
2944
|
this.ui.requestRender();
|
|
2945
2945
|
}
|
|
@@ -3979,7 +3979,7 @@ export class InteractiveMode {
|
|
|
3979
3979
|
const currentName = this.sessionManager.getSessionName();
|
|
3980
3980
|
if (currentName) {
|
|
3981
3981
|
this.chatContainer.addChild(new Spacer(1));
|
|
3982
|
-
this.chatContainer.addChild(new Text(theme.fg("dim", `Session name: ${currentName}`), 1, 0));
|
|
3982
|
+
this.chatContainer.addChild(new Text(theme.fg("dim", `Session name: ${currentName}`), 1, 0, undefined, true));
|
|
3983
3983
|
}
|
|
3984
3984
|
else {
|
|
3985
3985
|
this.showWarning("Usage: /name <name>");
|
|
@@ -3990,7 +3990,7 @@ export class InteractiveMode {
|
|
|
3990
3990
|
this.sessionManager.appendSessionInfo(name);
|
|
3991
3991
|
this.updateTerminalTitle();
|
|
3992
3992
|
this.chatContainer.addChild(new Spacer(1));
|
|
3993
|
-
this.chatContainer.addChild(new Text(theme.fg("dim", `Session name set: ${name}`), 1, 0));
|
|
3993
|
+
this.chatContainer.addChild(new Text(theme.fg("dim", `Session name set: ${name}`), 1, 0, undefined, true));
|
|
3994
3994
|
this.ui.requestRender();
|
|
3995
3995
|
}
|
|
3996
3996
|
handleSessionCommand() {
|
|
@@ -4023,7 +4023,7 @@ export class InteractiveMode {
|
|
|
4023
4023
|
info += `${theme.fg("dim", "Total:")} ${stats.cost.toFixed(4)}`;
|
|
4024
4024
|
}
|
|
4025
4025
|
this.chatContainer.addChild(new Spacer(1));
|
|
4026
|
-
this.chatContainer.addChild(new Text(info, 1, 0));
|
|
4026
|
+
this.chatContainer.addChild(new Text(info, 1, 0, undefined, true));
|
|
4027
4027
|
this.ui.requestRender();
|
|
4028
4028
|
}
|
|
4029
4029
|
handleChangelogCommand() {
|
|
@@ -4039,7 +4039,7 @@ export class InteractiveMode {
|
|
|
4039
4039
|
this.chatContainer.addChild(new DynamicBorder());
|
|
4040
4040
|
this.chatContainer.addChild(new Text(theme.bold(theme.fg("accent", "What's New")), 1, 0));
|
|
4041
4041
|
this.chatContainer.addChild(new Spacer(1));
|
|
4042
|
-
this.chatContainer.addChild(new Markdown(changelogMarkdown, 1, 1, this.getMarkdownThemeWithSettings()));
|
|
4042
|
+
this.chatContainer.addChild(new Markdown(changelogMarkdown, 1, 1, this.getMarkdownThemeWithSettings(), undefined, true));
|
|
4043
4043
|
this.chatContainer.addChild(new DynamicBorder());
|
|
4044
4044
|
this.ui.requestRender();
|
|
4045
4045
|
}
|
|
@@ -4172,7 +4172,7 @@ ${cycleModelForward || cycleModelBackward ? `| \`${cycleModelForward}\` / \`${cy
|
|
|
4172
4172
|
this.chatContainer.addChild(new DynamicBorder());
|
|
4173
4173
|
this.chatContainer.addChild(new Text(theme.bold(theme.fg("accent", "Keyboard Shortcuts")), 1, 0));
|
|
4174
4174
|
this.chatContainer.addChild(new Spacer(1));
|
|
4175
|
-
this.chatContainer.addChild(new Markdown(hotkeys.trim(), 1, 1, this.getMarkdownThemeWithSettings()));
|
|
4175
|
+
this.chatContainer.addChild(new Markdown(hotkeys.trim(), 1, 1, this.getMarkdownThemeWithSettings(), undefined, true));
|
|
4176
4176
|
this.chatContainer.addChild(new DynamicBorder());
|
|
4177
4177
|
this.ui.requestRender();
|
|
4178
4178
|
}
|
|
@@ -4220,7 +4220,7 @@ ${cycleModelForward || cycleModelBackward ? `| \`${cycleModelForward}\` / \`${cy
|
|
|
4220
4220
|
fs.mkdirSync(path.dirname(debugLogPath), { recursive: true });
|
|
4221
4221
|
fs.writeFileSync(debugLogPath, debugData);
|
|
4222
4222
|
this.chatContainer.addChild(new Spacer(1));
|
|
4223
|
-
this.chatContainer.addChild(new Text(`${theme.fg("accent", "✓ Debug log written")}\n${theme.fg("muted", debugLogPath)}`, 1, 1));
|
|
4223
|
+
this.chatContainer.addChild(new Text(`${theme.fg("accent", "✓ Debug log written")}\n${theme.fg("muted", debugLogPath)}`, 1, 1, undefined, true));
|
|
4224
4224
|
this.ui.requestRender();
|
|
4225
4225
|
}
|
|
4226
4226
|
handleArminSaysHi() {
|
|
@@ -4517,7 +4517,7 @@ ${cycleModelForward || cycleModelBackward ? `| \`${cycleModelForward}\` / \`${cy
|
|
|
4517
4517
|
case "off": {
|
|
4518
4518
|
this.removeBuddy();
|
|
4519
4519
|
this.chatContainer.addChild(new Spacer(1));
|
|
4520
|
-
this.chatContainer.addChild(new Text(theme.fg("muted", "Buddy hidden. Use /buddy to bring them back."), 1, 0));
|
|
4520
|
+
this.chatContainer.addChild(new Text(theme.fg("muted", "Buddy hidden. Use /buddy to bring them back."), 1, 0, undefined, true));
|
|
4521
4521
|
this.ui.requestRender();
|
|
4522
4522
|
break;
|
|
4523
4523
|
}
|
|
@@ -4532,7 +4532,7 @@ ${cycleModelForward || cycleModelBackward ? `| \`${cycleModelForward}\` / \`${cy
|
|
|
4532
4532
|
}
|
|
4533
4533
|
case "model": {
|
|
4534
4534
|
this.chatContainer.addChild(new Spacer(1));
|
|
4535
|
-
this.chatContainer.addChild(new Text(result.message, 1, 0));
|
|
4535
|
+
this.chatContainer.addChild(new Text(result.message, 1, 0, undefined, true));
|
|
4536
4536
|
this.ui.requestRender();
|
|
4537
4537
|
break;
|
|
4538
4538
|
}
|
|
@@ -4635,12 +4635,12 @@ ${cycleModelForward || cycleModelBackward ? `| \`${cycleModelForward}\` / \`${cy
|
|
|
4635
4635
|
async checkAndWarnOllama() {
|
|
4636
4636
|
const status = await checkOllama();
|
|
4637
4637
|
if (!status.available) {
|
|
4638
|
-
this.chatContainer.addChild(new Text(theme.fg("warning", "⚠️ Buddy reactions require Ollama. Install it at https://ollama.com then pull a model."), 1, 0));
|
|
4638
|
+
this.chatContainer.addChild(new Text(theme.fg("warning", "⚠️ Buddy reactions require Ollama. Install it at https://ollama.com then pull a model."), 1, 0, undefined, true));
|
|
4639
4639
|
return;
|
|
4640
4640
|
}
|
|
4641
4641
|
const nudge = this.buddyController.getModelNudge();
|
|
4642
4642
|
if (nudge) {
|
|
4643
|
-
this.chatContainer.addChild(new Text(theme.fg("warning", `⚠️ ${nudge}`), 1, 0));
|
|
4643
|
+
this.chatContainer.addChild(new Text(theme.fg("warning", `⚠️ ${nudge}`), 1, 0, undefined, true));
|
|
4644
4644
|
}
|
|
4645
4645
|
}
|
|
4646
4646
|
async playHatchAnimation() {
|