diff --git a/aider/main.py b/aider/main.py index fbe29cc09..593096145 100644 --- a/aider/main.py +++ b/aider/main.py @@ -787,14 +787,16 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F "Model setting 'remove_reasoning' is deprecated, please use 'reasoning_tag' instead." ) - # Set reasoning effort and thinking tokens if specified and supported + # Set reasoning effort and thinking tokens if specified if args.reasoning_effort is not None: + # Apply if check is disabled or model explicitly supports it if not args.check_model_accepts_settings or ( main_model.accepts_settings and "reasoning_effort" in main_model.accepts_settings ): main_model.set_reasoning_effort(args.reasoning_effort) if args.thinking_tokens is not None: + # Apply if check is disabled or model explicitly supports it if not args.check_model_accepts_settings or ( main_model.accepts_settings and "thinking_tokens" in main_model.accepts_settings ): diff --git a/tests/basic/test_main.py b/tests/basic/test_main.py index 932d03b4e..ff3151421 100644 --- a/tests/basic/test_main.py +++ b/tests/basic/test_main.py @@ -1015,7 +1015,7 @@ class TestMain(TestCase): def test_reasoning_effort_option(self): coder = main( - ["--reasoning-effort", "3", "--yes", "--exit"], + ["--reasoning-effort", "3", "--no-check-model-accepts-settings", "--yes", "--exit"], input=DummyInput(), output=DummyOutput(), return_coder=True,