Guides · September 2026
OpenCode vs Aider
Both are free, open source, and live in your terminal. They disagree about nearly everything else — here is where, and which disagreement should decide it for you.
Two tools, two ideas of the job.
OpenCode calls itself the open source AI coding agent, and the word to weigh is agent. It is a TypeScript program under the MIT licence from Anomaly; the repository, once under the SST organisation, now lives at anomalyco/opencode. Give it a task and it decides what to read, edits files, runs commands, watches the results, and goes again, under permission rules you set per tool. The architecture is client/server: a headless server (opencode serve, an HTTP API on localhost) with the terminal UI as one client and a web client, a desktop app in beta, and a VS Code-family extension as the others. It ships a build agent with every tool enabled and a plan agent that asks before edits and shell commands, and it moves fast — v1.18.27 landed on 2 September 2026.
Aider calls itself AI pair programming in your terminal, and the word to weigh is pair. It is a Python program under Apache-2.0 from Paul Gauthier, installed with aider-install on Python 3.8 to 3.13. You add files to the chat, say what you want, and Aider edits those files and commits the result — every change a git commit with a generated message, undone with /undo. It does not wander: it lints after edits and runs your tests if you give it a --test-cmd, but any other shell command is one you run yourself with /run. Its pace has slowed: the newest release on PyPI is 0.86.2 from February 2026, three point releases since August 2025, though pull requests were still being merged in May 2026.
The difference that decides everything else.
An agent owns the loop; a pair programmer shares it. With OpenCode you describe the outcome and watch a transcript of tool calls: the model chooses what to open, what to search, what to run, and how many times to try, and your control is the permission table — ask, allow, or deny per tool, down to a glob. With Aider you own the context: the repo map (a graph-ranked summary of the codebase, about a thousand tokens by default) tells the model what exists, /add tells it what it may change, and each reply is a set of edits you read as a diff before the next turn.
The editing mechanics follow. Aider asks the model for edits in a format chosen per model — whole files, diff search/replace blocks, udiff, or an architect/editor pair where one model proposes and a second writes the edits — and turns every accepted edit into a commit. OpenCode edits through tools, keeps its own /undo and /redo of messages and file changes, and leaves git to you; nothing is committed until you commit it. One approach puts the model’s work in the history where you can audit it; the other keeps the history yours. Which you prefer says more about how you review than about the tools.
Side by side.
| Question | OpenCode | Aider |
|---|---|---|
| Model of work | An agent: it plans, edits, runs, and iterates under per-tool permissions | A pair programmer: it edits the files you add and commits each change |
| Language and licence | TypeScript; MIT | Python; Apache-2.0 |
| Interface | Terminal UI, web client, desktop app (beta), and VS Code-family extension — all clients of one local server | Terminal chat; --watch-files reacts to AI! comments from any editor; an experimental --browser UI |
| Models | 75+ providers through Models.dev; Ollama, LM Studio, and llama.cpp locally; ChatGPT Plus/Pro and GitHub Copilot sign-in; OpenCode’s own Zen and Go | Almost any model by API key: OpenAI, Anthropic, Gemini, DeepSeek, OpenRouter, Bedrock, Azure, Ollama, and OpenAI-compatible endpoints |
| Price | Free; you pay the model provider | Free; you pay the model provider |
| Editing | Tool calls; /undo and /redo of messages and file changes; git is yours | Edit formats chosen per model; auto-commit with a generated message; /undo reverts the last commit |
| Context | Reads on its own judgment; AGENTS.md rules; optional LSP diagnostics; /compact | Graph-ranked repo map plus the files you /add; chat history summarised past a token limit |
| Sessions | Stored under ~/.local/share/opencode/; /sessions, --continue, --fork; /share links | .aider.chat.history.md in the repo; --restore-chat-history to reload it |
| Automation | Runs commands itself within your permission rules; opencode run for scripts | Auto-lint on by default; auto-test with --test-cmd; /run for the rest; --message for scripts |
| Release cadence | Frequent; v1.18.27 on 2 September 2026 | 0.86.2 in February 2026; three releases since August 2025 |
Choose OpenCode when.
The task is bigger than a diff
Multi-file work that needs exploring, running, and retrying is what an agent loop is for. Start in plan to read the approach before anything is edited.
You already pay for ChatGPT or Copilot
OpenCode signs into a ChatGPT Plus/Pro or GitHub Copilot account from /connect. Aider is API keys.
You want the same session in more than one window
One session in the terminal, the desktop app, or the IDE, and a script can drive it through the API.
Choose Aider when.
You want to read every change before the next one
Small, reviewable, committed steps are Aider’s whole design; the git history is the audit trail.
Tokens are the budget
You decide what the model sees, so a session costs what you put in front of it. An agent loop reads far more than it writes.
You already have keys and a workflow
Any provider, any editor through --watch-files, scriptable with --message and --yes-always. Nothing to sign into.
Whichever wins, it runs on a machine.
Both tools end the same way: a process on a computer, holding a checkout, a login, and hours of work. OpenCode’s server listens on localhost; Aider is a chat in a terminal. Reaching that computer from the other laptop, or from a phone when the agent asks a question at nine, is the same problem for both, and it is the one spawnd is built for. One daemon on each host you own dials out, so nothing listens and no port opens; every session lives on the host, its PTY owned by a worker process, so it survives the closed tab, the dropped connection, and the laptop lid, scrollback intact; and any browser is the console, a phone included. OpenCode and Aider are built-in shortcuts beside Claude Code and Codex — an agent is a named command in a real shell, so any CLI can be added — and they authenticate on the host exactly as they do today; spawnd holds no provider credentials and adds no API-key markup. Pick either; the agents roundup puts both beside Claude Code, Codex, and the rest.
Start
Either agent, on any host you own, from anywhere.
curl -fsSL https://spawnd.dev/install.sh | shQuestions
- Is OpenCode a fork of Aider?
- No. They share no code: OpenCode is a TypeScript client/server agent from Anomaly; Aider is a Python pair-programming tool from Paul Gauthier. What they share is the category — both are open source, free, and bring-your-own-model.
- Can I use a Claude Pro or Max subscription with either?
- Not by the book. Aider documents API keys, not subscription logins. OpenCode’s docs note that plugins routing Claude Pro/Max through it exist, that Anthropic explicitly prohibits this, and that OpenCode stopped bundling them as of 1.3.0. ChatGPT Plus/Pro and GitHub Copilot logins are supported; Anthropic models want an API key.
- Can I use both on the same repository?
- Yes, and people do — Aider for surgical, committed changes and OpenCode for exploratory work. Commit or stash between them: Aider commits as it goes, OpenCode leaves the working tree to you, and mixing the two in one dirty tree is how you lose track of what changed.