Claude Code alternatives: what to check before switching
The real question is lock-in. Eight things to check before switching coding agents, the options worth knowing, and head-to-head comparisons.
Almost nobody is looking for a different agent
They are looking for a way out of one vendor. The searches that lead here spike when a provider changes its pricing, rations its capacity, or ships a model that is worse at the thing you were using it for — and none of those are problems with the agent. They are problems with having exactly one model behind it.
Which reframes the comparison. The models are largely the same models across these tools; what differs is the layer around them, and the question that layer either answers or does not is: on the day you want a different provider, what does it cost? A tool written by the company selling the model is excellent at driving that model and has no reason to be good at leaving it.
The eight questions that decide it
Worth asking of any candidate, with our own answers in the last column. The fourth row is the one most comparisons skip and the one that decides whether the rest matters.
| Ask | Why it matters | OHarness |
|---|---|---|
| What licence? | It decides whether you can read it, fork it, and use it commercially. | Free to use, commercially too. The npm packages are MIT; the source repository is not public yet. |
| Which models can it drive? | A tool tied to one vendor makes that vendor's pricing and outages yours. | Anthropic, OpenAI and Google Gemini natively, plus any OpenAI-compatible endpoint. |
| Can it run a local model? | Offline work, private code, and a cost of zero per token. | Yes — Ollama, LM Studio, or your own vLLM server by base URL. |
| What happens when you switch model mid-session? | This is where most tools either restart the conversation or quietly convert it. | Nothing is converted. History is stored vendor-neutral and rendered per request. |
| Who holds the API key? | Bring-your-own-key means the bill and the data path are both yours. | You do. There is no account required and nothing is charged by us. |
| Where does it run? | A terminal-only tool cannot be handed to someone who does not live in one. | Terminal, browser, desktop app and headless — one engine behind all four. |
| Does it speak MCP? | MCP is how external tools reach an agent without a custom integration each time. | Yes, built in — stdio and Streamable HTTP, with no MCP SDK in the dependency tree. |
| What can it do without asking? | An agent runs with your authority. The permission model is the blast radius. | Five modes, deny beats allow, and rules that fail at parse time rather than at 3am. |
The options
Named without being ranked, and linked so you can check each one against what its own authors say rather than what a competitor wrote about it last quarter. This is a field where a scored table is out of date the week it ships.
- OpenCode — Terminal agent, open source.
- Aider — Terminal agent, paired with git.
- Cline — Editor extension, with a CLI.
- Continue — Editor extension.
- Goose — Desktop and CLI agent.
- Kilo Code — Editor, CLI and cloud.
- OHarness — terminal, browser, desktop and headless on one engine; model-agnostic by construction.
Head to head
One tool at a time, each checked against that project’s own documentation on the date printed on the page, with where it is stronger than OHarness stated first.
- OHarness vs Claude Code
- OHarness vs OpenCode
- OHarness vs OpenAI Codex CLI
- OHarness vs Aider
- OHarness vs Cline
- OHarness vs Gemini CLI
- OHarness vs DeepSeek Harness
Replacing something other than Claude Code? Codex alternatives · Claude Cowork alternatives · OpenClaw alternatives
Where a harness differs from a vendor’s own tool
A tool written by the company that sells the model is excellent at driving that model and has no reason to be good at leaving it. That is not a criticism, it is an incentive: the conversation store, the tool schema and the streaming parser all get to assume one vendor, because one vendor is the point.
A model-agnostic harness gives that assumption up on purpose. History is kept in a format belonging to no vendor and rendered into a vendor’s wire format at the moment a request goes out, which is why switching provider in the middle of a session costs nothing — there is nothing in the old shape to convert. What an agent harness is covers the idea, and the architecture page covers how the layering is enforced rather than merely intended.
Common questions
How do I avoid vendor lock-in with an AI coding agent?
Check three things, in this order. Can it reach more than one provider — not through a plugin, but natively? Can you supply your own key, so the account and the bill are yours? And what happens to an in-flight session when you change model: does it restart, convert the history, or carry on? The third is the one that decides whether the first two are real, because a tool that technically supports four vendors but loses the conversation when you move between them supports one vendor in practice.
Is there a free alternative to Claude Code?
Several, and the word free splits in two. The tool itself can be free — OHarness costs nothing to use, and several open source agents are free too — while inference is billed by whoever runs the model. To pay nothing at all, point a harness at a model running locally through Ollama, LM Studio or vLLM; then there is no licence fee and no per-token charge.
Can I keep using Claude models if I switch tools?
Yes. Switching harness is not switching model. OHarness speaks to the Anthropic API natively with your own key, so the same Claude models are available — the difference is that OpenAI, Gemini and a local runtime are now available in the same session, behind the same loop and the same permission rules.
Does changing model lose the conversation?
It depends entirely on how the tool stores history. A tool that keeps the conversation in one vendor's message format has to translate it, and translation mid-session is where context gets dropped. OHarness stores history in a neutral format and renders it into a vendor's wire format only when a request goes out, so there is nothing to migrate and nothing to lose.
What actually differs between these tools?
Less than the marketing suggests at the model layer and more than it suggests everywhere else. They mostly reach the same models. Where they genuinely differ is the harness around it: how context is compacted, what the permission model lets through unattended, whether MCP is built in, whether the thing runs outside a terminal, and how much code you are trusting. Those are the questions in the table above.
Try it
Free to use, no account needed, and your own provider key. The download page has the desktop builds and the one-line install for the command line; the docs are written beside the code they describe.
OHarness is your AI assistant for work on your local computer.
OHarness is your AI assistant for work on your local computer. You control the context, memory, models and tools.
Desktop: macOS on Apple silicon. CLI: macOS, Windows and Linux with Node.js 22.6 or newer.
The iPhone remote app is coming soon and is not yet available. Android is on the roadmap.
You control permissions. Your selected mode and rules determine which actions need approval and which can run automatically.