diff --git a/agent/anthropic_adapter.py b/agent/anthropic_adapter.py index d604097de..bfe54c585 100644 --- a/agent/anthropic_adapter.py +++ b/agent/anthropic_adapter.py @@ -414,8 +414,9 @@ def build_anthropic_kwargs( # Map reasoning_config to Anthropic's thinking parameter. # Claude 4.6 models use adaptive thinking + output_config.effort. # Older models use manual thinking with budget_tokens. + # Haiku models do NOT support extended thinking at all — skip entirely. if reasoning_config and isinstance(reasoning_config, dict): - if reasoning_config.get("enabled") is not False: + if reasoning_config.get("enabled") is not False and "haiku" not in model.lower(): effort = str(reasoning_config.get("effort", "medium")).lower() budget = THINKING_BUDGET.get(effort, 8000) if _supports_adaptive_thinking(model):