fix(agent-core-v2): activate select tools for disclosure - #2384
Open
huige66631 wants to merge 2 commits into
Open
fix(agent-core-v2): activate select tools for disclosure#2384huige66631 wants to merge 2 commits into
huige66631 wants to merge 2 commits into
Conversation
🦋 Changeset detectedLatest commit: b5202a5 The changes in this PR will be included in the next version bump. This PR includes changesets to release 1 package
Not sure what this means? Click here to learn what changesets are. Click here if you're a maintainer who wants to add another changeset to this PR |
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
Problem
In v2 headless runs with progressive tool disclosure enabled, the main agent is told to use
select_toolsfor MCP tools, butAgentToolActivationServiceonly registers tools present in the profile allowlist. The built-inagentprofile includesmcp__*but omitsselect_tools, leaving the gateway absent from the runtime schema.Solution
Keep normal contribution activation unchanged and add a narrow exception for the disclosure gateway. When the contribution is
select_tools, progressive disclosure is enabled, and the disclosure policy permits it, activation registers the tool even when the profile allowlist omits it. This reuses the existing disclosure gate and explicit-disable policy instead of modifying profile definitions.Changes
select_toolsthrough the existing disclosure gate in v2 tool activation.@moonshot-ai/kimi-code.Testing
pnpm --filter @moonshot-ai/agent-core-v2 exec vitest run test/agent/toolActivation/toolActivationService.test.ts test/agent/toolSelect/toolSelect.e2e.test.tspnpm --filter @moonshot-ai/agent-core-v2 run typecheckpnpm exec oxlint --type-aware packages/agent-core-v2/src/agent/toolActivation/toolActivationService.ts packages/agent-core-v2/test/agent/toolActivation/toolActivationService.test.tsThe focused tests cover registration when the profile omits
select_tools, behavior when disclosure is disabled, explicit policy denial, and the existing select-to-MCP execution flow.Notes for Reviewer
select_tools; all other contributions retain ordinary profile allowlist behavior.isToolActiveForDisclosure()preserves global, session, and explicit deny controls.Fixes #2381