OpenCode in IDE

GitHub Action d4c8d95ec6 ignore: update download stats 2025-08-24 6 months ago
.github 3f2ac2b9b0 Update duplicate-issues.yml 6 months ago
.opencode 133fe41cd5 slash commands (#2157) 6 months ago
cloud e9f52934e9 release: v0.5.18 6 months ago
github 522bed6b7d ignore: cloud stuff 6 months ago
infra 04dcd87170 fix do migration 6 months ago
logs 133fe41cd5 slash commands (#2157) 6 months ago
packages 0fd312346b docs: fix plan agent docs (#2215) 6 months ago
script 6eaa231587 Update GPT-5 system prompt to use copilot-specific prompt instead of codex prompt 6 months ago
sdks e9f52934e9 release: v0.5.18 6 months ago
.editorconfig dd22cb2bb0 chore: add .editorconfig (#536) 7 months ago
.gitignore e6f3cf0839 fix pyright 6 months ago
AGENTS.md 3db8e7c2b6 ci: send stats to posthog 6 months ago
LICENSE ef3fd5900f docs: cleanup casing 8 months ago
README.md 7af2771a7e Docs: Homebrew can install Opencode on Linux (#1737) 6 months ago
STATS.md d4c8d95ec6 ignore: update download stats 2025-08-24 6 months ago
bun.lock d47bb96784 ci: ignore 6 months ago
bunfig.toml 1472efcbfe Optimize package management with catalog and exact versions 8 months ago
install 664d826642 fix: install script didnt use -e flag (#2009) 6 months ago
opencode.json 133fe41cd5 slash commands (#2157) 6 months ago
package.json 133fe41cd5 slash commands (#2157) 6 months ago
sst-env.d.ts 522bed6b7d ignore: cloud stuff 6 months ago
sst.config.ts 183e0911b7 wip: gateway 6 months ago
tsconfig.json d9233872b9 add `createOpencodeServer` to js sdk and wait for readiness. always use random port for `opencode serve`. add `/client` and `/server` imports for js sdk 6 months ago

README.md

opencode logo

AI coding agent, built for the terminal.

Discord npm Build status

opencode Terminal UI


Installation

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

# Package managers
npm i -g opencode-ai@latest        # or bun/pnpm/yarn
brew install sst/tap/opencode      # macOS and Linux
paru -S opencode-bin               # Arch Linux

[!TIP] Remove versions older than 0.1.x before installing.

Installation Directory

The install script respects the following priority order for the installation path:

  1. $OPENCODE_INSTALL_DIR - Custom installation directory
  2. $XDG_BIN_DIR - XDG Base Directory Specification compliant path
  3. $HOME/bin - Standard user binary directory (if exists or can be created)
  4. $HOME/.opencode/bin - Default fallback

    # Examples
    OPENCODE_INSTALL_DIR=/usr/local/bin curl -fsSL https://opencode.ai/install | bash
    XDG_BIN_DIR=$HOME/.local/bin curl -fsSL https://opencode.ai/install | bash
    

Documentation

For more info on how to configure opencode head over to our docs.

Contributing

opencode is an opinionated tool so any fundamental feature needs to go through a design process with the core team.

[!IMPORTANT] We do not accept PRs for core features.

However we still merge a ton of PRs - you can contribute:

  • Bug fixes
  • Improvements to LLM performance
  • Support for new providers
  • Fixes for env specific quirks
  • Missing standard behavior
  • Documentation

Take a look at the git history to see what kind of PRs we end up merging.

[!NOTE] If you do not follow the above guidelines we might close your PR.

To run opencode locally you need.

  • Bun
  • Golang 1.24.x

And run.

$ bun install
$ bun dev

Development Notes

API Client: After making changes to the TypeScript API endpoints in packages/opencode/src/server/server.ts, you will need the opencode team to generate a new stainless sdk for the clients.

FAQ

How is this different than Claude Code?

It's very similar to Claude Code in terms of capability. Here are the key differences:

  • 100% open source
  • Not coupled to any provider. Although Anthropic is recommended, opencode can be used with OpenAI, Google or even local models. As models evolve the gaps between them will close and pricing will drop so being provider-agnostic is important.
  • A focus on TUI. opencode is built by neovim users and the creators of terminal.shop; we are going to push the limits of what's possible in the terminal.
  • A client/server architecture. This for example can allow opencode to run on your computer, while you can drive it remotely from a mobile app. Meaning that the TUI frontend is just one of the possible clients.

What's the other repo?

The other confusingly named repo has no relation to this one. You can read the story behind it here.


Join our community Discord | YouTube | X.com