In-chat commands
Aider supports commands from within the chat, which all start with /
.
Command | Description |
---|---|
/add | Add files to the chat so aider can edit them or review them in detail |
/ask | Ask questions about the code base without editing any files |
/chat-mode | Switch to a new chat mode |
/clear | Clear the chat history |
/clipboard | Add image/text from the clipboard to the chat (optionally provide a name for the image) |
/code | Ask for changes to your code |
/commit | Commit edits to the repo made outside the chat (commit message optional) |
/diff | Display the diff of changes since the last message |
/drop | Remove files from the chat session to free up context space |
/exit | Exit the application |
/git | Run a git command |
/help | Ask questions about aider |
/lint | Lint and fix in-chat files or all dirty files if none in chat |
/ls | List all known files and indicate which are included in the chat session |
/map | Print out the current repository map |
/map-refresh | Force a refresh of the repository map |
/model | Switch to a new LLM |
/models | Search the list of available models |
/quit | Exit the application |
/read-only | Add files to the chat that are for reference, not to be edited |
/report | Report a problem by opening a GitHub Issue |
/reset | Drop all files and clear the chat history |
/run | Run a shell command and optionally add the output to the chat (alias: !) |
/settings | Print out the current settings |
/test | Run a shell command and add the output to the chat on non-zero exit code |
/tokens | Report on the number of tokens used by the current chat context |
/undo | Undo the last git commit if it was done by aider |
/voice | Record and transcribe voice input |
/web | Scrape a webpage, convert to markdown and send in a message |
You can easily re-send commands or messages. Use the up arrow ⬆ to scroll back or CONTROL-R to search your message history.
Entering multi-line chat messages
You can send long, multi-line messages in the chat in a few ways:
- Paste a multi-line message directly into the chat.
- Enter
{
alone on the first line to start a multiline message and}
alone on the last line to end it. - Use Meta-ENTER to start a new line without sending the message (Esc+ENTER in some environments).
- Use
/clipboard
to paste text from the clipboard into the chat.
Interrupting with CONTROL-C
It’s always safe to use Control-C to interrupt aider if it isn’t providing a useful response. The partial response remains in the conversation, so you can refer to it when you reply to the LLM with more information or direction.
Keybindings
The interactive prompt is built with prompt-toolkit which provides emacs and vi keybindings.
Emacs
Ctrl-A
: Move cursor to the start of the line.Ctrl-B
: Move cursor back one character.Ctrl-D
: Delete the character under the cursor.Ctrl-E
: Move cursor to the end of the line.Ctrl-F
: Move cursor forward one character.Ctrl-K
: Delete from the cursor to the end of the line.Ctrl-L
: Clear the screen.Ctrl-N
: Move down to the next history entry.Ctrl-P
: Move up to the previous history entry.Ctrl-R
: Reverse search in command history.
Vi
To use vi/vim keybindings, run aider with the --vim
switch.
Esc
: Switch to command mode.i
: Switch to insert mode.a
: Move cursor one character to the right and switch to insert mode.A
: Move cursor to the end of the line and switch to insert mode.I
: Move cursor to the beginning of the line and switch to insert mode.h
: Move cursor one character to the left.j
: Move cursor down one line.k
: Move cursor up one line.l
: Move cursor one character to the right.w
: Move cursor forward one word.b
: Move cursor backward one word.0
: Move cursor to the beginning of the line.$
: Move cursor to the end of the line.x
: Delete the character under the cursor.dd
: Delete the current line.u
: Undo the last change.Ctrl-R
: Redo the last undone change.