This skill provides comprehensive guidance for using OpenCode, the open-source AI coding agent.
Comprehensive guide for OpenCode - the open-source AI coding agent.
| Task | Command/Action |
|---|---|
| Start TUI | opencode |
| Continue session | opencode -c or opencode --continue |
| Run non-interactive | opencode run "message" |
| Start headless server | opencode serve |
| Web interface | opencode web |
| Switch agent | Tab key |
| File search | @ then type filename |
| Undo changes | /undo |
| Redo changes | /redo |
| Share conversation | /share |
| Initialize project | /init |
| Configure API keys | /connect |
OpenCode has two primary agents, switchable with Tab:
ask mode)Invoke subagents with @ mention:
| Key | Action |
|---|---|
Tab |
Switch between Build and Plan agents |
@ |
Fuzzy file search |
Ctrl+C |
Cancel current operation |
| Command | Description |
|---|---|
/connect |
Configure LLM provider API keys |
/init |
Initialize project and create AGENTS.md |
/undo |
Revert recent changes (stackable) |
/redo |
Restore undone changes |
/share |
Create shareable conversation link |
# Start TUI in current directory
opencode
# Start in specific project
opencode /path/to/project
# Continue previous session
opencode --continue
opencode -c
# Use specific session
opencode --session <id>
opencode -s <id>
# Start with specific model
opencode --model <model>
opencode -m <model>
# Start with specific agent
opencode --agent build
opencode --agent plan
# Run single prompt
opencode run "Fix the bug in auth.py"
# Run with file attachment
opencode run "Review this" --file README.md
opencode run "Review this" -f README.md
# Run and share result
opencode run "Explain this code" --share
# Run specific command
opencode run --command "npm test"
# Start headless API server
opencode serve
# With custom port
opencode serve --port 3000
# With mDNS discovery
opencode serve --mdns
# Web interface
opencode web
# Authentication
opencode auth login
opencode auth list
opencode auth logout
# Models
opencode models # List available models
opencode models --refresh # Refresh model cache
# Agents
opencode agent create # Create custom agent
opencode agent list # List agents
# MCP servers
opencode mcp add <server>
opencode mcp list
opencode mcp auth
opencode mcp debug
# Sessions
opencode session list
opencode session list -n 10 # Last 10 sessions
# Statistics
opencode stats
opencode stats --days 7
opencode stats --tools
opencode stats --models
# Export/Import
opencode export <sessionID>
opencode import <file>
# Upgrade
opencode upgrade
opencode upgrade <version>
OpenCode provides these tools to agents:
| Tool | Description |
|---|---|
| read | Read file contents with optional line ranges |
| write | Create new files or overwrite existing |
| edit | Modify files using exact string replacements |
| patch | Apply patch files |
| grep | Search file contents with regex |
| glob | Find files by pattern (**/*.js) |
| list | List files and directories |
| bash | Execute shell commands |
| lsp | Language Server Protocol integration (experimental) |
| todowrite | Create/update task lists |
| todoread | Read current todo state |
| skill | Load skill files into conversation |
| webfetch | Fetch and read web pages |
| question | Ask user clarifying questions |
Skills are discovered from (in order):
.opencode/skills/<name>/SKILL.md (project)~/.config/opencode/skills/<name>/SKILL.md (global).claude/skills/<name>/SKILL.md (Claude-compatible project)~/.claude/skills/<name>/SKILL.md (Claude-compatible global)---
name: my-skill
description: Description of what this skill does and when to use it.
---
# Skill Content
Instructions and documentation here...
--).opencode/ or opencode.json~/.config/opencode/| Variable | Description |
|---|---|
OPENCODE_CONFIG |
Custom config path |
OPENCODE_PERMISSION |
Permission mode |
OPENCODE_SERVER_PASSWORD |
Server auth password |
OPENCODE_DISABLE_AUTOUPDATE |
Disable auto-updates |
OPENCODE_EXPERIMENTAL |
Enable experimental features |
OPENCODE_ENABLE_EXA |
Enable Exa search |
Create agents via opencode agent create or define in:
opencode.json~/.config/opencode/agents/.opencode/agents/Agent config options: description, temperature, model, tool permissions, system prompts.
Switch to Plan agent (Tab) to review implementation strategy before making changes.
Use @filename to fuzzy search and reference files in prompts.
Use /undo liberally - changes are stackable and reversible with /redo.
Use --continue or -c to resume previous sessions and maintain context.
For detailed documentation, see:
references/cli.md - Complete CLI referencereferences/tools.md - Tool details and permissionsreferences/agents.md - Agent configuration guide