diff --git a/aider/main.py b/aider/main.py index a5b3e5242..190cd81ca 100644 --- a/aider/main.py +++ b/aider/main.py @@ -361,7 +361,20 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F default_config_files = list(map(str, default_config_files)) parser = get_parser(default_config_files, git_root) - args, unknown = parser.parse_known_args(argv) + try: + args, unknown = parser.parse_known_args(argv) + except AttributeError as e: + if "'bool' object has no attribute 'strip'" in str(e): + io.tool_error("Configuration error detected.") + io.tool_output("It seems you have 'yes:' in one of your configuration files.") + io.tool_output("Please replace 'yes:' with 'yes-always:' in the relevant .aider.conf.yml file.") + io.tool_output("Configuration files are searched for in this order:") + for config_file in default_config_files: + io.tool_output(f" - {config_file}") + io.tool_output("For more information, refer to the aider documentation on configuration.") + return 1 + else: + raise if args.verbose: print("Config files search order, if no --config:")