@kolisachint/hoocode-agent 0.4.2 → 0.4.4
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 +12 -0
- package/dist/core/task-store.d.ts +3 -1
- package/dist/core/task-store.d.ts.map +1 -1
- package/dist/core/task-store.js +7 -1
- package/dist/core/task-store.js.map +1 -1
- package/dist/core/tools/subagent.d.ts +1 -1
- package/dist/core/tools/subagent.d.ts.map +1 -1
- package/dist/core/tools/subagent.js +6 -10
- package/dist/core/tools/subagent.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +0 -41
- package/dist/modes/interactive/components/footer.js.map +1 -1
- package/dist/modes/interactive/components/index.d.ts +1 -0
- package/dist/modes/interactive/components/index.d.ts.map +1 -1
- package/dist/modes/interactive/components/index.js +1 -0
- package/dist/modes/interactive/components/index.js.map +1 -1
- package/dist/modes/interactive/components/task-panel.d.ts +14 -0
- package/dist/modes/interactive/components/task-panel.d.ts.map +1 -0
- package/dist/modes/interactive/components/task-panel.js +61 -0
- package/dist/modes/interactive/components/task-panel.js.map +1 -0
- 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 +7 -2
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/with-deps/package.json +1 -1
- package/package.json +4 -4
|
@@ -53,6 +53,7 @@ import { ScopedModelsSelectorComponent } from "./components/scoped-models-select
|
|
|
53
53
|
import { SessionSelectorComponent } from "./components/session-selector.js";
|
|
54
54
|
import { SettingsSelectorComponent } from "./components/settings-selector.js";
|
|
55
55
|
import { SkillInvocationMessageComponent } from "./components/skill-invocation-message.js";
|
|
56
|
+
import { TaskPanelComponent } from "./components/task-panel.js";
|
|
56
57
|
import { ToolExecutionComponent } from "./components/tool-execution.js";
|
|
57
58
|
import { TreeSelectorComponent } from "./components/tree-selector.js";
|
|
58
59
|
import { UserMessageComponent } from "./components/user-message.js";
|
|
@@ -151,7 +152,7 @@ export class InteractiveMode {
|
|
|
151
152
|
skillCommands = new Map();
|
|
152
153
|
// Agent subscription unsubscribe function
|
|
153
154
|
unsubscribe;
|
|
154
|
-
// Task store subscription unsubscribe function (
|
|
155
|
+
// Task store subscription unsubscribe function (task panel)
|
|
155
156
|
taskStoreUnsubscribe;
|
|
156
157
|
signalCleanupHandlers = [];
|
|
157
158
|
// Track if editor is in bash mode (text starts with !)
|
|
@@ -181,6 +182,8 @@ export class InteractiveMode {
|
|
|
181
182
|
extensionWidgetsBelow = new Map();
|
|
182
183
|
widgetContainerAbove;
|
|
183
184
|
widgetContainerBelow;
|
|
185
|
+
// Task panel shown just above the editor (active subagent tasks)
|
|
186
|
+
taskPanel;
|
|
184
187
|
// Custom footer from extension (undefined = use built-in footer)
|
|
185
188
|
customFooter = undefined;
|
|
186
189
|
// Header container that holds the built-in or custom header
|
|
@@ -234,6 +237,7 @@ export class InteractiveMode {
|
|
|
234
237
|
this.footerDataProvider = new FooterDataProvider(this.sessionManager.getCwd());
|
|
235
238
|
this.footer = new FooterComponent(this.session, this.footerDataProvider);
|
|
236
239
|
this.footer.setAutoCompactEnabled(this.session.autoCompactionEnabled);
|
|
240
|
+
this.taskPanel = new TaskPanelComponent();
|
|
237
241
|
// Load hide thinking block setting
|
|
238
242
|
this.hideThinkingBlock = this.settingsManager.getHideThinkingBlock();
|
|
239
243
|
// Register themes from resource loader and initialize
|
|
@@ -442,6 +446,7 @@ export class InteractiveMode {
|
|
|
442
446
|
this.ui.addChild(this.statusContainer);
|
|
443
447
|
this.renderWidgets(); // Initialize with default spacer
|
|
444
448
|
this.ui.addChild(this.widgetContainerAbove);
|
|
449
|
+
this.ui.addChild(this.taskPanel);
|
|
445
450
|
this.ui.addChild(this.editorContainer);
|
|
446
451
|
this.ui.addChild(this.widgetContainerBelow);
|
|
447
452
|
this.ui.addChild(this.footer);
|
|
@@ -465,7 +470,7 @@ export class InteractiveMode {
|
|
|
465
470
|
this.footerDataProvider.onBranchChange(() => {
|
|
466
471
|
this.ui.requestRender();
|
|
467
472
|
});
|
|
468
|
-
// Re-render the
|
|
473
|
+
// Re-render the UI when the task list changes (task panel shows active tasks).
|
|
469
474
|
this.taskStoreUnsubscribe = taskStore.subscribe(() => {
|
|
470
475
|
this.ui.requestRender();
|
|
471
476
|
});
|