agent_servers: Migrate all built-in agents use the registry instead#50094
Merged
agent_servers: Migrate all built-in agents use the registry instead#50094
Conversation
4b32a1d to
9462e5d
Compare
Replace the dedicated `ClaudeAgent`, `Codex`, and `Gemini` `AgentType` variants and their corresponding `AgentServer` impl files with the generic `Custom` variant, treating all three as named custom agents.
Uninstalled built-in agents (Claude, Codex, Gemini) are now unified into the same sorted list as installed agents, rather than being rendered as a separate section below. Icons and display names for uninstalled entries are resolved from the agent registry. Clicking an uninstalled entry writes the registry entry to settings before opening a new thread, matching the previous behavior.
Replace the separate `gemini`, `claude`, and `codex` fields in `AllAgentServersSettings` with a single transparent `HashMap`, treating all agent servers uniformly. The `BuiltinAgentServerSettings` type is removed entirely.
- Replace `unwrap()` calls in `migrate_builtin_entry` with early returns - Move `NO_BROWSER` env var insertion inside the codex-specific branch - Use constants for built-in agent names instead of string literals - Treat previously built-in agents as registry agents for refresh logic - Simplify sort to use `sorted_unstable_by_key`
Scope the `NO_BROWSER=1` environment variable injection to only apply when launching the Codex agent, rather than any agent that reports `no_browser: true` in its envelope. Also consolidate built-in agent rendering in the configuration panel to treat them the same as user-defined agents, removing special-cased hardcoded entries for Claude, Codex, and Gemini. Use the exported name constants in onboarding modals instead of inline string literals.
- Implement `From<anyhow::Error>` for `ThreadError` instead of a custom `from_err` method that took an agent name parameter - Merge `handle_any_thread_error` and `handle_thread_error` into a single `handle_thread_error` method accepting `impl Into<ThreadError>` - Guard Gemini-specific auth handling behind an `agent_name` check instead of relying on the agent name at the error conversion site
Move the "uninstalled built-in agents" (Claude, Codex, Gemini) into their own menu section below a separator, distinct from already-installed agents. Previously they were mixed into the same list, which made the install-on-click handler awkward. Now installed agents appear first, followed by a separator and the promotable uninstalled agents.
9462e5d to
fb7ad84
Compare
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
rtfeldman
pushed a commit
that referenced
this pull request
Feb 27, 2026
This has lots of benefits, but mainly allows users to uninstall agents. Release Notes: - N/A --------- Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
tahayvr
pushed a commit
to tahayvr/zed
that referenced
this pull request
Mar 4, 2026
…dustries#50094) This has lots of benefits, but mainly allows users to uninstall agents. Release Notes: - N/A --------- Co-authored-by: Anthony Eid <[email protected]> Co-authored-by: cameron <[email protected]>
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.
This has lots of benefits, but mainly allows users to uninstall agents.
Release Notes: