@kolisachint/hoocode-agent 0.3.0 → 0.4.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/CHANGELOG.md +12 -0
- package/dist/cli/args.d.ts +1 -0
- package/dist/cli/args.d.ts.map +1 -1
- package/dist/cli/args.js +5 -0
- package/dist/cli/args.js.map +1 -1
- package/dist/core/extensions/loader.d.ts +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js +2 -1
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/types.d.ts +4 -1
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +2 -2
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/settings-manager.d.ts +3 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +8 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/subagent.d.ts +46 -0
- package/dist/core/subagent.d.ts.map +1 -0
- package/dist/core/subagent.js +139 -0
- package/dist/core/subagent.js.map +1 -0
- package/dist/core/task-store.d.ts +37 -0
- package/dist/core/task-store.d.ts.map +1 -0
- package/dist/core/task-store.js +57 -0
- package/dist/core/task-store.js.map +1 -0
- package/dist/core/tools/subagent.d.ts +18 -0
- package/dist/core/tools/subagent.d.ts.map +1 -0
- package/dist/core/tools/subagent.js +99 -0
- package/dist/core/tools/subagent.js.map +1 -0
- package/dist/init-templates.generated.d.ts +1 -0
- package/dist/init-templates.generated.d.ts.map +1 -1
- package/dist/init-templates.generated.js +7 -0
- package/dist/init-templates.generated.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +6 -0
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/footer.d.ts.map +1 -1
- package/dist/modes/interactive/components/footer.js +41 -0
- package/dist/modes/interactive/components/footer.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 +14 -2
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/examples/README.md +1 -1
- package/examples/extensions/README.md +0 -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
- package/templates/subagent/edit.md +17 -0
- package/templates/subagent/explore.md +16 -0
- package/templates/subagent/fix.md +17 -0
- package/templates/subagent/review.md +16 -0
- package/templates/subagent/test.md +15 -0
- package/examples/extensions/subagent/README.md +0 -172
- package/examples/extensions/subagent/agents/planner.md +0 -37
- package/examples/extensions/subagent/agents/reviewer.md +0 -35
- package/examples/extensions/subagent/agents/scout.md +0 -50
- package/examples/extensions/subagent/agents/worker.md +0 -24
- package/examples/extensions/subagent/agents.ts +0 -126
- package/examples/extensions/subagent/index.ts +0 -987
- package/examples/extensions/subagent/prompts/implement-and-review.md +0 -10
- package/examples/extensions/subagent/prompts/implement.md +0 -10
- package/examples/extensions/subagent/prompts/scout-and-plan.md +0 -9
|
@@ -21,6 +21,7 @@ import { BUILT_IN_PROVIDER_DISPLAY_NAMES } from "../../core/provider-display-nam
|
|
|
21
21
|
import { formatMissingSessionCwdPrompt, MissingSessionCwdError } from "../../core/session-cwd.js";
|
|
22
22
|
import { SessionManager } from "../../core/session-manager.js";
|
|
23
23
|
import { BUILTIN_SLASH_COMMANDS } from "../../core/slash-commands.js";
|
|
24
|
+
import { taskStore } from "../../core/task-store.js";
|
|
24
25
|
import { getChangelogPath, getNewEntries, parseChangelog } from "../../utils/changelog.js";
|
|
25
26
|
import { copyToClipboard } from "../../utils/clipboard.js";
|
|
26
27
|
import { extensionForImageMimeType, readClipboardImage } from "../../utils/clipboard-image.js";
|
|
@@ -150,6 +151,8 @@ export class InteractiveMode {
|
|
|
150
151
|
skillCommands = new Map();
|
|
151
152
|
// Agent subscription unsubscribe function
|
|
152
153
|
unsubscribe;
|
|
154
|
+
// Task store subscription unsubscribe function (footer task list)
|
|
155
|
+
taskStoreUnsubscribe;
|
|
153
156
|
signalCleanupHandlers = [];
|
|
154
157
|
// Track if editor is in bash mode (text starts with !)
|
|
155
158
|
isBashMode = false;
|
|
@@ -462,6 +465,10 @@ export class InteractiveMode {
|
|
|
462
465
|
this.footerDataProvider.onBranchChange(() => {
|
|
463
466
|
this.ui.requestRender();
|
|
464
467
|
});
|
|
468
|
+
// Re-render the footer when the task list changes (e.g. subagent tasks).
|
|
469
|
+
this.taskStoreUnsubscribe = taskStore.subscribe(() => {
|
|
470
|
+
this.ui.requestRender();
|
|
471
|
+
});
|
|
465
472
|
// Initialize available provider count for footer display
|
|
466
473
|
await this.updateAvailableProviderCount();
|
|
467
474
|
}
|
|
@@ -778,6 +785,9 @@ export class InteractiveMode {
|
|
|
778
785
|
})
|
|
779
786
|
.filter((extension) => !this.isPackageSource(extension.sourceInfo));
|
|
780
787
|
return extensions.map((extension) => {
|
|
788
|
+
if (extension.displayName) {
|
|
789
|
+
return extension.displayName;
|
|
790
|
+
}
|
|
781
791
|
if (this.isPackageSource(extension.sourceInfo)) {
|
|
782
792
|
return this.getCompactExtensionLabel(extension.path, extension.sourceInfo);
|
|
783
793
|
}
|
|
@@ -952,6 +962,7 @@ export class InteractiveMode {
|
|
|
952
962
|
this.session.resourceLoader.getExtensions().extensions.map((extension) => ({
|
|
953
963
|
path: extension.path,
|
|
954
964
|
sourceInfo: extension.sourceInfo,
|
|
965
|
+
displayName: extension.displayName,
|
|
955
966
|
}));
|
|
956
967
|
const sourceInfos = new Map();
|
|
957
968
|
for (const extension of extensions) {
|
|
@@ -1038,8 +1049,8 @@ export class InteractiveMode {
|
|
|
1038
1049
|
if (extensions.length > 0) {
|
|
1039
1050
|
const groups = this.buildScopeGroups(extensions);
|
|
1040
1051
|
const extList = this.formatScopeGroups(groups, {
|
|
1041
|
-
formatPath: (item) => this.formatExtensionDisplayPath(item.path),
|
|
1042
|
-
formatPackagePath: (item) => this.formatExtensionDisplayPath(this.getShortPath(item.path, item.sourceInfo)),
|
|
1052
|
+
formatPath: (item) => item.displayName ?? this.formatExtensionDisplayPath(item.path),
|
|
1053
|
+
formatPackagePath: (item) => item.displayName ?? this.formatExtensionDisplayPath(this.getShortPath(item.path, item.sourceInfo)),
|
|
1043
1054
|
});
|
|
1044
1055
|
const extensionCompactList = formatCompactList(this.getCompactExtensionLabels(extensions));
|
|
1045
1056
|
addLoadedSection("Extensions", extensionCompactList, extList, "mdHeading");
|
|
@@ -2648,6 +2659,7 @@ export class InteractiveMode {
|
|
|
2648
2659
|
// Drain any in-flight Kitty key release events before stopping.
|
|
2649
2660
|
// This prevents escape sequences from leaking to the parent shell over slow SSH.
|
|
2650
2661
|
await this.ui.terminal.drainInput(1000);
|
|
2662
|
+
this.taskStoreUnsubscribe?.();
|
|
2651
2663
|
this.stop();
|
|
2652
2664
|
await this.runtimeHost.dispose();
|
|
2653
2665
|
process.exit(0);
|