refactor: reorganize command line arguments and improve help messages

This commit is contained in:
Paul Gauthier 2024-12-07 11:45:20 -08:00 committed by Paul Gauthier (aider)
parent 7ae9569816
commit 20042334ff
10 changed files with 775 additions and 693 deletions

View file

@ -28,7 +28,7 @@ def get_parser(default_config_files, git_root):
config_file_parser_class=configargparse.YAMLConfigFileParser,
auto_env_var_prefix="AIDER_",
)
group = parser.add_argument_group("Main")
group = parser.add_argument_group("Main model")
group.add_argument(
"files", metavar="FILE", nargs="*", help="files to edit with an LLM (optional)"
)
@ -135,7 +135,7 @@ def get_parser(default_config_files, git_root):
group = parser.add_argument_group("API Keys and settings")
group.add_argument(
"--openai-api-key",
help="(deprecated, use --set-env OPENAI_API_KEY=<value>)",
help="Specify the OpenAI API key",
)
group.add_argument(
"--anthropic-api-key",
@ -143,7 +143,7 @@ def get_parser(default_config_files, git_root):
)
group.add_argument(
"--openai-api-base",
help="(deprecated, use --set-env OPENAI_API_BASE=<value>)",
help="Specify the api base url",
)
group.add_argument(
"--openai-api-type",
@ -165,17 +165,20 @@ def get_parser(default_config_files, git_root):
"--set-env",
action="append",
metavar="ENV_VAR_NAME=value",
help="Set an environment variable (can be used multiple times)",
help="Set an environment variable (to control API settings, can be used multiple times)",
default=[],
)
group.add_argument(
"--api-key",
action="append",
metavar="PROVIDER=KEY",
help="Set an API key for a provider (eg: --api-key anthropic=sk-123)",
help=(
"Set an API key for a provider (eg: --api-key provider=<key> sets"
" PROVIDER_API_KEY=<key>)"
),
default=[],
)
group = parser.add_argument_group("Model Settings")
group = parser.add_argument_group("Model settings")
group.add_argument(
"--list-models",
"--models",
@ -262,17 +265,9 @@ def get_parser(default_config_files, git_root):
" If unspecified, defaults to the model's max_chat_history_tokens."
),
)
# This is a duplicate of the argument in the preparser and is a no-op by this time of
# argument parsing, but it's here so that the help is displayed as expected.
group.add_argument(
"--env-file",
metavar="ENV_FILE",
default=default_env_file(git_root),
help="Specify the .env file to load (default: .env in git root)",
)
##########
group = parser.add_argument_group("Cache Settings")
group = parser.add_argument_group("Cache settings")
group.add_argument(
"--cache-prompts",
action=argparse.BooleanOptionalAction,
@ -287,7 +282,7 @@ def get_parser(default_config_files, git_root):
)
##########
group = parser.add_argument_group("Repomap Settings")
group = parser.add_argument_group("Repomap settings")
group.add_argument(
"--map-tokens",
type=int,
@ -344,7 +339,7 @@ def get_parser(default_config_files, git_root):
)
##########
group = parser.add_argument_group("Output Settings")
group = parser.add_argument_group("Output settings")
group.add_argument(
"--dark-mode",
action="store_true",
@ -443,7 +438,7 @@ def get_parser(default_config_files, git_root):
)
##########
group = parser.add_argument_group("Git Settings")
group = parser.add_argument_group("Git settings")
group.add_argument(
"--git",
action=argparse.BooleanOptionalAction,
@ -536,12 +531,6 @@ def get_parser(default_config_files, git_root):
default=False,
help="Enable/disable watching files for ai coding comments (default: False)",
)
group.add_argument(
"--copy-paste",
action=argparse.BooleanOptionalAction,
default=False,
help="Enable automatic copy/paste of chat between aider and web UI (default: False)",
)
group = parser.add_argument_group("Fixing and committing")
group.add_argument(
"--lint",
@ -602,37 +591,8 @@ def get_parser(default_config_files, git_root):
default=False,
)
group = parser.add_argument_group("Other Settings")
group.add_argument(
"--file",
action="append",
metavar="FILE",
help="specify a file to edit (can be used multiple times)",
)
group.add_argument(
"--read",
action="append",
metavar="FILE",
help="specify a read-only file (can be used multiple times)",
)
group.add_argument(
"--vim",
action="store_true",
help="Use VI editing mode in the terminal (default: False)",
default=False,
)
group.add_argument(
"--chat-language",
metavar="CHAT_LANGUAGE",
default=None,
help="Specify the language to use in the chat (default: None, uses system settings)",
)
group.add_argument(
"--version",
action="version",
version=f"%(prog)s {__version__}",
help="Show the version number and exit",
)
#########
group = parser.add_argument_group("Upgrading")
group.add_argument(
"--just-check-update",
action="store_true",
@ -665,47 +625,14 @@ def get_parser(default_config_files, git_root):
default=False,
)
group.add_argument(
"--apply",
metavar="FILE",
help="Apply the changes from the given file instead of running the chat (debug)",
)
group.add_argument(
"--apply-clipboard-edits",
action="store_true",
help="Apply clipboard contents as edits using the main model's editor format",
default=False,
)
group.add_argument(
"--yes-always",
action="store_true",
help="Always say yes to every confirmation",
default=None,
)
group.add_argument(
"-v",
"--verbose",
action="store_true",
help="Enable verbose output",
default=False,
)
group.add_argument(
"--show-repo-map",
action="store_true",
help="Print the repo map and exit (debug)",
default=False,
)
group.add_argument(
"--show-prompts",
action="store_true",
help="Print the system prompts and exit (debug)",
default=False,
)
group.add_argument(
"--exit",
action="store_true",
help="Do all startup activities then exit before accepting user input (debug)",
default=False,
"--version",
action="version",
version=f"%(prog)s {__version__}",
help="Show the version number and exit",
)
##########
group = parser.add_argument_group("Modes")
group.add_argument(
"--message",
"--msg",
@ -724,6 +651,110 @@ def get_parser(default_config_files, git_root):
" (disables chat mode)"
),
)
group.add_argument(
"--gui",
"--browser",
action=argparse.BooleanOptionalAction,
help="Run aider in your browser (default: False)",
default=False,
)
group.add_argument(
"--copy-paste",
action=argparse.BooleanOptionalAction,
default=False,
help="Enable automatic copy/paste of chat between aider and web UI (default: False)",
)
group.add_argument(
"--apply",
metavar="FILE",
help="Apply the changes from the given file instead of running the chat (debug)",
)
group.add_argument(
"--apply-clipboard-edits",
action="store_true",
help="Apply clipboard contents as edits using the main model's editor format",
default=False,
)
group.add_argument(
"--exit",
action="store_true",
help="Do all startup activities then exit before accepting user input (debug)",
default=False,
)
group.add_argument(
"--show-repo-map",
action="store_true",
help="Print the repo map and exit (debug)",
default=False,
)
group.add_argument(
"--show-prompts",
action="store_true",
help="Print the system prompts and exit (debug)",
default=False,
)
##########
group = parser.add_argument_group("Voice settings")
group.add_argument(
"--voice-format",
metavar="VOICE_FORMAT",
default="wav",
choices=["wav", "mp3", "webm"],
help="Audio format for voice recording (default: wav). webm and mp3 require ffmpeg",
)
group.add_argument(
"--voice-language",
metavar="VOICE_LANGUAGE",
default="en",
help="Specify the language for voice using ISO 639-1 code (default: auto)",
)
group.add_argument(
"--voice-input-device",
metavar="VOICE_INPUT_DEVICE",
default=None,
help="Specify the input device name for voice recording",
)
######
group = parser.add_argument_group("Other settings")
group.add_argument(
"--file",
action="append",
metavar="FILE",
help="specify a file to edit (can be used multiple times)",
)
group.add_argument(
"--read",
action="append",
metavar="FILE",
help="specify a read-only file (can be used multiple times)",
)
group.add_argument(
"--vim",
action="store_true",
help="Use VI editing mode in the terminal (default: False)",
default=False,
)
group.add_argument(
"--chat-language",
metavar="CHAT_LANGUAGE",
default=None,
help="Specify the language to use in the chat (default: None, uses system settings)",
)
group.add_argument(
"--yes-always",
action="store_true",
help="Always say yes to every confirmation",
default=None,
)
group.add_argument(
"-v",
"--verbose",
action="store_true",
help="Enable verbose output",
default=False,
)
group.add_argument(
"--load",
metavar="LOAD_FILE",
@ -744,12 +775,13 @@ def get_parser(default_config_files, git_root):
" or home directory)"
),
)
# This is a duplicate of the argument in the preparser and is a no-op by this time of
# argument parsing, but it's here so that the help is displayed as expected.
group.add_argument(
"--gui",
"--browser",
action=argparse.BooleanOptionalAction,
help="Run aider in your browser (default: False)",
default=False,
"--env-file",
metavar="ENV_FILE",
default=default_env_file(git_root),
help="Specify the .env file to load (default: .env in git root)",
)
group.add_argument(
"--suggest-shell-commands",
@ -774,28 +806,6 @@ def get_parser(default_config_files, git_root):
help="Specify which editor to use for the /editor command",
)
##########
group = parser.add_argument_group("Voice Settings")
group.add_argument(
"--voice-format",
metavar="VOICE_FORMAT",
default="wav",
choices=["wav", "mp3", "webm"],
help="Audio format for voice recording (default: wav). webm and mp3 require ffmpeg",
)
group.add_argument(
"--voice-language",
metavar="VOICE_LANGUAGE",
default="en",
help="Specify the language for voice using ISO 639-1 code (default: auto)",
)
group.add_argument(
"--voice-input-device",
metavar="VOICE_INPUT_DEVICE",
default=None,
help="Specify the input device name for voice recording",
)
return parser

