diff --git a/crates/agent_ui/src/agent_configuration.rs b/crates/agent_ui/src/agent_configuration.rs index 54fbfc536c2eae0581a4c3d9949913724537a7a7..3581baf4ec62b746a27bd78bade2d9e85ade069a 100644 --- a/crates/agent_ui/src/agent_configuration.rs +++ b/crates/agent_ui/src/agent_configuration.rs @@ -15,6 +15,7 @@ use context_server::ContextServerId; use editor::{Editor, SelectionEffects, scroll::Autoscroll}; use extension::ExtensionManifest; use extension_host::ExtensionStore; +use feature_flags::{CodexAcpFeatureFlag, FeatureFlagAppExt as _}; use fs::Fs; use gpui::{ Action, AnyView, App, AsyncWindowContext, Corner, Entity, EventEmitter, FocusHandle, Focusable, @@ -1080,13 +1081,21 @@ impl AgentConfiguration { ), ) .child(self.render_agent_server( - IconName::AiGemini, - "Gemini CLI", + IconName::AiClaude, + "Claude Code", )) .child(Divider::horizontal().color(DividerColor::BorderFaded)) + .when(cx.has_flag::(), |this| { + this + .child(self.render_agent_server( + IconName::AiOpenAi, + "Codex", + )) + .child(Divider::horizontal().color(DividerColor::BorderFaded)) + }) .child(self.render_agent_server( - IconName::AiClaude, - "Claude Code", + IconName::AiGemini, + "Gemini CLI", )) .map(|mut parent| { for agent in user_defined_agents { diff --git a/crates/agent_ui/src/agent_panel.rs b/crates/agent_ui/src/agent_panel.rs index 69d4dbe6d193f3f18c240420234f825618db48be..58ab2f5373bf2fc7d9cd013f62ed50959074ea03 100644 --- a/crates/agent_ui/src/agent_panel.rs +++ b/crates/agent_ui/src/agent_panel.rs @@ -1949,32 +1949,6 @@ impl AgentPanel { ) .separator() .header("External Agents") - .item( - ContextMenuEntry::new("New Gemini CLI Thread") - .icon(IconName::AiGemini) - .icon_color(Color::Muted) - .disabled(is_via_collab) - .handler({ - let workspace = workspace.clone(); - move |window, cx| { - if let Some(workspace) = workspace.upgrade() { - workspace.update(cx, |workspace, cx| { - if let Some(panel) = - workspace.panel::(cx) - { - panel.update(cx, |panel, cx| { - panel.new_agent_thread( - AgentType::Gemini, - window, - cx, - ); - }); - } - }); - } - } - }), - ) .item( ContextMenuEntry::new("New Claude Code Thread") .icon(IconName::AiClaude) @@ -2029,6 +2003,32 @@ impl AgentPanel { }), ) }) + .item( + ContextMenuEntry::new("New Gemini CLI Thread") + .icon(IconName::AiGemini) + .icon_color(Color::Muted) + .disabled(is_via_collab) + .handler({ + let workspace = workspace.clone(); + move |window, cx| { + if let Some(workspace) = workspace.upgrade() { + workspace.update(cx, |workspace, cx| { + if let Some(panel) = + workspace.panel::(cx) + { + panel.update(cx, |panel, cx| { + panel.new_agent_thread( + AgentType::Gemini, + window, + cx, + ); + }); + } + }); + } + } + }), + ) .map(|mut menu| { let agent_names = agent_server_store .read(cx)