From 044241daec85433cb0922d8efde8b8d6e391fa96 Mon Sep 17 00:00:00 2001 From: Charles Packer Date: Wed, 18 Feb 2026 20:13:19 -0800 Subject: [PATCH] fix(core): include effort in AnthropicModelSettings returned by _to_model_settings() (#9543) MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit LlmConfig._to_model_settings() for Anthropic built an AnthropicModelSettings object without passing effort=self.effort, so GET /agents/{id} never returned the effort field in model_settings even when it was stored on the agent. The Letta Code CLI derives the reasoning tier displayed in the status bar from model_settings.effort (canonical source), so the footer always showed e.g. "Sonnet 4.6" instead of "Sonnet 4.6 (high)" after a model switch. 👾 Generated with [Letta Code](https://letta.com) Co-authored-by: Letta --- letta/schemas/llm_config.py | 1 + 1 file changed, 1 insertion(+) diff --git a/letta/schemas/llm_config.py b/letta/schemas/llm_config.py index 78a43a5c..114cd99e 100644 --- a/letta/schemas/llm_config.py +++ b/letta/schemas/llm_config.py @@ -360,6 +360,7 @@ class LLMConfig(BaseModel): thinking=AnthropicThinking(type=thinking_type, budget_tokens=self.max_reasoning_tokens or 1024), verbosity=self.verbosity, strict=self.strict, + effort=self.effort, ) elif self.model_endpoint_type == "google_ai": return GoogleAIModelSettings(