OpenCode is a powerful, open-source AI coding assistant that runs in your terminal. Built in Go with a beautiful TUI, it supports multiple AI providers (OpenAI, Anthropic, Google, local models via Ollama), persistent session history, and deep integration with your development tools.
Quick Reference
opencode: Launch interactive TUI
opencode 'prompt': Non-interactive mode
--continue: Resume last session
--session <id>: Load specific session
-m <model>: Select AI model
/models: Switch models in session
/help: Show all commands
Supports OpenAI, Claude, Gemini, Ollama
Sessions saved to SQLite automatically
opencode agent create: Make custom agent
Setup Guide
# Getting Started with OpenCode
## Installation
### Via curl (Recommended)
```bash
curl -fsSL https://opencode.ai/install | bash
```
### Via npm
```bash
npm install -g opencode-ai
```
### Via Homebrew (macOS)
```bash
brew install opencode-ai/tap/opencode
```
### Via Bun
```bash
bun add -g opencode-ai
```
## Launch OpenCode
```bash
opencode
```
## Multi-Model Support
OpenCode works with many AI providers:
- OpenAI (GPT-4, GPT-4o)
- Anthropic (Claude)
- Google (Gemini)
- AWS Bedrock
- Groq
- Local models (Ollama, LM Studio)
### Configure API Keys
```bash
opencode auth login
```
Or set environment variables:
```bash
export OPENAI_API_KEY="..."
export ANTHROPIC_API_KEY="..."
export GOOGLE_API_KEY="..."
```
## Key Features
### Session Management
Every conversation is saved to SQLite:
- Persistent history
- Project-specific contexts
- Resume interrupted sessions
- Track code changes
### Tool Chain Integration
- **LSP Support**: Intelligent code analysis and diagnostics
- **Git Awareness**: Understands your version control
- **Build Tools**: Works with npm, pip, cargo, etc.
### AI Assistant Tools
OpenCode's AI has access to:
- `glob`, `grep`, `ls`: File navigation
- `view`, `write`, `edit`, `patch`: Code operations
- `bash`: Execute shell commands
- `fetch`: Get data from URLs
- `sourcegraph`: Search public code
### Agents
Built-in agents for different tasks:
- `build`: Full permissions, makes changes
- `plan`: Read-only analysis
Create custom agents:
```bash
opencode agent create
```
## Commands
```
/models - Select AI model
/help - Show commands
/clear - Clear screen
/session - Manage sessions
```
## Configuration
Create `opencode.json` in your project:
```json
{
"model": "gpt-4o",
"provider": "openai"
}
```