Aider: pair programming inside your terminal, with every change committed
Summary
An AI pair programmer that lives in the terminal, so the editor never has to be opened. It reads the repository, proposes a change, applies it, runs the tests, and commits every modification to version control with a written message, leaving a clean path back. Free and open source; only model calls cost money.
Recommend- Name
- Aider
- Version
- 0.86.3
- Pricing
- Free
- Open source
- Open source
- Operating system
- WindowsmacOSLinux
- Website
- https://aider.chat
- Updated
- 2026-10-06 10:38
Adding a feature or fixing a defect usually follows the same route: open the editor, find the file, make the change, run the tests. For someone who works in a terminal all day, that route has an awkward seam in the middle. The conversation with the assistant happens in one window and the code sits in another, and switching between them costs more attention than either task deserves.
Aider moves the conversation into the terminal. You enter the project directory, start the tool, and then describe what you want the way you would describe it to a colleague: add validation to this function, lift the shared logic out of these three classes. It reads the code, changes the files, runs the tests and finishes the job without the editor ever appearing. Tens of thousands of watchers and millions of installations suggest the seam was worth removing.

Every change is committed, and undoing takes one command
The design choice people become attached to is simple: every modification the tool makes to the repository is committed to version control with a written message. What the code looked like before, and what it looks like now, both sit in the history. You therefore always have a clean way back. If a change is wrong, the usual tools show the difference and revert it, and there is no argument about which files were touched.
The author has carried that principle through the whole project, which is a large part of why it is so well regarded among developers. It is also a small piece of discipline that changes the psychology of the work: handing a task to an agent stops feeling like a gamble and starts feeling like a branch.
A map before any changes
Faced with a large codebase, the tool first parses the whole repository with a syntax parser and produces a map of it: which files, which classes, which functions, and how they call one another. The entire source is not handed to the model. The model is shown the skeleton of the project first, and then chooses precisely which files it needs.
That is what makes large projects practical rather than theoretical. A second mode splits thinking from doing: a stronger model plans the change, and a faster one carries the plan out. Quality where judgement is needed, speed where it is not, and a cost that stays in proportion to the difficulty of the task.
Any model, and a hundred languages
No vendor is preferred. Commercial models can be attached, and a model running on your own machine can be attached instead, in which case the code never leaves it. The maintainers' own recommendations include combinations chosen for value rather than for prestige, which is a rarer position than it should be.
On the language side the coverage runs past a hundred, from the obvious scripting and systems languages to the ones people use for web back ends and older enterprise systems. Checking and testing are part of the same loop: the tool runs the linter and the test suite itself and repairs what it finds before handing the work back. You can even speak the request aloud and have it written out, which sounds like a gimmick until the third time you use it.
Built with itself
The detail that convinces the sceptics is that the project is developed in a bootstrapped fashion. The author wrote roughly eighty-eight per cent of the tool using the tool, and more than three thousand commits in the history carry a co-author line naming it. A tool that is used that heavily on itself is making a quality argument no benchmark can match, and anyone who doubts it can go and read the history.
The project is fully open source under a permissive licence and charges nothing for itself; you pay only for the model calls you actually make. It also handles the case of a model that only exists in a browser window, removing the copying and pasting that arrangement used to require.
Who it suits
Developers who already live in a terminal and find the editor switch irritating will get the most out of it, but the appeal is wider than that. What Aider really offers is a working style in which every experiment is recorded, every mistake is reversible, and the model is a participant in the repository rather than a chat window beside it. That is a surprisingly large difference for such a small change of location.