@kolisachint/hoocode-agent 0.4.7 → 0.4.8
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/CHANGELOG.md +18 -0
- package/dist/core/footer-data-provider.d.ts +6 -1
- package/dist/core/footer-data-provider.d.ts.map +1 -1
- package/dist/core/footer-data-provider.js +12 -0
- package/dist/core/footer-data-provider.js.map +1 -1
- package/dist/core/lifeguard.d.ts +45 -0
- package/dist/core/lifeguard.d.ts.map +1 -0
- package/dist/core/lifeguard.js +214 -0
- package/dist/core/lifeguard.js.map +1 -0
- package/dist/core/output-verifier.d.ts +19 -0
- package/dist/core/output-verifier.d.ts.map +1 -0
- package/dist/core/output-verifier.js +110 -0
- package/dist/core/output-verifier.js.map +1 -0
- package/dist/core/resource-loader.d.ts +2 -0
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +3 -0
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/subagent-pool.d.ts +23 -0
- package/dist/core/subagent-pool.d.ts.map +1 -1
- package/dist/core/subagent-pool.js +182 -6
- package/dist/core/subagent-pool.js.map +1 -1
- package/dist/core/subagent.d.ts.map +1 -1
- package/dist/core/subagent.js +3 -0
- package/dist/core/subagent.js.map +1 -1
- package/dist/core/token-budget.d.ts +59 -0
- package/dist/core/token-budget.d.ts.map +1 -0
- package/dist/core/token-budget.js +161 -0
- package/dist/core/token-budget.js.map +1 -0
- package/dist/core/tools/subagent.d.ts +3 -0
- package/dist/core/tools/subagent.d.ts.map +1 -1
- package/dist/core/tools/subagent.js +23 -0
- package/dist/core/tools/subagent.js.map +1 -1
- package/dist/core/wordmark.d.ts.map +1 -1
- package/dist/core/wordmark.js +9 -9
- package/dist/core/wordmark.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +5 -1
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +1 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +28 -1
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/examples/sdk/12-full-control.ts +1 -0
- package/package.json +4 -4
|
@@ -233,11 +233,13 @@ export class InteractiveMode {
|
|
|
233
233
|
autocompleteMaxVisible,
|
|
234
234
|
});
|
|
235
235
|
this.editor = this.defaultEditor;
|
|
236
|
+
this.editor.promptPrefix = ">";
|
|
236
237
|
this.editorContainer = new Container();
|
|
237
238
|
this.editorContainer.addChild(this.editor);
|
|
238
239
|
this.footerDataProvider = new FooterDataProvider(this.sessionManager.getCwd());
|
|
239
240
|
this.footer = new FooterComponent(this.session, this.footerDataProvider);
|
|
240
241
|
this.footer.setAutoCompactEnabled(this.session.autoCompactionEnabled);
|
|
242
|
+
this.footerDataProvider.setSubagentEnabled(this.session.getActiveToolNames().includes("subagent"));
|
|
241
243
|
this.taskPanel = new TaskPanelComponent();
|
|
242
244
|
// Load hide thinking block setting
|
|
243
245
|
this.hideThinkingBlock = this.settingsManager.getHideThinkingBlock();
|
|
@@ -1004,9 +1006,16 @@ export class InteractiveMode {
|
|
|
1004
1006
|
const loadedThemes = themesResult.themes;
|
|
1005
1007
|
const customThemes = loadedThemes.filter((t) => t.sourcePath);
|
|
1006
1008
|
const totalItems = contextFiles.length + skills.length + templates.length + extensions.length + customThemes.length;
|
|
1009
|
+
// Meta items: active mode and subagent system prompt (always shown)
|
|
1010
|
+
const metaItems = [];
|
|
1011
|
+
const rawMode = this.footerDataProvider.getActiveMode().replace(" + subagent", "");
|
|
1012
|
+
metaItems.push(`mode/${rawMode}`);
|
|
1013
|
+
if (this.footerDataProvider.getSubagentEnabled()) {
|
|
1014
|
+
metaItems.push("subagent_system_prompt");
|
|
1015
|
+
}
|
|
1007
1016
|
if (totalItems > 0 && totalItems <= 5) {
|
|
1008
1017
|
this.chatContainer.addChild(new Spacer(1));
|
|
1009
|
-
const allCompactItems = [];
|
|
1018
|
+
const allCompactItems = [...metaItems];
|
|
1010
1019
|
if (contextFiles.length > 0) {
|
|
1011
1020
|
allCompactItems.push(...contextFiles.map((contextFile) => this.formatContextPath(contextFile.path)));
|
|
1012
1021
|
}
|
|
@@ -1024,7 +1033,13 @@ export class InteractiveMode {
|
|
|
1024
1033
|
}
|
|
1025
1034
|
addLoadedSection("Resources", formatCompactList(allCompactItems), formatCompactList(allCompactItems));
|
|
1026
1035
|
}
|
|
1036
|
+
else if (totalItems === 0) {
|
|
1037
|
+
this.chatContainer.addChild(new Spacer(1));
|
|
1038
|
+
addLoadedSection("Resources", formatCompactList(metaItems), formatCompactList(metaItems));
|
|
1039
|
+
}
|
|
1027
1040
|
else {
|
|
1041
|
+
this.chatContainer.addChild(new Spacer(1));
|
|
1042
|
+
addLoadedSection("Resources", formatCompactList(metaItems), formatCompactList(metaItems));
|
|
1028
1043
|
if (contextFiles.length > 0) {
|
|
1029
1044
|
this.chatContainer.addChild(new Spacer(1));
|
|
1030
1045
|
const contextList = contextFiles
|
|
@@ -1955,6 +1970,7 @@ export class InteractiveMode {
|
|
|
1955
1970
|
this.isBashMode = text.trimStart().startsWith("!");
|
|
1956
1971
|
if (wasBashMode !== this.isBashMode) {
|
|
1957
1972
|
this.updateEditorBorderColor();
|
|
1973
|
+
this.updateEditorPromptPrefix();
|
|
1958
1974
|
}
|
|
1959
1975
|
};
|
|
1960
1976
|
// Handle clipboard image paste (triggered on Ctrl+V)
|
|
@@ -2814,6 +2830,17 @@ export class InteractiveMode {
|
|
|
2814
2830
|
}
|
|
2815
2831
|
this.ui.requestRender();
|
|
2816
2832
|
}
|
|
2833
|
+
updateEditorPromptPrefix() {
|
|
2834
|
+
if (this.isBashMode) {
|
|
2835
|
+
this.editor.promptPrefix = "!";
|
|
2836
|
+
this.editor.promptColor = theme.getBashModeBorderColor();
|
|
2837
|
+
}
|
|
2838
|
+
else {
|
|
2839
|
+
this.editor.promptPrefix = ">";
|
|
2840
|
+
this.editor.promptColor = (s) => s;
|
|
2841
|
+
}
|
|
2842
|
+
this.ui.requestRender();
|
|
2843
|
+
}
|
|
2817
2844
|
cycleThinkingLevel() {
|
|
2818
2845
|
const newLevel = this.session.cycleThinkingLevel();
|
|
2819
2846
|
if (newLevel === undefined) {
|