Skip to content
aiarabicdev

Search

Search every tool...

AI agents you can run
FreeMITTypeScriptSelf hostable

OpenCode

A terminal coding agent that is not tied to one model vendor

OpenCode is an open source coding agent built for the terminal, with a client and server split so the agent can run on your machine while you drive it from elsewhere. It works against Anthropic, OpenAI, Google or a local model, which is the main thing separating it from the vendor tools it resembles.

Best for when

  • you want to change models without changing agent
  • you work in a terminal and want the agent to live there too
  • you want to start a task on one machine and check it from another

Watch out for

  • model usage is billed by whichever provider you point it at, so the agent being free is only half the cost
  • the repository has moved organisation more than once, so older install instructions and links go stale
  • results vary a lot by model, so judge the harness and the model separately when it disappoints

Install

Install

curl -fsSL https://opencode.ai/install | bash

Or with npm

npm install -g opencode-ai

Provider independence is the point

Every vendor coding agent is a bet on that vendor's model, pricing and roadmap. OpenCode keeps the harness and lets you change the engine, which matters when a cheaper model becomes good enough for a class of task, or when the one you rely on gets more expensive.

Two built in modes carry most of the day to day value. A build mode that edits, and a read only plan mode for exploring a codebase, which is the safer default when you are still working out what a change should be.

Terminal first, and genuinely so

The client and server split means the terminal interface is one client among several, so the same running agent can be driven from a phone or another machine. That is unusual and useful on longer tasks you want to check on rather than sit in front of.

It is also written by people who live in a terminal, which shows in both directions. The interface is fast and keyboard complete, and it assumes a comfort level with the terminal that a graphical editor user will notice immediately.

Last checked: .md