Skip to content

Fix agent being able to execute tools that are turned off - #54863

Merged
bennetbo merged 3 commits into
zed-industries:mainfrom
OmChillure:fix-agent-can-execute-tools-that-are-turned-off
May 5, 2026
Merged

Fix agent being able to execute tools that are turned off#54863
bennetbo merged 3 commits into
zed-industries:mainfrom
OmChillure:fix-agent-can-execute-tools-that-are-turned-off

Conversation

@OmChillure

@OmChillure OmChillure commented Apr 25, 2026

Copy link
Copy Markdown
Contributor

Closes #54741

Fix disabled context server tools being callable in profiles with enable_all_context_servers: true

AgentProfileSettings::is_context_server_tool_enabled short-circuited on enable_all_context_servers and ignored explicit per-tool false entries in context_servers, so agents could still call tools the user had disabled in their profile.
The filter now matches what the tool picker UI already does (tool_picker.rs:357-371): the explicit per-tool setting wins, and enable_all_context_servers is only consulted as a fallback when the tool has no explicit entry.

Self-Review Checklist:

  • I've reviewed my own diff for quality, security, and reliability
  • Unsafe blocks (if any) have justifying comments
  • The content is consistent with the UI/UX checklist
  • Tests cover the new/changed behavior
  • Performance impact has been considered and is acceptable

Screenshots :

When turned false
1

When true
2

Release Notes:

  • Fixed agent profiles with enable_all_context_servers: true ignoring per-tool false overrides in context_servers, allowing agents to call tools the user had explicitly disabled.

@cla-bot cla-bot Bot added the cla-signed The user has signed the Contributor License Agreement label Apr 25, 2026
@zed-community-bot zed-community-bot Bot added the guild Pull requests by someone in Zed Guild. NOTE: the label application is automated via github actions label Apr 25, 2026
@maxdeviant maxdeviant changed the title Fix agent can still execute tools that are turned off Fix agent being able to execute tools that are turned off Apr 25, 2026
@SomeoneToIgnore SomeoneToIgnore added the area:ai Related to Agent Panel, Edit Prediction, Copilot, or other AI features label Apr 25, 2026
@bennetbo bennetbo self-assigned this May 5, 2026

@bennetbo bennetbo left a comment

Copy link
Copy Markdown
Member

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thank you!

@bennetbo
bennetbo enabled auto-merge May 5, 2026 16:13
@bennetbo
bennetbo added this pull request to the merge queue May 5, 2026
Merged via the queue into zed-industries:main with commit fc76622 May 5, 2026
31 checks passed
ebaah46 pushed a commit to ebaah46/zed that referenced this pull request May 6, 2026
…ries#54863)

#### Closes zed-industries#54741

Fix disabled context server tools being callable in profiles with
`enable_all_context_servers: true`

`AgentProfileSettings::is_context_server_tool_enabled` short-circuited
on `enable_all_context_servers` and ignored explicit per-tool `false`
entries in `context_servers`, so agents could still call tools the user
had disabled in their profile.
The filter now matches what the tool picker UI already does
(`tool_picker.rs:357-371`): the explicit per-tool setting wins, and
`enable_all_context_servers` is only consulted as a fallback when the
tool has no explicit entry.

### Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Screenshots : 

When turned false
<img width="1920" height="1042" alt="1"
src="https://github.com/user-attachments/assets/ccc9093b-b0c7-4061-9349-f6a2e8170698"
/>

When true 
<img width="1920" height="1042" alt="2"
src="https://github.com/user-attachments/assets/f3e085cb-2b7d-4dab-9f89-4c735d809207"
/>



Release Notes:

- Fixed agent profiles with `enable_all_context_servers: true` ignoring
per-tool `false` overrides in `context_servers`, allowing agents to call
tools the user had explicitly disabled.

Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
jonx pushed a commit to jonx/zed-aros that referenced this pull request Jul 17, 2026
…ries#54863)

#### Closes zed-industries#54741

Fix disabled context server tools being callable in profiles with
`enable_all_context_servers: true`

`AgentProfileSettings::is_context_server_tool_enabled` short-circuited
on `enable_all_context_servers` and ignored explicit per-tool `false`
entries in `context_servers`, so agents could still call tools the user
had disabled in their profile.
The filter now matches what the tool picker UI already does
(`tool_picker.rs:357-371`): the explicit per-tool setting wins, and
`enable_all_context_servers` is only consulted as a fallback when the
tool has no explicit entry.

### Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Screenshots : 

When turned false
<img width="1920" height="1042" alt="1"
src="https://github.com/user-attachments/assets/ccc9093b-b0c7-4061-9349-f6a2e8170698"
/>

When true 
<img width="1920" height="1042" alt="2"
src="https://github.com/user-attachments/assets/f3e085cb-2b7d-4dab-9f89-4c735d809207"
/>



Release Notes:

- Fixed agent profiles with `enable_all_context_servers: true` ignoring
per-tool `false` overrides in `context_servers`, allowing agents to call
tools the user had explicitly disabled.

Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
jolutz pushed a commit to jolutz/zed that referenced this pull request Aug 8, 2026
…ries#54863)

#### Closes zed-industries#54741

Fix disabled context server tools being callable in profiles with
`enable_all_context_servers: true`

`AgentProfileSettings::is_context_server_tool_enabled` short-circuited
on `enable_all_context_servers` and ignored explicit per-tool `false`
entries in `context_servers`, so agents could still call tools the user
had disabled in their profile.
The filter now matches what the tool picker UI already does
(`tool_picker.rs:357-371`): the explicit per-tool setting wins, and
`enable_all_context_servers` is only consulted as a fallback when the
tool has no explicit entry.

### Self-Review Checklist:

- [x] I've reviewed my own diff for quality, security, and reliability
- [x] Unsafe blocks (if any) have justifying comments
- [x] The content is consistent with the [UI/UX
checklist](https://github.com/zed-industries/zed/blob/main/CONTRIBUTING.md#uiux-checklist)
- [x] Tests cover the new/changed behavior
- [x] Performance impact has been considered and is acceptable

Screenshots : 

When turned false
<img width="1920" height="1042" alt="1"
src="https://github.com/user-attachments/assets/ccc9093b-b0c7-4061-9349-f6a2e8170698"
/>

When true 
<img width="1920" height="1042" alt="2"
src="https://github.com/user-attachments/assets/f3e085cb-2b7d-4dab-9f89-4c735d809207"
/>



Release Notes:

- Fixed agent profiles with `enable_all_context_servers: true` ignoring
per-tool `false` overrides in `context_servers`, allowing agents to call
tools the user had explicitly disabled.

Co-authored-by: Bennet Bo Fenner <bennet@zed.dev>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

area:ai Related to Agent Panel, Edit Prediction, Copilot, or other AI features cla-signed The user has signed the Contributor License Agreement guild Pull requests by someone in Zed Guild. NOTE: the label application is automated via github actions

Projects

None yet

Development

Successfully merging this pull request may close these issues.

Agents can execute tools that are turned off in Write profile

4 participants