@google/gemini-cli-core 0.35.0-preview.2 → 0.36.0-nightly.20260321.fc03891a1
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/README.md +0 -1
- package/dist/docs/CONTRIBUTING.md +0 -15
- package/dist/docs/admin/enterprise-controls.md +61 -0
- package/dist/docs/changelogs/index.md +11 -0
- package/dist/docs/changelogs/latest.md +459 -209
- package/dist/docs/changelogs/preview.md +355 -454
- package/dist/docs/cli/checkpointing.md +3 -1
- package/dist/docs/cli/cli-reference.md +1 -0
- package/dist/docs/cli/custom-commands.md +7 -5
- package/dist/docs/cli/enterprise.md +15 -9
- package/dist/docs/cli/git-worktrees.md +107 -0
- package/dist/docs/cli/model-steering.md +4 -3
- package/dist/docs/cli/model.md +3 -1
- package/dist/docs/cli/notifications.md +4 -3
- package/dist/docs/cli/plan-mode.md +28 -8
- package/dist/docs/cli/sandbox.md +24 -4
- package/dist/docs/cli/session-management.md +6 -0
- package/dist/docs/cli/settings.md +14 -1
- package/dist/docs/cli/skills.md +4 -2
- package/dist/docs/cli/system-prompt.md +3 -1
- package/dist/docs/cli/telemetry.md +6 -3
- package/dist/docs/cli/themes.md +12 -8
- package/dist/docs/cli/tutorials/file-management.md +8 -6
- package/dist/docs/cli/tutorials/mcp-setup.md +5 -3
- package/dist/docs/cli/tutorials/memory-management.md +6 -6
- package/dist/docs/cli/tutorials/plan-mode-steering.md +4 -3
- package/dist/docs/cli/tutorials/shell-commands.md +3 -3
- package/dist/docs/core/remote-agents.md +8 -3
- package/dist/docs/core/subagents.md +21 -13
- package/dist/docs/extensions/reference.md +8 -3
- package/dist/docs/get-started/authentication.md +60 -50
- package/dist/docs/get-started/examples.md +3 -1
- package/dist/docs/get-started/gemini-3.md +11 -5
- package/dist/docs/hooks/index.md +3 -1
- package/dist/docs/hooks/writing-hooks.md +2 -2
- package/dist/docs/ide-integration/ide-companion-spec.md +5 -3
- package/dist/docs/ide-integration/index.md +8 -4
- package/dist/docs/issue-and-pr-automation.md +3 -1
- package/dist/docs/local-development.md +3 -1
- package/dist/docs/reference/commands.md +2 -2
- package/dist/docs/reference/configuration.md +410 -16
- package/dist/docs/reference/policy-engine.md +47 -19
- package/dist/docs/reference/tools.md +3 -1
- package/dist/docs/release-confidence.md +7 -3
- package/dist/docs/releases.md +11 -7
- package/dist/docs/resources/faq.md +13 -0
- package/dist/docs/resources/tos-privacy.md +4 -2
- package/dist/docs/resources/troubleshooting.md +3 -1
- package/dist/docs/sidebar.json +5 -0
- package/dist/docs/tools/mcp-server.md +17 -9
- package/dist/docs/tools/planning.md +3 -1
- package/dist/docs/tools/shell.md +4 -4
- package/dist/docs/tools/todos.md +2 -1
- package/dist/{google-gemini-cli-core-0.35.0-preview.1.tgz → google-gemini-cli-core-0.36.0-nightly.20260317.2f90b4653.tgz} +0 -0
- package/dist/src/agent/agent-session.d.ts +37 -0
- package/dist/src/agent/agent-session.js +168 -0
- package/dist/src/agent/agent-session.js.map +1 -0
- package/dist/src/agent/agent-session.test.d.ts +6 -0
- package/dist/src/agent/agent-session.test.js +217 -0
- package/dist/src/agent/agent-session.test.js.map +1 -0
- package/dist/src/agent/content-utils.d.ts +33 -0
- package/dist/src/agent/content-utils.js +135 -0
- package/dist/src/agent/content-utils.js.map +1 -0
- package/dist/src/agent/content-utils.test.d.ts +6 -0
- package/dist/src/agent/content-utils.test.js +223 -0
- package/dist/src/agent/content-utils.test.js.map +1 -0
- package/dist/src/agent/mock.d.ts +9 -12
- package/dist/src/agent/mock.js +88 -129
- package/dist/src/agent/mock.js.map +1 -1
- package/dist/src/agent/mock.test.js +114 -144
- package/dist/src/agent/mock.test.js.map +1 -1
- package/dist/src/agent/types.d.ts +21 -21
- package/dist/src/agents/a2a-client-manager.d.ts +2 -11
- package/dist/src/agents/a2a-client-manager.js +3 -19
- package/dist/src/agents/a2a-client-manager.js.map +1 -1
- package/dist/src/agents/a2a-client-manager.test.js +6 -10
- package/dist/src/agents/a2a-client-manager.test.js.map +1 -1
- package/dist/src/agents/agent-scheduler.d.ts +6 -0
- package/dist/src/agents/agent-scheduler.js +3 -2
- package/dist/src/agents/agent-scheduler.js.map +1 -1
- package/dist/src/agents/agent-scheduler.test.js +6 -0
- package/dist/src/agents/agent-scheduler.test.js.map +1 -1
- package/dist/src/agents/browser/browserAgentDefinition.js +10 -1
- package/dist/src/agents/browser/browserAgentDefinition.js.map +1 -1
- package/dist/src/agents/browser/browserAgentFactory.js +62 -1
- package/dist/src/agents/browser/browserAgentFactory.js.map +1 -1
- package/dist/src/agents/browser/browserAgentFactory.test.js +73 -0
- package/dist/src/agents/browser/browserAgentFactory.test.js.map +1 -1
- package/dist/src/agents/browser/browserAgentInvocation.js +2 -97
- package/dist/src/agents/browser/browserAgentInvocation.js.map +1 -1
- package/dist/src/agents/browser/browserAgentInvocation.test.js +30 -0
- package/dist/src/agents/browser/browserAgentInvocation.test.js.map +1 -1
- package/dist/src/agents/browser/browserManager.js +11 -0
- package/dist/src/agents/browser/browserManager.js.map +1 -1
- package/dist/src/agents/browser/browserManager.test.js +37 -0
- package/dist/src/agents/browser/browserManager.test.js.map +1 -1
- package/dist/src/agents/browser/mcpToolWrapper.d.ts +4 -2
- package/dist/src/agents/browser/mcpToolWrapper.js +30 -8
- package/dist/src/agents/browser/mcpToolWrapper.js.map +1 -1
- package/dist/src/agents/browser/mcpToolWrapper.test.js +30 -0
- package/dist/src/agents/browser/mcpToolWrapper.test.js.map +1 -1
- package/dist/src/agents/browser/mcpToolWrapperConfirmation.test.js +3 -3
- package/dist/src/agents/codebase-investigator.js +3 -3
- package/dist/src/agents/codebase-investigator.js.map +1 -1
- package/dist/src/agents/local-executor.d.ts +3 -1
- package/dist/src/agents/local-executor.js +138 -39
- package/dist/src/agents/local-executor.js.map +1 -1
- package/dist/src/agents/local-executor.test.js +305 -12
- package/dist/src/agents/local-executor.test.js.map +1 -1
- package/dist/src/agents/local-invocation.js +43 -24
- package/dist/src/agents/local-invocation.js.map +1 -1
- package/dist/src/agents/local-invocation.test.js +89 -14
- package/dist/src/agents/local-invocation.test.js.map +1 -1
- package/dist/src/agents/memory-manager-agent.d.ts +25 -0
- package/dist/src/agents/memory-manager-agent.js +137 -0
- package/dist/src/agents/memory-manager-agent.js.map +1 -0
- package/dist/src/agents/memory-manager-agent.test.d.ts +6 -0
- package/dist/src/agents/memory-manager-agent.test.js +117 -0
- package/dist/src/agents/memory-manager-agent.test.js.map +1 -0
- package/dist/src/agents/registry.js +21 -3
- package/dist/src/agents/registry.js.map +1 -1
- package/dist/src/agents/registry.test.js +23 -24
- package/dist/src/agents/registry.test.js.map +1 -1
- package/dist/src/agents/remote-invocation.d.ts +3 -1
- package/dist/src/agents/remote-invocation.js +10 -5
- package/dist/src/agents/remote-invocation.js.map +1 -1
- package/dist/src/agents/remote-invocation.test.js +64 -41
- package/dist/src/agents/remote-invocation.test.js.map +1 -1
- package/dist/src/agents/subagent-tool-wrapper.js +1 -1
- package/dist/src/agents/subagent-tool-wrapper.js.map +1 -1
- package/dist/src/agents/types.d.ts +12 -0
- package/dist/src/agents/types.js +14 -0
- package/dist/src/agents/types.js.map +1 -1
- package/dist/src/availability/policyHelpers.js +41 -1
- package/dist/src/availability/policyHelpers.js.map +1 -1
- package/dist/src/availability/policyHelpers.test.js +47 -0
- package/dist/src/availability/policyHelpers.test.js.map +1 -1
- package/dist/src/code_assist/admin/admin_controls.js +11 -0
- package/dist/src/code_assist/admin/admin_controls.js.map +1 -1
- package/dist/src/code_assist/admin/admin_controls.test.js +68 -0
- package/dist/src/code_assist/admin/admin_controls.test.js.map +1 -1
- package/dist/src/code_assist/admin/mcpUtils.d.ts +16 -1
- package/dist/src/code_assist/admin/mcpUtils.js +43 -0
- package/dist/src/code_assist/admin/mcpUtils.js.map +1 -1
- package/dist/src/code_assist/admin/mcpUtils.test.js +130 -1
- package/dist/src/code_assist/admin/mcpUtils.test.js.map +1 -1
- package/dist/src/code_assist/types.d.ts +458 -0
- package/dist/src/code_assist/types.js +26 -0
- package/dist/src/code_assist/types.js.map +1 -1
- package/dist/src/config/agent-loop-context.d.ts +6 -0
- package/dist/src/config/config.d.ts +41 -10
- package/dist/src/config/config.js +96 -19
- package/dist/src/config/config.js.map +1 -1
- package/dist/src/config/config.test.js +29 -1
- package/dist/src/config/config.test.js.map +1 -1
- package/dist/src/config/defaultModelConfigs.js +265 -9
- package/dist/src/config/defaultModelConfigs.js.map +1 -1
- package/dist/src/config/models.d.ts +13 -2
- package/dist/src/config/models.js +31 -3
- package/dist/src/config/models.js.map +1 -1
- package/dist/src/config/models.test.js +52 -7
- package/dist/src/config/models.test.js.map +1 -1
- package/dist/src/config/path-validation.test.d.ts +6 -0
- package/dist/src/config/path-validation.test.js +59 -0
- package/dist/src/config/path-validation.test.js.map +1 -0
- package/dist/src/core/client.d.ts +1 -0
- package/dist/src/core/client.js +6 -1
- package/dist/src/core/client.js.map +1 -1
- package/dist/src/core/client.test.js +9 -1
- package/dist/src/core/client.test.js.map +1 -1
- package/dist/src/core/contentGenerator.js +36 -6
- package/dist/src/core/contentGenerator.js.map +1 -1
- package/dist/src/core/contentGenerator.test.js +97 -3
- package/dist/src/core/contentGenerator.test.js.map +1 -1
- package/dist/src/core/geminiChat.js +2 -2
- package/dist/src/core/geminiChat.js.map +1 -1
- package/dist/src/core/prompts.test.js +10 -0
- package/dist/src/core/prompts.test.js.map +1 -1
- package/dist/src/generated/git-commit.d.ts +2 -2
- package/dist/src/generated/git-commit.js +2 -2
- package/dist/src/generated/git-commit.js.map +1 -1
- package/dist/src/ide/ide-connection-utils.js +2 -7
- package/dist/src/ide/ide-connection-utils.js.map +1 -1
- package/dist/src/ide/ide-connection-utils.test.js +7 -0
- package/dist/src/ide/ide-connection-utils.test.js.map +1 -1
- package/dist/src/index.d.ts +4 -0
- package/dist/src/index.js +4 -0
- package/dist/src/index.js.map +1 -1
- package/dist/src/policy/config.js +2 -0
- package/dist/src/policy/config.js.map +1 -1
- package/dist/src/policy/config.test.js +15 -0
- package/dist/src/policy/config.test.js.map +1 -1
- package/dist/src/policy/memory-manager-policy.test.d.ts +6 -0
- package/dist/src/policy/memory-manager-policy.test.js +80 -0
- package/dist/src/policy/memory-manager-policy.test.js.map +1 -0
- package/dist/src/policy/policies/memory-manager.toml +10 -0
- package/dist/src/policy/policies/plan.toml +14 -0
- package/dist/src/policy/policies/yolo.toml +1 -0
- package/dist/src/policy/policy-engine.js +33 -6
- package/dist/src/policy/policy-engine.js.map +1 -1
- package/dist/src/policy/policy-engine.test.js +85 -3
- package/dist/src/policy/policy-engine.test.js.map +1 -1
- package/dist/src/policy/policy-updater.test.js +44 -0
- package/dist/src/policy/policy-updater.test.js.map +1 -1
- package/dist/src/policy/toml-loader.js +2 -0
- package/dist/src/policy/toml-loader.js.map +1 -1
- package/dist/src/policy/types.d.ts +11 -0
- package/dist/src/policy/types.js +5 -0
- package/dist/src/policy/types.js.map +1 -1
- package/dist/src/prompts/promptProvider.js +5 -3
- package/dist/src/prompts/promptProvider.js.map +1 -1
- package/dist/src/prompts/promptProvider.test.js +1 -0
- package/dist/src/prompts/promptProvider.test.js.map +1 -1
- package/dist/src/prompts/snippets-memory-manager.test.d.ts +6 -0
- package/dist/src/prompts/snippets-memory-manager.test.js +31 -0
- package/dist/src/prompts/snippets-memory-manager.test.js.map +1 -0
- package/dist/src/prompts/snippets.d.ts +2 -0
- package/dist/src/prompts/snippets.js +7 -3
- package/dist/src/prompts/snippets.js.map +1 -1
- package/dist/src/prompts/snippets.legacy.d.ts +5 -0
- package/dist/src/prompts/snippets.legacy.js +30 -2
- package/dist/src/prompts/snippets.legacy.js.map +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js +1 -1
- package/dist/src/routing/strategies/classifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/defaultStrategy.js +1 -1
- package/dist/src/routing/strategies/defaultStrategy.js.map +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js +1 -1
- package/dist/src/routing/strategies/fallbackStrategy.js.map +1 -1
- package/dist/src/routing/strategies/numericalClassifierStrategy.js +1 -1
- package/dist/src/routing/strategies/numericalClassifierStrategy.js.map +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js +1 -1
- package/dist/src/routing/strategies/overrideStrategy.js.map +1 -1
- package/dist/src/sandbox/macos/MacOsSandboxManager.d.ts +28 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.d.ts +1 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js +160 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.integration.test.js.map +1 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.js +33 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.js.map +1 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.test.d.ts +1 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.test.js +87 -0
- package/dist/src/sandbox/macos/MacOsSandboxManager.test.js.map +1 -0
- package/dist/src/sandbox/macos/baseProfile.d.ts +20 -0
- package/dist/src/sandbox/macos/baseProfile.js +93 -0
- package/dist/src/sandbox/macos/baseProfile.js.map +1 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.d.ts +25 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.js +58 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.js.map +1 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.d.ts +1 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js +80 -0
- package/dist/src/sandbox/macos/seatbeltArgsBuilder.test.js.map +1 -0
- package/dist/src/scheduler/scheduler.js +2 -0
- package/dist/src/scheduler/scheduler.js.map +1 -1
- package/dist/src/services/contextManager.js +2 -3
- package/dist/src/services/contextManager.js.map +1 -1
- package/dist/src/services/contextManager.test.js +1 -1
- package/dist/src/services/contextManager.test.js.map +1 -1
- package/dist/src/services/modelConfigService.d.ts +36 -1
- package/dist/src/services/modelConfigService.js +66 -0
- package/dist/src/services/modelConfigService.js.map +1 -1
- package/dist/src/services/sandboxManager.d.ts +3 -4
- package/dist/src/services/sandboxManager.js +1 -14
- package/dist/src/services/sandboxManager.js.map +1 -1
- package/dist/src/services/sandboxManager.test.js +13 -16
- package/dist/src/services/sandboxManager.test.js.map +1 -1
- package/dist/src/services/sandboxManagerFactory.d.ts +11 -0
- package/dist/src/services/sandboxManagerFactory.js +31 -0
- package/dist/src/services/sandboxManagerFactory.js.map +1 -0
- package/dist/src/services/sandboxedFileSystemService.d.ts +17 -0
- package/dist/src/services/sandboxedFileSystemService.js +95 -0
- package/dist/src/services/sandboxedFileSystemService.js.map +1 -0
- package/dist/src/services/sandboxedFileSystemService.test.d.ts +6 -0
- package/dist/src/services/sandboxedFileSystemService.test.js +87 -0
- package/dist/src/services/sandboxedFileSystemService.test.js.map +1 -0
- package/dist/src/services/scripts/GeminiSandbox.cs +370 -0
- package/dist/src/services/shellExecutionService.d.ts +2 -0
- package/dist/src/services/shellExecutionService.js +79 -75
- package/dist/src/services/shellExecutionService.js.map +1 -1
- package/dist/src/services/trackerTypes.d.ts +1 -0
- package/dist/src/services/trackerTypes.js +1 -0
- package/dist/src/services/trackerTypes.js.map +1 -1
- package/dist/src/services/windowsSandboxManager.d.ts +27 -0
- package/dist/src/services/windowsSandboxManager.js +148 -0
- package/dist/src/services/windowsSandboxManager.js.map +1 -0
- package/dist/src/services/windowsSandboxManager.test.d.ts +6 -0
- package/dist/src/services/windowsSandboxManager.test.js +59 -0
- package/dist/src/services/windowsSandboxManager.test.js.map +1 -0
- package/dist/src/services/worktreeService.d.ts +33 -0
- package/dist/src/services/worktreeService.js +174 -0
- package/dist/src/services/worktreeService.js.map +1 -0
- package/dist/src/services/worktreeService.test.d.ts +6 -0
- package/dist/src/services/worktreeService.test.js +200 -0
- package/dist/src/services/worktreeService.test.js.map +1 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js +4 -0
- package/dist/src/telemetry/clearcut-logger/clearcut-logger.js.map +1 -1
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.d.ts +1 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js +2 -0
- package/dist/src/telemetry/clearcut-logger/event-metadata-key.js.map +1 -1
- package/dist/src/telemetry/loggers.test.js +62 -40
- package/dist/src/telemetry/loggers.test.js.map +1 -1
- package/dist/src/telemetry/types.d.ts +1 -0
- package/dist/src/telemetry/types.js +3 -0
- package/dist/src/telemetry/types.js.map +1 -1
- package/dist/src/tools/definitions/model-family-sets/default-legacy.js +8 -1
- package/dist/src/tools/definitions/model-family-sets/default-legacy.js.map +1 -1
- package/dist/src/tools/definitions/model-family-sets/gemini-3.js +8 -1
- package/dist/src/tools/definitions/model-family-sets/gemini-3.js.map +1 -1
- package/dist/src/tools/exit-plan-mode.d.ts +6 -1
- package/dist/src/tools/exit-plan-mode.js +17 -6
- package/dist/src/tools/exit-plan-mode.js.map +1 -1
- package/dist/src/tools/exit-plan-mode.test.js +22 -1
- package/dist/src/tools/exit-plan-mode.test.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.d.ts +22 -3
- package/dist/src/tools/mcp-client-manager.js +84 -32
- package/dist/src/tools/mcp-client-manager.js.map +1 -1
- package/dist/src/tools/mcp-client-manager.test.js +76 -56
- package/dist/src/tools/mcp-client-manager.test.js.map +1 -1
- package/dist/src/tools/mcp-client.d.ts +15 -6
- package/dist/src/tools/mcp-client.js +85 -71
- package/dist/src/tools/mcp-client.js.map +1 -1
- package/dist/src/tools/mcp-client.test.js +195 -88
- package/dist/src/tools/mcp-client.test.js.map +1 -1
- package/dist/src/tools/tool-registry.d.ts +2 -1
- package/dist/src/tools/tool-registry.js +12 -1
- package/dist/src/tools/tool-registry.js.map +1 -1
- package/dist/src/tools/tool-registry.test.js +15 -0
- package/dist/src/tools/tool-registry.test.js.map +1 -1
- package/dist/src/tools/tools.d.ts +1 -1
- package/dist/src/tools/tools.js.map +1 -1
- package/dist/src/tools/trackerTools.js +6 -1
- package/dist/src/tools/trackerTools.js.map +1 -1
- package/dist/src/tools/trackerTools.test.js +9 -1
- package/dist/src/tools/trackerTools.test.js.map +1 -1
- package/dist/src/tools/write-todos.js +1 -0
- package/dist/src/tools/write-todos.js.map +1 -1
- package/dist/src/tools/write-todos.test.js +4 -1
- package/dist/src/tools/write-todos.test.js.map +1 -1
- package/dist/src/utils/agent-sanitization-utils.d.ts +23 -0
- package/dist/src/utils/agent-sanitization-utils.js +123 -0
- package/dist/src/utils/agent-sanitization-utils.js.map +1 -0
- package/dist/src/utils/agent-sanitization-utils.test.d.ts +6 -0
- package/dist/src/utils/agent-sanitization-utils.test.js +83 -0
- package/dist/src/utils/agent-sanitization-utils.test.js.map +1 -0
- package/dist/src/utils/browserConsent.d.ts +17 -0
- package/dist/src/utils/browserConsent.js +78 -0
- package/dist/src/utils/browserConsent.js.map +1 -0
- package/dist/src/utils/browserConsent.test.d.ts +6 -0
- package/dist/src/utils/browserConsent.test.js +93 -0
- package/dist/src/utils/browserConsent.test.js.map +1 -0
- package/dist/src/utils/compatibility.d.ts +16 -0
- package/dist/src/utils/compatibility.js +58 -9
- package/dist/src/utils/compatibility.js.map +1 -1
- package/dist/src/utils/compatibility.test.js +127 -29
- package/dist/src/utils/compatibility.test.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.d.ts +2 -2
- package/dist/src/utils/memoryDiscovery.js +5 -10
- package/dist/src/utils/memoryDiscovery.js.map +1 -1
- package/dist/src/utils/memoryDiscovery.test.js +37 -37
- package/dist/src/utils/memoryDiscovery.test.js.map +1 -1
- package/dist/src/utils/memoryImportProcessor.js +5 -5
- package/dist/src/utils/memoryImportProcessor.js.map +1 -1
- package/dist/src/utils/surface.js +4 -3
- package/dist/src/utils/surface.js.map +1 -1
- package/dist/src/utils/toolCallContext.d.ts +2 -0
- package/dist/src/utils/toolCallContext.js.map +1 -1
- package/dist/tsconfig.tsbuildinfo +1 -1
- package/package.json +2 -1
|
@@ -33,7 +33,7 @@ describe('mcpToolWrapper Confirmation', () => {
|
|
|
33
33
|
const details = await invocation.getConfirmationDetails(new AbortController().signal);
|
|
34
34
|
expect(details).toEqual(expect.objectContaining({
|
|
35
35
|
type: 'mcp',
|
|
36
|
-
serverName: '
|
|
36
|
+
serverName: 'browser_agent',
|
|
37
37
|
toolName: 'test_tool',
|
|
38
38
|
}));
|
|
39
39
|
// Verify onConfirm publishes policy update
|
|
@@ -43,7 +43,7 @@ describe('mcpToolWrapper Confirmation', () => {
|
|
|
43
43
|
}
|
|
44
44
|
expect(mockMessageBus.publish).toHaveBeenCalledWith(expect.objectContaining({
|
|
45
45
|
type: MessageBusType.UPDATE_POLICY,
|
|
46
|
-
mcpName: '
|
|
46
|
+
mcpName: 'browser_agent',
|
|
47
47
|
persist: false,
|
|
48
48
|
}));
|
|
49
49
|
});
|
|
@@ -52,7 +52,7 @@ describe('mcpToolWrapper Confirmation', () => {
|
|
|
52
52
|
const invocation = tools[0].build({});
|
|
53
53
|
const options = invocation.getPolicyUpdateOptions(ToolConfirmationOutcome.ProceedAlways);
|
|
54
54
|
expect(options).toEqual({
|
|
55
|
-
mcpName: '
|
|
55
|
+
mcpName: 'browser_agent',
|
|
56
56
|
});
|
|
57
57
|
});
|
|
58
58
|
});
|
|
@@ -40,9 +40,9 @@ export const CodebaseInvestigatorAgent = (config) => {
|
|
|
40
40
|
name: 'codebase_investigator',
|
|
41
41
|
kind: 'local',
|
|
42
42
|
displayName: 'Codebase Investigator Agent',
|
|
43
|
-
description: `The specialized tool for codebase analysis, architectural mapping, and understanding system-wide dependencies.
|
|
44
|
-
|
|
45
|
-
|
|
43
|
+
description: `The specialized tool for codebase analysis, architectural mapping, and understanding system-wide dependencies. ` +
|
|
44
|
+
`Invoke this tool for tasks like vague requests, bug root-cause analysis, system refactoring, comprehensive feature implementation or to answer questions about the codebase that require investigation. ` +
|
|
45
|
+
`It returns a structured report with key file paths, symbols, and actionable architectural insights.`,
|
|
46
46
|
inputConfig: {
|
|
47
47
|
inputSchema: {
|
|
48
48
|
type: 'object',
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"codebase-investigator.js","sourceRoot":"","sources":["../../../src/agents/codebase-investigator.ts"],"names":[],"mappings":"AAAA;;;;GAIG;AAGH,OAAO,EACL,cAAc,EACd,cAAc,EACd,YAAY,EACZ,mBAAmB,GACpB,MAAM,wBAAwB,CAAC;AAChC,OAAO,EACL,qBAAqB,EACrB,oBAAoB,EACpB,0BAA0B,EAC1B,sBAAsB,GACvB,MAAM,qBAAqB,CAAC;AAC7B,OAAO,EAAE,CAAC,EAAE,MAAM,KAAK,CAAC;AAExB,OAAO,EAAE,aAAa,EAAE,MAAM,eAAe,CAAC;AAE9C,sEAAsE;AACtE,MAAM,iCAAiC,GAAG,CAAC,CAAC,MAAM,CAAC;IACjD,iBAAiB,EAAE,CAAC;SACjB,MAAM,EAAE;SACR,QAAQ,CACP,+EAA+E,CAChF;IACH,gBAAgB,EAAE,CAAC;SAChB,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;SACjB,QAAQ,CACP,yEAAyE,CAC1E;IACH,iBAAiB,EAAE,CAAC;SACjB,KAAK,CACJ,CAAC,CAAC,MAAM,CAAC;QACP,QAAQ,EAAE,CAAC,CAAC,MAAM,EAAE;QACpB,SAAS,EAAE,CAAC,CAAC,MAAM,EAAE;QACrB,UAAU,EAAE,CAAC,CAAC,KAAK,CAAC,CAAC,CAAC,MAAM,EAAE,CAAC;KAChC,CAAC,CACH;SACA,QAAQ,CAAC,2DAA2D,CAAC;CACzE,CAAC,CAAC;AAEH;;;GAGG;AACH,MAAM,CAAC,MAAM,yBAAyB,GAAG,CACvC,MAAc,EACkD,EAAE;IAClE,sEAAsE;IACtE,sEAAsE;IACtE,MAAM,KAAK,GAAG,sBAAsB,CAAC,MAAM,CAAC,QAAQ,EAAE,CAAC;QACrD,CAAC,CAAC,0BAA0B;QAC5B,CAAC,CAAC,oBAAoB,CAAC;IAEzB,MAAM,WAAW,GACf,OAAO,CAAC,QAAQ,KAAK,OAAO;QAC1B,CAAC,CAAC,yDAAyD;QAC3D,CAAC,CAAC,SAAS,CAAC;IAEhB,OAAO;QACL,IAAI,EAAE,uBAAuB;QAC7B,IAAI,EAAE,OAAO;QACb,WAAW,EAAE,6BAA6B;QAC1C,WAAW,
|
|
1
|
+
{"version":3,"file":"codebase-investigator.js","sourceRoot":"","sources":["../../../src/agents/codebase-investigator.ts"],"names":[],"mappings":"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"}
|
|
@@ -19,12 +19,14 @@ export declare class LocalAgentExecutor<TOutput extends z.ZodTypeAny> {
|
|
|
19
19
|
readonly definition: LocalAgentDefinition<TOutput>;
|
|
20
20
|
private readonly agentId;
|
|
21
21
|
private readonly toolRegistry;
|
|
22
|
+
private readonly promptRegistry;
|
|
23
|
+
private readonly resourceRegistry;
|
|
22
24
|
private readonly context;
|
|
23
25
|
private readonly onActivity?;
|
|
24
26
|
private readonly compressionService;
|
|
25
27
|
private readonly parentCallId?;
|
|
26
28
|
private hasFailedCompressionAttempt;
|
|
27
|
-
private get
|
|
29
|
+
private get executionContext();
|
|
28
30
|
/**
|
|
29
31
|
* Creates and validates a new `AgentExecutor` instance.
|
|
30
32
|
*
|
|
@@ -8,16 +8,19 @@ import { reportError } from '../utils/errorReporting.js';
|
|
|
8
8
|
import { GeminiChat, StreamEventType } from '../core/geminiChat.js';
|
|
9
9
|
import { Type, } from '@google/genai';
|
|
10
10
|
import { ToolRegistry } from '../tools/tool-registry.js';
|
|
11
|
-
import {} from '../
|
|
11
|
+
import { PromptRegistry } from '../prompts/prompt-registry.js';
|
|
12
|
+
import { ResourceRegistry } from '../resources/resource-registry.js';
|
|
13
|
+
import { ToolConfirmationOutcome, } from '../tools/tools.js';
|
|
12
14
|
import { DiscoveredMCPTool, isMcpToolName, parseMcpToolName, MCP_TOOL_PREFIX, } from '../tools/mcp-tool.js';
|
|
13
15
|
import { CompressionStatus } from '../core/turn.js';
|
|
14
16
|
import {} from '../scheduler/types.js';
|
|
15
17
|
import { ChatCompressionService } from '../services/chatCompressionService.js';
|
|
16
18
|
import { getDirectoryContextString } from '../utils/environmentContext.js';
|
|
19
|
+
import { renderUserMemory } from '../prompts/snippets.js';
|
|
17
20
|
import { promptIdContext } from '../utils/promptIdContext.js';
|
|
18
21
|
import { logAgentStart, logAgentFinish, logRecoveryAttempt, } from '../telemetry/loggers.js';
|
|
19
22
|
import { AgentStartEvent, AgentFinishEvent, LlmRole, RecoveryAttemptEvent, } from '../telemetry/types.js';
|
|
20
|
-
import { AgentTerminateMode, DEFAULT_QUERY_STRING, DEFAULT_MAX_TURNS, DEFAULT_MAX_TIME_MINUTES, } from './types.js';
|
|
23
|
+
import { AgentTerminateMode, DEFAULT_QUERY_STRING, DEFAULT_MAX_TURNS, DEFAULT_MAX_TIME_MINUTES, SubagentActivityErrorType, SUBAGENT_REJECTED_ERROR_PREFIX, SUBAGENT_CANCELLED_ERROR_MESSAGE, } from './types.js';
|
|
21
24
|
import { getErrorMessage } from '../utils/errors.js';
|
|
22
25
|
import { templateString } from './utils.js';
|
|
23
26
|
import { DEFAULT_GEMINI_MODEL, isAutoModel } from '../config/models.js';
|
|
@@ -46,13 +49,24 @@ export class LocalAgentExecutor {
|
|
|
46
49
|
definition;
|
|
47
50
|
agentId;
|
|
48
51
|
toolRegistry;
|
|
52
|
+
promptRegistry;
|
|
53
|
+
resourceRegistry;
|
|
49
54
|
context;
|
|
50
55
|
onActivity;
|
|
51
56
|
compressionService;
|
|
52
57
|
parentCallId;
|
|
53
58
|
hasFailedCompressionAttempt = false;
|
|
54
|
-
get
|
|
55
|
-
return
|
|
59
|
+
get executionContext() {
|
|
60
|
+
return {
|
|
61
|
+
config: this.context.config,
|
|
62
|
+
promptId: this.context.promptId,
|
|
63
|
+
geminiClient: this.context.geminiClient,
|
|
64
|
+
sandboxManager: this.context.sandboxManager,
|
|
65
|
+
toolRegistry: this.toolRegistry,
|
|
66
|
+
promptRegistry: this.promptRegistry,
|
|
67
|
+
resourceRegistry: this.resourceRegistry,
|
|
68
|
+
messageBus: this.toolRegistry.getMessageBus(),
|
|
69
|
+
};
|
|
56
70
|
}
|
|
57
71
|
/**
|
|
58
72
|
* Creates and validates a new `AgentExecutor` instance.
|
|
@@ -69,8 +83,22 @@ export class LocalAgentExecutor {
|
|
|
69
83
|
const parentMessageBus = context.messageBus;
|
|
70
84
|
// Create an override object to inject the subagent name into tool confirmation requests
|
|
71
85
|
const subagentMessageBus = parentMessageBus.derive(definition.name);
|
|
72
|
-
// Create
|
|
86
|
+
// Create isolated registries for this agent instance.
|
|
73
87
|
const agentToolRegistry = new ToolRegistry(context.config, subagentMessageBus);
|
|
88
|
+
const agentPromptRegistry = new PromptRegistry();
|
|
89
|
+
const agentResourceRegistry = new ResourceRegistry();
|
|
90
|
+
if (definition.mcpServers) {
|
|
91
|
+
const globalMcpManager = context.config.getMcpClientManager();
|
|
92
|
+
if (globalMcpManager) {
|
|
93
|
+
for (const [name, config] of Object.entries(definition.mcpServers)) {
|
|
94
|
+
await globalMcpManager.maybeDiscoverMcpServer(name, config, {
|
|
95
|
+
toolRegistry: agentToolRegistry,
|
|
96
|
+
promptRegistry: agentPromptRegistry,
|
|
97
|
+
resourceRegistry: agentResourceRegistry,
|
|
98
|
+
});
|
|
99
|
+
}
|
|
100
|
+
}
|
|
101
|
+
}
|
|
74
102
|
const parentToolRegistry = context.toolRegistry;
|
|
75
103
|
const allAgentNames = new Set(context.config.getAgentRegistry().getAllAgentNames());
|
|
76
104
|
const registerToolInstance = (tool) => {
|
|
@@ -80,7 +108,9 @@ export class LocalAgentExecutor {
|
|
|
80
108
|
debugLogger.warn(`[LocalAgentExecutor] Skipping subagent tool '${tool.name}' for agent '${definition.name}' to prevent recursion.`);
|
|
81
109
|
return;
|
|
82
110
|
}
|
|
83
|
-
|
|
111
|
+
// Clone the tool, so it gets its own state and subagent messageBus
|
|
112
|
+
const clonedTool = tool.clone(subagentMessageBus);
|
|
113
|
+
agentToolRegistry.registerTool(clonedTool);
|
|
84
114
|
};
|
|
85
115
|
const registerToolByName = (toolName) => {
|
|
86
116
|
// Handle global wildcard
|
|
@@ -141,7 +171,7 @@ export class LocalAgentExecutor {
|
|
|
141
171
|
// Get the parent tool call ID from context
|
|
142
172
|
const toolContext = getToolCallContext();
|
|
143
173
|
const parentCallId = toolContext?.callId;
|
|
144
|
-
return new LocalAgentExecutor(definition, context, agentToolRegistry,
|
|
174
|
+
return new LocalAgentExecutor(definition, context, parentPromptId, agentToolRegistry, agentPromptRegistry, agentResourceRegistry, onActivity, parentCallId);
|
|
145
175
|
}
|
|
146
176
|
/**
|
|
147
177
|
* Constructs a new AgentExecutor instance.
|
|
@@ -149,10 +179,12 @@ export class LocalAgentExecutor {
|
|
|
149
179
|
* @private This constructor is private. Use the static `create` method to
|
|
150
180
|
* instantiate the class.
|
|
151
181
|
*/
|
|
152
|
-
constructor(definition, context, toolRegistry,
|
|
182
|
+
constructor(definition, context, parentPromptId, toolRegistry, promptRegistry, resourceRegistry, onActivity, parentCallId) {
|
|
153
183
|
this.definition = definition;
|
|
154
184
|
this.context = context;
|
|
155
185
|
this.toolRegistry = toolRegistry;
|
|
186
|
+
this.promptRegistry = promptRegistry;
|
|
187
|
+
this.resourceRegistry = resourceRegistry;
|
|
156
188
|
this.onActivity = onActivity;
|
|
157
189
|
this.compressionService = new ChatCompressionService();
|
|
158
190
|
this.parentCallId = parentCallId;
|
|
@@ -189,6 +221,7 @@ export class LocalAgentExecutor {
|
|
|
189
221
|
this.emitActivity('ERROR', {
|
|
190
222
|
error: `Agent stopped calling tools but did not call '${TASK_COMPLETE_TOOL_NAME}' to finalize the session.`,
|
|
191
223
|
context: 'protocol_violation',
|
|
224
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
192
225
|
});
|
|
193
226
|
return {
|
|
194
227
|
status: 'stop',
|
|
@@ -280,6 +313,7 @@ export class LocalAgentExecutor {
|
|
|
280
313
|
this.emitActivity('ERROR', {
|
|
281
314
|
error: `Graceful recovery attempt failed. Reason: ${turnResult.status}`,
|
|
282
315
|
context: 'recovery_turn',
|
|
316
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
283
317
|
});
|
|
284
318
|
return null;
|
|
285
319
|
}
|
|
@@ -288,12 +322,13 @@ export class LocalAgentExecutor {
|
|
|
288
322
|
this.emitActivity('ERROR', {
|
|
289
323
|
error: `Graceful recovery attempt failed: ${String(error)}`,
|
|
290
324
|
context: 'recovery_turn',
|
|
325
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
291
326
|
});
|
|
292
327
|
return null;
|
|
293
328
|
}
|
|
294
329
|
finally {
|
|
295
330
|
clearTimeout(graceTimeoutId);
|
|
296
|
-
logRecoveryAttempt(this.config, new RecoveryAttemptEvent(this.agentId, this.definition.name, reason, Date.now() - recoveryStartTime, success, turnCounter));
|
|
331
|
+
logRecoveryAttempt(this.context.config, new RecoveryAttemptEvent(this.agentId, this.definition.name, reason, Date.now() - recoveryStartTime, success, turnCounter));
|
|
297
332
|
}
|
|
298
333
|
}
|
|
299
334
|
/**
|
|
@@ -322,7 +357,7 @@ export class LocalAgentExecutor {
|
|
|
322
357
|
};
|
|
323
358
|
// Combine the external signal with the internal timeout signal.
|
|
324
359
|
const combinedSignal = AbortSignal.any([signal, deadlineTimer.signal]);
|
|
325
|
-
logAgentStart(this.config, new AgentStartEvent(this.agentId, this.definition.name));
|
|
360
|
+
logAgentStart(this.context.config, new AgentStartEvent(this.agentId, this.definition.name));
|
|
326
361
|
let chat;
|
|
327
362
|
let tools;
|
|
328
363
|
try {
|
|
@@ -330,7 +365,7 @@ export class LocalAgentExecutor {
|
|
|
330
365
|
const augmentedInputs = {
|
|
331
366
|
...inputs,
|
|
332
367
|
cliVersion: await getVersion(),
|
|
333
|
-
activeModel: this.config.getActiveModel(),
|
|
368
|
+
activeModel: this.context.config.getActiveModel(),
|
|
334
369
|
today: new Date().toLocaleDateString(),
|
|
335
370
|
};
|
|
336
371
|
tools = this.prepareToolsList();
|
|
@@ -351,17 +386,27 @@ export class LocalAgentExecutor {
|
|
|
351
386
|
// Capture the index of the last hint before starting to avoid re-injecting old hints.
|
|
352
387
|
// NOTE: Hints added AFTER this point will be broadcast to all currently running
|
|
353
388
|
// local agents via the listener below.
|
|
354
|
-
const startIndex = this.config.injectionService.getLatestInjectionIndex();
|
|
355
|
-
this.config.injectionService.onInjection(injectionListener);
|
|
389
|
+
const startIndex = this.context.config.injectionService.getLatestInjectionIndex();
|
|
390
|
+
this.context.config.injectionService.onInjection(injectionListener);
|
|
356
391
|
try {
|
|
357
|
-
const initialHints = this.config.injectionService.getInjectionsAfter(startIndex, 'user_steering');
|
|
392
|
+
const initialHints = this.context.config.injectionService.getInjectionsAfter(startIndex, 'user_steering');
|
|
358
393
|
const formattedInitialHints = formatUserHintsForModel(initialHints);
|
|
359
|
-
|
|
360
|
-
|
|
361
|
-
|
|
362
|
-
|
|
363
|
-
|
|
364
|
-
|
|
394
|
+
// Inject loaded memory files (JIT + extension/project memory)
|
|
395
|
+
const environmentMemory = this.context.config.isJitContextEnabled?.()
|
|
396
|
+
? this.context.config.getSessionMemory()
|
|
397
|
+
: this.context.config.getEnvironmentMemory();
|
|
398
|
+
const initialParts = [];
|
|
399
|
+
if (environmentMemory) {
|
|
400
|
+
initialParts.push({ text: environmentMemory });
|
|
401
|
+
}
|
|
402
|
+
if (formattedInitialHints) {
|
|
403
|
+
initialParts.push({ text: formattedInitialHints });
|
|
404
|
+
}
|
|
405
|
+
initialParts.push({ text: query });
|
|
406
|
+
let currentMessage = {
|
|
407
|
+
role: 'user',
|
|
408
|
+
parts: initialParts,
|
|
409
|
+
};
|
|
365
410
|
while (true) {
|
|
366
411
|
// Check for termination conditions like max turns.
|
|
367
412
|
const reason = this.checkTermination(turnCounter, maxTurns);
|
|
@@ -411,7 +456,15 @@ export class LocalAgentExecutor {
|
|
|
411
456
|
}
|
|
412
457
|
}
|
|
413
458
|
finally {
|
|
414
|
-
this.config.injectionService.offInjection(injectionListener);
|
|
459
|
+
this.context.config.injectionService.offInjection(injectionListener);
|
|
460
|
+
const globalMcpManager = this.context.config.getMcpClientManager();
|
|
461
|
+
if (globalMcpManager) {
|
|
462
|
+
globalMcpManager.removeRegistries({
|
|
463
|
+
toolRegistry: this.toolRegistry,
|
|
464
|
+
promptRegistry: this.promptRegistry,
|
|
465
|
+
resourceRegistry: this.resourceRegistry,
|
|
466
|
+
});
|
|
467
|
+
}
|
|
415
468
|
}
|
|
416
469
|
// === UNIFIED RECOVERY BLOCK ===
|
|
417
470
|
// Only attempt recovery if it's a known recoverable reason.
|
|
@@ -434,6 +487,7 @@ export class LocalAgentExecutor {
|
|
|
434
487
|
this.emitActivity('ERROR', {
|
|
435
488
|
error: finalResult,
|
|
436
489
|
context: 'timeout',
|
|
490
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
437
491
|
});
|
|
438
492
|
}
|
|
439
493
|
else if (terminateReason === AgentTerminateMode.MAX_TURNS) {
|
|
@@ -441,6 +495,7 @@ export class LocalAgentExecutor {
|
|
|
441
495
|
this.emitActivity('ERROR', {
|
|
442
496
|
error: finalResult,
|
|
443
497
|
context: 'max_turns',
|
|
498
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
444
499
|
});
|
|
445
500
|
}
|
|
446
501
|
else if (terminateReason === AgentTerminateMode.ERROR_NO_COMPLETE_TASK_CALL) {
|
|
@@ -451,6 +506,7 @@ export class LocalAgentExecutor {
|
|
|
451
506
|
this.emitActivity('ERROR', {
|
|
452
507
|
error: finalResult,
|
|
453
508
|
context: 'protocol_violation',
|
|
509
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
454
510
|
});
|
|
455
511
|
}
|
|
456
512
|
}
|
|
@@ -494,23 +550,27 @@ export class LocalAgentExecutor {
|
|
|
494
550
|
this.emitActivity('ERROR', {
|
|
495
551
|
error: finalResult,
|
|
496
552
|
context: 'timeout',
|
|
553
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
497
554
|
});
|
|
498
555
|
return {
|
|
499
556
|
result: finalResult,
|
|
500
557
|
terminate_reason: terminateReason,
|
|
501
558
|
};
|
|
502
559
|
}
|
|
503
|
-
this.emitActivity('ERROR', {
|
|
560
|
+
this.emitActivity('ERROR', {
|
|
561
|
+
error: String(error),
|
|
562
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
563
|
+
});
|
|
504
564
|
throw error; // Re-throw other errors or external aborts.
|
|
505
565
|
}
|
|
506
566
|
finally {
|
|
507
567
|
deadlineTimer.abort();
|
|
508
|
-
logAgentFinish(this.config, new AgentFinishEvent(this.agentId, this.definition.name, Date.now() - startTime, turnCounter, terminateReason));
|
|
568
|
+
logAgentFinish(this.context.config, new AgentFinishEvent(this.agentId, this.definition.name, Date.now() - startTime, turnCounter, terminateReason));
|
|
509
569
|
}
|
|
510
570
|
}
|
|
511
571
|
async tryCompressChat(chat, prompt_id) {
|
|
512
572
|
const model = this.definition.modelConfig.model ?? DEFAULT_GEMINI_MODEL;
|
|
513
|
-
const { newHistory, info } = await this.compressionService.compress(chat, prompt_id, false, model, this.config, this.hasFailedCompressionAttempt);
|
|
573
|
+
const { newHistory, info } = await this.compressionService.compress(chat, prompt_id, false, model, this.context.config, this.hasFailedCompressionAttempt);
|
|
514
574
|
if (info.compressionStatus ===
|
|
515
575
|
CompressionStatus.COMPRESSION_FAILED_INFLATED_TOKEN_COUNT) {
|
|
516
576
|
this.hasFailedCompressionAttempt = true;
|
|
@@ -538,7 +598,7 @@ export class LocalAgentExecutor {
|
|
|
538
598
|
async callModel(chat, message, signal, promptId) {
|
|
539
599
|
const modelConfigAlias = getModelConfigAlias(this.definition);
|
|
540
600
|
// Resolve the model config early to get the concrete model string (which may be `auto`).
|
|
541
|
-
const resolvedConfig = this.config.modelConfigService.getResolvedConfig({
|
|
601
|
+
const resolvedConfig = this.context.config.modelConfigService.getResolvedConfig({
|
|
542
602
|
model: modelConfigAlias,
|
|
543
603
|
overrideScope: this.definition.name,
|
|
544
604
|
});
|
|
@@ -557,7 +617,7 @@ export class LocalAgentExecutor {
|
|
|
557
617
|
signal,
|
|
558
618
|
requestedModel,
|
|
559
619
|
};
|
|
560
|
-
const router = this.config.getModelRouterService();
|
|
620
|
+
const router = this.context.config.getModelRouterService();
|
|
561
621
|
const decision = await router.route(routingContext);
|
|
562
622
|
modelToUse = decision.model;
|
|
563
623
|
}
|
|
@@ -615,7 +675,7 @@ export class LocalAgentExecutor {
|
|
|
615
675
|
? await this.buildSystemPrompt(inputs)
|
|
616
676
|
: undefined;
|
|
617
677
|
try {
|
|
618
|
-
return new GeminiChat(this.
|
|
678
|
+
return new GeminiChat(this.executionContext, systemInstruction, [{ functionDeclarations: tools }], startHistory, undefined, undefined, 'subagent');
|
|
619
679
|
}
|
|
620
680
|
catch (e) {
|
|
621
681
|
await reportError(e, `Error initializing Gemini chat for agent ${this.definition.name}.`, startHistory, 'startChat');
|
|
@@ -680,6 +740,7 @@ export class LocalAgentExecutor {
|
|
|
680
740
|
context: 'tool_call',
|
|
681
741
|
name: toolName,
|
|
682
742
|
error,
|
|
743
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
683
744
|
});
|
|
684
745
|
continue;
|
|
685
746
|
}
|
|
@@ -704,6 +765,7 @@ export class LocalAgentExecutor {
|
|
|
704
765
|
context: 'tool_call',
|
|
705
766
|
name: toolName,
|
|
706
767
|
error,
|
|
768
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
707
769
|
});
|
|
708
770
|
continue;
|
|
709
771
|
}
|
|
@@ -747,6 +809,7 @@ export class LocalAgentExecutor {
|
|
|
747
809
|
name: toolName,
|
|
748
810
|
callId,
|
|
749
811
|
error,
|
|
812
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
750
813
|
});
|
|
751
814
|
}
|
|
752
815
|
}
|
|
@@ -789,6 +852,7 @@ export class LocalAgentExecutor {
|
|
|
789
852
|
name: toolName,
|
|
790
853
|
callId,
|
|
791
854
|
error,
|
|
855
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
792
856
|
});
|
|
793
857
|
}
|
|
794
858
|
}
|
|
@@ -810,6 +874,7 @@ export class LocalAgentExecutor {
|
|
|
810
874
|
name: toolName,
|
|
811
875
|
callId,
|
|
812
876
|
error,
|
|
877
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
813
878
|
});
|
|
814
879
|
continue;
|
|
815
880
|
}
|
|
@@ -824,11 +889,13 @@ export class LocalAgentExecutor {
|
|
|
824
889
|
}
|
|
825
890
|
// Execute standard tool calls using the new scheduler
|
|
826
891
|
if (toolRequests.length > 0) {
|
|
827
|
-
const completedCalls = await scheduleAgentTools(this.config, toolRequests, {
|
|
828
|
-
schedulerId:
|
|
892
|
+
const completedCalls = await scheduleAgentTools(this.context.config, toolRequests, {
|
|
893
|
+
schedulerId: promptId,
|
|
829
894
|
subagent: this.definition.name,
|
|
830
895
|
parentCallId: this.parentCallId,
|
|
831
896
|
toolRegistry: this.toolRegistry,
|
|
897
|
+
promptRegistry: this.promptRegistry,
|
|
898
|
+
resourceRegistry: this.resourceRegistry,
|
|
832
899
|
signal,
|
|
833
900
|
onWaitingForConfirmation,
|
|
834
901
|
});
|
|
@@ -847,18 +914,44 @@ export class LocalAgentExecutor {
|
|
|
847
914
|
name: toolName,
|
|
848
915
|
callId: call.request.callId,
|
|
849
916
|
error: call.response.error?.message || 'Unknown error',
|
|
917
|
+
errorType: SubagentActivityErrorType.GENERIC,
|
|
850
918
|
});
|
|
851
919
|
}
|
|
852
920
|
else if (call.status === 'cancelled') {
|
|
853
|
-
|
|
854
|
-
|
|
855
|
-
|
|
856
|
-
|
|
857
|
-
|
|
858
|
-
|
|
859
|
-
|
|
921
|
+
const isSoftRejection = call.outcome === ToolConfirmationOutcome.Cancel;
|
|
922
|
+
if (isSoftRejection) {
|
|
923
|
+
const error = `${SUBAGENT_REJECTED_ERROR_PREFIX} Please acknowledge this, rethink your strategy, and try a different approach. If you cannot proceed without the rejected operation, summarize the issue and use \`${TASK_COMPLETE_TOOL_NAME}\` to report your findings and the blocker.`;
|
|
924
|
+
this.emitActivity('ERROR', {
|
|
925
|
+
context: 'tool_call',
|
|
926
|
+
name: toolName,
|
|
927
|
+
callId: call.request.callId,
|
|
928
|
+
error,
|
|
929
|
+
errorType: SubagentActivityErrorType.REJECTED,
|
|
930
|
+
});
|
|
931
|
+
// Soft rejection: we do NOT set aborted=true, allowing the agent to rethink.
|
|
932
|
+
// Provide the direct instruction to the model as the tool error response.
|
|
933
|
+
syncResults.set(call.request.callId, {
|
|
934
|
+
functionResponse: {
|
|
935
|
+
name: toolName,
|
|
936
|
+
id: call.request.callId,
|
|
937
|
+
response: { error },
|
|
938
|
+
},
|
|
939
|
+
});
|
|
940
|
+
continue; // Skip the generic syncResults.set below
|
|
941
|
+
}
|
|
942
|
+
else {
|
|
943
|
+
// Hard abort (Ctrl+C)
|
|
944
|
+
this.emitActivity('ERROR', {
|
|
945
|
+
context: 'tool_call',
|
|
946
|
+
name: toolName,
|
|
947
|
+
callId: call.request.callId,
|
|
948
|
+
error: SUBAGENT_CANCELLED_ERROR_MESSAGE,
|
|
949
|
+
errorType: SubagentActivityErrorType.CANCELLED,
|
|
950
|
+
});
|
|
951
|
+
aborted = true;
|
|
952
|
+
}
|
|
860
953
|
}
|
|
861
|
-
// Add result to syncResults
|
|
954
|
+
// Add result to syncResults for other statuses (success, error, hard abort)
|
|
862
955
|
syncResults.set(call.request.callId, call.response.responseParts[0]);
|
|
863
956
|
}
|
|
864
957
|
}
|
|
@@ -942,15 +1035,21 @@ export class LocalAgentExecutor {
|
|
|
942
1035
|
}
|
|
943
1036
|
// Inject user inputs into the prompt template.
|
|
944
1037
|
let finalPrompt = templateString(promptConfig.systemPrompt, inputs);
|
|
1038
|
+
// Append memory context if available.
|
|
1039
|
+
const systemMemory = this.context.config.getSystemInstructionMemory();
|
|
1040
|
+
if (systemMemory) {
|
|
1041
|
+
finalPrompt += `\n\n${renderUserMemory(systemMemory)}`;
|
|
1042
|
+
}
|
|
945
1043
|
// Append environment context (CWD and folder structure).
|
|
946
|
-
const dirContext = await getDirectoryContextString(this.config);
|
|
1044
|
+
const dirContext = await getDirectoryContextString(this.context.config);
|
|
947
1045
|
finalPrompt += `\n\n# Environment Context\n${dirContext}`;
|
|
948
1046
|
// Append standard rules for non-interactive execution.
|
|
949
1047
|
finalPrompt += `
|
|
950
1048
|
Important Rules:
|
|
951
1049
|
* You are running in a non-interactive mode. You CANNOT ask the user for input or clarification.
|
|
952
1050
|
* Work systematically using available tools to complete your task.
|
|
953
|
-
* Always use absolute paths for file operations. Construct them using the provided "Environment Context"
|
|
1051
|
+
* Always use absolute paths for file operations. Construct them using the provided "Environment Context".
|
|
1052
|
+
* If a tool call is rejected by the user, acknowledge the rejection, rethink your strategy, and try a different approach. Do not repeatedly attempt the same rejected operation.`;
|
|
954
1053
|
if (this.definition.outputConfig) {
|
|
955
1054
|
finalPrompt += `
|
|
956
1055
|
* When you have completed your task, you MUST call the \`${TASK_COMPLETE_TOOL_NAME}\` tool with your structured output.
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"local-executor.js","sourceRoot":"","sources":["../../../src/agents/local-executor.ts"],"names":[],"mappings":"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"}
|
|
1
|
+
{"version":3,"file":"local-executor.js","sourceRoot":"","sources":["../../../src/agents/local-executor.ts"],"names":[],"mappings":"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"}
|