From c2bfd1e473377e158cbdcb234dd62d2fc3ecf7ce Mon Sep 17 00:00:00 2001 From: jif-oai Date: Mon, 9 Feb 2026 20:22:38 +0000 Subject: [PATCH] Revert "chore: enable sub agents" (#11230) Reverts openai/codex#11173 --- codex-rs/core/src/agent/role.rs | 1 + codex-rs/core/src/features.rs | 16 +++--- codex-rs/core/src/tools/spec.rs | 55 --------------------- codex-rs/core/tests/suite/model_tools.rs | 32 +----------- codex-rs/core/tests/suite/prompt_caching.rs | 5 -- 5 files changed, 12 insertions(+), 97 deletions(-) diff --git a/codex-rs/core/src/agent/role.rs b/codex-rs/core/src/agent/role.rs index 234d67994..74eca4179 100644 --- a/codex-rs/core/src/agent/role.rs +++ b/codex-rs/core/src/agent/role.rs @@ -95,6 +95,7 @@ Rules: reasoning_effort: Some(ReasoningEffort::Medium), description: r#"Use `explorer` for all codebase questions. Explorers are fast and authoritative. +Always prefer them over manual search or file reading. Rules: - Ask explorers first and precisely. - Do not re-read or re-search code they cover. diff --git a/codex-rs/core/src/features.rs b/codex-rs/core/src/features.rs index 201430c9b..7de37e78a 100644 --- a/codex-rs/core/src/features.rs +++ b/codex-rs/core/src/features.rs @@ -432,12 +432,6 @@ pub const FEATURES: &[FeatureSpec] = &[ stage: Stage::Deprecated, default_enabled: false, }, - FeatureSpec { - id: Feature::Collab, - key: "collab", - stage: Stage::Stable, - default_enabled: true, - }, // Experimental program. Rendered in the `/experimental` menu for users. FeatureSpec { id: Feature::RuntimeMetrics, @@ -517,6 +511,16 @@ pub const FEATURES: &[FeatureSpec] = &[ stage: Stage::Stable, default_enabled: true, }, + FeatureSpec { + id: Feature::Collab, + key: "collab", + stage: Stage::Experimental { + name: "Sub-agents", + menu_description: "Ask Codex to spawn multiple agents to parallelize the work and win in efficiency.", + announcement: "NEW: Sub-agents can now be spawned by Codex. Enable in /experimental and restart Codex!", + }, + default_enabled: false, + }, FeatureSpec { id: Feature::Apps, key: "apps", diff --git a/codex-rs/core/src/tools/spec.rs b/codex-rs/core/src/tools/spec.rs index 484482888..729b10888 100644 --- a/codex-rs/core/src/tools/spec.rs +++ b/codex-rs/core/src/tools/spec.rs @@ -1634,11 +1634,6 @@ mod tests { external_web_access: Some(true), }, create_view_image_tool(), - create_spawn_agent_tool(), - create_send_input_tool(), - create_resume_agent_tool(), - create_wait_tool(), - create_close_agent_tool(), ] { expected.insert(tool_name(&spec).to_string(), spec); } @@ -1806,11 +1801,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1833,11 +1823,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1862,11 +1847,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1891,11 +1871,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1917,11 +1892,6 @@ mod tests { "request_user_input", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1944,11 +1914,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1970,11 +1935,6 @@ mod tests { "request_user_input", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -1997,11 +1957,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -2048,11 +2003,6 @@ mod tests { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } @@ -2076,11 +2026,6 @@ mod tests { "request_user_input", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ); } diff --git a/codex-rs/core/tests/suite/model_tools.rs b/codex-rs/core/tests/suite/model_tools.rs index 3143f5d49..ae5914613 100644 --- a/codex-rs/core/tests/suite/model_tools.rs +++ b/codex-rs/core/tests/suite/model_tools.rs @@ -81,11 +81,6 @@ async fn model_selects_expected_tools() { "request_user_input", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ), "codex-mini-latest should expose the local shell tool", @@ -105,11 +100,6 @@ async fn model_selects_expected_tools() { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ), "gpt-5-codex should expose the apply_patch tool", @@ -129,11 +119,6 @@ async fn model_selects_expected_tools() { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ), "gpt-5.1-codex should expose the apply_patch tool", @@ -152,11 +137,6 @@ async fn model_selects_expected_tools() { "request_user_input", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ), "gpt-5 should expose the apply_patch tool", @@ -176,11 +156,6 @@ async fn model_selects_expected_tools() { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ], ), "gpt-5.1 should expose the apply_patch tool", @@ -198,12 +173,7 @@ async fn model_selects_expected_tools() { "request_user_input".to_string(), "apply_patch".to_string(), "web_search".to_string(), - "view_image".to_string(), - "spawn_agent".to_string(), - "send_input".to_string(), - "resume_agent".to_string(), - "wait".to_string(), - "close_agent".to_string() + "view_image".to_string() ], "exp-5.1 should expose the apply_patch tool", ); diff --git a/codex-rs/core/tests/suite/prompt_caching.rs b/codex-rs/core/tests/suite/prompt_caching.rs index d1001c8df..242f93140 100644 --- a/codex-rs/core/tests/suite/prompt_caching.rs +++ b/codex-rs/core/tests/suite/prompt_caching.rs @@ -153,11 +153,6 @@ async fn prompt_tools_are_consistent_across_requests() -> anyhow::Result<()> { "apply_patch", "web_search", "view_image", - "spawn_agent", - "send_input", - "resume_agent", - "wait", - "close_agent", ]); let body0 = req1.single_request().body_json();