From 4de4d475a4fd552cd45115b1bfb0f3efdd8031e2 Mon Sep 17 00:00:00 2001 From: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> Date: Wed, 8 Apr 2026 08:17:45 -0700 Subject: [PATCH] fix: add skip_canonical_filtering to Anthropic and Ollama providers (#8349) Signed-off-by: Pete Gonzalez <4673363+octogonz@users.noreply.github.com> --- crates/goose/src/providers/anthropic.rs | 7 +++++++ crates/goose/src/providers/ollama.rs | 7 +++++++ 2 files changed, 14 insertions(+) diff --git a/crates/goose/src/providers/anthropic.rs b/crates/goose/src/providers/anthropic.rs index 43039d3e..1529e0af 100644 --- a/crates/goose/src/providers/anthropic.rs +++ b/crates/goose/src/providers/anthropic.rs @@ -56,6 +56,7 @@ pub struct AnthropicProvider { supports_streaming: bool, name: String, custom_models: Option>, + skip_canonical_filtering: bool, } impl AnthropicProvider { @@ -82,6 +83,7 @@ impl AnthropicProvider { supports_streaming: true, name: ANTHROPIC_PROVIDER_NAME.to_string(), custom_models: None, + skip_canonical_filtering: false, }) } @@ -139,6 +141,7 @@ impl AnthropicProvider { supports_streaming, name: config.name.clone(), custom_models, + skip_canonical_filtering: config.skip_canonical_filtering, }) } @@ -240,6 +243,10 @@ impl Provider for AnthropicProvider { &self.name } + fn skip_canonical_filtering(&self) -> bool { + self.skip_canonical_filtering + } + fn get_model_config(&self) -> ModelConfig { self.model.clone() } diff --git a/crates/goose/src/providers/ollama.rs b/crates/goose/src/providers/ollama.rs index 4dceb3ab..875dda83 100644 --- a/crates/goose/src/providers/ollama.rs +++ b/crates/goose/src/providers/ollama.rs @@ -51,6 +51,7 @@ pub struct OllamaProvider { model: ModelConfig, supports_streaming: bool, name: String, + skip_canonical_filtering: bool, } fn resolve_ollama_num_ctx(model_config: &ModelConfig) -> Option { let config = crate::config::Config::global(); @@ -131,6 +132,7 @@ impl OllamaProvider { model, supports_streaming: true, name: OLLAMA_PROVIDER_NAME.to_string(), + skip_canonical_filtering: false, }) } @@ -193,6 +195,7 @@ impl OllamaProvider { model, supports_streaming, name: config.name.clone(), + skip_canonical_filtering: config.skip_canonical_filtering, }) } } @@ -235,6 +238,10 @@ impl Provider for OllamaProvider { &self.name } + fn skip_canonical_filtering(&self) -> bool { + self.skip_canonical_filtering + } + fn get_model_config(&self) -> ModelConfig { self.model.clone() }