gitmyhub

opencode

TypeScript ★ 173k updated 2h ago

The open source coding agent.

Open-source AI coding agent you run locally in your terminal, works with any AI provider, and gives you two modes: full-access build agent and read-only plan agent for exploring code.

TypeScriptNode.jsLSPsetup: moderatecomplexity 3/5

OpenCode is an open-source AI coding agent — a tool that lives in your terminal (and now also as a desktop app) and helps you write, change, and explore code by talking to a language model. The description calls it "the open source coding agent" and the README sub-headline calls it "the open source AI coding agent." The idea is that instead of copy-pasting code in and out of a chat window, you point the agent at your project and let it read files, edit them, and run commands on your behalf.

The README lists many install paths: a one-line curl install script, the opencode-ai npm package (or bun, pnpm, yarn), Scoop and Chocolatey on Windows, Homebrew on macOS and Linux, pacman or AUR on Arch, mise, and Nix. A desktop application is available in beta for macOS (Apple Silicon and Intel), Windows, and Linux. OpenCode ships two built-in agents you switch between with the Tab key: a default "build" agent with full access for development work, and a read-only "plan" agent that denies file edits by default and asks permission before running shell commands, intended for exploring unfamiliar code or planning changes. A "general" subagent handles complex searches and multistep tasks and is invoked with @general. The FAQ contrasts OpenCode with Claude Code, highlighting that it is fully open source, not tied to one model provider (it can be used with Claude, OpenAI, Google, or local models), has opt-in LSP support, focuses on the terminal UI, and uses a client/server architecture so you could drive the agent from another client such as a mobile app.

You would use this if you want a configurable, provider-agnostic coding assistant that runs locally and works in the terminal. The tech stack listed is TypeScript.

Where it fits