@ashx-j/lunr 0.2.14 → 0.2.15
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 -1
- package/README.md +4 -4
- package/dist/builtin-extensions/ashxj-tui.d.ts.map +1 -1
- package/dist/builtin-extensions/ashxj-tui.js +4 -4
- package/dist/builtin-extensions/ashxj-tui.js.map +1 -1
- package/dist/builtin-extensions/index.d.ts.map +1 -1
- package/dist/builtin-extensions/index.js +2 -0
- package/dist/builtin-extensions/index.js.map +1 -1
- package/dist/builtin-extensions/lunr-settings-tools.d.ts +4 -0
- package/dist/builtin-extensions/lunr-settings-tools.d.ts.map +1 -0
- package/dist/builtin-extensions/lunr-settings-tools.js +120 -0
- package/dist/builtin-extensions/lunr-settings-tools.js.map +1 -0
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-runtime.d.ts +2 -2
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-runtime.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-runtime.js.map +1 -1
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-step.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-step.js +3 -3
- package/dist/builtin-extensions/pi-prompt-template-model/subagent-step.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/api/delegation.d.ts +2 -2
- package/dist/builtin-extensions/pi-subagents/src/api/delegation.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/api/delegation.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/api/delegation.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js +2 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/index.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts +5 -11
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js +12 -15
- package/dist/builtin-extensions/pi-subagents/src/extension/schemas.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts +3 -3
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js +14 -27
- package/dist/builtin-extensions/pi-subagents/src/extension/tool-description.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js +6 -4
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-execution.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.js +2 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-job-tracker.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js +6 -4
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-resume.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-status.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-status.js +4 -2
- package/dist/builtin-extensions/pi-subagents/src/runs/background/async-status.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.js +3 -35
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-clarify.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js +5 -12
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/chain-execution.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js +14 -31
- package/dist/builtin-extensions/pi-subagents/src/runs/foreground/subagent-executor.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts +2 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js +28 -22
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/model-fallback.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts +1 -0
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/runs/shared/parallel-utils.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js +9 -4
- package/dist/builtin-extensions/pi-subagents/src/shared/child-spec.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/formatters.d.ts +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/formatters.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/formatters.js +2 -2
- package/dist/builtin-extensions/pi-subagents/src/shared/formatters.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts +4 -7
- package/dist/builtin-extensions/pi-subagents/src/shared/types.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/types.js +1 -1
- package/dist/builtin-extensions/pi-subagents/src/shared/types.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.d.ts +3 -3
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.js +7 -6
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-adapters.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-request.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-request.js +3 -3
- package/dist/builtin-extensions/pi-subagents/src/slash/delegation-request.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js +6 -4
- package/dist/builtin-extensions/pi-subagents/src/slash/prompt-workflows.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js +15 -10
- package/dist/builtin-extensions/pi-subagents/src/slash/slash-commands.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/fleet.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/fleet.js +3 -2
- package/dist/builtin-extensions/pi-subagents/src/tui/fleet.js.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts +2 -2
- package/dist/builtin-extensions/pi-subagents/src/tui/render.d.ts.map +1 -1
- package/dist/builtin-extensions/pi-subagents/src/tui/render.js +75 -43
- package/dist/builtin-extensions/pi-subagents/src/tui/render.js.map +1 -1
- package/dist/core/agent-session-runtime.d.ts +5 -1
- package/dist/core/agent-session-runtime.d.ts.map +1 -1
- package/dist/core/agent-session-runtime.js +7 -2
- package/dist/core/agent-session-runtime.js.map +1 -1
- package/dist/core/agent-session.d.ts +2 -0
- package/dist/core/agent-session.d.ts.map +1 -1
- package/dist/core/agent-session.js +18 -6
- package/dist/core/agent-session.js.map +1 -1
- package/dist/core/context-breakdown.d.ts +2 -0
- package/dist/core/context-breakdown.d.ts.map +1 -1
- package/dist/core/context-breakdown.js +6 -2
- package/dist/core/context-breakdown.js.map +1 -1
- package/dist/core/injected-prompt.d.ts +3 -3
- package/dist/core/injected-prompt.d.ts.map +1 -1
- package/dist/core/injected-prompt.js +2 -7
- package/dist/core/injected-prompt.js.map +1 -1
- package/dist/core/large-subagent-launch.d.ts +13 -0
- package/dist/core/large-subagent-launch.d.ts.map +1 -0
- package/dist/core/large-subagent-launch.js +54 -0
- package/dist/core/large-subagent-launch.js.map +1 -0
- package/dist/core/model-instructions.d.ts +24 -0
- package/dist/core/model-instructions.d.ts.map +1 -0
- package/dist/core/model-instructions.js +123 -0
- package/dist/core/model-instructions.js.map +1 -0
- package/dist/core/permissions.d.ts +10 -11
- package/dist/core/permissions.d.ts.map +1 -1
- package/dist/core/permissions.js +107 -40
- package/dist/core/permissions.js.map +1 -1
- package/dist/core/plan-mode.d.ts.map +1 -1
- package/dist/core/plan-mode.js +10 -1
- package/dist/core/plan-mode.js.map +1 -1
- package/dist/core/resource-loader.d.ts +3 -0
- package/dist/core/resource-loader.d.ts.map +1 -1
- package/dist/core/resource-loader.js +13 -4
- package/dist/core/resource-loader.js.map +1 -1
- package/dist/core/runtime-bridges.d.ts +4 -0
- package/dist/core/runtime-bridges.d.ts.map +1 -0
- package/dist/core/runtime-bridges.js +16 -0
- package/dist/core/runtime-bridges.js.map +1 -0
- package/dist/core/sdk.d.ts.map +1 -1
- package/dist/core/sdk.js +1 -0
- package/dist/core/sdk.js.map +1 -1
- package/dist/core/settings-manager.d.ts +13 -0
- package/dist/core/settings-manager.d.ts.map +1 -1
- package/dist/core/settings-manager.js +32 -0
- package/dist/core/settings-manager.js.map +1 -1
- package/dist/core/settings-tools-bridge.d.ts +35 -0
- package/dist/core/settings-tools-bridge.d.ts.map +1 -0
- package/dist/core/settings-tools-bridge.js +56 -0
- package/dist/core/settings-tools-bridge.js.map +1 -0
- package/dist/core/slash-commands.d.ts.map +1 -1
- package/dist/core/slash-commands.js +0 -1
- package/dist/core/slash-commands.js.map +1 -1
- package/dist/core/system-prompt.d.ts.map +1 -1
- package/dist/core/system-prompt.js +1 -1
- package/dist/core/system-prompt.js.map +1 -1
- package/dist/gateway/agent-bridge.d.ts.map +1 -1
- package/dist/gateway/agent-bridge.js +3 -2
- package/dist/gateway/agent-bridge.js.map +1 -1
- package/dist/gateway/approval.d.ts.map +1 -1
- package/dist/gateway/approval.js +4 -3
- package/dist/gateway/approval.js.map +1 -1
- package/dist/gateway/commands.d.ts +1 -1
- package/dist/gateway/commands.d.ts.map +1 -1
- package/dist/gateway/commands.js +1 -18
- package/dist/gateway/commands.js.map +1 -1
- package/dist/gateway/cron.d.ts.map +1 -1
- package/dist/gateway/cron.js +3 -2
- package/dist/gateway/cron.js.map +1 -1
- package/dist/gateway/router.d.ts +1 -1
- package/dist/gateway/router.d.ts.map +1 -1
- package/dist/gateway/router.js +1 -1
- package/dist/gateway/router.js.map +1 -1
- package/dist/main.d.ts.map +1 -1
- package/dist/main.js +3 -9
- package/dist/main.js.map +1 -1
- package/dist/migrations.d.ts.map +1 -1
- package/dist/migrations.js +4 -0
- package/dist/migrations.js.map +1 -1
- package/dist/modes/interactive/components/injected-prompt-message.d.ts +1 -1
- package/dist/modes/interactive/components/injected-prompt-message.d.ts.map +1 -1
- package/dist/modes/interactive/components/injected-prompt-message.js +1 -1
- package/dist/modes/interactive/components/injected-prompt-message.js.map +1 -1
- package/dist/modes/interactive/components/settings-selector.d.ts +8 -1
- package/dist/modes/interactive/components/settings-selector.d.ts.map +1 -1
- package/dist/modes/interactive/components/settings-selector.js +61 -1
- package/dist/modes/interactive/components/settings-selector.js.map +1 -1
- package/dist/modes/interactive/interactive-mode.d.ts +1 -3
- package/dist/modes/interactive/interactive-mode.d.ts.map +1 -1
- package/dist/modes/interactive/interactive-mode.js +26 -50
- package/dist/modes/interactive/interactive-mode.js.map +1 -1
- package/docs/features.md +7 -7
- package/docs/quickstart.md +2 -1
- package/docs/settings.md +3 -1
- package/docs/termux.md +1 -1
- package/docs/usage.md +2 -2
- package/examples/extensions/custom-provider-anthropic/package-lock.json +2 -2
- package/examples/extensions/custom-provider-anthropic/package.json +1 -1
- package/examples/extensions/custom-provider-gitlab-duo/package.json +1 -1
- package/examples/extensions/gondolin/package-lock.json +2 -2
- package/examples/extensions/gondolin/package.json +1 -1
- package/examples/extensions/sandbox/package-lock.json +2 -2
- package/examples/extensions/sandbox/package.json +1 -1
- package/examples/extensions/subagent/README.md +1 -1
- package/examples/extensions/with-deps/package-lock.json +2 -2
- package/examples/extensions/with-deps/package.json +1 -1
- package/package.json +4 -4
- package/dist/core/swarm.d.ts +0 -54
- package/dist/core/swarm.d.ts.map +0 -1
- package/dist/core/swarm.js +0 -119
- package/dist/core/swarm.js.map +0 -1
|
@@ -24,6 +24,7 @@ import { detectInjectedPrompt } from "../../core/injected-prompt.js";
|
|
|
24
24
|
import { KeybindingsManager } from "../../core/keybindings.js";
|
|
25
25
|
import { createCompactionSummaryMessage } from "../../core/messages.js";
|
|
26
26
|
import { isValidProviderBaseUrl, parseModelIds, slugifyProviderId, upsertCustomProvider, } from "../../core/model-config-writer.js";
|
|
27
|
+
import { getGlobalInstructionsPath, getModelInstructionsPath } from "../../core/model-instructions.js";
|
|
27
28
|
import { defaultModelPerProvider, findExactModelReferenceMatch, resolveModelScope } from "../../core/model-resolver.js";
|
|
28
29
|
import { refreshModelCandidatesForInit } from "../../core/model-runtime.js";
|
|
29
30
|
import { getModelTiersBridge } from "../../core/model-tiers.js";
|
|
@@ -37,8 +38,6 @@ import { getSearchCuratorSetting, setSearchCuratorSetting } from "../../core/sea
|
|
|
37
38
|
import { formatMissingSessionCwdPrompt, MissingSessionCwdError } from "../../core/session-cwd.js";
|
|
38
39
|
import { SessionManager, sessionEntryToContextMessages } from "../../core/session-manager.js";
|
|
39
40
|
import { BUILTIN_SLASH_COMMANDS } from "../../core/slash-commands.js";
|
|
40
|
-
// lunr: moved to core/swarm.ts so the gateway can reuse it.
|
|
41
|
-
import { buildSwarmPrompt } from "../../core/swarm.js";
|
|
42
41
|
import { time } from "../../core/timings.js";
|
|
43
42
|
import { hasTrustRequiringProjectResources, ProjectTrustStore } from "../../core/trust-manager.js";
|
|
44
43
|
import { checkForUpdate, markUpdateNotified } from "../../core/update-check.js";
|
|
@@ -272,8 +271,6 @@ export class InteractiveMode {
|
|
|
272
271
|
signalCleanupHandlers = [];
|
|
273
272
|
// Track if editor is in bash mode (text starts with !)
|
|
274
273
|
isBashMode = false;
|
|
275
|
-
// Track whether a /swarm orchestration turn is in flight (footer status)
|
|
276
|
-
swarmMode = false;
|
|
277
274
|
// lunr: mode in effect before the current plan stretch. Used by approve / `/plan off`
|
|
278
275
|
// / `/plan <text>` to leave plan. Shift+Tab and `/mode` pick the destination themselves.
|
|
279
276
|
previousPermissionMode;
|
|
@@ -606,17 +603,8 @@ export class InteractiveMode {
|
|
|
606
603
|
this.startPlanUsagePolling();
|
|
607
604
|
// lunr: register the permission approval dialog handler so manual mode can prompt.
|
|
608
605
|
registerApprovalHandler(async (req) => {
|
|
609
|
-
|
|
610
|
-
|
|
611
|
-
// this.swarmMode at turn end, same as an explicit /swarm).
|
|
612
|
-
if (req.kind === "swarm") {
|
|
613
|
-
const resp = await this.showSwarmApprovalDialog(req);
|
|
614
|
-
const decision = typeof resp === "string" ? resp : resp.decision;
|
|
615
|
-
if (decision !== "reject") {
|
|
616
|
-
this.swarmMode = true;
|
|
617
|
-
this.setExtensionStatus("swarm", "swarm");
|
|
618
|
-
}
|
|
619
|
-
return resp;
|
|
606
|
+
if (req.kind === "large-subagent-launch") {
|
|
607
|
+
return this.showLargeSubagentLaunchApprovalDialog(req);
|
|
620
608
|
}
|
|
621
609
|
// lunr: plan approval (present_plan tool). Any approve leaves plan mode —
|
|
622
610
|
// restore runs BEFORE resolving so the model's next tool call already
|
|
@@ -2559,12 +2547,6 @@ export class InteractiveMode {
|
|
|
2559
2547
|
await this.handleInitCommand();
|
|
2560
2548
|
return;
|
|
2561
2549
|
}
|
|
2562
|
-
if (text === "/swarm" || text.startsWith("/swarm ")) {
|
|
2563
|
-
const task = text.startsWith("/swarm ") ? text.slice(7).trim() : "";
|
|
2564
|
-
this.editor.setText("");
|
|
2565
|
-
await this.handleSwarmCommand(task);
|
|
2566
|
-
return;
|
|
2567
|
-
}
|
|
2568
2550
|
if (text === "/debug") {
|
|
2569
2551
|
this.handleDebugCommand();
|
|
2570
2552
|
this.editor.setText("");
|
|
@@ -2962,10 +2944,6 @@ export class InteractiveMode {
|
|
|
2962
2944
|
this.streamingMessage = undefined;
|
|
2963
2945
|
}
|
|
2964
2946
|
this.pendingTools.clear();
|
|
2965
|
-
if (this.swarmMode) {
|
|
2966
|
-
this.swarmMode = false;
|
|
2967
|
-
this.setExtensionStatus("swarm", undefined);
|
|
2968
|
-
}
|
|
2969
2947
|
this.maybeAutoNameSession();
|
|
2970
2948
|
// lunr: capture tree-scope changes at turn boundary (bash side-effects).
|
|
2971
2949
|
captureTreeChanges(this.sessionManager.getCwd(), this.sessionManager.getSessionId());
|
|
@@ -3146,7 +3124,7 @@ export class InteractiveMode {
|
|
|
3146
3124
|
this.chatContainer.addChild(new Spacer(1));
|
|
3147
3125
|
}
|
|
3148
3126
|
const skillBlock = parseSkillBlock(textContent);
|
|
3149
|
-
// lunr: render injected prompts (/
|
|
3127
|
+
// lunr: render injected prompts (/research /goal) collapsed instead
|
|
3150
3128
|
// of dumping the full multi-line prompt body verbatim.
|
|
3151
3129
|
const injected = detectInjectedPrompt(textContent);
|
|
3152
3130
|
if (injected) {
|
|
@@ -3998,6 +3976,10 @@ export class InteractiveMode {
|
|
|
3998
3976
|
clearOnShrink: this.settingsManager.getClearOnShrink(),
|
|
3999
3977
|
showTerminalProgress: this.settingsManager.getShowTerminalProgress(),
|
|
4000
3978
|
modelTiers: this.settingsManager.getModelTiers(),
|
|
3979
|
+
modelInstructions: this.settingsManager.getModelInstructions(),
|
|
3980
|
+
globalInstructionsPath: getGlobalInstructionsPath(getAgentDir()),
|
|
3981
|
+
modelInstructionsPath: getModelInstructionsPath(getAgentDir(), this.session.model?.id ?? "no-model-selected"),
|
|
3982
|
+
confirmLargeSubagentLaunches: this.settingsManager.getConfirmLargeSubagentLaunches(),
|
|
4001
3983
|
memoryEnabled: this.settingsManager.getMemoryEnabled(),
|
|
4002
3984
|
memoryCharCap: this.settingsManager.getMemoryCharCap(),
|
|
4003
3985
|
searchCurator: getSearchCuratorSetting(),
|
|
@@ -4183,6 +4165,17 @@ export class InteractiveMode {
|
|
|
4183
4165
|
onModelTierThinkingChange: (tier, level) => {
|
|
4184
4166
|
this.settingsManager.setTierThinking(tier, level);
|
|
4185
4167
|
},
|
|
4168
|
+
onModelInstructionsEnabledChange: (enabled) => {
|
|
4169
|
+
this.settingsManager.setModelInstructionsEnabled(enabled);
|
|
4170
|
+
this.session.refreshToolRegistry();
|
|
4171
|
+
},
|
|
4172
|
+
onModelInstructionsModeChange: (mode) => {
|
|
4173
|
+
this.settingsManager.setModelInstructionsMode(mode);
|
|
4174
|
+
this.session.refreshToolRegistry();
|
|
4175
|
+
},
|
|
4176
|
+
onConfirmLargeSubagentLaunchesChange: (enabled) => {
|
|
4177
|
+
this.settingsManager.setConfirmLargeSubagentLaunches(enabled);
|
|
4178
|
+
},
|
|
4186
4179
|
getTierThinkingLevels: (tier) => {
|
|
4187
4180
|
const model = this.resolveModelReference(this.settingsManager.getTierModel(tier));
|
|
4188
4181
|
if (model)
|
|
@@ -5585,24 +5578,6 @@ export class InteractiveMode {
|
|
|
5585
5578
|
await this.sendUserMessageAfterDeferredBuiltins(prompt);
|
|
5586
5579
|
this.showStatus("AGENTS.md is being generated — run /reload when it finishes to load it into context.");
|
|
5587
5580
|
}
|
|
5588
|
-
async handleSwarmCommand(task) {
|
|
5589
|
-
if (task.length === 0) {
|
|
5590
|
-
if (this.swarmMode) {
|
|
5591
|
-
this.showStatus("Swarm mode is active — run /subagents-fleet to monitor the fleet.");
|
|
5592
|
-
}
|
|
5593
|
-
else {
|
|
5594
|
-
this.showStatus("Usage: /swarm <task> — decomposes the task across parallel subagents. Monitor with /subagents-fleet.");
|
|
5595
|
-
}
|
|
5596
|
-
return;
|
|
5597
|
-
}
|
|
5598
|
-
if (this.session.isStreaming) {
|
|
5599
|
-
this.showWarning("Wait for the current response to finish before running /swarm.");
|
|
5600
|
-
return;
|
|
5601
|
-
}
|
|
5602
|
-
this.swarmMode = true;
|
|
5603
|
-
this.setExtensionStatus("swarm", "swarm");
|
|
5604
|
-
await this.sendUserMessageAfterDeferredBuiltins(buildSwarmPrompt(task));
|
|
5605
|
-
}
|
|
5606
5581
|
// lunr: /undo and /edit rewind the same session via navigateTree (no fork).
|
|
5607
5582
|
// /undo leaves the editor alone; /edit pastes the undone user text. /redo
|
|
5608
5583
|
// pops the previous leaf and navigates back.
|
|
@@ -6142,7 +6117,8 @@ export class InteractiveMode {
|
|
|
6142
6117
|
tools,
|
|
6143
6118
|
messages: this.session.messages,
|
|
6144
6119
|
contextWindow,
|
|
6145
|
-
globalAgentsPath:
|
|
6120
|
+
globalAgentsPath: getGlobalInstructionsPath(getAgentDir()),
|
|
6121
|
+
modelAgentsPath: getModelInstructionsPath(getAgentDir(), model.id),
|
|
6146
6122
|
});
|
|
6147
6123
|
}
|
|
6148
6124
|
handleFastCommand(arg) {
|
|
@@ -6374,20 +6350,20 @@ export class InteractiveMode {
|
|
|
6374
6350
|
});
|
|
6375
6351
|
});
|
|
6376
6352
|
}
|
|
6377
|
-
//
|
|
6378
|
-
//
|
|
6353
|
+
// Approval dialog for one subagent call launching more than two children.
|
|
6354
|
+
// "Reject with feedback" collects a one-line
|
|
6379
6355
|
// reason that becomes the block reason the model sees, so it can adjust the plan.
|
|
6380
|
-
async
|
|
6356
|
+
async showLargeSubagentLaunchApprovalDialog(req) {
|
|
6381
6357
|
return new Promise((resolve) => {
|
|
6382
6358
|
this.showSelector((done) => {
|
|
6383
|
-
const selector = new ExtensionSelectorComponent("
|
|
6359
|
+
const selector = new ExtensionSelectorComponent("Approve large subagent launch?", ["Approve once", "Approve for this session", "Reject", "Reject with feedback"], (option) => {
|
|
6384
6360
|
done();
|
|
6385
6361
|
if (option === "Approve once")
|
|
6386
6362
|
resolve("once");
|
|
6387
6363
|
else if (option === "Approve for this session")
|
|
6388
6364
|
resolve("session");
|
|
6389
6365
|
else if (option === "Reject with feedback") {
|
|
6390
|
-
void this.showExtensionInput("Reject
|
|
6366
|
+
void this.showExtensionInput("Reject large subagent launch", "feedback for the agent (optional)").then((feedback) => {
|
|
6391
6367
|
const trimmed = feedback?.trim();
|
|
6392
6368
|
resolve(trimmed ? { decision: "reject", feedback: trimmed } : "reject");
|
|
6393
6369
|
});
|