diff --git a/crates/goose/src/agents/subagent_execution_tool/tasks.rs b/crates/goose/src/agents/subagent_execution_tool/tasks.rs index ccb9fdb7..e9780302 100644 --- a/crates/goose/src/agents/subagent_execution_tool/tasks.rs +++ b/crates/goose/src/agents/subagent_execution_tool/tasks.rs @@ -91,10 +91,10 @@ async fn handle_inline_recipe_task( .and_then(|v| v.as_bool()) .unwrap_or(false); + // If extensions are explicitly provided in the recipe (even if empty), + // override the task_config extensions. Empty array means no extensions. if let Some(exts) = recipe.extensions { - if !exts.is_empty() { - task_config.extensions = exts.clone(); - } + task_config.extensions = exts.clone(); } let instruction = recipe