@kolisachint/hoocode-agent 0.5.24 → 0.5.25
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 +70 -0
- package/dist/core/brand.d.ts +1 -0
- package/dist/core/brand.d.ts.map +1 -1
- package/dist/core/brand.js +1 -0
- package/dist/core/brand.js.map +1 -1
- package/dist/core/canvas/discovery.d.ts +11 -3
- package/dist/core/canvas/discovery.d.ts.map +1 -1
- package/dist/core/canvas/discovery.js +18 -3
- package/dist/core/canvas/discovery.js.map +1 -1
- package/dist/core/canvas/plugin-canvases.d.ts +30 -0
- package/dist/core/canvas/plugin-canvases.d.ts.map +1 -0
- package/dist/core/canvas/plugin-canvases.js +51 -0
- package/dist/core/canvas/plugin-canvases.js.map +1 -0
- package/dist/core/canvas/session.d.ts +7 -0
- package/dist/core/canvas/session.d.ts.map +1 -1
- package/dist/core/canvas/session.js +8 -1
- package/dist/core/canvas/session.js.map +1 -1
- package/dist/core/canvas/trust.d.ts +4 -5
- package/dist/core/canvas/trust.d.ts.map +1 -1
- package/dist/core/canvas/trust.js +23 -8
- package/dist/core/canvas/trust.js.map +1 -1
- package/dist/core/extensions/plugins/formats/copilot.d.ts +10 -0
- package/dist/core/extensions/plugins/formats/copilot.d.ts.map +1 -1
- package/dist/core/extensions/plugins/formats/copilot.js +36 -4
- package/dist/core/extensions/plugins/formats/copilot.js.map +1 -1
- package/dist/core/extensions/plugins/formats/jsonManifest.d.ts.map +1 -1
- package/dist/core/extensions/plugins/formats/jsonManifest.js +15 -2
- package/dist/core/extensions/plugins/formats/jsonManifest.js.map +1 -1
- package/dist/core/extensions/plugins/formats/shared.d.ts +30 -2
- package/dist/core/extensions/plugins/formats/shared.d.ts.map +1 -1
- package/dist/core/extensions/plugins/formats/shared.js +72 -0
- package/dist/core/extensions/plugins/formats/shared.js.map +1 -1
- package/dist/core/extensions/plugins/install.d.ts +31 -0
- package/dist/core/extensions/plugins/install.d.ts.map +1 -1
- package/dist/core/extensions/plugins/install.js +102 -12
- package/dist/core/extensions/plugins/install.js.map +1 -1
- package/dist/core/extensions/plugins/listing.d.ts.map +1 -1
- package/dist/core/extensions/plugins/listing.js +1 -0
- package/dist/core/extensions/plugins/listing.js.map +1 -1
- package/dist/core/extensions/plugins/manifest.d.ts +18 -0
- package/dist/core/extensions/plugins/manifest.d.ts.map +1 -1
- package/dist/core/extensions/plugins/manifest.js.map +1 -1
- package/dist/core/extensions/plugins/packaging.d.ts.map +1 -1
- package/dist/core/extensions/plugins/packaging.js +1 -0
- package/dist/core/extensions/plugins/packaging.js.map +1 -1
- package/dist/extensions/core/canvas.d.ts.map +1 -1
- package/dist/extensions/core/canvas.js +1 -1
- package/dist/extensions/core/canvas.js.map +1 -1
- package/dist/extensions/core/marketplace.d.ts.map +1 -1
- package/dist/extensions/core/marketplace.js +28 -1
- package/dist/extensions/core/marketplace.js.map +1 -1
- package/dist/extensions/core/scaffold.d.ts +1 -1
- package/dist/extensions/core/scaffold.d.ts.map +1 -1
- package/dist/extensions/core/scaffold.js +185 -1
- package/dist/extensions/core/scaffold.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +11 -0
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +40 -0
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/dist/modes/interactive/resource-display.d.ts +11 -0
- package/dist/modes/interactive/resource-display.d.ts.map +1 -1
- package/dist/modes/interactive/resource-display.js +20 -1
- package/dist/modes/interactive/resource-display.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
|
@@ -14,6 +14,9 @@ import { setTerminalOwnedByTui } from "../../core/agent-log.js";
|
|
|
14
14
|
import { loadAgentRegistry } from "../../core/agent-registry.js";
|
|
15
15
|
import { parseSkillBlock } from "../../core/agent-session.js";
|
|
16
16
|
import { sumAssistantUsage } from "../../core/agent-session-stats.js";
|
|
17
|
+
import { canvasSearchRoots, discoverCanvasExtensions } from "../../core/canvas/discovery.js";
|
|
18
|
+
import { pluginCanvasExtensions } from "../../core/canvas/plugin-canvases.js";
|
|
19
|
+
import { gateCanvasExtensions } from "../../core/canvas/trust.js";
|
|
17
20
|
import { FooterDataProvider } from "../../core/footer-data-provider.js";
|
|
18
21
|
import { formatDurationSecs } from "../../core/format-duration.js";
|
|
19
22
|
import { formatTokens } from "../../core/format-tokens.js";
|
|
@@ -853,6 +856,27 @@ export class InteractiveMode {
|
|
|
853
856
|
getActiveMode: () => this.footerDataProvider.getActiveMode(),
|
|
854
857
|
getSubagentEnabled: () => this.footerDataProvider.getSubagentEnabled(),
|
|
855
858
|
getAgentCount: () => this.getDispatchableAgentCount(),
|
|
859
|
+
// Cheap and fork-free: directory entries plus each installed plugin's
|
|
860
|
+
// resolved canvas dirs. Computed inside the listing branch, so a quiet
|
|
861
|
+
// startup pays nothing for it.
|
|
862
|
+
getCanvases: () => {
|
|
863
|
+
try {
|
|
864
|
+
const cwd = this.sessionManager.getCwd();
|
|
865
|
+
const found = discoverCanvasExtensions(canvasSearchRoots(cwd, os.homedir()), pluginCanvasExtensions(cwd));
|
|
866
|
+
const gated = gateCanvasExtensions(found, cwd);
|
|
867
|
+
return [
|
|
868
|
+
...gated.runnable.map((e) => ({ id: e.id, scope: e.scope, withheld: false })),
|
|
869
|
+
...gated.withheld.map((w) => ({
|
|
870
|
+
id: w.extension.id,
|
|
871
|
+
scope: w.extension.scope,
|
|
872
|
+
withheld: true,
|
|
873
|
+
})),
|
|
874
|
+
];
|
|
875
|
+
}
|
|
876
|
+
catch {
|
|
877
|
+
return [];
|
|
878
|
+
}
|
|
879
|
+
},
|
|
856
880
|
getAgents: () => {
|
|
857
881
|
if (!this.footerDataProvider.getSubagentEnabled())
|
|
858
882
|
return [];
|
|
@@ -965,6 +989,10 @@ export class InteractiveMode {
|
|
|
965
989
|
this.setupAutocompleteProvider();
|
|
966
990
|
const extensionRunner = this.session.extensionRunner;
|
|
967
991
|
this.setupExtensionShortcuts(extensionRunner);
|
|
992
|
+
// The startup path draws the listing here, because it renders messages
|
|
993
|
+
// without clearing. A *rebind* (/new, /resume, /fork) clears the transcript
|
|
994
|
+
// straight afterwards, so `renderCurrentSessionState` draws it again — this
|
|
995
|
+
// call is the one startup keeps.
|
|
968
996
|
this.showLoadedResources({ force: false, showDiagnosticsWhenQuiet: true });
|
|
969
997
|
this.showStartupNoticesIfNeeded();
|
|
970
998
|
}
|
|
@@ -1004,6 +1032,17 @@ export class InteractiveMode {
|
|
|
1004
1032
|
this.stop();
|
|
1005
1033
|
process.exit(1);
|
|
1006
1034
|
}
|
|
1035
|
+
/**
|
|
1036
|
+
* Reset the transcript to whatever the (possibly just-swapped) session holds.
|
|
1037
|
+
*
|
|
1038
|
+
* Every caller — /new, /resume, /fork — reaches here *after* the runtime has
|
|
1039
|
+
* rebound extensions, and rebinding is what renders the loaded-resource
|
|
1040
|
+
* listing. Clearing the chat therefore wiped the listing a moment after it was
|
|
1041
|
+
* drawn, which is why /reload showed skills, agents and plugins and starting a
|
|
1042
|
+
* new session showed nothing. Re-rendering it here is what makes the surface
|
|
1043
|
+
* common: one call site, so a session change of any kind reports the same
|
|
1044
|
+
* capabilities /reload does.
|
|
1045
|
+
*/
|
|
1007
1046
|
renderCurrentSessionState() {
|
|
1008
1047
|
this.chatContainer.clear();
|
|
1009
1048
|
this.pendingMessagesContainer.clear();
|
|
@@ -1011,6 +1050,7 @@ export class InteractiveMode {
|
|
|
1011
1050
|
this.streamingComponent = undefined;
|
|
1012
1051
|
this.streamingMessage = undefined;
|
|
1013
1052
|
this.pendingTools.clear();
|
|
1053
|
+
this.showLoadedResources({ force: false, showDiagnosticsWhenQuiet: true });
|
|
1014
1054
|
this.renderInitialMessages();
|
|
1015
1055
|
}
|
|
1016
1056
|
/**
|