resolved all the extensions to load in cli (#6464)

This commit is contained in:
Lifei Zhou
2026-01-19 13:13:54 +11:00
committed by GitHub
parent f3c2f8e803
commit 73a878821d
9 changed files with 315 additions and 378 deletions
+5 -2
View File
@@ -15,6 +15,7 @@ use goose::goose_apps::{fetch_mcp_apps, GooseApp, McpAppCache};
use base64::Engine;
use goose::agents::ExtensionConfig;
use goose::config::resolve_extensions_for_new_session;
use goose::config::{Config, GooseMode};
use goose::model::ModelConfig;
use goose::prompt_template::render_global_file;
@@ -225,9 +226,11 @@ async fn start_agent(
}
})?;
// Initialize session with extensions (either overrides from hub or global defaults)
let recipe_extensions = original_recipe
.as_ref()
.and_then(|r| r.extensions.as_deref());
let extensions_to_use =
extension_overrides.unwrap_or_else(goose::config::get_enabled_extensions);
resolve_extensions_for_new_session(recipe_extensions, extension_overrides);
let mut extension_data = session.extension_data.clone();
let extensions_state = EnabledExtensionsState::new(extensions_to_use);
if let Err(e) = extensions_state.to_extension_data(&mut extension_data) {