diff --git a/aider/models.py b/aider/models.py index 3edbe2664..960357d88 100644 --- a/aider/models.py +++ b/aider/models.py @@ -75,8 +75,10 @@ claude-3-5-sonnet-20241022 claude-sonnet-4-20250514 claude-opus-4-20250514 claude-opus-4-6 +claude-opus-4-7 claude-sonnet-4-5 claude-sonnet-4-5-20250929 +claude-sonnet-4-6 claude-haiku-4-5 claude-haiku-4-5-20251001 """ @@ -513,12 +515,9 @@ class Model(ModelSettings): return # <-- if ( - "sonnet-4-5" in model - or "opus-4-6" in model - or "haiku-4-5" in model - or "claude-sonnet-4-5" in model - or "claude-opus-4-6" in model - or "claude-haiku-4-5" in model + "sonnet-4-" in model + or "opus-4-" in model + or "haiku-4-" in model ): self.edit_format = "diff" self.use_repo_map = True diff --git a/aider/resources/model-settings.yml b/aider/resources/model-settings.yml index 7524c68fd..7ee485149 100644 --- a/aider/resources/model-settings.yml +++ b/aider/resources/model-settings.yml @@ -1856,6 +1856,31 @@ accepts_settings: ["thinking_tokens"] # Claude 4.5/4.6 (Anthropic docs: models/overview) +- name: claude-sonnet-4-6 + edit_format: diff + weak_model_name: claude-haiku-4-5 + use_repo_map: true + examples_as_sys_msg: false + extra_params: + max_tokens: 64000 + cache_control: true + editor_model_name: claude-sonnet-4-6 + editor_edit_format: editor-diff + accepts_settings: ["thinking_tokens"] + +- name: claude-opus-4-7 + edit_format: diff + weak_model_name: claude-haiku-4-5 + use_repo_map: true + examples_as_sys_msg: false + extra_params: + max_tokens: 128000 + cache_control: true + editor_model_name: claude-sonnet-4-6 + editor_edit_format: editor-diff + accepts_settings: ["thinking_tokens"] + overeager: true + - name: claude-opus-4-6 edit_format: diff weak_model_name: claude-haiku-4-5