-
Notifications
You must be signed in to change notification settings - Fork 2.3k
Commit
This commit does not belong to any branch on this repository, and may belong to a fork outside of the repository.
- Loading branch information
1 parent
bd52643
commit 6d4c87a
Showing
3 changed files
with
236 additions
and
0 deletions.
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,30 @@ | ||
--- | ||
nav_order: 800 | ||
--- | ||
|
||
# Git integration | ||
|
||
Aider works best with code that is part of a git repo. | ||
Aider is tightly integrated with git, which makes it easy to: | ||
|
||
- Use git to undo any aider changes that you don't like | ||
- Go back in the git history to review the changes that aider made to your code | ||
- Manage a series of aider's changes on a git branch | ||
|
||
Aider specifically uses git in these ways: | ||
|
||
- It asks to create a git repo if you launch it in a directory without one. | ||
- Whenever aider edits a file, it commits those changes with a descriptive commit message. This makes it easy to undo or review aider's changes. | ||
- Aider takes special care before editing files that already have uncommitted changes (dirty files). Aider will first commit any preexisting changes with a descriptive commit message. This keeps your edits separate from aider's edits, and makes sure you never lose your work if aider makes an inappropriate change. | ||
|
||
Aider also allows you to use in-chat commands to `/diff` or `/undo` the last change. | ||
To do more complex management of your git history, you cat use raw `git` commands, | ||
either by using `/git` within the chat, or with standard git tools outside of aider. | ||
|
||
While it is not recommended, you can disable aider's use of git in a few ways: | ||
|
||
- `--no-auto-commits` will stop aider from git committing each of its changes. | ||
- `--no-dirty-commits` will stop aider from committing dirty files before applying its edits. | ||
- `--no-git` will completely stop aider from using git on your files. You should ensure you are keeping sensible backups of the files you are working with. | ||
|
||
|
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,27 @@ | ||
--- | ||
parent: Installation | ||
nav_order: 100 | ||
--- | ||
|
||
# Install with pipx | ||
|
||
If you are using aider to work on a python project, sometimes your project will require | ||
specific versions of python packages which conflict with the versions that aider | ||
requires. | ||
If this happens, the `pip install` command may return errors like these: | ||
|
||
``` | ||
aider-chat 0.23.0 requires somepackage==X.Y.Z, but you have somepackage U.W.V which is incompatible. | ||
``` | ||
|
||
You can avoid this problem by installing aider using `pipx`, | ||
which will install it globally on your system | ||
within its own python environment. | ||
This way you can use aider to work on any python project, | ||
even if that project has conflicting dependencies. | ||
|
||
Install [pipx](https://pipx.pypa.io/stable/) then just do: | ||
|
||
``` | ||
pipx install aider-chat | ||
``` |
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Original file line number | Diff line number | Diff line change |
---|---|---|
@@ -0,0 +1,179 @@ | ||
--- | ||
title: Configuration & options | ||
nav_order: 800 | ||
--- | ||
|
||
# Command line reference | ||
|
||
Aider has many options which can be set with | ||
command line switches. | ||
|
||
Most command line switches can also be set in an `.aider.conf.yml` file | ||
which can be placed in your home directory or at the root of | ||
your git repo. | ||
A command line switch like `--option-foo VALUE` can be | ||
added to the yaml file as a line like `option-foo: VALUE`. | ||
|
||
Many switches can also be set via environment variables like `AIDER_OPTION_FOO`, | ||
as noted in the help text below. | ||
|
||
<!--[[[cog | ||
from aider.args import get_help | ||
cog.outl("```") | ||
cog.out(get_help()) | ||
cog.outl("```") | ||
]]]--> | ||
``` | ||
usage: aider [-h] [--openai-api-key OPENAI_API_KEY] [--anthropic-api-key ANTHROPIC_API_KEY] | ||
[--model MODEL] [--opus] [--sonnet] [--4] [--4o] [--4-turbo] [--35turbo] | ||
[--models MODEL] [--openai-api-base OPENAI_API_BASE] | ||
[--openai-api-type OPENAI_API_TYPE] [--openai-api-version OPENAI_API_VERSION] | ||
[--openai-api-deployment-id OPENAI_API_DEPLOYMENT_ID] | ||
[--openai-organization-id OPENAI_ORGANIZATION_ID] [--edit-format EDIT_FORMAT] | ||
[--weak-model WEAK_MODEL] [--show-model-warnings | --no-show-model-warnings] | ||
[--map-tokens MAP_TOKENS] [--max-chat-history-tokens MAX_CHAT_HISTORY_TOKENS] | ||
[--env-file ENV_FILE] [--input-history-file INPUT_HISTORY_FILE] | ||
[--chat-history-file CHAT_HISTORY_FILE] | ||
[--restore-chat-history | --no-restore-chat-history] [--dark-mode] [--light-mode] | ||
[--pretty | --no-pretty] [--stream | --no-stream] | ||
[--user-input-color USER_INPUT_COLOR] [--tool-output-color TOOL_OUTPUT_COLOR] | ||
[--tool-error-color TOOL_ERROR_COLOR] | ||
[--assistant-output-color ASSISTANT_OUTPUT_COLOR] [--code-theme CODE_THEME] | ||
[--show-diffs] [--git | --no-git] [--gitignore | --no-gitignore] | ||
[--aiderignore AIDERIGNORE] [--auto-commits | --no-auto-commits] | ||
[--dirty-commits | --no-dirty-commits] [--dry-run | --no-dry-run] [--commit] [--lint] | ||
[--lint-cmd LINT_CMD] [--auto-lint | --no-auto-lint] [--test-cmd TEST_CMD] | ||
[--auto-test | --no-auto-test] [--test] [--voice-language VOICE_LANGUAGE] [--version] | ||
[--check-update] [--skip-check-update] [--apply FILE] [--yes] [-v] [--show-repo-map] | ||
[--show-prompts] [--message COMMAND] [--message-file MESSAGE_FILE] | ||
[--encoding ENCODING] [-c CONFIG_FILE] [--gui] | ||
[FILE ...] | ||
aider is GPT powered coding in your terminal | ||
options: | ||
-h, --help show this help message and exit | ||
Main: | ||
FILE files to edit with an LLM (optional) | ||
--openai-api-key OPENAI_API_KEY | ||
Specify the OpenAI API key [env var: OPENAI_API_KEY] | ||
--anthropic-api-key ANTHROPIC_API_KEY | ||
Specify the OpenAI API key [env var: ANTHROPIC_API_KEY] | ||
--model MODEL Specify the model to use for the main chat (default: gpt-4o) | ||
--opus Use claude-3-opus-20240229 model for the main chat | ||
--sonnet Use claude-3-sonnet-20240229 model for the main chat | ||
--4, -4 Use gpt-4-0613 model for the main chat | ||
--4o Use gpt-4o model for the main chat | ||
--4-turbo Use gpt-4-1106-preview model for the main chat | ||
--35turbo, --35-turbo, --3, -3 | ||
Use gpt-3.5-turbo model for the main chat | ||
Model Settings: | ||
--models MODEL List known models which match the (partial) MODEL name | ||
--openai-api-base OPENAI_API_BASE | ||
Specify the api base url [env var: OPENAI_API_BASE] | ||
--openai-api-type OPENAI_API_TYPE | ||
Specify the api_type [env var: OPENAI_API_TYPE] | ||
--openai-api-version OPENAI_API_VERSION | ||
Specify the api_version [env var: OPENAI_API_VERSION] | ||
--openai-api-deployment-id OPENAI_API_DEPLOYMENT_ID | ||
Specify the deployment_id [env var: OPENAI_API_DEPLOYMENT_ID] | ||
--openai-organization-id OPENAI_ORGANIZATION_ID | ||
Specify the OpenAI organization ID [env var: OPENAI_ORGANIZATION_ID] | ||
--edit-format EDIT_FORMAT | ||
Specify what edit format the LLM should use (default depends on model) | ||
--weak-model WEAK_MODEL | ||
Specify the model to use for commit messages and chat history | ||
summarization (default depends on --model) | ||
--show-model-warnings, --no-show-model-warnings | ||
Only work with models that have meta-data available (default: True) | ||
--map-tokens MAP_TOKENS | ||
Max number of tokens to use for repo map, use 0 to disable (default: 1024) | ||
--max-chat-history-tokens MAX_CHAT_HISTORY_TOKENS | ||
Maximum number of tokens to use for chat history. If not specified, uses | ||
the model's max_chat_history_tokens. | ||
--env-file ENV_FILE Specify the .env file to load (default: .env in git root) | ||
History Files: | ||
--input-history-file INPUT_HISTORY_FILE | ||
Specify the chat input history file (default: .aider.input.history) | ||
--chat-history-file CHAT_HISTORY_FILE | ||
Specify the chat history file (default: .aider.chat.history.md) | ||
--restore-chat-history, --no-restore-chat-history | ||
Restore the previous chat history messages (default: False) | ||
Output Settings: | ||
--dark-mode Use colors suitable for a dark terminal background (default: False) | ||
--light-mode Use colors suitable for a light terminal background (default: False) | ||
--pretty, --no-pretty | ||
Enable/disable pretty, colorized output (default: True) | ||
--stream, --no-stream | ||
Enable/disable streaming responses (default: True) | ||
--user-input-color USER_INPUT_COLOR | ||
Set the color for user input (default: #00cc00) | ||
--tool-output-color TOOL_OUTPUT_COLOR | ||
Set the color for tool output (default: None) | ||
--tool-error-color TOOL_ERROR_COLOR | ||
Set the color for tool error messages (default: red) | ||
--assistant-output-color ASSISTANT_OUTPUT_COLOR | ||
Set the color for assistant output (default: #0088ff) | ||
--code-theme CODE_THEME | ||
Set the markdown code theme (default: default, other options include | ||
monokai, solarized-dark, solarized-light) | ||
--show-diffs Show diffs when committing changes (default: False) | ||
Git Settings: | ||
--git, --no-git Enable/disable looking for a git repo (default: True) | ||
--gitignore, --no-gitignore | ||
Enable/disable adding .aider* to .gitignore (default: True) | ||
--aiderignore AIDERIGNORE | ||
Specify the aider ignore file (default: .aiderignore in git root) | ||
--auto-commits, --no-auto-commits | ||
Enable/disable auto commit of LLM changes (default: True) | ||
--dirty-commits, --no-dirty-commits | ||
Enable/disable commits when repo is found dirty (default: True) | ||
--dry-run, --no-dry-run | ||
Perform a dry run without modifying files (default: False) | ||
Fixing and committing: | ||
--commit Commit all pending changes with a suitable commit message, then exit | ||
--lint Lint and fix provided files, or dirty files if none provided | ||
--lint-cmd LINT_CMD Specify lint commands to run for different languages, eg: "python: flake8 | ||
--select=..." (can be used multiple times) | ||
--auto-lint, --no-auto-lint | ||
Enable/disable automatic linting after changes (default: True) | ||
--test-cmd TEST_CMD Specify command to run tests | ||
--auto-test, --no-auto-test | ||
Enable/disable automatic testing after changes (default: False) | ||
--test Run tests and fix problems found | ||
Other Settings: | ||
--voice-language VOICE_LANGUAGE | ||
Specify the language for voice using ISO 639-1 code (default: auto) | ||
--version Show the version number and exit | ||
--check-update Check for updates and return status in the exit code | ||
--skip-check-update Skips checking for the update when the program runs | ||
--apply FILE Apply the changes from the given file instead of running the chat (debug) | ||
--yes Always say yes to every confirmation | ||
-v, --verbose Enable verbose output | ||
--show-repo-map Print the repo map and exit (debug) | ||
--show-prompts Print the system prompts and exit (debug) | ||
--message COMMAND, --msg COMMAND, -m COMMAND | ||
Specify a single message to send the LLM, process reply then exit | ||
(disables chat mode) | ||
--message-file MESSAGE_FILE, -f MESSAGE_FILE | ||
Specify a file containing the message to send the LLM, process reply, then | ||
exit (disables chat mode) | ||
--encoding ENCODING Specify the encoding for input and output (default: utf-8) | ||
-c CONFIG_FILE, --config CONFIG_FILE | ||
Specify the config file (default: search for .aider.conf.yml in git root, | ||
cwd or home directory) | ||
--gui, --browser Run aider in your browser | ||
Args that start with '--' can also be set in a config file (specified via -c). Config file syntax | ||
allows: key=value, flag=true, stuff=[a,b,c] (for details, see syntax at https://goo.gl/R74nmi). In | ||
general, command-line values override environment variables which override config file values | ||
which override defaults. | ||
``` | ||
<!--[[[end]]]--> |