Aider and Claude Code are not two versions of the same tool: Aider is a free Apache-2.0 pair-programming CLI that edits the files you hand it and commits each change to git, and Claude Code is Anthropic's proprietary agent that plans, runs commands and asks permission. The difference configuration cannot erase is the protocol each speaks to a third-party endpoint — Aider talks OpenAI chat-completions, while Claude Code needs one of three Anthropic-shaped formats, of which Anthropic Messages is the one a plain gateway exposes — and that single fact decides which models you can reach, which plan pays, and how much of a migration costs.
One disambiguation first, because the results page mixes them. A different company, in accounting software, also trades as Aider and publishes prices for period-close automation. Those prices belong to that product. This page is about the coding CLI at aider.chat, shipped as the aider-chat package from Aider-AI/aider, and about Claude Code, shipped as @anthropic-ai/claude-code. If you are choosing between the Claude assistant and the CLI rather than between two CLIs, Claude vs Claude Code is the page for that.
Which one should you pick
| Decide on | Pick Aider when | Pick Claude Code when |
|---|---|---|
| Workflow | You want to drive: add specific files to the chat, review a diff, keep every change in a commit of its own | You want the tool to explore, run commands and chain steps without being handed each file first |
| Permissions | A shell command the model proposes is gated behind an explicit yes, and edits land as git commits you can revert | You want graded permission modes and to widen them deliberately, with sandboxing and checkpoints underneath |
| Protocol and plan | Your endpoint is OpenAI-compatible, or you want several labs' models from one install; there is no account to displace | Your endpoint speaks Anthropic Messages, and you accept that a gateway credential suspends the claude.ai subscription for that session |
| Cost path | Metered tokens only, with no software fee, no seat and no subscription in the picture | A flat subscription suits your cadence, or you deliberately want per-token billing against a key you own |
| Migration cost | You are coming from a plain editor: two environment variables and a model id start it | You are coming from Aider: nothing carries across, because the two read entirely different configuration files |
One more input to the choice, stated as dates rather than adjectives. Aider's repository is live and not archived, but the last commit to main is May 22, 2026, and the newest installable release is aider-chat 0.86.2 from February 12, 2026 — the one before it was August 13, 2025 (PyPI and the commit history of main, checked September 21, 2026). Claude Code published eight npm releases in the six days to September 19, 2026 — 2.1.271 through 2.1.278 — with latest at 2.1.278 and the stable tag at 2.1.267 (npm registry, checked the same day). No maintainer statement about Aider's direction was found; read the gap as cadence evidence, not as an announcement.
The protocol boundary, in two blocks
# Aider — OpenAI chat-completions. The openai/ prefix is mandatory: it is
# what tells Aider to speak that protocol to OPENAI_API_BASE instead of
# resolving the id against its own provider table.
export OPENAI_API_BASE=https://api.kunavo.com/v1
export OPENAI_API_KEY=sk-kn-...
aider --model openai/claude-sonnet-4-6
# Claude Code — Anthropic Messages. ANTHROPIC_BASE_URL is an ORIGIN; the
# client appends /v1/messages itself, so a value ending in /v1 produces
# /v1/v1/messages. The credential variable picks an HTTP header.
export ANTHROPIC_BASE_URL=https://api.kunavo.com
export ANTHROPIC_AUTH_TOKEN=sk-kn-...
claudeAider's OpenAI-compatible APIs page documents exactly that pair of variables and states that you must prefix the model name with openai/. Claude Code's gateway compatibility guide states that a gateway must expose at least one of three formats — Anthropic Messages selected by ANTHROPIC_BASE_URL, Amazon Bedrock InvokeModel with CLAUDE_CODE_USE_BEDROCK=1, or Google Cloud's Agent Platform rawPredict with CLAUDE_CODE_USE_VERTEX=1. An OpenAI chat-completions endpoint is on neither list. Both checked September 21, 2026.
Two consequences people trip over. First, the credential variable chooses a header: ANTHROPIC_AUTH_TOKEN sends Authorization: Bearer, ANTHROPIC_API_KEY sends x-api-key, and the wrong one reaches the gateway in a header it does not read, failing with 401. Second, Aider decides its edit format, repo map and cost readout by matching the id you pass against a shipped table — so an openai/-prefixed gateway id it does not recognise falls back to whole-file edits with no cost line, which Aider pricing covers in full. Claude Code's equivalent fallback is different in kind: for an id it does not recognise it assumes a 200K context window, or 1M when the id carries [1m]. Aider, for an unknown id, assumes an unlimited window and a free model.
Workflow, permissions and tools
| Behaviour | Aider (released 0.86.2) | Claude Code (2.1.x) |
|---|---|---|
| Licence and source | Apache-2.0, source-distributed on PyPI | Proprietary: the npm license field reads "SEE LICENSE IN README.md", the package has zero dependencies and its bin entry is a compiled executable. Its GitHub repository carries the changelog, examples and plugins, with no source tree for the client |
| Chat modes | code, ask, architect and help; architect mode issues two model requests per turn, which Aider's own docs warn "can take longer and increase costs" | Six permission modes, from reads-only through to everything; which one a session starts in depends on the plan or provider |
| Tool loop | No MCP support and no model-driven tool selection in 0.86.2; its only use of the tools field is one forced named function for the *_func edit formats | Subagents, hooks, commands, skills, plugins and MCP servers, all available on every provider |
| Shell commands | Gated: a command the model proposes prompts "Run shell command?" and requires an explicit yes. --yes-always changes that | Governed by the permission mode in effect; skip-permissions covers the widest one and what it costs you |
| Git | Commits every edit itself, commits pre-existing dirty changes first, and appends "(aider)" to author and committer metadata. Disable with --no-auto-commits, --no-dirty-commits or --no-git | Handles git workflows on request rather than committing each edit automatically; checkpoints give a separate rewind path |
| Project instructions | A conventions file only when passed with --read; no automatic CONVENTIONS.md or AGENTS.md handling in 0.86.2 | CLAUDE.md loads on every provider; AGENTS.md needs a session that fetches feature flags |
Aider behaviour read from the released 0.86.2 source and from aider.chat/docs/git.html and the modes page; Claude Code behaviour from feature availability and permission modes. All checked September 21, 2026.
What each one costs, on the same terms
| Line item | Aider | Claude Code |
|---|---|---|
| The client | $0 — Apache-2.0, and aider.chat advertises no plan, tier, seat or hosted service | Included in a Claude plan, or run against a key you own |
| Individual subscription | None exists | Pro "$20 if billed monthly", or $17 a month on the annual discount ($200 billed up front). Max "From $100 per month" |
| Seats | None exists | Team standard seat $20 per seat/month billed annually, $25 monthly. Enterprise US$20/seat/month billed annually, plus usage at API rates |
| Tokens | Whatever endpoint OPENAI_API_BASE points at bills you | Per token to whoever owns the credential, once a gateway credential or Console key is active |
| Observed spend | No published figure | Anthropic's own cost page gives "around $13 per developer per active day and $150-250 per developer per month" across enterprise deployments, with costs below $30 per active day for 90% of users |
Plan figures read from claude.com/pricing and spend figures from Anthropic's cost page, both September 21, 2026. Three cautions. The enterprise spend range is scoped to enterprise deployments and is not a figure for one person or a small team. A Max 20x price is not published in that page's server-rendered HTML, so this page does not print one — Claude Code pricing uses the same safe form. And two Anthropic pages disagree on the Team premium seat: the pricing page says $100 per seat/month billed annually ($125 monthly), while the third-party integrations page says "Teams: $150/seat (Premium)". Confirm the seat quote at checkout; this page does not pick one.
A worked estimate on the same session
This is illustrative token arithmetic, not a measured task cost and not a bill ceiling. Assume ten turns, each carrying 200,000 tokens of context and producing 3,000 output tokens. The two columns differ only in whether the context is re-billed as fresh input each turn or read back at the cache-read rate after one turn writes it. Rates are live Kunavo catalog prices per million tokens; cache write charges and any external tools are excluded.
| Model | Input / output per 1M | Cache read per 1M | Every turn uncached | Context read from cache |
|---|---|---|---|---|
| Claude Haiku 4.5 | $0.40 / $2.00 | $0.04 | $0.860 | $0.212 |
| Claude Sonnet 4.6 | $1.20 / $6.00 | $0.12 | $2.580 | $0.636 |
| Claude Opus 5 | $2.00 / $10.00 | $0.20 | $4.300 | $1.060 |
Why this table and not a client-versus-client price: the gap between those two columns is the one cost lever that behaves differently in each tool. On the Claude Code side it is not a setting you choose — Anthropic's compatibility guide says that when a gateway does not forward cache_control unchanged there is "No error: the conversation bills as uncached input on every turn". On the Aider side there is no comparable default to lose, because prompt caching is behind the opt-in --cache-prompts switch and Aider's prompt caching page names specific vendor families; whether cache blocks survive the OpenAI-compatible path to an arbitrary endpoint was not tested here. Under these assumptions the difference on Claude Sonnet 4.6 is $2.580 against $0.636 for the same ten turns. Prompt caching covers the mechanics.
Kunavo's catalog amount is a billing floor rather than a cap: when the upstream reports its charge, the bill is the greater of catalog cost and upstream cost times the applicable markup. The minimum top-up is $10 in prepaid credit — a funding minimum, not a task fee or a subscription. See billing details.
What a third-party endpoint cannot reach
In Aider, the limit is documentation rather than plan. The strings ANTHROPIC_API_BASE and ANTHROPIC_BASE_URL appear nowhere in the released 0.86.2 tree, and --openai-api-base is the only base-URL override it ships — so there is no documented Anthropic-Messages route out of Aider. It does ship a general --set-env switch, so read that as an absence in the documentation rather than a demonstrated block. Model-id recognition is the real gate, and OpenAI-compatible API covers the shape of that route.
In Claude Code, the limits are explicit and worth reading before you commit. The client itself turns off Remote Control and server-managed settings whenever ANTHROPIC_BASE_URL is not api.anthropic.com. A separate list needs a claude.ai sign-in and is unreachable on any gateway credential: cloud sessions, mobile, Slack, Routines, Ultrareview, Code Review, Remote Control, the Chrome extension, computer use, Artifacts and voice dictation. Desktop is the documented partial exception on that list — Anthropic says gateway routing can be configured in the app or by an administrator, and that Claude Desktop on 3P runs its Code tab on Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry or a self-hosted gateway. MCP tool search is off by default behind a non-first-party host, and fine-grained tool streaming is off unless CLAUDE_CODE_ENABLE_FINE_GRAINED_TOOL_STREAMING=1 is set. Model discovery is opt-in via CLAUDE_CODE_ENABLE_GATEWAY_MODEL_DISCOVERY=1, queries GET /v1/models?limit=1000, treats any redirect as failure, and keeps only ids containing claude or anthropic. Anthropic also states it does not support routing Claude Code to non-Claude models through any gateway — which is why claude-code-router, a third-party project, is documented separately and not as an official feature.
Set either one up, then read the first charge
Kunavo documents both protocols on the same host at different paths: https://api.kunavo.com/v1 in OpenAI format for Aider, and https://api.kunavo.com as an origin in Anthropic Messages format for Claude Code. That is a published configuration reference, not a compatibility result — neither client has been runtime-tested against the endpoint here, and the Claude Code feature list above depends on gateway behaviour (anthropic-beta pass-through, cache_control preservation, keep-alive pings, count_tokens, /v1/models) that nobody has verified on it. Keep a working route available while you try either one, run a single bounded task, and read the charge your account actually recorded. Start at the Aider integration guide or the Claude Code integration guide, with ANTHROPIC_BASE_URL for the origin-versus-/v1 trap, and create a Kunavo account when you are ready to fund a key.
Still narrowing the field? opencode vs Claude Code and Cline vs Claude Code compare two other clients on the same protocol question, and Aider alternatives covers what else fills the terminal slot.
FAQ
What is the difference between Aider and Claude Code?
Aider is a free Apache-2.0 command-line coding assistant that edits the files you add to the chat and commits each change to git; Claude Code is Anthropic's proprietary agentic tool that, in its own words, reads your codebase, edits files, runs commands and integrates with your development tools. The structural difference is the protocol each speaks to a third-party endpoint. Aider's documented route is OpenAI chat-completions: OPENAI_API_BASE, OPENAI_API_KEY and a mandatory openai/ prefix on the model id. Claude Code requires one of exactly three formats — Anthropic Messages, Amazon Bedrock InvokeModel, or Google Cloud's Agent Platform rawPredict — and an OpenAI chat-completions endpoint is not among them. An endpoint that serves only one of those two protocols can serve only one of these two clients.
Is Aider still maintained in 2026?
The repository is live and not archived — Aider-AI/aider, Apache-2.0 — but the cadence is the fact worth checking, and it is best stated as dates. The last commit to the main branch is May 22, 2026. The newest installable release is aider-chat 0.86.2, uploaded to PyPI on February 12, 2026, and the release before it was August 13, 2025. GitHub Releases stops at v0.86.0 from August 9, 2025, so the two official views of what counts as the latest release disagree; PyPI is what pip install resolves to. Work merged since 0.86.2 sits on main as 0.86.3.dev and is in no installable release. No maintainer statement about the project's direction was found, so treat this as cadence evidence rather than an announcement.
Can Claude Code use the same API endpoint as Aider?
Only if that endpoint serves both protocols. Aider talks to a generic third-party endpoint over OpenAI chat-completions at a /v1/chat/completions path; Claude Code needs Anthropic Messages at /v1/messages, and Anthropic's gateway compatibility guide lists an OpenAI chat-completions endpoint nowhere among the formats a gateway may expose. A gateway that is OpenAI-compatible only cannot serve Claude Code at all. Anthropic also states plainly that it does not endorse, maintain or audit third-party gateway products and does not support routing Claude Code to non-Claude models through any gateway — a support position, not a technical block.
Which is cheaper, Aider or Claude Code?
The client software is not where the money is. Aider costs $0 and bills you nothing; Claude Code is included in a Claude subscription — Pro at $20 a month if billed monthly, Max from $100 a month — or billed per token against an Anthropic Console key or a gateway credential. The comparable number is tokens, and the two clients spend them differently: Aider re-sends the files in the chat and, in architect mode, issues two model requests per turn, while Claude Code runs an agentic loop whose background work Anthropic prices at typically under $0.04 per session and whose agent teams use approximately 7x more tokens than standard sessions when teammates run in plan mode. No controlled benchmark comparing these two clients exists in any source checked here, so neither can be called cheaper to finish a given task.
Does a gateway credential cancel my Claude subscription in Claude Code?
It suspends it for that session rather than cancelling it. Anthropic's gateway documentation states that while a gateway credential variable or apiKeyHelper is active, a developer's claude.ai subscription is not used: the credential replaces the subscription login for that session, the subscription's usage limits do not apply, and that traffic is billed per token to whoever owns the credential. Setting only ANTHROPIC_BASE_URL without a credential does not replace the subscription — requests route through the gateway but the saved claude.ai login stays the active credential. The saved login returns when you unset the variable. Aider has no equivalent gate because Aider ships no account of its own.
What do I lose in Claude Code by pointing it at a third-party endpoint?
Two separate lists. Claude Code itself turns off Remote Control and server-managed settings whenever ANTHROPIC_BASE_URL points at a host other than api.anthropic.com, whatever the gateway forwards. Separately, a documented set of features requires a claude.ai sign-in and is therefore unreachable on any gateway credential: cloud sessions, Claude Code on mobile, Claude Code in Slack, Routines, Ultrareview, Code Review, the Chrome extension, computer use, Artifacts and voice dictation. Claude Code Desktop appears on that list with an exception Anthropic states on the same page: gateway routing can be configured in the app or by an administrator, and Claude Desktop on 3P runs its Code tab on Amazon Bedrock, Google Cloud's Agent Platform, Microsoft Foundry or a self-hosted gateway. MCP tool search is off by default behind a non-first-party host, and connectors imported from claude.ai load only under a claude.ai subscription. The core agent loop is not gated: the CLI, Agent SDK, VS Code and JetBrains extensions, subagents, hooks, commands, skills, CLAUDE.md memory, plugins, MCP servers, checkpoints, sandboxing and Workflows work on every provider.
Can I move my Aider setup to Claude Code without redoing it?
No part of it carries across, because the two tools read different files. Aider reads ~/.aider.conf.yml for flags, .aider.model.settings.yml for edit format and repo-map behaviour, .aider.model.metadata.json for context window and cost, and a conventions file only when you pass it with --read — released 0.86.2 has no automatic CONVENTIONS.md or AGENTS.md handling. Claude Code reads CLAUDE.md, .claude/settings.json, .mcp.json, and its skills, hooks and plugins directories. Nothing in either set is a format the other understands, so a move is a rewrite of the configuration, not a conversion. How long that takes depends on your repository and has not been measured here.
Checked September 21, 2026 by fetching each source named above: aider.chat's git, chat-modes, prompt-caching and OpenAI-compatible pages, the aider-chat package metadata on PyPI, the @anthropic-ai/claude-code entry on the npm registry, claude.com/pricing, and Anthropic's gateway, feature-availability and cost documentation. Aider source-level claims were read at released tag 0.86.2, and the repository dates come from GitHub's public commit and release feeds rather than the rate-limited REST API. No benchmark comparing these two clients was found in any source checked, so this page makes no performance claim in either direction, and every dollar figure on it is either a published price or illustrative token arithmetic.