diff --git a/crates/goose/src/providers/ollama.rs b/crates/goose/src/providers/ollama.rs index b39b9036e5e1..fc06ae425331 100644 --- a/crates/goose/src/providers/ollama.rs +++ b/crates/goose/src/providers/ollama.rs @@ -254,11 +254,19 @@ impl Provider for OllamaProvider { messages: &[Message], tools: &[Tool], ) -> Result { + let config = crate::config::Config::global(); + let goose_mode = config.get_goose_mode().unwrap_or(GooseMode::Auto); + let filtered_tools = if goose_mode == GooseMode::Chat { + &[] + } else { + tools + }; + let mut payload = create_request( &self.model, system, messages, - tools, + filtered_tools, &super::utils::ImageFormat::OpenAi, )?; payload["stream"] = json!(true);