View file

@ -558,18 +558,15 @@ def main(argv=None, input=None, output=None, force_git_root=None, return_coder=F
os.environ["OPENAI_API_BASE"] = args.openai_api_base
if args.openai_api_version:
io.tool_warning(
"--openai-api-version will be deprecated soon, use --set-env OPENAI_API_VERSION=<value>"
"--openai-api-version is deprecated, use --set-env OPENAI_API_VERSION=<value>"
)
os.environ["OPENAI_API_VERSION"] = args.openai_api_version
if args.openai_api_type:
io.tool_warning(
"--openai-api-type will be deprecated soon, use --set-env OPENAI_API_TYPE=<value>"
)
io.tool_warning("--openai-api-type is deprecated, use --set-env OPENAI_API_TYPE=<value>")
os.environ["OPENAI_API_TYPE"] = args.openai_api_type
if args.openai_organization_id:
io.tool_warning(
"--openai-organization-id will be deprecated soon, use --set-env"
" OPENAI_ORGANIZATION=<value>"
"--openai-organization-id is deprecated, use --set-env OPENAI_ORGANIZATION=<value>"
)
os.environ["OPENAI_ORGANIZATION"] = args.openai_organization_id

View file

@ -1,12 +1,44 @@
Aider has special support for providing
OpenAI and Anthropic API keys
via
[command line switches](/docs/config/options.html)
and
[yaml config file](/docs/config/aider_conf.html).
*All other LLM providers* must
have their keys and settings
specified in environment variables.
This can be done in your shell,
or by using a
[.env file](/docs/config/dotenv.html).
via dedicated
[command line switches](/docs/config/options.html#api-keys-and-settings)
`--openai-api-key` and `--anthropic-api-key`.
You can also set those API keys via special entries in the
[yaml config file](/docs/config/aider_conf.html), like this:
```yaml
openai-api-key: <key>
anthropic-api-key: <key>
```
All other LLM providers can use one of the following methods to set their
keys:
### API keys on the command line
Use `--api-key provider=<key>` which has the effect of setting the environment variable `PROVIDER_API_KEY=<key>`. So `--api-key gemini=xxx` would set `GEMINI_API_KEY=xxx`.
### API keys in a .env file
The [.env file](/docs/config/dotenv.html)
is a great place to set API keys and other provider API environment variables:
```bash
GEMINI_API_KEY=foo
OPENROUTER_API_KEY=bar
DEEPSEEK_API_KEY=baz
```
### API keys in .aider.conf.yml
Or you can set API keys in the
[`.aider.conf.yml` file](/docs/config/aider_conf.html)
via the `api-key` entry:
```
api-key:
- gemini=foo # Sets env var GEMINI_API_KEY=foo
- openrouter=bar # Sets env var OPENROUTER_API_KEY=bar
- deepseek=baz # Sets env var DEEPSEEK_API_KEY=baz
```

View file

@ -1,49 +1,3 @@
{"event": "exit", "properties": {"reason": "Completed --message", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410683}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733410989}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411054}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411054}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411057}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411262}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411262}
{"event": "exit", "properties": {"reason": "GUI session ended", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733411262}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413023}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413024}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413024}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413030}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413075}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413076}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413076}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413076}
{"event": "command_help", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413080}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413087}
{"event": "command_help", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413089}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413097}
{"event": "command_help", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413098}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413213}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413216}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413216}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413216}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413220}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413241}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413243}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413243}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413243}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413245}
{"event": "command_tokens", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413305}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413343}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413344}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413344}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413344}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413351}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413516}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413539}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413540}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413540}
{"event": "command_reset", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413552}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413555}
{"event": "exit", "properties": {"reason": "Control-C", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413602}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413604}
{"event": "repo", "properties": {"num_files": 402, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413604}
{"event": "cli session", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413604}
{"event": "command_chat-mode", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413607}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.66.1.dev+import"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733413666}
@ -998,3 +952,49 @@
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597693}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597693}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597694}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597709}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597709}
{"event": "exit", "properties": {"reason": "Completed lint/test/commit", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597718}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597817}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597821}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597833}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597833}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 12124, "completion_tokens": 194, "total_tokens": 12318, "cost": 0.039282000000000004, "total_cost": 0.828561, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597839}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597859}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 14457, "completion_tokens": 289, "total_tokens": 14746, "cost": 0.047706, "total_cost": 0.876267, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597867}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597892}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 9872, "completion_tokens": 291, "total_tokens": 10163, "cost": 0.033981, "total_cost": 0.9102480000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597899}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597973}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597973}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 8133, "completion_tokens": 107, "total_tokens": 8240, "cost": 0.026004, "total_cost": 0.9362520000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597978}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597991}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597991}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 8127, "completion_tokens": 70, "total_tokens": 8197, "cost": 0.025431, "total_cost": 0.9616830000000001, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733597995}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598011}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598016}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598016}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 9528, "completion_tokens": 216, "total_tokens": 9744, "cost": 0.031824000000000005, "total_cost": 0.993507, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598023}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598028}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 11880, "completion_tokens": 209, "total_tokens": 12089, "cost": 0.038775, "total_cost": 1.032282, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598034}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598036}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 11359, "completion_tokens": 79, "total_tokens": 11438, "cost": 0.035262, "total_cost": 1.0675439999999998, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598045}
{"event": "command_ask", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598116}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598116}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "ask", "prompt_tokens": 9454, "completion_tokens": 317, "total_tokens": 9771, "cost": 0.033117, "total_cost": 1.100661, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598126}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598294}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598294}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598294}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598301}
{"event": "repo", "properties": {"num_files": 404, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598301}
{"event": "command_run", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598301}
{"event": "launched", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598541}
{"event": "gui session", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598541}
{"event": "exit", "properties": {"reason": "GUI session ended", "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733598541}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599306}
{"event": "command_add", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599309}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599350}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 18301, "completion_tokens": 392, "total_tokens": 18693, "cost": 0.060783000000000004, "total_cost": 1.161444, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599359}
{"event": "command_clear", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599370}
{"event": "message_send_starting", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599372}
{"event": "message_send", "properties": {"main_model": "claude-3-5-sonnet-20241022", "weak_model": "claude-3-5-sonnet-20241022", "editor_model": "claude-3-5-sonnet-20241022", "edit_format": "diff", "prompt_tokens": 16742, "completion_tokens": 381, "total_tokens": 17123, "cost": 0.055941, "total_cost": 1.217385, "python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733599381}
{"event": "command_drop", "properties": {"python_version": "3.12.6", "os_platform": "Darwin", "os_release": "23.6.0", "machine": "x86_64", "aider_version": "0.67.1.dev37+gf2d2ab51.d20241206"}, "user_id": "c42c4e6b-f054-44d7-ae1f-6726cc41da88", "time": 1733600357}

View file

@ -14,14 +14,8 @@
## show this help message and exit
#help: xxx
#######
# Main:
## Specify the OpenAI API key
#openai-api-key: xxx
## Specify the Anthropic API key
#anthropic-api-key: xxx
#############
# Main model:
## Specify the model to use for the main chat
#model: xxx
@ -59,27 +53,52 @@
## Use o1-preview model for the main chat
#o1-preview: false
########################
# API Keys and settings:
## Specify the OpenAI API key
#openai-api-key: xxx
## Specify the Anthropic API key
#anthropic-api-key: xxx
## Specify the api base url
#openai-api-base: xxx
## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
#openai-api-type: xxx
## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
#openai-api-version: xxx
## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
#openai-api-deployment-id: xxx
## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
#openai-organization-id: xxx
## Set an environment variable (to control API settings, can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Model Settings:
## List known models which match the (partial) MODEL name
#list-models: xxx
## Specify the api base url
#openai-api-base: xxx
## Specify the api_type
#openai-api-type: xxx
## Specify the api_version
#openai-api-version: xxx
## Specify the deployment_id
#openai-api-deployment-id: xxx
## Specify the OpenAI organization ID
#openai-organization-id: xxx
## Specify a file with aider model settings for unknown models
#model-settings-file: .aider.model.settings.yml
@ -121,9 +140,6 @@
## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
#max-chat-history-tokens: xxx
## Specify the .env file to load (default: .env in git root)
#env-file: .env
#################
# Cache Settings:
@ -256,9 +272,6 @@
## Enable/disable watching files for ai coding comments (default: False)
#watch-files: false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#copy-paste: false
########################
# Fixing and committing:
@ -297,6 +310,69 @@
## Permanently disable analytics
#analytics-disable: false
############
# Upgrading:
## Check for updates and return status in the exit code
#just-check-update: false
## Check for new aider versions on launch
#check-update: true
## Show release notes on first run of new version (default: None, ask user)
#show-release-notes: xxx
## Install the latest version from the main branch
#install-main-branch: false
## Upgrade aider to the latest version from PyPI
#upgrade: false
## Show the version number and exit
#version: xxx
########
# Modes:
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#message: xxx
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#message-file: xxx
## Run aider in your browser (default: False)
#gui: false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#copy-paste: false
## Apply the changes from the given file instead of running the chat (debug)
#apply: xxx
## Apply clipboard contents as edits using the main model's editor format
#apply-clipboard-edits: false
## Do all startup activities then exit before accepting user input (debug)
#exit: false
## Print the repo map and exit (debug)
#show-repo-map: false
## Print the system prompts and exit (debug)
#show-prompts: false
#################
# Voice Settings:
## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
#voice-format: wav
## Specify the language for voice using ISO 639-1 code (default: auto)
#voice-language: en
## Specify the input device name for voice recording
#voice-input-device: xxx
#################
# Other Settings:
@ -322,51 +398,12 @@
## Specify the language to use in the chat (default: None, uses system settings)
#chat-language: xxx
## Show the version number and exit
#version: xxx
## Check for updates and return status in the exit code
#just-check-update: false
## Check for new aider versions on launch
#check-update: true
## Show release notes on first run of new version (default: None, ask user)
#show-release-notes: xxx
## Install the latest version from the main branch
#install-main-branch: false
## Upgrade aider to the latest version from PyPI
#upgrade: false
## Apply the changes from the given file instead of running the chat (debug)
#apply: xxx
## Apply clipboard contents as edits using the main model's editor format
#apply-clipboard-edits: false
## Always say yes to every confirmation
#yes-always: false
## Enable verbose output
#verbose: false
## Print the repo map and exit (debug)
#show-repo-map: false
## Print the system prompts and exit (debug)
#show-prompts: false
## Do all startup activities then exit before accepting user input (debug)
#exit: false
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#message: xxx
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#message-file: xxx
## Load and execute /commands from a file on launch
#load: xxx
@ -376,8 +413,8 @@
## Specify the config file (default: search for .aider.conf.yml in git root, cwd or home directory)
#config: xxx
## Run aider in your browser (default: False)
#gui: false
## Specify the .env file to load (default: .env in git root)
#env-file: .env
## Enable/disable suggesting shell commands (default: True)
#suggest-shell-commands: true
@ -390,31 +427,3 @@
## Specify which editor to use for the /editor command
#editor: xxx
## Set an environment variable (can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Voice Settings:
## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
#voice-format: wav
## Specify the language for voice using ISO 639-1 code (default: auto)
#voice-language: en
## Specify the input device name for voice recording
#voice-input-device: xxx

View file

@ -18,14 +18,8 @@
##...
#######
# Main:
## Specify the OpenAI API key
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#AIDER_ANTHROPIC_API_KEY=
#############
# Main model:
## Specify the model to use for the main chat
#AIDER_MODEL=
@ -63,27 +57,42 @@
## Use o1-preview model for the main chat
#AIDER_O1_PREVIEW=
########################
# API Keys and settings:
## Specify the OpenAI API key
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#AIDER_ANTHROPIC_API_KEY=
## Specify the api base url
#AIDER_OPENAI_API_BASE=
## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
#AIDER_OPENAI_API_TYPE=
## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
#AIDER_OPENAI_API_VERSION=
## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
#AIDER_OPENAI_ORGANIZATION_ID=
## Set an environment variable (to control API settings, can be used multiple times)
#AIDER_SET_ENV=
## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
#AIDER_API_KEY=
#################
# Model Settings:
## List known models which match the (partial) MODEL name
#AIDER_LIST_MODELS=
## Specify the api base url
#AIDER_OPENAI_API_BASE=
## Specify the api_type
#AIDER_OPENAI_API_TYPE=
## Specify the api_version
#AIDER_OPENAI_API_VERSION=
## Specify the deployment_id
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## Specify the OpenAI organization ID
#AIDER_OPENAI_ORGANIZATION_ID=
## Specify a file with aider model settings for unknown models
#AIDER_MODEL_SETTINGS_FILE=.aider.model.settings.yml
@ -120,9 +129,6 @@
## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
#AIDER_MAX_CHAT_HISTORY_TOKENS=
## Specify the .env file to load (default: .env in git root)
#AIDER_ENV_FILE=.env
#################
# Cache Settings:
@ -255,9 +261,6 @@
## Enable/disable watching files for ai coding comments (default: False)
#AIDER_WATCH_FILES=false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#AIDER_COPY_PASTE=false
########################
# Fixing and committing:
@ -291,20 +294,8 @@
## Permanently disable analytics
#AIDER_ANALYTICS_DISABLE=false
#################
# Other Settings:
## specify a file to edit (can be used multiple times)
#AIDER_FILE=
## specify a read-only file (can be used multiple times)
#AIDER_READ=
## Use VI editing mode in the terminal (default: False)
#AIDER_VIM=false
## Specify the language to use in the chat (default: None, uses system settings)
#AIDER_CHAT_LANGUAGE=
############
# Upgrading:
## Check for updates and return status in the exit code
#AIDER_JUST_CHECK_UPDATE=false
@ -321,26 +312,8 @@
## Upgrade aider to the latest version from PyPI
#AIDER_UPGRADE=false
## Apply the changes from the given file instead of running the chat (debug)
#AIDER_APPLY=
## Apply clipboard contents as edits using the main model's editor format
#AIDER_APPLY_CLIPBOARD_EDITS=false
## Always say yes to every confirmation
#AIDER_YES_ALWAYS=
## Enable verbose output
#AIDER_VERBOSE=false
## Print the repo map and exit (debug)
#AIDER_SHOW_REPO_MAP=false
## Print the system prompts and exit (debug)
#AIDER_SHOW_PROMPTS=false
## Do all startup activities then exit before accepting user input (debug)
#AIDER_EXIT=false
########
# Modes:
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#AIDER_MESSAGE=
@ -348,32 +321,26 @@
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#AIDER_MESSAGE_FILE=
## Load and execute /commands from a file on launch
#AIDER_LOAD=
## Specify the encoding for input and output (default: utf-8)
#AIDER_ENCODING=utf-8
## Run aider in your browser (default: False)
#AIDER_GUI=false
## Enable/disable suggesting shell commands (default: True)
#AIDER_SUGGEST_SHELL_COMMANDS=true
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#AIDER_COPY_PASTE=false
## Enable/disable fancy input with history and completion (default: True)
#AIDER_FANCY_INPUT=true
## Apply the changes from the given file instead of running the chat (debug)
#AIDER_APPLY=
## Enable/disable detection and offering to add URLs to chat (default: True)
#AIDER_DETECT_URLS=true
## Apply clipboard contents as edits using the main model's editor format
#AIDER_APPLY_CLIPBOARD_EDITS=false
## Specify which editor to use for the /editor command
#AIDER_EDITOR=
## Do all startup activities then exit before accepting user input (debug)
#AIDER_EXIT=false
## Set an environment variable (can be used multiple times)
#AIDER_SET_ENV=
## Print the repo map and exit (debug)
#AIDER_SHOW_REPO_MAP=false
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#AIDER_API_KEY=
## Print the system prompts and exit (debug)
#AIDER_SHOW_PROMPTS=false
#################
# Voice Settings:
@ -386,3 +353,45 @@
## Specify the input device name for voice recording
#AIDER_VOICE_INPUT_DEVICE=
#################
# Other Settings:
## specify a file to edit (can be used multiple times)
#AIDER_FILE=
## specify a read-only file (can be used multiple times)
#AIDER_READ=
## Use VI editing mode in the terminal (default: False)
#AIDER_VIM=false
## Specify the language to use in the chat (default: None, uses system settings)
#AIDER_CHAT_LANGUAGE=
## Always say yes to every confirmation
#AIDER_YES_ALWAYS=
## Enable verbose output
#AIDER_VERBOSE=false
## Load and execute /commands from a file on launch
#AIDER_LOAD=
## Specify the encoding for input and output (default: utf-8)
#AIDER_ENCODING=utf-8
## Specify the .env file to load (default: .env in git root)
#AIDER_ENV_FILE=.env
## Enable/disable suggesting shell commands (default: True)
#AIDER_SUGGEST_SHELL_COMMANDS=true
## Enable/disable fancy input with history and completion (default: True)
#AIDER_FANCY_INPUT=true
## Enable/disable detection and offering to add URLs to chat (default: True)
#AIDER_DETECT_URLS=true
## Specify which editor to use for the /editor command
#AIDER_EDITOR=

View file

@ -70,14 +70,8 @@ cog.outl("```")
## show this help message and exit
#help: xxx
#######
# Main:
## Specify the OpenAI API key
#openai-api-key: xxx
## Specify the Anthropic API key
#anthropic-api-key: xxx
#############
# Main model:
## Specify the model to use for the main chat
#model: xxx
@ -115,27 +109,52 @@ cog.outl("```")
## Use o1-preview model for the main chat
#o1-preview: false
########################
# API Keys and settings:
## Specify the OpenAI API key
#openai-api-key: xxx
## Specify the Anthropic API key
#anthropic-api-key: xxx
## Specify the api base url
#openai-api-base: xxx
## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
#openai-api-type: xxx
## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
#openai-api-version: xxx
## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
#openai-api-deployment-id: xxx
## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
#openai-organization-id: xxx
## Set an environment variable (to control API settings, can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Model Settings:
## List known models which match the (partial) MODEL name
#list-models: xxx
## Specify the api base url
#openai-api-base: xxx
## Specify the api_type
#openai-api-type: xxx
## Specify the api_version
#openai-api-version: xxx
## Specify the deployment_id
#openai-api-deployment-id: xxx
## Specify the OpenAI organization ID
#openai-organization-id: xxx
## Specify a file with aider model settings for unknown models
#model-settings-file: .aider.model.settings.yml
@ -177,9 +196,6 @@ cog.outl("```")
## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
#max-chat-history-tokens: xxx
## Specify the .env file to load (default: .env in git root)
#env-file: .env
#################
# Cache Settings:
@ -312,9 +328,6 @@ cog.outl("```")
## Enable/disable watching files for ai coding comments (default: False)
#watch-files: false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#copy-paste: false
########################
# Fixing and committing:
@ -353,6 +366,69 @@ cog.outl("```")
## Permanently disable analytics
#analytics-disable: false
############
# Upgrading:
## Check for updates and return status in the exit code
#just-check-update: false
## Check for new aider versions on launch
#check-update: true
## Show release notes on first run of new version (default: None, ask user)
#show-release-notes: xxx
## Install the latest version from the main branch
#install-main-branch: false
## Upgrade aider to the latest version from PyPI
#upgrade: false
## Show the version number and exit
#version: xxx
########
# Modes:
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#message: xxx
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#message-file: xxx
## Run aider in your browser (default: False)
#gui: false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#copy-paste: false
## Apply the changes from the given file instead of running the chat (debug)
#apply: xxx
## Apply clipboard contents as edits using the main model's editor format
#apply-clipboard-edits: false
## Do all startup activities then exit before accepting user input (debug)
#exit: false
## Print the repo map and exit (debug)
#show-repo-map: false
## Print the system prompts and exit (debug)
#show-prompts: false
#################
# Voice Settings:
## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
#voice-format: wav
## Specify the language for voice using ISO 639-1 code (default: auto)
#voice-language: en
## Specify the input device name for voice recording
#voice-input-device: xxx
#################
# Other Settings:
@ -378,51 +454,12 @@ cog.outl("```")
## Specify the language to use in the chat (default: None, uses system settings)
#chat-language: xxx
## Show the version number and exit
#version: xxx
## Check for updates and return status in the exit code
#just-check-update: false
## Check for new aider versions on launch
#check-update: true
## Show release notes on first run of new version (default: None, ask user)
#show-release-notes: xxx
## Install the latest version from the main branch
#install-main-branch: false
## Upgrade aider to the latest version from PyPI
#upgrade: false
## Apply the changes from the given file instead of running the chat (debug)
#apply: xxx
## Apply clipboard contents as edits using the main model's editor format
#apply-clipboard-edits: false
## Always say yes to every confirmation
#yes-always: false
## Enable verbose output
#verbose: false
## Print the repo map and exit (debug)
#show-repo-map: false
## Print the system prompts and exit (debug)
#show-prompts: false
## Do all startup activities then exit before accepting user input (debug)
#exit: false
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#message: xxx
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#message-file: xxx
## Load and execute /commands from a file on launch
#load: xxx
@ -432,8 +469,8 @@ cog.outl("```")
## Specify the config file (default: search for .aider.conf.yml in git root, cwd or home directory)
#config: xxx
## Run aider in your browser (default: False)
#gui: false
## Specify the .env file to load (default: .env in git root)
#env-file: .env
## Enable/disable suggesting shell commands (default: True)
#suggest-shell-commands: true
@ -446,33 +483,5 @@ cog.outl("```")
## Specify which editor to use for the /editor command
#editor: xxx
## Set an environment variable (can be used multiple times)
#set-env: xxx
## Specify multiple values like this:
#set-env:
# - xxx
# - yyy
# - zzz
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#api-key: xxx
## Specify multiple values like this:
#api-key:
# - xxx
# - yyy
# - zzz
#################
# Voice Settings:
## Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
#voice-format: wav
## Specify the language for voice using ISO 639-1 code (default: auto)
#voice-language: en
## Specify the input device name for voice recording
#voice-input-device: xxx
```
<!--[[[end]]]-->

View file

@ -1,6 +1,6 @@
---
parent: Configuration
nav_order: 900
nav_order: 20
description: Using a .env file to store LLM API keys for aider.
---
@ -60,14 +60,8 @@ cog.outl("```")
##...
#######
# Main:
## Specify the OpenAI API key
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#AIDER_ANTHROPIC_API_KEY=
#############
# Main model:
## Specify the model to use for the main chat
#AIDER_MODEL=
@ -105,27 +99,42 @@ cog.outl("```")
## Use o1-preview model for the main chat
#AIDER_O1_PREVIEW=
########################
# API Keys and settings:
## Specify the OpenAI API key
#AIDER_OPENAI_API_KEY=
## Specify the Anthropic API key
#AIDER_ANTHROPIC_API_KEY=
## Specify the api base url
#AIDER_OPENAI_API_BASE=
## (deprecated, use --set-env OPENAI_API_TYPE=<value>)
#AIDER_OPENAI_API_TYPE=
## (deprecated, use --set-env OPENAI_API_VERSION=<value>)
#AIDER_OPENAI_API_VERSION=
## (deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## (deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
#AIDER_OPENAI_ORGANIZATION_ID=
## Set an environment variable (to control API settings, can be used multiple times)
#AIDER_SET_ENV=
## Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
#AIDER_API_KEY=
#################
# Model Settings:
## List known models which match the (partial) MODEL name
#AIDER_LIST_MODELS=
## Specify the api base url
#AIDER_OPENAI_API_BASE=
## Specify the api_type
#AIDER_OPENAI_API_TYPE=
## Specify the api_version
#AIDER_OPENAI_API_VERSION=
## Specify the deployment_id
#AIDER_OPENAI_API_DEPLOYMENT_ID=
## Specify the OpenAI organization ID
#AIDER_OPENAI_ORGANIZATION_ID=
## Specify a file with aider model settings for unknown models
#AIDER_MODEL_SETTINGS_FILE=.aider.model.settings.yml
@ -162,9 +171,6 @@ cog.outl("```")
## Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
#AIDER_MAX_CHAT_HISTORY_TOKENS=
## Specify the .env file to load (default: .env in git root)
#AIDER_ENV_FILE=.env
#################
# Cache Settings:
@ -297,9 +303,6 @@ cog.outl("```")
## Enable/disable watching files for ai coding comments (default: False)
#AIDER_WATCH_FILES=false
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#AIDER_COPY_PASTE=false
########################
# Fixing and committing:
@ -333,20 +336,8 @@ cog.outl("```")
## Permanently disable analytics
#AIDER_ANALYTICS_DISABLE=false
#################
# Other Settings:
## specify a file to edit (can be used multiple times)
#AIDER_FILE=
## specify a read-only file (can be used multiple times)
#AIDER_READ=
## Use VI editing mode in the terminal (default: False)
#AIDER_VIM=false
## Specify the language to use in the chat (default: None, uses system settings)
#AIDER_CHAT_LANGUAGE=
############
# Upgrading:
## Check for updates and return status in the exit code
#AIDER_JUST_CHECK_UPDATE=false
@ -363,26 +354,8 @@ cog.outl("```")
## Upgrade aider to the latest version from PyPI
#AIDER_UPGRADE=false
## Apply the changes from the given file instead of running the chat (debug)
#AIDER_APPLY=
## Apply clipboard contents as edits using the main model's editor format
#AIDER_APPLY_CLIPBOARD_EDITS=false
## Always say yes to every confirmation
#AIDER_YES_ALWAYS=
## Enable verbose output
#AIDER_VERBOSE=false
## Print the repo map and exit (debug)
#AIDER_SHOW_REPO_MAP=false
## Print the system prompts and exit (debug)
#AIDER_SHOW_PROMPTS=false
## Do all startup activities then exit before accepting user input (debug)
#AIDER_EXIT=false
########
# Modes:
## Specify a single message to send the LLM, process reply then exit (disables chat mode)
#AIDER_MESSAGE=
@ -390,32 +363,26 @@ cog.outl("```")
## Specify a file containing the message to send the LLM, process reply, then exit (disables chat mode)
#AIDER_MESSAGE_FILE=
## Load and execute /commands from a file on launch
#AIDER_LOAD=
## Specify the encoding for input and output (default: utf-8)
#AIDER_ENCODING=utf-8
## Run aider in your browser (default: False)
#AIDER_GUI=false
## Enable/disable suggesting shell commands (default: True)
#AIDER_SUGGEST_SHELL_COMMANDS=true
## Enable automatic copy/paste of chat between aider and web UI (default: False)
#AIDER_COPY_PASTE=false
## Enable/disable fancy input with history and completion (default: True)
#AIDER_FANCY_INPUT=true
## Apply the changes from the given file instead of running the chat (debug)
#AIDER_APPLY=
## Enable/disable detection and offering to add URLs to chat (default: True)
#AIDER_DETECT_URLS=true
## Apply clipboard contents as edits using the main model's editor format
#AIDER_APPLY_CLIPBOARD_EDITS=false
## Specify which editor to use for the /editor command
#AIDER_EDITOR=
## Do all startup activities then exit before accepting user input (debug)
#AIDER_EXIT=false
## Set an environment variable (can be used multiple times)
#AIDER_SET_ENV=
## Print the repo map and exit (debug)
#AIDER_SHOW_REPO_MAP=false
## Set an API key for a provider (eg: --api-key anthropic=sk-123)
#AIDER_API_KEY=
## Print the system prompts and exit (debug)
#AIDER_SHOW_PROMPTS=false
#################
# Voice Settings:
@ -428,5 +395,47 @@ cog.outl("```")
## Specify the input device name for voice recording
#AIDER_VOICE_INPUT_DEVICE=
#################
# Other Settings:
## specify a file to edit (can be used multiple times)
#AIDER_FILE=
## specify a read-only file (can be used multiple times)
#AIDER_READ=
## Use VI editing mode in the terminal (default: False)
#AIDER_VIM=false
## Specify the language to use in the chat (default: None, uses system settings)
#AIDER_CHAT_LANGUAGE=
## Always say yes to every confirmation
#AIDER_YES_ALWAYS=
## Enable verbose output
#AIDER_VERBOSE=false
## Load and execute /commands from a file on launch
#AIDER_LOAD=
## Specify the encoding for input and output (default: utf-8)
#AIDER_ENCODING=utf-8
## Specify the .env file to load (default: .env in git root)
#AIDER_ENV_FILE=.env
## Enable/disable suggesting shell commands (default: True)
#AIDER_SUGGEST_SHELL_COMMANDS=true
## Enable/disable fancy input with history and completion (default: True)
#AIDER_FANCY_INPUT=true
## Enable/disable detection and offering to add URLs to chat (default: True)
#AIDER_DETECT_URLS=true
## Specify which editor to use for the /editor command
#AIDER_EDITOR=
```
<!--[[[end]]]-->

View file

@ -1,6 +1,6 @@
---
parent: Configuration
nav_order: 15
nav_order: 100
description: How to configure a custom editor for aider's /editor command
---

View file

@ -25,18 +25,19 @@ from aider.args import get_md_help
cog.out(get_md_help())
]]]-->
```
usage: aider [-h] [--openai-api-key] [--anthropic-api-key] [--model]
[--opus] [--sonnet] [--haiku] [--4] [--4o] [--mini]
[--4-turbo] [--35turbo] [--deepseek] [--o1-mini]
[--o1-preview] [--list-models] [--openai-api-base]
usage: aider [-h] [--model] [--opus] [--sonnet] [--haiku] [--4]
[--4o] [--mini] [--4-turbo] [--35turbo] [--deepseek]
[--o1-mini] [--o1-preview] [--openai-api-key]
[--anthropic-api-key] [--openai-api-base]
[--openai-api-type] [--openai-api-version]
[--openai-api-deployment-id] [--openai-organization-id]
[--set-env] [--api-key] [--list-models]
[--model-settings-file] [--model-metadata-file]
[--alias] [--verify-ssl | --no-verify-ssl] [--timeout]
[--edit-format] [--architect] [--weak-model]
[--editor-model] [--editor-edit-format]
[--show-model-warnings | --no-show-model-warnings]
[--max-chat-history-tokens] [--env-file]
[--max-chat-history-tokens]
[--cache-prompts | --no-cache-prompts]
[--cache-keepalive-pings] [--map-tokens]
[--map-refresh] [--map-multiplier-no-files]
@ -60,25 +61,25 @@ usage: aider [-h] [--openai-api-key] [--anthropic-api-key] [--model]
[--attribute-commit-message-committer | --no-attribute-commit-message-committer]
[--commit] [--commit-prompt] [--dry-run | --no-dry-run]
[--skip-sanity-check-repo]
[--watch-files | --no-watch-files]
[--copy-paste | --no-copy-paste] [--lint] [--lint-cmd]
[--auto-lint | --no-auto-lint] [--test-cmd]
[--auto-test | --no-auto-test] [--test]
[--watch-files | --no-watch-files] [--lint]
[--lint-cmd] [--auto-lint | --no-auto-lint]
[--test-cmd] [--auto-test | --no-auto-test] [--test]
[--analytics | --no-analytics] [--analytics-log]
[--analytics-disable] [--file] [--read] [--vim]
[--chat-language] [--version] [--just-check-update]
[--analytics-disable] [--just-check-update]
[--check-update | --no-check-update]
[--show-release-notes | --no-show-release-notes]
[--install-main-branch] [--upgrade] [--apply]
[--apply-clipboard-edits] [--yes-always] [-v]
[--show-repo-map] [--show-prompts] [--exit] [--message]
[--message-file] [--load] [--encoding] [-c]
[--install-main-branch] [--upgrade] [--version]
[--message] [--message-file]
[--gui | --no-gui | --browser | --no-browser]
[--copy-paste | --no-copy-paste] [--apply]
[--apply-clipboard-edits] [--exit] [--show-repo-map]
[--show-prompts] [--voice-format] [--voice-language]
[--voice-input-device] [--file] [--read] [--vim]
[--chat-language] [--yes-always] [-v] [--load]
[--encoding] [-c] [--env-file]
[--suggest-shell-commands | --no-suggest-shell-commands]
[--fancy-input | --no-fancy-input]
[--detect-urls | --no-detect-urls] [--editor]
[--set-env] [--api-key] [--voice-format]
[--voice-language] [--voice-input-device]
```
@ -90,15 +91,7 @@ Aliases:
- `-h`
- `--help`
## Main:
### `--openai-api-key VALUE`
Specify the OpenAI API key
Environment variable: `AIDER_OPENAI_API_KEY`
### `--anthropic-api-key VALUE`
Specify the Anthropic API key
Environment variable: `AIDER_ANTHROPIC_API_KEY`
## Main model:
### `--model MODEL`
Specify the model to use for the main chat
@ -156,6 +149,46 @@ Environment variable: `AIDER_O1_MINI`
Use o1-preview model for the main chat
Environment variable: `AIDER_O1_PREVIEW`
## API Keys and settings:
### `--openai-api-key VALUE`
Specify the OpenAI API key
Environment variable: `AIDER_OPENAI_API_KEY`
### `--anthropic-api-key VALUE`
Specify the Anthropic API key
Environment variable: `AIDER_ANTHROPIC_API_KEY`
### `--openai-api-base VALUE`
Specify the api base url
Environment variable: `AIDER_OPENAI_API_BASE`
### `--openai-api-type VALUE`
(deprecated, use --set-env OPENAI_API_TYPE=<value>)
Environment variable: `AIDER_OPENAI_API_TYPE`
### `--openai-api-version VALUE`
(deprecated, use --set-env OPENAI_API_VERSION=<value>)
Environment variable: `AIDER_OPENAI_API_VERSION`
### `--openai-api-deployment-id VALUE`
(deprecated, use --set-env OPENAI_API_DEPLOYMENT_ID=<value>)
Environment variable: `AIDER_OPENAI_API_DEPLOYMENT_ID`
### `--openai-organization-id VALUE`
(deprecated, use --set-env OPENAI_ORGANIZATION=<value>)
Environment variable: `AIDER_OPENAI_ORGANIZATION_ID`
### `--set-env ENV_VAR_NAME=value`
Set an environment variable (to control API settings, can be used multiple times)
Default: []
Environment variable: `AIDER_SET_ENV`
### `--api-key PROVIDER=KEY`
Set an API key for a provider (eg: --api-key provider=<key> sets PROVIDER_API_KEY=<key>)
Default: []
Environment variable: `AIDER_API_KEY`
## Model Settings:
### `--list-models MODEL`
@ -165,26 +198,6 @@ Aliases:
- `--list-models MODEL`
- `--models MODEL`
### `--openai-api-base VALUE`
Specify the api base url
Environment variable: `AIDER_OPENAI_API_BASE`
### `--openai-api-type VALUE`
Specify the api_type
Environment variable: `AIDER_OPENAI_API_TYPE`
### `--openai-api-version VALUE`
Specify the api_version
Environment variable: `AIDER_OPENAI_API_VERSION`
### `--openai-api-deployment-id VALUE`
Specify the deployment_id
Environment variable: `AIDER_OPENAI_API_DEPLOYMENT_ID`
### `--openai-organization-id VALUE`
Specify the OpenAI organization ID
Environment variable: `AIDER_OPENAI_ORGANIZATION_ID`
### `--model-settings-file MODEL_SETTINGS_FILE`
Specify a file with aider model settings for unknown models
Default: .aider.model.settings.yml
@ -246,11 +259,6 @@ Aliases:
Soft limit on tokens for chat history, after which summarization begins. If unspecified, defaults to the model's max_chat_history_tokens.
Environment variable: `AIDER_MAX_CHAT_HISTORY_TOKENS`
### `--env-file ENV_FILE`
Specify the .env file to load (default: .env in git root)
Default: .env
Environment variable: `AIDER_ENV_FILE`
## Cache Settings:
### `--cache-prompts`
@ -490,14 +498,6 @@ Aliases:
- `--watch-files`
- `--no-watch-files`
### `--copy-paste`
Enable automatic copy/paste of chat between aider and web UI (default: False)
Default: False
Environment variable: `AIDER_COPY_PASTE`
Aliases:
- `--copy-paste`
- `--no-copy-paste`
## Fixing and committing:
### `--lint`
@ -554,27 +554,7 @@ Permanently disable analytics
Default: False
Environment variable: `AIDER_ANALYTICS_DISABLE`
## Other Settings:
### `--file FILE`
specify a file to edit (can be used multiple times)
Environment variable: `AIDER_FILE`
### `--read FILE`
specify a read-only file (can be used multiple times)
Environment variable: `AIDER_READ`
### `--vim`
Use VI editing mode in the terminal (default: False)
Default: False
Environment variable: `AIDER_VIM`
### `--chat-language CHAT_LANGUAGE`
Specify the language to use in the chat (default: None, uses system settings)
Environment variable: `AIDER_CHAT_LANGUAGE`
### `--version`
Show the version number and exit
## Upgrading:
### `--just-check-update`
Check for updates and return status in the exit code
@ -609,41 +589,10 @@ Aliases:
- `--upgrade`
- `--update`
### `--apply FILE`
Apply the changes from the given file instead of running the chat (debug)
Environment variable: `AIDER_APPLY`
### `--version`
Show the version number and exit
### `--apply-clipboard-edits`
Apply clipboard contents as edits using the main model's editor format
Default: False
Environment variable: `AIDER_APPLY_CLIPBOARD_EDITS`
### `--yes-always`
Always say yes to every confirmation
Environment variable: `AIDER_YES_ALWAYS`
### `--verbose`
Enable verbose output
Default: False
Environment variable: `AIDER_VERBOSE`
Aliases:
- `-v`
- `--verbose`
### `--show-repo-map`
Print the repo map and exit (debug)
Default: False
Environment variable: `AIDER_SHOW_REPO_MAP`
### `--show-prompts`
Print the system prompts and exit (debug)
Default: False
Environment variable: `AIDER_SHOW_PROMPTS`
### `--exit`
Do all startup activities then exit before accepting user input (debug)
Default: False
Environment variable: `AIDER_EXIT`
## Modes:
### `--message COMMAND`
Specify a single message to send the LLM, process reply then exit (disables chat mode)
@ -660,6 +609,95 @@ Aliases:
- `--message-file MESSAGE_FILE`
- `-f MESSAGE_FILE`
### `--gui`
Run aider in your browser (default: False)
Default: False
Environment variable: `AIDER_GUI`
Aliases:
- `--gui`
- `--no-gui`
- `--browser`
- `--no-browser`
### `--copy-paste`
Enable automatic copy/paste of chat between aider and web UI (default: False)
Default: False
Environment variable: `AIDER_COPY_PASTE`
Aliases:
- `--copy-paste`
- `--no-copy-paste`
### `--apply FILE`
Apply the changes from the given file instead of running the chat (debug)
Environment variable: `AIDER_APPLY`
### `--apply-clipboard-edits`
Apply clipboard contents as edits using the main model's editor format
Default: False
Environment variable: `AIDER_APPLY_CLIPBOARD_EDITS`
### `--exit`
Do all startup activities then exit before accepting user input (debug)
Default: False
Environment variable: `AIDER_EXIT`
### `--show-repo-map`
Print the repo map and exit (debug)
Default: False
Environment variable: `AIDER_SHOW_REPO_MAP`
### `--show-prompts`
Print the system prompts and exit (debug)
Default: False
Environment variable: `AIDER_SHOW_PROMPTS`
## Voice Settings:
### `--voice-format VOICE_FORMAT`
Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
Default: wav
Environment variable: `AIDER_VOICE_FORMAT`
### `--voice-language VOICE_LANGUAGE`
Specify the language for voice using ISO 639-1 code (default: auto)
Default: en
Environment variable: `AIDER_VOICE_LANGUAGE`
### `--voice-input-device VOICE_INPUT_DEVICE`
Specify the input device name for voice recording
Environment variable: `AIDER_VOICE_INPUT_DEVICE`
## Other Settings:
### `--file FILE`
specify a file to edit (can be used multiple times)
Environment variable: `AIDER_FILE`
### `--read FILE`
specify a read-only file (can be used multiple times)
Environment variable: `AIDER_READ`
### `--vim`
Use VI editing mode in the terminal (default: False)
Default: False
Environment variable: `AIDER_VIM`
### `--chat-language CHAT_LANGUAGE`
Specify the language to use in the chat (default: None, uses system settings)
Environment variable: `AIDER_CHAT_LANGUAGE`
### `--yes-always`
Always say yes to every confirmation
Environment variable: `AIDER_YES_ALWAYS`
### `--verbose`
Enable verbose output
Default: False
Environment variable: `AIDER_VERBOSE`
Aliases:
- `-v`
- `--verbose`
### `--load LOAD_FILE`
Load and execute /commands from a file on launch
Environment variable: `AIDER_LOAD`
@ -675,15 +713,10 @@ Aliases:
- `-c CONFIG_FILE`
- `--config CONFIG_FILE`
### `--gui`
Run aider in your browser (default: False)
Default: False
Environment variable: `AIDER_GUI`
Aliases:
- `--gui`
- `--no-gui`
- `--browser`
- `--no-browser`
### `--env-file ENV_FILE`
Specify the .env file to load (default: .env in git root)
Default: .env
Environment variable: `AIDER_ENV_FILE`
### `--suggest-shell-commands`
Enable/disable suggesting shell commands (default: True)
@ -712,30 +745,4 @@ Aliases:
### `--editor VALUE`
Specify which editor to use for the /editor command
Environment variable: `AIDER_EDITOR`
### `--set-env ENV_VAR_NAME=value`
Set an environment variable (can be used multiple times)
Default: []
Environment variable: `AIDER_SET_ENV`
### `--api-key PROVIDER=KEY`
Set an API key for a provider (eg: --api-key anthropic=sk-123)
Default: []
Environment variable: `AIDER_API_KEY`
## Voice Settings:
### `--voice-format VOICE_FORMAT`
Audio format for voice recording (default: wav). webm and mp3 require ffmpeg
Default: wav
Environment variable: `AIDER_VOICE_FORMAT`
### `--voice-language VOICE_LANGUAGE`
Specify the language for voice using ISO 639-1 code (default: auto)
Default: en
Environment variable: `AIDER_VOICE_LANGUAGE`
### `--voice-input-device VOICE_INPUT_DEVICE`
Specify the input device name for voice recording
Environment variable: `AIDER_VOICE_INPUT_DEVICE`
<!--[[[end]]]-->