@kolisachint/hoocode-agent 0.4.5 → 0.4.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.
- package/CHANGELOG.md +13 -1
- package/dist/core/agent-session.d.ts +1 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +73 -129
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/compaction/compaction.d.ts.map +1 -1
- package/dist/core/compaction/compaction.js +11 -1
- package/dist/core/compaction/compaction.js.map +1 -1
- package/dist/core/export-html/template.css +1 -1
- package/dist/core/extensions/loader.d.ts.map +1 -1
- package/dist/core/extensions/loader.js +1 -0
- package/dist/core/extensions/loader.js.map +1 -1
- package/dist/core/extensions/types.d.ts +4 -0
- package/dist/core/extensions/types.d.ts.map +1 -1
- package/dist/core/extensions/types.js.map +1 -1
- package/dist/core/settings-defaults.d.ts +54 -0
- package/dist/core/settings-defaults.d.ts.map +1 -0
- package/dist/core/settings-defaults.js +54 -0
- package/dist/core/settings-defaults.js.map +1 -0
- package/dist/core/settings-manager.d.ts +3 -9
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +41 -45
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/subagent-pool.d.ts +78 -0
- package/dist/core/subagent-pool.d.ts.map +1 -0
- package/dist/core/subagent-pool.js +222 -0
- package/dist/core/subagent-pool.js.map +1 -0
- package/dist/core/task-store.d.ts +7 -0
- package/dist/core/task-store.d.ts.map +1 -1
- package/dist/core/task-store.js +12 -0
- package/dist/core/task-store.js.map +1 -1
- package/dist/core/tools/ls.d.ts.map +1 -1
- package/dist/core/tools/ls.js +6 -1
- 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.map +1 -1
- package/dist/core/tools/subagent.d.ts.map +1 -1
- package/dist/core/tools/subagent.js +3 -1
- package/dist/core/tools/subagent.js.map +1 -1
- package/dist/core/tools/write.d.ts.map +1 -1
- package/dist/core/tools/write.js.map +1 -1
- package/dist/core/wordmark.d.ts +9 -0
- package/dist/core/wordmark.d.ts.map +1 -0
- package/dist/core/wordmark.js +17 -0
- package/dist/core/wordmark.js.map +1 -0
- package/dist/init-templates.generated.d.ts.map +1 -1
- package/dist/init-templates.generated.js +5 -5
- package/dist/init-templates.generated.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +2 -2
- package/dist/main.js.map +1 -1
- package/dist/modes/interactive/components/task-panel.d.ts +4 -3
- package/dist/modes/interactive/components/task-panel.d.ts.map +1 -1
- package/dist/modes/interactive/components/task-panel.js +6 -6
- package/dist/modes/interactive/components/task-panel.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +20 -9
- 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
- package/templates/subagent/edit.md +5 -0
- package/templates/subagent/explore.md +5 -0
- package/templates/subagent/fix.md +5 -0
- package/templates/subagent/review.md +5 -0
- package/templates/subagent/test.md +5 -0
|
@@ -22,6 +22,7 @@ import { formatMissingSessionCwdPrompt, MissingSessionCwdError } from "../../cor
|
|
|
22
22
|
import { SessionManager } from "../../core/session-manager.js";
|
|
23
23
|
import { BUILTIN_SLASH_COMMANDS } from "../../core/slash-commands.js";
|
|
24
24
|
import { taskStore } from "../../core/task-store.js";
|
|
25
|
+
import { WORDMARK } from "../../core/wordmark.js";
|
|
25
26
|
import { getChangelogPath, getNewEntries, parseChangelog } from "../../utils/changelog.js";
|
|
26
27
|
import { copyToClipboard } from "../../utils/clipboard.js";
|
|
27
28
|
import { extensionForImageMimeType, readClipboardImage } from "../../utils/clipboard-image.js";
|
|
@@ -397,7 +398,10 @@ export class InteractiveMode {
|
|
|
397
398
|
this.ui.addChild(this.headerContainer);
|
|
398
399
|
// Add header with keybindings from config (unless silenced)
|
|
399
400
|
if (this.options.verbose || !this.settingsManager.getQuietStartup()) {
|
|
400
|
-
const
|
|
401
|
+
const termW = this.ui.terminal.columns;
|
|
402
|
+
const logo = termW >= 70
|
|
403
|
+
? `${theme.fg("accent", WORDMARK)}\n${theme.fg("dim", `v${this.version}`)}`
|
|
404
|
+
: theme.bold(theme.fg("accent", APP_NAME)) + theme.fg("dim", ` v${this.version}`);
|
|
401
405
|
// Build startup instructions using keybinding hint helpers
|
|
402
406
|
const hint = (keybinding, description) => keyHint(keybinding, description);
|
|
403
407
|
const expandedInstructions = [
|
|
@@ -964,7 +968,10 @@ export class InteractiveMode {
|
|
|
964
968
|
const promptsResult = this.session.resourceLoader.getPrompts();
|
|
965
969
|
const themesResult = this.session.resourceLoader.getThemes();
|
|
966
970
|
const extensions = options?.extensions ??
|
|
967
|
-
this.session.resourceLoader
|
|
971
|
+
this.session.resourceLoader
|
|
972
|
+
.getExtensions()
|
|
973
|
+
.extensions.filter((extension) => !extension.internal)
|
|
974
|
+
.map((extension) => ({
|
|
968
975
|
path: extension.path,
|
|
969
976
|
sourceInfo: extension.sourceInfo,
|
|
970
977
|
displayName: extension.displayName,
|
|
@@ -2068,7 +2075,10 @@ export class InteractiveMode {
|
|
|
2068
2075
|
return;
|
|
2069
2076
|
}
|
|
2070
2077
|
if (text === "/compact" || text.startsWith("/compact ")) {
|
|
2071
|
-
const
|
|
2078
|
+
const prefix = "/compact ";
|
|
2079
|
+
const customInstructions = text.startsWith(prefix)
|
|
2080
|
+
? text.slice(prefix.length).trim() || undefined
|
|
2081
|
+
: undefined;
|
|
2072
2082
|
this.editor.setText("");
|
|
2073
2083
|
await this.handleCompactCommand(customInstructions);
|
|
2074
2084
|
return;
|
|
@@ -2207,6 +2217,9 @@ export class InteractiveMode {
|
|
|
2207
2217
|
this.ui.requestRender();
|
|
2208
2218
|
}
|
|
2209
2219
|
else if (event.message.role === "assistant") {
|
|
2220
|
+
// Main agent is moving on to its next turn: retire any finished subagent
|
|
2221
|
+
// tasks that were kept visible after a parallel spawn.
|
|
2222
|
+
taskStore.retireFinished();
|
|
2210
2223
|
this.streamingComponent = new AssistantMessageComponent(undefined, this.hideThinkingBlock, this.getMarkdownThemeWithSettings(), this.hiddenThinkingLabel);
|
|
2211
2224
|
this.streamingMessage = event.message;
|
|
2212
2225
|
this.chatContainer.addChild(this.streamingComponent);
|
|
@@ -4565,12 +4578,10 @@ export class InteractiveMode {
|
|
|
4565
4578
|
this.ui.requestRender();
|
|
4566
4579
|
}
|
|
4567
4580
|
async handleCompactCommand(customInstructions) {
|
|
4568
|
-
|
|
4569
|
-
|
|
4570
|
-
|
|
4571
|
-
|
|
4572
|
-
return;
|
|
4573
|
-
}
|
|
4581
|
+
// The session is the single source of truth for whether compaction is
|
|
4582
|
+
// possible (e.g. "Already compacted", "Nothing to compact (session too
|
|
4583
|
+
// small)"). Its specific error is surfaced via the compaction_end event,
|
|
4584
|
+
// so we don't pre-check here and risk a divergent message.
|
|
4574
4585
|
if (this.loadingAnimation) {
|
|
4575
4586
|
this.loadingAnimation.stop();
|
|
4576
4587
|
this.loadingAnimation = undefined;
|